Record R-multiverse package issues in package-specific JSON files.
Usage
record_issues(
repo = "https://community.r-multiverse.org",
versions = "versions.json",
output = "issues.json",
mock = NULL,
verbose = FALSE
)
Arguments
- repo
Character of length 1, URL of the package repository. R-multiverse uses
"https://community.r-multiverse.org"
.- versions
Character of length 1, file path to a JSON manifest tracking the history of released versions of packages.
- output
Character of length 1, file path to the JSON file to record new package issues. Each call to
record_issues()
overwrites the contents of the file.- mock
For testing purposes only, a named list of data frames for inputs to various intermediate functions.
- verbose
TRUE
to print progress while checking issues with dependencies,FALSE
otherwise.
Package issues
Functions like issues_versions()
and issues_descriptions()
perform health checks for all packages in R-multiverse.
For a complete list of checks, see
the issues_*()
functions listed at
https://r-multiverse.org/multiverse.internals/reference/index.html.
record_versions()
updates the version number history
of releases in R-multiverse, and record_issues()
gathers
together all the issues about R-multiverse packages.
Issue data
For each package with observed problems, record_issues()
writes
a JSON list entry in the output JSON file
with one element for each type of failing check.
Each check-specific element has an informative name
(for example, checks
, descriptions
, or versions
)
and a list of diagnostic information. In addition, there is a date
field to indicate when an issue was first detected. The date
automatically resets the next time all the issues in the package
are resolved.
Examples
repo <- "https://wlandau.r-universe.dev"
output <- tempfile()
versions <- tempfile()
record_versions(
versions = versions,
repo = repo
)
record_issues(
repo = repo,
versions = versions,
output = output
)
writeLines(readLines(output))
#> {
#> "autometric": {
#> "checks": {
#> "url": ["https://github.com/r-universe/wlandau/actions/runs/13277554136"],
#> "issues": {
#> "linux": ["MISSING"]
#> }
#> },
#> "success": [false],
#> "date": ["2025-03-12"],
#> "version": ["0.1.2.9000"],
#> "remote_hash": ["13ec8d2cfba955081cf3e19eb5e74af07ba89bef"]
#> },
#> "crew": {
#> "success": [true],
#> "date": ["2025-03-12"],
#> "version": ["1.0.0.9001"],
#> "remote_hash": ["7d460e26f4c45233bee15ff4db9564503ec4b21a"]
#> },
#> "crew.aws.batch": {
#> "success": [true],
#> "date": ["2025-03-12"],
#> "version": ["0.0.8"],
#> "remote_hash": ["136fedb9df30123b7c216ac75a66f29e8e94f2c1"]
#> },
#> "crew.cluster": {
#> "success": [true],
#> "date": ["2025-03-12"],
#> "version": ["0.3.4.9000"],
#> "remote_hash": ["f9ecd38a1b8736157b06635f5e0cb43cb80c09a4"]
#> },
#> "mirai": {
#> "success": [true],
#> "date": ["2025-03-12"],
#> "version": ["2.1.0.9001"],
#> "remote_hash": ["8747429e052e3901dec27f0c2544d6556c297e87"]
#> },
#> "nanonext": {
#> "success": [true],
#> "date": ["2025-03-12"],
#> "version": ["1.5.1.9001"],
#> "remote_hash": ["77b1cac28f96ab4f48007f37d0a2de1f8a1357ad"]
#> }
#> }