Learn R Programming

reproducible (version 1.0.0)

pkgDep: Determine package dependencies, first looking at local filesystem

Description

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.

Usage

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 )

Arguments

packages

a character vector of package names.

libPath

The library path where all packages should be installed, and looked for to load (i.e., call library)

recursive

Logical. Should dependencies of dependencies be searched, recursively. NOTE: Dependencies of suggests will not be recursive. Default TRUE.

depends

Logical. Include packages listed in "Depends". Default TRUE.

imports

Logical. Include packages listed in "Imports". Default TRUE.

suggests

Logical. Include packages listed in "Suggests". Default FALSE.

linkingTo

Logical. Include packages listed in "LinkingTo". Default TRUE.

repos

The remote repository (e.g., a CRAN mirror), passed to either install.packages, install_github or installVersions.

refresh

There is an internal type of caching. If the results are wrong, likely set refresh = TRUE.

verbose

logical indicating if output should monitor the package search cycles.

sorted

Logical. If TRUE, the default, the packages will be sorted in the returned list from most number of dependencies to least.

Examples

Run this code
# NOT RUN {
pkgDep("crayon")
pkgDep2("reproducible")
# }

Run the code above in your browser using DataLab