check_packages_in_dir {tools} | R Documentation |
Check Source Packages and Their Reverse Dependencies
Description
Check source packages in a given directory, optionally with their reverse dependencies.
Usage
check_packages_in_dir(dir,
pfiles = Sys.glob("*.tar.gz"),
check_args = character(),
check_args_db = list(),
reverse = NULL,
check_env = character(),
xvfb = FALSE,
Ncpus = getOption("Ncpus", 1L),
clean = TRUE,
install_args = list(),
parallel_args = list(),
...)
summarize_check_packages_in_dir_results(dir, all = TRUE,
full = FALSE, ...)
summarize_check_packages_in_dir_timings(dir, all = FALSE,
full = FALSE)
summarize_check_packages_in_dir_depends(dir, all = FALSE,
which = c("Depends",
"Imports",
"LinkingTo"))
check_packages_in_dir_changes(dir, old,
outputs = FALSE, sources = FALSE, ...)
check_packages_in_dir_details(dir, logs = NULL, drop_ok = TRUE, ...)
Arguments
dir |
a character string giving the path to the directory with the source ‘.tar.gz’ files to be checked. |
pfiles |
(optional) character vector of tarball files to be
checked. Useful for choosing a subset of the ‘*.tar.gz’ files in
|
check_args |
a character vector with arguments to be passed to
|
check_args_db |
a named list of character vectors with arguments
to be passed to |
reverse |
a list with names partially matching |
check_env |
a character vector of name=value strings to set environment variables for checking, or a list of length two of such character vectors to be used for checking packages and reverse dependencies, respectively. |
xvfb |
a logical indicating whether to perform checking inside a
virtual framebuffer X server (Unix only), or a character vector of
|
Ncpus |
the number of parallel processes to use for parallel installation and checking. |
clean |
a logical indicating whether to remove the downloaded reverse dependency sources. |
install_args |
list of arguments to be passed to underlying
|
parallel_args |
list of arguments to be passed to underlying calls
of |
... |
passed to |
all |
a logical indicating whether to also summarize the reverse dependencies checked. |
full |
a logical indicating whether to also give details for checks with non-ok results, or summarize check example timings (if available). |
which |
see |
old |
a character string giving the path to the directory of a
previous |
outputs |
a logical indicating whether to analyze changes in the outputs of the checks performed, or only (default) the status of the checks. |
sources |
a logical indicating whether to also investigate the
changes in the source files checked (default: |
logs |
a character vector with the paths of ‘00check.log’ to
analyze. Only used if |
drop_ok |
a logical indicating whether to drop checks with ‘ok’ status, or a character vector with the ‘ok’ status tags to drop. The default corresponds to tags ‘OK’, ‘NONE’ and ‘SKIPPED’. |
Details
check_packages_in_dir
allows to conveniently check source
package ‘.tar.gz’ files in the given directory dir
, along
with their reverse dependencies as controlled by reverse
.
The "which"
component of reverse
can also be a list, in
which case reverse dependencies are obtained for each element of the
list and the corresponding element of the "recursive"
component
of reverse
(which is recycled as needed).
If needed, the source ‘.tar.gz’ files of the reverse dependencies
to be checked as well are downloaded into dir
(and removed at
the end if clean
is true). Next, all packages (additionally)
needed for checking are installed to the ‘Library’ subdirectory
of dir
. Then, all ‘.tar.gz’ files are checked using the
given arguments and environment variables, with outputs and messages
to files in the ‘Outputs’ subdirectory of dir
. The
‘*.Rcheck’ directories with the check results of the reverse
dependencies are renamed by prefixing their base names with
‘rdepends_’.
Results and timings can conveniently be summarized using
summarize_check_packages_in_dir_results
and
summarize_check_packages_in_dir_timings
, respectively.
Installation and checking is performed in parallel if Ncpus
is
greater than one: this will use mclapply
on
Unix and parLapply
on Windows.
check_packages_in_dir
returns an object inheriting from class
"check_packages_in_dir"
which has print
and
summary
methods.
check_packages_in_dir_changes
allows to analyze the effect of
changing (some of) the sources. With dir
and old
the
paths to the directories with the new and old sources, respectively,
and the corresponding check results, possible changes in the check
results can conveniently be analyzed as controlled via options
outputs
and sources
. The changes object returned can be
subscripted according to change in severity from the old to the new
results by using one of "=="
, "!="
, "<"
,
"<="
, ">"
or ">="
as row index.
check_packages_in_dir_details
analyzes check log files to
obtain check details as a data frame which can be used for further
processing, providing check name, status and output for every check
performed and not dropped according to status tag (via variables
Check
, Status
and Output
, respectively).
Environment variable _R_CHECK_ELAPSED_TIMEOUT_ can be used to
set a limit on the elapsed time of each check
run. See the
‘R Internals’ manual for how the value is interpreted and for
other environment variables which can be used for finer-grained
control on timeouts within a check
run.
Note
This functionality is still experimental: interfaces may change in future versions.
Examples
## Not run:
## Check packages in dir without reverse dependencies:
check_packages_in_dir(dir)
## Check packages in dir and their reverse dependencies using the
## defaults (all repositories in getOption("repos"), all "strong"
## reverse dependencies, no recursive reverse dependencies):
check_packages_in_dir(dir, reverse = list())
## Check packages in dir with their reverse dependencies from CRAN,
## using all strong reverse dependencies and reverse suggests:
check_packages_in_dir(dir,
reverse = list(repos = getOption("repos")["CRAN"],
which = "most"))
## Check packages in dir with their reverse dependencies from CRAN,
## using '--as-cran' for the former but not the latter:
check_packages_in_dir(dir,
check_args = c("--as-cran", ""),
reverse = list(repos = getOption("repos")["CRAN"]))
## End(Not run)