[R-pkg-devel] Properly referencing copied code
Thanks that helps. Are there any thoughts on the feedback I was given? I'm still a bit confused on the note:
Has copyright holders of included software in a [ctb] role only
I think I'm being asked to add the cph role to essentially every author in addition to ctp but that doesn't seem to be what the CRAN policy wants and I still don't know how to decide who gets both. Right now there are several people who have explicit copyright over certain code so I would think just add cph to all those authors? Or just give everyone cph who isn't a minor contributor? ?- DRC
On Friday, July 12th, 2024 at 3:07 AM, Ivan Krylov 'ikrylov at disroot.org' <anj5xsj9+ikrylov=disroot.org at nilly.addy.io> wrote:
? Thu, 11 Jul 2024 20:58:53 +0000 DRC via R-package-devel r-package-devel at r-project.org ?????:
1. How does linking to external libs differ from providing the source of a library and linking against that?
I think that the author information in the DESCRIPTION is about what your package provides by itself, not everything that may end up in the address space once the package is loaded. Since CRAN prefers self-contained packages, we end up including them in our packages (unless the third-party library is already very common and present in RTools & macOS recipes & common GNU/Linux distros), which requires us to specify their authors.
Do I need to provide references to lapack and blas if they aren't shipped with the package? What about math (lm)?
No.
2. What roles to supply to authors of external software?
Do I need to differentiate between authors with explicit copyrights
`c('ctb', 'cph')` vs those who are authors but are not listed as
copyright holders `c('ctb')` in the third party source? Or just give
everyone both?
I would expect most authors and contributors to be copyright holders too, but it must be possible to contribute without providing patches and becoming one. E.g. a project might recognise a tester and bug reporter as a full author, but there is no code that they own any copyright on.
3. One of my dependencies has a lot of copyright holders throughout the source. Most of these are for individual functions and cmake files that are not directly used by my package. What is the best way to handle this? Add as much of the unused parts of the third party package to the .Rbuildignore file as possible to filter out the unused parts?
If it's feasible to implement, omitting unused files from the tarball is a good idea.
4. Is there a better place to put all these authors? The author list has already gotten large and I still have many more to add.
CRAN recognises inst/AUTHORS. Here's a recently released package with no obvious problems that makes use of it: https://CRAN.R-project.org/package=xlcharts We should probably document it somewhere. -- Best regards, Ivan