check
automatically builds and checks a source
package, using all know best practices. Passing R
CMD check
is essential if you want to submit your
package to CRAN: you must not have an ERRORs or WARNINGs,
and you want to ensure that there are as few NOTEs as
possible. If you are not submitting to CRAN, at least
ensure that there are no ERRORs: these typically
represent serious problems.check(pkg = ".", document = TRUE,
doc_clean = getOption("devtools.cleandoc"),
cleanup = TRUE, cran = TRUE, check_version = FALSE,
force_suggests = TRUE, args = NULL, build_args = NULL,
quiet = FALSE)
as.package
for more informationTRUE
(the default), will update
and check documentation before running formal check.TRUE
the check directory is
removed if the check is successful - this allows you to
inspect the results to figure out what went wrong. If
FALSE
the check directory is never removed.TRUE
(the default), check using the
same settings as CRAN uses.TRUE
, will delete all files in
the man
directory and regenerate them from scratch
with roxygen. The default is to use the value of the
"devtools.cleandoc"
option.TRUE
, check that the new
version is greater than the current version on CRAN, by
setting the _R_CHECK_CRAN_INCOMING_
environment
variable to TRUE
.FALSE
, don't force
suggested packages, by setting the
_R_CHECK_FORCE_SUGGESTS_
environment variable to
FALSE
.TRUE
suppresses output from this
function.
r_env_vars
. Of particular note for package
tests is theNOT_CRAN
env var which lets you know
that your tests are not running on cran, and hence can
take a reasonable amount of time.compiler_flags(FALSE)
.cran_env_vars
. Unforutnately exactly what CRAN
does when checking a package is not publicly documented,
but we do our best to simulate as accurately as possible
given what we know.R CMD check
does not - these are typically things
that the CRAN maintainers will complain about if you
haven't done, but haven't yet included in the formal
testing process. These are run after R CMD check
There is currently one test that checks you haven't includes any non-standard directories in the top-level R file.
check
automatically builds a package before using
R CMD check
as this is the recommended way to
check packages. Note that this process runs in an
independent realisation of R, so nothing in your current
workspace will affect the process.release
if you want to send the checked
package to CRAN.