diff --git a/404.html b/404.html index 06500f746..d70096a04 100644 --- a/404.html +++ b/404.html @@ -10,8 +10,8 @@ - - + + @@ -68,7 +68,7 @@
Site built with pkgdown 2.1.1.
+Site built with pkgdown 2.1.1.9000.
diff --git a/authors.html b/authors.html index 8c755060e..e586e9669 100644 --- a/authors.html +++ b/authors.html @@ -1,5 +1,5 @@ -Site built with pkgdown 2.1.1.
+Site built with pkgdown 2.1.1.9000.
diff --git a/pkgdown.yml b/pkgdown.yml index fdb8fda7a..291a3ad27 100644 --- a/pkgdown.yml +++ b/pkgdown.yml @@ -1,8 +1,8 @@ pandoc: 3.1.11 -pkgdown: 2.1.1 -pkgdown_sha: ~ +pkgdown: 2.1.1.9000 +pkgdown_sha: dfa28bef27858bd442334b5cce8f645d555914be articles: {} -last_built: 2024-11-06T10:33Z +last_built: 2024-12-03T21:49Z urls: reference: https://pak.r-lib.org/reference article: https://pak.r-lib.org/articles diff --git a/reference/cache.html b/reference/cache.html index 480ef4ca1..ec85dddd6 100644 --- a/reference/cache.html +++ b/reference/cache.html @@ -1,5 +1,5 @@ -Site built with pkgdown 2.1.1.
+Site built with pkgdown 2.1.1.9000.
diff --git a/reference/features.html b/reference/features.html index 84b77bf80..beee5a88a 100644 --- a/reference/features.html +++ b/reference/features.html @@ -1,5 +1,5 @@ -stable
, rc
and Data frame the contains data about the packages installed in the library. -include_docs("pkgdepends", "docs/lib-status-return.rds")
+It has always has columns: +biocviews
: the corresponding field from DESCRIPTION
, it must be
+present for all Bioconductor packages, other packages typically don't
+have it.
built
: the Built
field from DESCRIPTION
.
depends
, suggests
, Imports
, linkingto
, enhances
: the corresponding
+fields from the DESCRIPTION
files.
deps
: A list or data frames, the dependencies of the package. It has
+columns: ref
, type
(dependency type in lowercase), package
+(dependent package, or R
), op
and version
, for last two are for
+version requirement. op
can be >=
, >
, ==
or <=
, although the
+only the first one is common in practice.
library
: path to the package library containing the package.
license
: from DESCRIPTION
.
md5sum
: from DESCTIPTION
, typically NA
, except on Windows.
needscompilation
: from DESCRIPTION
, this column is logical.
package
: package name.
platform
: from the Built
field in DESCRIPTION
, the current platform
+if missing from DESCRIPTION
.
priority
: from DESCRIPTION
, usually base
, recommended
, or missing.
ref
: the corresponding installed::*
package reference.
repository
: from DESCRIPTION
. For packages from a CRAN repository this
+is CRAN
, some other repositories, e.g. R-universe adds the repository
+URL here.
repotype
: cran
, bioc
or missing.
rversion
: from the Built
field. If no such field, then the current
+R version.
sysreqs
: the SystemRequirements
field from DESCRIPTION
.
title
: package title.
type
: always installed
.
version
: package version (as string).
DESCRIPTION
, but
+pak also adds a couple.
+In addition, it also has all remote*
and config/needs/*
entries from
+the DESCRIPTION
files. (Case insensitive.)
All columns are of type character
, except for needscompilation
, which
+is logical and deps
, which is a list columns.
If an entry is missing for a package, it is set to NA
.
Note that column names are lowercase, even if the corresponding entries
+are not in DESCRIPTION
.
The order of the columns is not deterministic, so don't assume any order.
Additional columns might be present, these are internal for +pak and should not be used in user code.
Site built with pkgdown 2.1.1.
+Site built with pkgdown 2.1.1.9000.
diff --git a/reference/lockfile_create.html b/reference/lockfile_create.html index 177f06042..6474ed1d1 100644 --- a/reference/lockfile_create.html +++ b/reference/lockfile_create.html @@ -1,5 +1,5 @@ -include_docs("pkgdepends", "docs/deps.rds")
+R packages may have various types of dependencies, see +Writing R Extensions.pak groups dependencies into three groups: +
hard dependencies: "Depends", "Imports", and "LinkingTo",
soft dependencies: "Suggests" and "Enhances",
extra dependencies, see below.
utils::install.packages()
interprets its
+dependencies
argument.You typically use one of these values:
+NA
or "hard"
to install a package and its required dependencies,
TRUE
to install all required dependencies, plus optional and development
+dependencies.
dependencies
argument are:
+TRUE
: This means all hard dependencies plus Suggests
for
+direct installations, and hard dependencies only for dependent
+packages.
FALSE
: no dependencies are installed at all.
NA
(any atomic type, so NA_character_
, etc. as well): only hard
+dependencies are installed.
If a list with two entries named direct
and indirect
, it is taken
+as the requested dependency types, for direct installations and
+dependent packages.
If a character vector, then it is taken as the dependency types +for direct installations, and the hard dependencies are +used for the dependent packages.
"hard"
is included in the value or a list element, then it is replaced
+by the hard dependency types.
+If "soft"
or "all"
is included, then it is replaced by all
+hard and soft dependency.
+pak supports extra dependency types for direct
+installations not from CRAN-like repositories.
+These are specified with a Config/Needs/
prefix in the DESCRIPTION
+and they can contain package references, separated by commas.
+For example you can specify packages that are only needed for the
+pkgdown website of the package:
To use these dependency types, you need to specify them in the
+dependencies
argument to
+pak functions.
Note that Config/Needs/*
fields are currently not used from CRAN
+packages, and packages in CRAN-like repositories in general.
Usually you specify that a Config/Needs/*
dependency type should be
+installed together with "hard"
or "all"
, to install all hard or
+soft dependencies as well.
doc_config()
- +‘cache_dir’: (Env var: PKG_CACHE_DIR
, option: pkg.cache_dir
.) Directory to download the packages to. Defaults to a temporary
+directory within the R session temporary directory, see
+base::tempdir()
.
‘cran_mirror’: (Env var: PKG_CRAN_MIRROR
, option: pkg.cran_mirror
.) CRAN mirror to use. Defaults to the repos
option
+(see base::options()
), if that's not set then
+https://cran.rstudio.com
. See also pak::repo_add()
and
+pak::repo_get()
‘git_submodules’: (Env var: PKG_GIT_SUBMODULES
, option: pkg.git_submodules
.) Whether or not to update submodules in git repositories. This
+affects git::
and gitlab::
package sources only.
+If the R package is in a subdirectory then only the submodules
+within that directory are updated. If a submodule appears in
+.Rbuildignore
, then it is skipped.
‘include_linkingto’: (Env var: PKG_INCLUDE_LINKINGTO
, option: pkg.include_linkingto
.) Whether to always include LinkingTo
dependencies in the solution
+of and installation, even if they are needed because the packages
+are installed from binaries. This is sometimes useful, see e.g.
+https://github.com/r-lib/pak/issues/485 for an example use case.
‘library’: (Env var: PKG_LIBRARY
, option: pkg.library
.) Package library to install packages to. It is also used for
+already installed packages when considering dependencies.
‘metadata_cache_dir’: (Env var: PKG_METADATA_CACHE_DIR
, option: pkg.metadata_cache_dir
.) Location of metadata replica of
+pkgcache::cranlike_metadata_cache
. Defaults to a temporary
+directory within the R session temporary directory, see
+base::tempdir()
.
‘metadata_update_after’: (Env var: PKG_METADATA_UPDATE_AFTER
, option: pkg.metadata_update_after
.) A time interval as a difftime object. pak will update the
+metadata cache if it is older than this. The default is one day.
+The PKG_METADATA_UPDATE_AFTER
environment variable may be set
+in seconds (s
suffix), minutes (m
suffix), hours (h
suffix),
+or days (d
suffix). E.g: 1d
means one day.
‘package_cache_dir’: (Env var: PKG_PACKAGE_CACHE_DIR
, option: pkg.package_cache_dir
.) Location of the package cache on the disk. See
+pak::cache_summary()
. Default is selected by pkgcache.
‘platforms’: (Env var: PKG_PLATFORMS
, option: pkg.platforms
.) Character vector of platforms to download or install packages
+for. See pkgdepends::default_platforms()
for possible platform
+names. Defaults to the platform of the current R session, plus
+"source"
.
‘r_versions’: (Env var: PKG_R_VERSIONS
, option: pkg.r_versions
.) Character vector, R versions to download or install
+packages for. It defaults to the current R version.
‘sysreqs’: (Env var: PKG_SYSREQS
, option: pkg.sysreqs
.) Whether to automatically look up and install system requirements.
+If TRUE
, then pkgdepends will try to install required
+system packages. If FALSE
, then system requirements are still
+printed (including OS packages on supported platforms), but they
+are not installed.
+By default it is TRUE
on supported platforms,
+if the current user is the root user or password-less sudo
is
+configured for the current user.
‘sysreqs_db_update’: (Env var: PKG_SYSREQS_DB_UPDATE
, option: pkg.sysreqs_db_update
.) Whether to try to update the system requirements database from
+GitHub. If the update fails, then the cached or the build-in
+database if used. Defaults to TRUE.
‘sysreqs_db_update_timeout’: (Env var: PKG_SYSREQS_DB_UPDATE_TIMEOUT
, option: pkg.sysreqs_db_update_timeout
.) Timeout for the system requirements database update.
+Defaults to five seconds.
‘sysreqs_dry_run’: (Env var: PKG_SYSREQS_DRY_RUN
, option: pkg.sysreqs_dry_run
.) If TRUE
, then pak only prints the system commands to
+install system requirements, but does not execute them.
‘sysreqs_platform’: (Env var: PKG_SYSREQS_PLATFORM
, option: pkg.sysreqs_platform
.) The platform to use for system requirements lookup. On Linux, where
+system requirements are currently supported, it must be a string
+containing the distribution name and release, separated by a dash.
+E.g.: "ubuntu-22.04"
, or "rhel-9"
.
‘sysreqs_rspm_repo_id’: (Env var: PKG_SYSREQS_RSPM_REPO_ID
, option: pkg.sysreqs_rspm_repo_id
.) Posit Package Manager (formerly RStudio Package Manager) repository
+id to use for CRAN system requirements lookup. Defaults to the
+RSPM_REPO_ID
environment variable, if set. If not set, then it
+defaults to 1
.
‘sysreqs_rspm_url’: (Env var: PKG_SYSREQS_RSPM_URL
, option: pkg.sysreqs_rspm_url
.) Root URL of Posit Package Manager (formerly RStudio Package
+Manager) for system requirements lookup. By default the RSPM_ROOT
+environment variable is used, if set. If not set,
+it defaults to https://packagemanager.posit.co
.
‘sysreqs_sudo’: (Env var: PKG_SYSREQS_SUDO
, option: pkg.sysreqs_sudo
.) Whether to use sudo
to install system requirements,
+on Unix. By default it is TRUE
on Linux if the effective user id
+of the current process is not the root
user.
‘sysreqs_update’: (Env var: PKG_SYSREQS_UPDATE
, option: pkg.sysreqs_update
.) Whether to try to update system packages that are already installed.
+It defaults to TRUE
on CI systems: if the CI
environment
+variable is set to true
.
‘sysreqs_verbose’: (Env var: PKG_SYSREQS_VERBOSE
, option: pkg.sysreqs_verbose
.) Whether to echo the output of system requirements installation.
+Defaults to TRUE
if the CI
environment variable is set.
‘use_bioconductor’: (Env var: PKG_USE_BIOCONDUCTOR
, option: pkg.use_bioconductor
.) Whether to automatically use the Bioconductor repositories.
+Defaults to TRUE
.
‘windows_archs’: (Env var: PKG_WINDOWS_ARCHS
, option: pkg.windows_archs
.) Character scalar specifying which architectures
+to download/install for on Windows. Its possible values are:
"prefer-x64"
: Generally prefer x64 binaries. If the current R
+session is x64
, then we download/install x64 packages.
+(These packages might still be multi-architecture binaries!)
+If the current R session is i386
, then we download/install
+packages for both architectures. This might mean compiling
+packages from source if the binary packages are for x64
only,
+like the CRAN Windows binaries for R 4.2.x currently.
+"prefer-x64"
is the default for R 4.2.0 and later.
"both"
: Always download/install packages for both i386
and
+x64
architectures. This might need compilation from source
+if the available binaries are for x64
only, like the CRAN
+Windows binaries for R 4.2.x currently. "both"
is the default
+for R 4.2.0 and earlier.
include_docs("pkgdepends", "docs/pkg-refs.rds", top = FALSE)
+Many pkgdepends and pak functions take package names as arguments.
+E.g. pak::pkg_install()
takes the names of the packages to install,
+pak::pkg_deps_tree()
takes the names of the packages to draw dependency
+trees for.
Most of these function can also take a more generic package reference +instead of a package name. +A package reference also tells pak where to find the +package, the package source.
+To specify a package source, use its name as a prefix, with a ::
+separator.
+E.g. cran::mypkg
means the mypkg
package from CRAN.
A package name is a special package reference, that implicitly specifies
+the configured CRAN(-like) repositories as the package source.
+(We call this the standard
package source.)
+So mypkg
is equivalent to standard::mypkg
and pak look for mypkg in
+any of the configured CRAN-like repositories.
+If you did not explicitly specify any CRAN-like repositories (e.g. with
+options("repos")
), then pak uses the CRAN and Bioconductor repositories
+by default.
This is the list of the currently supported package sources. +We will discuss each in detail below.
cran
: a CRAN package.
bioc
: a Bioconductor package.
standard
: a package from a configured CRAN-like repository.
github
: a package from GitHub.
gitlab
: a package from GitLab.
git
: a package in a git repository.
local
: a local package file or directory.
url
: an URL that points to a package archive.
installed
an installed package.
deps
the dependencies of a local package file or directory.
any
a special reference type that accepts a package from any source.
+See below.
param
a special reference to change how other references are downloaded
+or installed. See "Parameters" below.
To save typing, you do not always need to fully specify the package source
+in a package reference.
+You have seen before that a package name implicitly has a standard
+package source.
+Here are the complete rules for such shorthands, in the order they are
+applied:
If the ref is a valid package name, or a package name with a @
version
+specification, the standard
package source is used. E.g. pkg
is
+equivalent to standard::pkg
and pkg@1.0
is equivalent to
+standard::pkg@1.0
.
If the ref is a valid github
ref type without the github::
prefix,
+then github
is used. E.g. user/repo
is equivalent to
+github::user/repo
and user/repo@tag
is equivalent to
+github::user/repo@tag
, etc.
If the ref is a GitHub URL (see below) without the github::
prefix,
+then github
is used.
If the ref is a path that starts with .
or /
or \
or ~
then
+local
is used. (pak does not check if the path
+exists.)
If a package reference if of the form <package-name>=?<parameters>
,
+then it will be the special param
type. See "Parameters" below.
If the package reference does not have an explicit package source, +and the package source cannot be determined from these rules, then +pak throws an error.
+When pak is looking up the dependencies of a package,
+it needs to be able to determine the name of the dependency from the
+package reference.
+This is sometimes not easy for dependencies in Remotes
(or similar) fields.
For github::
and gitlab::
dependencies pak assumes
+that the package name is the same as the name of the repository. If this
+does not hold, then you need to specify the package name explicitly, using
+a <package>=
prefix. E.g. pins=rstudio/pins-r
. If you specify both the
+package source type and the package name, the package name comes first:
+pins=github::rstudio/pins-r
.
For git::
dependencies, pak assumes that the package
+name is the same as the last component of the repository. If this does not
+hold, then you need to specify the package name explicitly, using a
+<package>=
prefix. E.g. pins=git::https://github.com/rstudio/pins-r
.
For local::
dependencies, you always need to specify the package name
+explicitly. E.g. pins=local::~/works/pins
.
For url::
dependencies, you always need to specify the package name
+explicitly. E.g. ggplot2=url::https://cloud.r-project.org/src/contrib/...
.
Package references may have optional parameters, added after a question
+mark.
+Different parameters are separated by an ampersand (&
) character.
+(This is very similar to how HTTP URLs take query parameters.)
Parameters may be flags that turn on some behavior, or they can have a
+string value, assigned with an equal sign (=
).
+If no value is assigned, then we assume the true
value. For example
+these two package refs are equivalent:
pak allows specifying parameters for downstream packages,
+using the <package>=?<params>
special package reference, where package
is
+the name of the package, and <params>
are the parameters, as above.
+This is useful if you want to add a parameter to a downstream dependency.
For example, to install ggplot2, and always reinstall its cli package
+dependency you could use the ggplot2
and cli=?reinstall
package
+references.
+The latter tells pak to always reinstall cli, even if
+it is already installed.
ignore
is a flag parameter. If specified, the package is ignored.
+This usually makes sense in the packagename=?ignore
form, to ignore a
+downstream soft dependency. If all versions of a hard dependency are
+ignored that will lead to a solution error.
ignore-before-r
is a version number parameter. The package will be
+ignored on R versions that are older than the specified one. E.g.
+Matrix=?ignore-before-r=4.1.2
will ignore the Matrix package on R versions
+that are older than 4.1.2. This parameter really only makes sense in the
+packgename=?ignore
form.
ignore-unavailable
is a flag. It can only be specified for soft
+dependencies. If specified and the package is not available, it will be
+ignored. This parameter really only makes sense in the
+packagename=?ignore-unavailable
form.
source
is a flag parameter. If specified, then a source R package
+is requested from a CRAN-like repository. For package installations
+source
always triggers a re-install. In other words, source
implies the
+reinstall
parameter. This parameter is supported for bioc::
, cran::
+and standard::
remote types, and it is ignored for others.
reinstall
requests a re-install for package installations. It is
+supported by the bioc::
, cran::
, git::
, github::
, gitlab::
,
+local::
, standard::
, and url::
remote types.
nocache
will ignore the package cache. It will always download the
+package file, and it will not add the downloaded (and built) package(s)
+to the package cache. It is supported by the bioc::
, cran::
, git::
,
+github::
, gitlab::
, standard::
and url::
remote types.
cran::
)A package from CRAN. Full syntax:
+<package>
is a valid package name.
<version>
is a version or a version requirement.
Examples:
+ +Note: pak currently parses the version specification part
+(everything after @
), but does not use it.
bioc::
)A package from Bioconductor. The syntax is the same as for CRAN packages, +except for the prefix.
+ +standard::
)These are packages either from CRAN or Bioconductor, the full syntax +is the same as for CRAN packages, except for the prefix:
+ +github::
)Packages from a GitHub repository. Full syntax:
+<package>
is the name of the package. If this is missing, then
+the name of the repository is used.
<username>
is a GitHub username or organization name.
<repository>
is the name of the repository.
<subdir>
optional subdirectory, if the package is within a
+subdirectory in the repository.
<detail>
specifies a certain version of the package, see below.
<detail>
may specify:
a git branch, tag or (prefix of) a commit hash: @<commitish>
;
a pull request: #<pull-request>
; or
the latest release: @*release
.
If <detail>
is missing, then the latest commit of the default
+branch is used.
Examples:
+
r-lib/crayon
+github::r-lib/crayon
+r-lib/crayon@84be6207
+r-lib/crayon@branch
+r-lib/crayon#41
+r-lib/crayon@release
For convenience GitHub HTTP URLs can also be used to specify a +package from GitHub. Examples:
+
https://github.com/r-lib/withr
+# A branch:
+https://github.com/r-lib/withr/tree/ghactions
+# A tag:
+https://github.com/r-lib/withr/tree/v2.1.1
+# A commit:
+https://github.com/r-lib/withr/commit/8fbcb548e316
+# A pull request:
+https://github.com/r-lib/withr/pull/76
+# A release:
+https://github.com/r-lib/withr/releases/tag/v2.1.0
A GitHub remote string can also be used instead of an URL, for example:
+git@github.com:r-lib/pak.git
gitlab::
)Packages from a GitLab repository. Full syntax:
+<package>
is the name of the package. If this is missing, then
+the name of the repository is used.
<project-path>
is a typically the GitLab username or group name, but
+it may contain subgroups.
<repository>
is the name of the repository, or the project in GitLab
+terminology.
<subdir>
optional subdirectory, if the package is within a
+subdirectory in the repository. Note that for GitLab, this must come
+after a /-
prefix, to be able to distinguish it from subgroups.
<detail>
may specify a git branch, tag or (prefix of) a commit hash.
If <detail>
is missing, then the latest commit of the default
+branch is used.
gitlab::
supports git submodules, see the git-submodules
configuration
+entry.
Examples:
+ +git::
)Full syntax:
+<package>
is the name of the package. If this is missing, then
+the last component of the <host>
is used.
<host>
host name and path of the git repository. Some git repositories
+need the .git
suffix here, others are more forgiving.
<detail>
specifies a certain version of the package:
+a git branch, tag or (prefix of) a commit hash: @<commitish>
.
If <detail>
is missing, then the latest commit of the default
+branch is used.
git::
supports git submodules, see the git-submodules
configuration
+entry.
Examples:
+
git::https://github.com/r-lib/crayon
+git::https://github.com/r-lib/crayon.git
+git::https://github.com/r-lib/crayon.git@84be6207
+git::https://github.com/r-lib/crayon.git@branch
+git::https://gitlab.com/gaborcsardi/cli.git
Note that pak has a built-in git client, and does +not require a system git installation.
+If the system has git installed, then pak will use the +credentials stored in the configured git credential store, automatically, +via the gitcreds package.
+local::
)A path that refers to a package file built with R CMD build
, or a
+directory that contains a package. Full syntax:
For brevity, you can omit the local::
prefix, if you specify an
+absolute path, a path from the user's home directory, starting with ~
,
+or a relative path starting with ./
or .\\
.
A single dot ("."
) is considered to be a local package in the current
+working directory.
Examples:
+
local::/foo/bar/package_1.0.0.tar.gz
+local::/foo/bar/pkg
+local::.
+/absolute/path/package_1.0.0.tar.gz
+~/path/from/home
+./relative/path
+.
If you specify a local package in a dependency (i.e. in DESCRIPTION
), then
+you also need to specify the name of the package, see "Package names"
+above.
url::
)You can use url::
to refer to URLs that hold R package archives
+(i.e. properly built with R CMD build
), or compressed directories
+of package trees (i.e. not built with R CMD build
). pak will
+figure out if it needs to run R CMD build
on the package first.
This remote type supports .tar.gz
and .zip
files.
Note that URLs are not ideal remote types, because pak needs to +download the package file to resolve its dependencies. When this happens, +it puts the package file in the cache, so no further downloads are +needed when installing the package later.
+Examples:
+
url::https://cloud.r-project.org/src/contrib/Archive/cli/cli_1.0.0.tar.gz
+url::https://github.com/tidyverse/stringr/archive/HEAD.zip
If you specify a package from an URL in a dependency (i.e. in DESCRIPTION
),
+then you also need to specify the name of the package, see "Package names"
+above.
installed::
)This is usually used internally, but can also be used directly. +Full syntax:
+<path>
is the library the package is installed to.
<package>
is the package name.
Example:
+ +deps::
)Usually used internally, it specifies the dependencies of a local +package. It can be used to download or install the dependencies of a +package, without downloading or installing the package itself. +Full syntax:
+ +Examples:
+ +any::
packagesSometimes you need to install additional packages, but you don't mind
+where they are installed from. Here is an example. You want to install
+cli from GitHub, from r-lib/cli
. You also want to install glue, and
+you don't mind which version of glue is installed, as long as it is
+compatible with the requested cli version. If cli specifies the
+development version of glue, then that is fine. If cli is fine with the
+CRAN version of glue, that's OK, too. If a future version of cli does
+not depend on glue, you still want glue installed, from CRAN. The any::
+reference type does exactly this.
In our example you might write
+
pak::pkg_install(c("glue", "r-lib/cli"))
first, but this will fail if rlib/cli
requests (say) tidyverse/glue
,
+because in pkg_install()
"glue"
is interpreted as "standard::glue"
,
+creating a conflict with tidyverse/glue
. On the other hand
pak::pkg_install(c("any::glue", "r-lib/cli"))
works, independently of which glue version is requested by cli.
+Remotes
fieldIn the DESCRIPTION
file of an R package you can mark any regular
+dependency defined in the Depends
, Imports
, Suggests
or Enhances
+fields as being installed from a non-standard package source by adding
+a package reference to a Remotes
entry.
+pak will download and install the package from the
+from the specified location, instead of a CRAN-like repository.
The remote dependencies specified in Remotes
is a comma separated
+list of package sources:
Note that you will still need add the package to one of the regular
+dependency fields, i.e. Imports
, Suggests
, etc. Here is a concrete
+example that specifies the r-lib/glue
package:
Imports: glue
+Remotes: r-lib/glue,
+ r-lib/httr@v0.4,
+ klutometis/roxygen#142,
+ r-lib/testthat@c67018fa4970
The CRAN and Bioconductor repositories do not support the Remotes
+field, so you need to remove this field, before submitting your package
+to either of them.
A data frame with the dependency data, it includes pkg
as well. It has the following columns.
-include_docs("pkgdepends", "docs/resolution-result.rds")
built
: the Built
field from the DESCRIPTION
file of binary
+packages, for which this information is available.
cache_status
: whether the package file is in the package cache.
+It is NA
for installed::
package refs.
dep_types
: character vector of dependency types that were
+considered for this package. (This is a list column.)
deps
: dependencies of the package, in a data frame. See
+"Package dependency tables" below.
direct
: whether this package (ref, really) was directly specified,
+or added as a dependency.
error
: this is a list column that contains error objects for the
+refs that pkgdepends failed to resolve.
filesize
: the file size in bytes, or NA
if this information is
+not available.
license
: license of the package, or NA
if not available.
md5sum
: MD5 checksum of the package file, if available, or NA
if
+not.
metadata
: a named character vector. These fields will be (should be)
+added to the installed DESCRIPTION
file of the package.
mirror
: URL of the CRAN(-like) mirror site where the metadata was
+obtained from. It is NA for non-CRAN-like sources, e.g. local files,
+installed packages, GitHub, etc.
needscompilation
: whether the package needs compilation.
package
: package name.
priority
: this is "base"
for base packages, "recommended"
for
+recommended packages, and NA
otherwise.
ref
: package reference.
remote
: the parsed remote_ref
objects, see parse_pkg_refs()
.
+This is a list column.
repodir
: the directory where this package should be in a CRAN-like
+repository.
sha256
: SHA256 hash of the package file, if available, otherwise
+NA
.
sources
: URLs where this package can be downloaded from. This is not
+necessarily a URL that you can download with a HTTP client. E.g. for
+local::
refs it is a path, and for git::
refs it is a URL for git.
+It is a zero length vector for installed::
refs.
status
: status of the dependency resolution, "OK"
or "FAILED"
.
target
: path where this package should be saved in a CRAN-repository.
type
: ref type.
version
: package version.
direct
(logical),
+needscompilation
(logical), filesize
(integer), deps
(list column, see
+"Package dependency tables" below), sources
(list of character vectors),
+remote
(list), error
(list), metadata
(list), dep_types
(list).
+A package dependency tables in the deps
list column have five columns
+currently:
ref
: the package ref of the dependency.
type
: the dependency type, in all lowercase. I.e. imports
,
+suggests
, etc.
package
: package name of the dependency.
op
: operator for version requirements, e.g. >=
.
version
: version number, for version requirements.
Data frame with information about the downloaded packages, invisibly. Columns: -include_docs("pkgdepends", "docs/download-result.rds")
+built
: the Built
field from the DESCRIPTION
file of binary
+packages, for which this information is available.
cache_status
: whether the package file is in the package cache.
+It is NA
for installed::
package refs.
dep_types
: character vector of dependency types that were
+considered for this package. (This is a list column.)
deps
: dependencies of the package, in a data frame. See
+"Package dependency tables" below.
direct
: whether this package (ref, really) was directly specified,
+or added as a dependency.
error
: this is a list column that contains error objects for the
+refs that pkgdepends failed to resolve.
filesize
: the file size in bytes, or NA
if this information is
+not available.
license
: license of the package, or NA
if not available.
md5sum
: MD5 checksum of the package file, if available, or NA
if
+not.
metadata
: a named character vector. These fields will be (should be)
+added to the installed DESCRIPTION
file of the package.
mirror
: URL of the CRAN(-like) mirror site where the metadata was
+obtained from. It is NA for non-CRAN-like sources, e.g. local files,
+installed packages, GitHub, etc.
needscompilation
: whether the package needs compilation.
package
: package name.
priority
: this is "base"
for base packages, "recommended"
for
+recommended packages, and NA
otherwise.
ref
: package reference.
remote
: the parsed remote_ref
objects, see parse_pkg_refs()
.
+This is a list column.
repodir
: the directory where this package should be in a CRAN-like
+repository.
sha256
: SHA256 hash of the package file, if available, otherwise
+NA
.
sources
: URLs where this package can be downloaded from. This is not
+necessarily a URL that you can download with a HTTP client. E.g. for
+local::
refs it is a path, and for git::
refs it is a URL for git.
+It is a zero length vector for installed::
refs.
status
: status of the dependency resolution, "OK"
or "FAILED"
.
target
: path where this package should be saved in a CRAN-repository.
type
: ref type.
version
: package version.
fulltarget
: absolute path to the downloaded file. At most one of
+fulltarget
and fulltarget_tree
must exist on the disk.
fulltarget_tree
: absolute path to a package tree directory. At most
+one of fulltarget
and fulltarget_tree
must exist on the disk.
download_status
: "Had"
or "Got"
, depending on whether the file
+was obtained from the cache.
download_error
: error object for failed downloads.
file_size
: Size of the file, or NA
. For installed::
refs, it is
+NA
, and it is also NA
for refs that created fulltarget_tree
+instead of fulltarget
.
fulltarget
, if it exists, contains a packaged (via R CMD build
)
+source R package. If fulltarget_tree
exists, it is a package tree
+directory, that still needs an R CMD build
call.Additional columns might be present. They are either used internally or
+they are experimental. They might be removed or changed at any time.All columns are of type character, except for direct
(logical),
+needscompilation
(logical), filesize
(integer), deps
(list column, see
+"Package dependency tables" below), sources
(list of character vectors),
+remote
(list), error
(list), metadata
(list), dep_types
(list).
+A package dependency tables in the deps
list column have five columns
+currently:
ref
: the package ref of the dependency.
type
: the dependency type, in all lowercase. I.e. imports
,
+suggests
, etc.
package
: package name of the dependency.
op
: operator for version requirements, e.g. >=
.
version
: version number, for version requirements.
Data frame with data about installations of pkg
.
-include_docs("pkgdepends", "docs/lib-status-return.rds")
biocviews
: the corresponding field from DESCRIPTION
, it must be
+present for all Bioconductor packages, other packages typically don't
+have it.
built
: the Built
field from DESCRIPTION
.
depends
, suggests
, Imports
, linkingto
, enhances
: the corresponding
+fields from the DESCRIPTION
files.
deps
: A list or data frames, the dependencies of the package. It has
+columns: ref
, type
(dependency type in lowercase), package
+(dependent package, or R
), op
and version
, for last two are for
+version requirement. op
can be >=
, >
, ==
or <=
, although the
+only the first one is common in practice.
library
: path to the package library containing the package.
license
: from DESCRIPTION
.
md5sum
: from DESCTIPTION
, typically NA
, except on Windows.
needscompilation
: from DESCRIPTION
, this column is logical.
package
: package name.
platform
: from the Built
field in DESCRIPTION
, the current platform
+if missing from DESCRIPTION
.
priority
: from DESCRIPTION
, usually base
, recommended
, or missing.
ref
: the corresponding installed::*
package reference.
repository
: from DESCRIPTION
. For packages from a CRAN repository this
+is CRAN
, some other repositories, e.g. R-universe adds the repository
+URL here.
repotype
: cran
, bioc
or missing.
rversion
: from the Built
field. If no such field, then the current
+R version.
sysreqs
: the SystemRequirements
field from DESCRIPTION
.
title
: package title.
type
: always installed
.
version
: package version (as string).
DESCRIPTION
, but
+pak also adds a couple.
+In addition, it also has all remote*
and config/needs/*
entries from
+the DESCRIPTION
files. (Case insensitive.)
All columns are of type character
, except for needscompilation
, which
+is logical and deps
, which is a list columns.
If an entry is missing for a package, it is set to NA
.
Note that column names are lowercase, even if the corresponding entries
+are not in DESCRIPTION
.
The order of the columns is not deterministic, so don't assume any order.
Additional columns might be present, these are internal for +pak and should not be used in user code.
System requirements platform.
If NULL
, then the sysreqs_platform
-man_config_link("configuration option") is used, which defaults to
+configuration option
+ is used, which defaults to
the current platform.
Set this option if to one of platforms() if .packageName +
Set this option if to one of "centos"
, "debian"
, "fedora"
, "opensuse"
, "redhat"
, "redhat"
, "redhat"
, "rockylinux"
, "sle"
, "ubuntu"
+ if pak
+
fails to correctly detect your platform or if you want to see the system
requirements for a different platform.
Site built with pkgdown 2.1.1.
+Site built with pkgdown 2.1.1.9000.
diff --git a/reference/ppm_platforms.html b/reference/ppm_platforms.html index 2f6266194..1ae7587a8 100644 --- a/reference/ppm_platforms.html +++ b/reference/ppm_platforms.html @@ -1,5 +1,5 @@ -Site built with pkgdown 2.1.1.
+Site built with pkgdown 2.1.1.9000.
diff --git a/reference/ppm_r_versions.html b/reference/ppm_r_versions.html index a225d6c00..8b2ffc82b 100644 --- a/reference/ppm_r_versions.html +++ b/reference/ppm_r_versions.html @@ -1,5 +1,5 @@ -Site built with pkgdown 2.1.1.
+Site built with pkgdown 2.1.1.9000.
diff --git a/reference/ppm_repo_url.html b/reference/ppm_repo_url.html index fce82e4bf..2ce05f973 100644 --- a/reference/ppm_repo_url.html +++ b/reference/ppm_repo_url.html @@ -1,5 +1,5 @@ -Site built with pkgdown 2.1.1.
+Site built with pkgdown 2.1.1.9000.
diff --git a/reference/ppm_snapshots.html b/reference/ppm_snapshots.html index 32d768272..87b342523 100644 --- a/reference/ppm_snapshots.html +++ b/reference/ppm_snapshots.html @@ -1,5 +1,5 @@ -Site built with pkgdown 2.1.1.
+Site built with pkgdown 2.1.1.9000.
diff --git a/reference/repo_add.html b/reference/repo_add.html index 2343f2cc7..28bc6fe37 100644 --- a/reference/repo_add.html +++ b/reference/repo_add.html @@ -1,5 +1,5 @@ -These functions use the sysreqs_platform
configuration option,
-see man_config_link("Configuration"). Set this if
+see Configuration
+. Set this if
pak does not detect your platform correctly.