When developing a package, I find the R CMD check
step doesn't check as strictly as I'd like. I often will add some pkg::func()
call while developing and forget to include it in the DESCRIPTION
's Include
list. Sometimes an error or warning is thrown (it depends on where that code lives ... e.g. if inside an R6 class, effectively no warning is ever raised), but because I almost always have pkg
installed already in my development environment, no error is raised during the check step.
The renv package already does a pretty good job scanning through project directories to build lists of all dependencies. Does anything like this exist to folks' knowledge for auto-generating a compact list of the first-level dependencies (as opposed to renv's fully-closed complete list) used by a package? Such a list could then be used as a reference list for the developer to build out the Imports
, Depends
, Suggests
, Enhances
DESCRIPTION
sections.
I know that the usethis package already has some provisioning for this idea with use_package()
, but this again relies on the developer remembering at some function's first usage in code that it comes from a not-already-referenced-in-DESCRIPTION
package.
If this doesn't already exist, this seems like it'd be a super-helpful tool to include in devtools (or other upstream package), and likewise it also seems like it'd be a simplification of the already-working renv dependency-scanning implementation.