[R-pkg-devel] package in 'Suggests'

Dirk Eddelbuettel edd at debian.org
Wed Oct 19 22:33:02 CEST 2016


On 19 October 2016 at 19:29, Berry Boessenkool wrote:
| A package I am developing will have one additional (not core) function depending on RCurl.
| To keep dependencies low, I am considering to put RCurl in 'Suggests' instead of 'Imports'.
| Also, I guess some users / systems may not have libcurl installed.
| 
| Then I would write something like
| indexDWD <- function(...)
| {
| if(!requireNamespace("RCurl", quietly=TRUE))
|   stop("The R package 'RCurl' is not available. indexDWD can not obtain file list.\n",
|        "install.packages('RCurl')       to enable this.")
| ... # otherwise do some nice stuff with RCurl::getURL
| }
| 
| Can /should I still have an example tested by CRAN? (I've seen \dontrun used in similar situations)
| Or should CRAN check never depend on an ftp-server being accessible?

What you have is the correct approach: test _if the package can be loaded_
and if so, proceed.  Else skip the test.

Some just put packages in Suggests: and then still assume them be installed.
That's just wrong in my book, though not enforced as a fail by CRAN.

Dirk

-- 
http://dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org



More information about the R-package-devel mailing list