| packageDescription {utils} | R Documentation |
Package Description
Description
Parses and returns the ‘DESCRIPTION’ file of a package as a
"packageDescription".
Utility functions return (transformed) parts of that.
Usage
packageDescription(pkg, lib.loc = NULL, fields = NULL,
drop = TRUE, encoding = "")
packageVersion(pkg, lib.loc = NULL)
packageDate(pkg, lib.loc = NULL,
date.fields = c("Date", "Packaged", "Date/Publication", "Built"),
tryFormats = c("%Y-%m-%d", "%Y/%m/%d", "%D", "%m/%d/%y"),
desc = packageDescription(pkg, lib.loc=lib.loc, fields=date.fields))
asDateBuilt(built)
Arguments
pkg |
a character string with the package name. |
lib.loc |
a character vector of directory names of R libraries,
or |
fields |
a character vector giving the tags of fields to return (if other fields occur in the file they are ignored). |
drop |
If |
encoding |
If there is an |
date.fields |
character vector of field tags to be tried. The
first for which |
tryFormats |
date formats to try, see |
desc |
optionally, a named |
built |
for |
Details
A package will not be ‘found’ unless it has a ‘DESCRIPTION’ file
which contains a valid Version field. Different warnings are
given when no package directory is found and when there is a suitable
directory but no valid ‘DESCRIPTION’ file.
An attached environment named to look like a package
(e.g., package:utils2) will be ignored.
packageVersion() is a convenience shortcut, allowing things
like if (packageVersion("MASS") < "7.3") { do.things } .
For packageDate(), if desc is valid, both pkg and
lib.loc are not made use of.
Value
If a ‘DESCRIPTION’ file for the given package is found and can
successfully be read, packageDescription returns an object of
class "packageDescription", which is a named list with the
values of the (given) fields as elements and the tags as names, unless
drop = TRUE.
If parsing the ‘DESCRIPTION’ file was not successful, it returns
a named list of NAs with the field tags as names if fields
is not null, and NA otherwise.
packageVersion() returns a (length-one) object of class
"package_version".
packageDate() will return a "Date" object from
as.Date() or NA.
asDateBuilt(built) returns a "Date" object or signals an
error if built is invalid.
Note
The default behavior of packageDate(), notably for
date.fields, is somewhat experimental and may change.
See Also
Examples
packageDescription("stats")
packageDescription("stats", fields = c("Package", "Version"))
packageDescription("stats", fields = "Version")
packageDescription("stats", fields = "Version", drop = FALSE)
if(requireNamespace("MASS") && packageVersion("MASS") < "7.3.29")
message("you need to update 'MASS'")
pu <- packageDate("utils")
str(pu)
stopifnot(identical(pu, packageDate(desc = packageDescription("utils"))),
identical(pu, packageDate("stats"))) # as "utils" and "stats" are
# both 'base R' and "Built" at same time