Results of running
pkgcheck
package on your local computer may differ from
results generated by rOpenSci’s automated checking system. The pkgcheck-action
GitHub action provides a standard computational system for running
pkgcheck
, and can be used to trigger checks on every push
to GitHub. Some packages may nevertheless depend on other system
libraries, or packages from other programming languages, that are not
included in the standard environment used by the pkgcheck-action
.
This vignette describes the computational environment for
pkgcheck
, including advice on how it may be modified to
ensure your package passes rOpenSci’s automated checks.
pkgcheck
Docker containerBoth pkgcheck-action
and rOpenSci’s own checking system use the Docker container provided in the
pkgcheck
Dockerfile. This Docker environment builds on
the GitHub
“runner” images, with the first couple of hundred lines installing
all system libraries needed to replicate that environment.
That Docker environment also includes installations of:
reticulate
package, with an associated virtual python environment, and any
python packages needed in rOpenSci’s suite of packages.quarto
to enable
packages to use quarto vignettes, or documents in any other format
provided by quarto.If you are preparing a package for submission, and it is failing pkgcheck-action
because of missing software, whether system dependencies not otherwise
covered in sysreqsdb
,
missing packages from either Julia or python, or some other system
requirement, you can first modify your local pkgcheck-action
workflow file to install these requirements as additional “steps”.
Once you’ve got the pkgcheck-action
passing on your local
repository, you may also submit a pull request to update our own Dockerfile
with whatever additional system dependencies your package may
require.