getDepList {tools}R Documentation

Functions to Retrieve Dependency Information


Given a dependency matrix, will create a DependsList object for that package which will include the dependencies for that matrix, which ones are installed, which unresolved dependencies were found online, which unresolved dependencies were not found online, and any R dependencies.


getDepList(depMtrx, instPkgs, recursive = TRUE, local = TRUE,
           reduce = TRUE, lib.loc = NULL)

pkgDepends(pkg, recursive = TRUE, local = TRUE, reduce = TRUE,
           lib.loc = NULL)


depMtrx A dependency matrix as from package.dependencies
pkg The name of the package
instPkgs A matrix specifying all packages installed on the local system, as from installed.packages
recursive Whether or not to include indirect dependencies
local Whether or not to search only locally
reduce Whether or not to collapse all sets of dependencies to a minimal value
lib.loc What libraries to use when looking for installed packages. NULL indicates all library directories in the user's .libPaths().


The function pkgDepends is a convenience function which wraps getDepList and takes as input a package name. It will then query installed.packages and also generate a dependency matrix, calling getDepList with this information and returning the result.

These functions will retrieve information about the dependencies of the matrix, resulting in a DependsList object. This is a list with four elements:

A vector of the dependencies for this package.
A vector of the dependencies which have been satisfied by the currently installed packages.
A list representing the dependencies which are not in Installed but were found online. This list has element names which are the URLs for the repositories in which packages were found and the elements themselves are vectors of package names which were found in the respective repositories. If local=TRUE, the Found element will always be empty.
Any R version dependencies.

If recursive is TRUE, any package that is specified as a dependency will in turn have its dependencies included (and so on), these are known as indirect dependencies. If recursive is FALSE, only the dependencies directly stated by the package will be used.

If local is TRUE, the system will only look at the user's local install and not online to find unresolved dependencies.

If reduce is TRUE, the system will collapse the fields in the DependsList object such that a minimal set of dependencies are specified (for instance if there was ('foo', 'foo (>= 1.0.0)', 'foo (>= 1.3.0)'), it would only return 'foo (>= 1.3.0)').


An object of class DependsList


Jeff Gentry

See Also



pkgDepends("tools", local = FALSE)

[Package tools version 2.5.0 Index]