This is intended to replace package_dependencies
or
pkgDep
in the miniCRAN package, but with modifications for speed.
It will first check local package directories in libPath
, and it if
the function cannot find the packages there, then it will use
package_dependencies
.
pkgDep2
is a convenience wrapper of pkgDep
that
"goes one level in" i.e., the first order dependencies, and runs
the pkgDep
on those.
pkgDep(
packages,
libPath,
recursive = TRUE,
depends = TRUE,
imports = TRUE,
suggests = FALSE,
linkingTo = TRUE,
repos = getOption("repos"),
refresh = FALSE,
verbose = getOption("reproducible.verbose")
)pkgDep2(
packages,
recursive = TRUE,
depends = TRUE,
imports = TRUE,
suggests = FALSE,
linkingTo = TRUE,
repos = getOption("repos"),
refresh = FALSE,
verbose = getOption("reproducible.verbose"),
sorted = TRUE
)
a character vector of package names.
The library path where all packages should be installed, and looked for to load
(i.e., call library
)
Logical. Should dependencies of dependencies be searched, recursively.
NOTE: Dependencies of suggests will not be recursive. Default TRUE
.
Logical. Include packages listed in "Depends". Default TRUE
.
Logical. Include packages listed in "Imports". Default TRUE
.
Logical. Include packages listed in "Suggests". Default FALSE
.
Logical. Include packages listed in "LinkingTo". Default TRUE
.
The remote repository (e.g., a CRAN mirror), passed to either
install.packages
, install_github
or installVersions
.
There is an internal type of caching. If the results are wrong, likely
set refresh = TRUE
.
logical indicating if output should monitor the package search cycles.
Logical. If TRUE
, the default, the packages will be sorted in
the returned list from most number of dependencies to least.
# NOT RUN {
pkgDep("crayon")
pkgDep2("reproducible")
# }
Run the code above in your browser using DataLab