[R-pkg-devel] Error uploading package to CRAN that depends on packages hosted in GitHub

Duncan Murdoch murdoch@dunc@n @end|ng |rom gm@||@com
Wed Jul 7 17:21:55 CEST 2021


On 07/07/2021 9:08 a.m., Uwe Ligges wrote:
> 
> 
> On 07.07.2021 13:18, Duncan Murdoch wrote:
>> On 07/07/2021 5:29 a.m., David Enrique Payares García wrote:
>>> Hello everybody,
>>>
>>> I developed an R package that depends on packages hosted in GitHub.
>>> In the DESCRIPTION file, I added the R packages (from GitHub ) in the
>>> "Suggests" section and I included a copy of them in my personal GitHub so
>>> they can be accessed in the "Additional_repositories:" section.
>>>
>>>
>>> Suggests:
>>>       rmarkdown,
>>>       ANTsR,
>>>       ANTsRCore,
>>>       ITKR,
>>>       extrantsr,
>>>       MNITemplate,
>>>       RAVEL
>>> Imports:
>>>       knitr,
>>>       oro.nifti,
>>>       fslr,
>>>       neurobase
>>> Depends:
>>>       R (>= 3.5)
>>> Additional_repositories: https://davidpayares.github.io/drat
>>>
>>>
>>> A copy of the R packages my package needs is in
>>> https://davidpayares.github.io/drat .
>>> When I submit the package to CRAN, I get this error:
>>>
>>>
>>> Suggests or Enhances not in mainstream repositories:
>>>       ANTsR, ANTsRCore, ITKR, extrantsr, MNITemplate, RAVEL
>>>     Availability using Additional_repositories specification:
>>>       ANTsR         yes   https://davidpayares.github.io/drat
>>>       ANTsRCore     yes   https://davidpayares.github.io/drat
>>>       ITKR          yes   https://davidpayares.github.io/drat
>>>       extrantsr     yes   https://davidpayares.github.io/drat
>>>       MNITemplate   yes   https://davidpayares.github.io/drat
>>>       RAVEL         yes   https://davidpayares.github.io/drat
>>>
>>> Flavor: r-devel-linux-x86_64-debian-gcc, r-devel-windows-ix86+x86_64
>>> Check: package dependencies, Result: ERROR
>>>     Packages suggested but not available for checking:
>>>       'ANTsR', 'ANTsRCore', 'ITKR', 'extrantsr', 'MNITemplate', 'RAVEL'
>>>
>>>     Namespace dependencies missing from DESCRIPTION Imports/Depends
>>> entries:
>>>       'MNITemplate', 'RAVEL', 'extrantsr'
> 
> 
> As the message says: You likely have declared some import directives via
> the NAMESPACE file. In that case you have to import from a package and
> hence list it in the Imports field.

Maybe the message should say "NAMESPACE dependencies missing from 
DESCRIPTION Imports/Depends entries" to make that even more obvious?

Duncan Murdoch

> 
> If the package is not available from a mainsteam repository and you want
> to suggest it only, you cannot import from it via the NAMESPACE file.
> 
> Best,
> Uwe Ligges
> 
> 
> 
>> I think this one is the part causing the ERROR.  Without seeing your
>> package I can't say for sure, but I would guess you have made some
>> unconditional use of those three packages.  Since they are only
>> Suggested packages, you can't do that.  Your package has to run even if
>> they are not available at all.  (It may not have full functionality, but
>> it shouldn't generate any errors in its tests or examples.)
>>
>> Duncan Murdoch
>>
>>
>>>
>>> I found that this is the correct way to add dependencies that are not
>>> hosted in CRAN. However, I do not understand why it is not working. If
>>> anyone could help me, I would really appreciate it.
>>>
>>> Thank you so much.
>>>
>>> Cheers,
>>>
>>> David Payares
>>>
>>>      [[alternative HTML version deleted]]
>>>
>>> ______________________________________________
>>> R-package-devel using r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-package-devel
>>>
>>
>> ______________________________________________
>> R-package-devel using r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-package-devel



More information about the R-package-devel mailing list