diff --git a/.lintr b/.lintr index 15dfb20..e54e2c6 100644 --- a/.lintr +++ b/.lintr @@ -4,4 +4,3 @@ linters: linters_with_defaults( object_length_linter = NULL, object_name_linter = NULL, object_usage_linter = NULL) -exclusions: list("inst/pipelines/use_targets.R", "R/class_database.R") diff --git a/DESCRIPTION b/DESCRIPTION index c2e7ca7..a797343 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,10 +1,10 @@ -Package: r.releases.internals -Title: Internal Infrastructure for An R Universe of Package Releases -Description: Internal infrastructure for an R universe of package releases. -Version: 0.0.16 +Package: multiverse.internals +Title: Internal Infrastructure for R-multiverse +Description: Internal Infrastructure for R-multiverse +Version: 0.1.0 License: MIT + file LICENSE -URL: https://github.com/r-releases/r.releases.internals -BugReports: https://github.com/r-releases/r.releases.internals/issues +URL: https://github.com/r-multiverse/multiverse.internals +BugReports: https://github.com/r-multiverse/multiverse.internals/issues Authors@R: c( person( given = c("William", "Michael"), diff --git a/NAMESPACE b/NAMESPACE index 90a3e74..b6250e0 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -1,5 +1,6 @@ # Generated by roxygen2: do not edit by hand +export(aggregate_listings) export(assert_cran_url) export(assert_package) export(assert_release_exists) @@ -8,7 +9,6 @@ export(record_versions) export(review_pull_request) export(review_pull_requests) export(try_message) -export(write_universe_manifest) importFrom(gh,gh) importFrom(jsonlite,parse_json) importFrom(jsonlite,read_json) diff --git a/NEWS.md b/NEWS.md index 8116f1f..54163d1 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,7 @@ +# multiverse.internals 0.1.0 + +* Rename the package to `multiverse.internals`. + # r.releases.internals 0.0.16 * Retry failed merge attempts. diff --git a/R/write_universe_manifest.R b/R/aggregate_listings.R similarity index 73% rename from R/write_universe_manifest.R rename to R/aggregate_listings.R index 94b2ba8..09a8e59 100644 --- a/R/write_universe_manifest.R +++ b/R/aggregate_listings.R @@ -1,8 +1,9 @@ -#' @title Build the `packages.json` manifest for the universe. +#' @title Build an R-universe `packages.json` manifest from a collection of +#' text file contributions with individual package URLs. #' @export #' @keywords internal -#' @description Create the R-universe `packages.json` file -#' from constituent text files with URLs. +#' @description Build an R-universe `packages.json` manifest from a collection +#' of text file contributions with individual package URLs. #' @return NULL (invisibly) #' @param input Character of length 1, directory path with the #' text file listings of R releases. @@ -11,7 +12,7 @@ #' @param release_exceptions Character vector of URLs of GitHub owners #' where `"branch": "*release"` should be omitted. Example: #' `"https://github.com/cran"`. -write_universe_manifest <- function( +aggregate_listings <- function( input = getwd(), output = "packages.json", release_exceptions = character(0L) @@ -20,14 +21,14 @@ write_universe_manifest <- function( assert_character_scalar(output, "invalid output") assert_file(input) packages <- list.files(input, all.files = FALSE, full.names = TRUE) - message("Processing ", length(packages), " package entries.") - entries <- lapply( + message("Processing ", length(packages), " package listings.") + listings <- lapply( X = packages, - FUN = read_package_entry, + FUN = read_package_listing, release_exceptions = release_exceptions ) - message("Aggregating ", length(entries), " package entries.") - aggregated <- do.call(what = vctrs::vec_rbind, args = entries) + message("Aggregating ", length(listings), " package listings.") + aggregated <- do.call(what = vctrs::vec_rbind, args = listings) if (!file.exists(dirname(output))) { dir.create(dirname(output)) } @@ -36,15 +37,15 @@ write_universe_manifest <- function( invisible() } -read_package_entry <- function(package, release_exceptions) { - message("Processing package entry ", package) +read_package_listing <- function(package, release_exceptions) { + message("Processing package listing ", package) name <- trimws(basename(package)) lines <- readLines(con = package, warn = FALSE) json <- try(jsonlite::parse_json(lines), silent = TRUE) if (inherits(json, "try-error")) { - json <- package_entry_url(name = name, url = lines) + json <- package_listing_url(name = name, url = lines) } else { - json <- package_entry_json(name = name, json = json) + json <- package_listing_json(name = name, json = json) } decide_release_exceptions( json = json, @@ -52,7 +53,7 @@ read_package_entry <- function(package, release_exceptions) { ) } -package_entry_url <- function(name, url) { +package_listing_url <- function(name, url) { message <- assert_package_lite(name = name, url = url) if (!is.null(message)) { stop(message, call. = FALSE) @@ -64,7 +65,7 @@ package_entry_url <- function(name, url) { ) } -package_entry_json <- function(name, json) { +package_listing_json <- function(name, json) { fields <- names(json) good_fields <- identical( sort(fields), @@ -72,7 +73,7 @@ package_entry_json <- function(name, json) { ) if (!good_fields) { stop( - "Custom JSON entry for package ", + "Custom JSON listing for package ", shQuote(name), " must have fields 'packages', 'url', 'branch', and 'subdir' ", "and no other fields.", @@ -100,7 +101,7 @@ package_entry_json <- function(name, json) { message = paste( "Invalid value in field", shQuote(field), - "in the JSON entry for package name", + "in the JSON listing for package name", shQuote(name) ) ) diff --git a/R/assert_release_exists.R b/R/assert_release_exists.R index f4873ca..639188f 100644 --- a/R/assert_release_exists.R +++ b/R/assert_release_exists.R @@ -74,7 +74,7 @@ no_release_message <- function(url) { paste0( "No full release found at URL ", shQuote(url), - ".\n\nThe R-releases project relies on GitHub/GitLab releases ", + ".\n\nThe R-multiverse project relies on GitHub/GitLab releases ", "to distribute deployed versions of R packages, so we must ", "ask that each contributed package host a release for its ", "latest non-development version.\n\n", diff --git a/R/package.R b/R/package.R index 875a8c8..6294741 100644 --- a/R/package.R +++ b/R/package.R @@ -1,7 +1,6 @@ -#' r.releases.internals: Internal infrastructure for an R universe -#' of package releases. -#' @description Utilities for an R universe of package releases. -#' @name r.releases.internals-package +#' multiverse.internals: Internal Infrastructure for R-multiverse. +#' @description Internal Infrastructure for R-multiverse. +#' @name multiverse.internals-package #' @family help #' @importFrom gh gh #' @importFrom jsonlite parse_json read_json stream_in write_json diff --git a/R/record_versions.R b/R/record_versions.R index bc3409e..62e7e0a 100644 --- a/R/record_versions.R +++ b/R/record_versions.R @@ -18,8 +18,8 @@ record_versions <- function( manifest = "versions.json", issues = "version_issues.json", - repo = "https://r-releases.r-universe.dev", - current = r.releases.internals::get_current_versions(repo = repo) + repo = "https://r-multiverse.r-universe.dev", + current = multiverse.internals::get_current_versions(repo = repo) ) { if (!file.exists(manifest)) { jsonlite::write_json(x = current, path = manifest, pretty = TRUE) @@ -43,7 +43,7 @@ record_versions <- function( #' @return A data frame of packages with their current versions and hashes. #' @inheritParams record_versions get_current_versions <- function( - repo = "https://r-releases.r-universe.dev" + repo = "https://r-multiverse.r-universe.dev" ) { listing <- file.path( contrib.url(repos = repo, type = "source"), diff --git a/R/review_pull_request.R b/R/review_pull_request.R index 27167ea..cb2d9d6 100644 --- a/R/review_pull_request.R +++ b/R/review_pull_request.R @@ -15,7 +15,7 @@ #' @param number Positive integer of length 1, index of the pull request #' in the repo. review_pull_request <- function( - owner = "r-releases", + owner = "r-multiverse", repo = "contributions", number ) { @@ -155,7 +155,7 @@ pull_request_defer <- function(owner, repo, number, message) { body = paste0( message, "\n\nThis pull request has been marked for manual review. ", - "Please either wait for an R-releases moderator to review, ", + "Please either wait for an R-multiverse moderator to review, ", "or close this pull request and open a different one ", "which passes automated checks." ) @@ -215,9 +215,9 @@ pull_request_merge <- function(owner, repo, number) { number = number, body = paste( "This pull request was automatically merged", - "to incorporate new packages into R-releases.", + "to incorporate new packages into R-multiverse.", "An automated GitHub actions job will deploy the packages", - "as described at https://r-releases.github.io/.", + "as described at https://r-multiverse.github.io/.", "Thank you for your contribution." ) ) diff --git a/R/review_pull_requests.R b/R/review_pull_requests.R index 0339732..2ce8d6a 100644 --- a/R/review_pull_requests.R +++ b/R/review_pull_requests.R @@ -6,7 +6,7 @@ #' @return `NULL` (invisibly). #' @inheritParams review_pull_request review_pull_requests <- function( - owner = "r-releases", + owner = "r-multiverse", repo = "contributions" ) { assert_character_scalar(owner) diff --git a/README.md b/README.md index 83c0195..05539e9 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ -# `r.releases.internals` +# `multiverse.internals` -[![check](https://github.com/r-releases/r.releases.internals/actions/workflows/check.yaml/badge.svg)](https://github.com/r-releases/r.releases.internals/actions?query=workflow%3Acheck) -[![lint](https://github.com/r-releases/r.releases.internals/actions/workflows/lint.yaml/badge.svg)](https://github.com/r-releases/r.releases.internals/actions?query=workflow%3Alint) +[![check](https://github.com/r-multiverse/multiverse.internals/actions/workflows/check.yaml/badge.svg)](https://github.com/r-multiverse/multiverse.internals/actions?query=workflow%3Acheck) +[![lint](https://github.com/r-multiverse/multiverse.internals/actions/workflows/lint.yaml/badge.svg)](https://github.com/r-multiverse/multiverse.internals/actions?query=workflow%3Alint) -`r.releases.internals` is an R package to support the internal infrastructure for the R-releases project. +`multiverse.internals` is an R package to support the internal infrastructure for the R-multiverse project. -For all matters please refer to . +For all matters please refer to . diff --git a/man/write_universe_manifest.Rd b/man/aggregate_listings.Rd similarity index 60% rename from man/write_universe_manifest.Rd rename to man/aggregate_listings.Rd index 03efed6..f2c76ba 100644 --- a/man/write_universe_manifest.Rd +++ b/man/aggregate_listings.Rd @@ -1,10 +1,11 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/write_universe_manifest.R -\name{write_universe_manifest} -\alias{write_universe_manifest} -\title{Build the \code{packages.json} manifest for the universe.} +% Please edit documentation in R/aggregate_listings.R +\name{aggregate_listings} +\alias{aggregate_listings} +\title{Build an R-universe \code{packages.json} manifest from a collection of +text file contributions with individual package URLs.} \usage{ -write_universe_manifest( +aggregate_listings( input = getwd(), output = "packages.json", release_exceptions = character(0L) @@ -25,7 +26,7 @@ where \code{"branch": "*release"} should be omitted. Example: NULL (invisibly) } \description{ -Create the R-universe \code{packages.json} file -from constituent text files with URLs. +Build an R-universe \code{packages.json} manifest from a collection +of text file contributions with individual package URLs. } \keyword{internal} diff --git a/man/get_current_versions.Rd b/man/get_current_versions.Rd index d7b5fe1..e66f8e4 100644 --- a/man/get_current_versions.Rd +++ b/man/get_current_versions.Rd @@ -4,7 +4,7 @@ \alias{get_current_versions} \title{Get the current versions of packages} \usage{ -get_current_versions(repo = "https://r-releases.r-universe.dev") +get_current_versions(repo = "https://r-multiverse.r-universe.dev") } \arguments{ \item{repo}{Character string of package repositories to track.} diff --git a/man/multiverse.internals-package.Rd b/man/multiverse.internals-package.Rd new file mode 100644 index 0000000..a9c86f0 --- /dev/null +++ b/man/multiverse.internals-package.Rd @@ -0,0 +1,9 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/package.R +\name{multiverse.internals-package} +\alias{multiverse.internals-package} +\title{multiverse.internals: Internal Infrastructure for R-multiverse.} +\description{ +Internal Infrastructure for R-multiverse. +} +\concept{help} diff --git a/man/r.releases.internals-package.Rd b/man/r.releases.internals-package.Rd deleted file mode 100644 index 6ea8605..0000000 --- a/man/r.releases.internals-package.Rd +++ /dev/null @@ -1,10 +0,0 @@ -% Generated by roxygen2: do not edit by hand -% Please edit documentation in R/package.R -\name{r.releases.internals-package} -\alias{r.releases.internals-package} -\title{r.releases.internals: Internal infrastructure for an R universe -of package releases.} -\description{ -Utilities for an R universe of package releases. -} -\concept{help} diff --git a/man/record_versions.Rd b/man/record_versions.Rd index ff07c59..8ab2d18 100644 --- a/man/record_versions.Rd +++ b/man/record_versions.Rd @@ -7,8 +7,8 @@ record_versions( manifest = "versions.json", issues = "version_issues.json", - repo = "https://r-releases.r-universe.dev", - current = r.releases.internals::get_current_versions(repo = repo) + repo = "https://r-multiverse.r-universe.dev", + current = multiverse.internals::get_current_versions(repo = repo) ) } \arguments{ diff --git a/man/review_pull_request.Rd b/man/review_pull_request.Rd index 5e98d18..59fca48 100644 --- a/man/review_pull_request.Rd +++ b/man/review_pull_request.Rd @@ -4,7 +4,7 @@ \alias{review_pull_request} \title{Review a pull request.} \usage{ -review_pull_request(owner = "r-releases", repo = "contributions", number) +review_pull_request(owner = "r-multiverse", repo = "contributions", number) } \arguments{ \item{owner}{Character of length 1, name of the universe repository owner.} diff --git a/man/review_pull_requests.Rd b/man/review_pull_requests.Rd index ac4aa74..f4bde69 100644 --- a/man/review_pull_requests.Rd +++ b/man/review_pull_requests.Rd @@ -4,7 +4,7 @@ \alias{review_pull_requests} \title{Review pull requests.} \usage{ -review_pull_requests(owner = "r-releases", repo = "contributions") +review_pull_requests(owner = "r-multiverse", repo = "contributions") } \arguments{ \item{owner}{Character of length 1, name of the universe repository owner.} diff --git a/r.releases.internals.Rproj b/multiverse.internals.Rproj similarity index 100% rename from r.releases.internals.Rproj rename to multiverse.internals.Rproj diff --git a/tests/testthat.R b/tests/testthat.R index 65a4479..4146c68 100644 --- a/tests/testthat.R +++ b/tests/testthat.R @@ -1,12 +1,4 @@ -# This file is part of the standard setup for testthat. -# It is recommended that you do not modify it. -# -# Where should you do additional test configuration? -# Learn more about the roles of various files in: -# * https://r-pkgs.org/testing-design.html#sec-tests-files-overview -# * https://testthat.r-lib.org/articles/special-files.html - library(testthat) -library(r.releases.internals) +library(multiverse.internals) -test_check("r.releases.internals") +test_check("multiverse.internals") diff --git a/tests/testthat/test-write_universe_manifest.R b/tests/testthat/test-aggregate_listings.R similarity index 90% rename from tests/testthat/test-write_universe_manifest.R rename to tests/testthat/test-aggregate_listings.R index 1f350bf..60367c0 100644 --- a/tests/testthat/test-write_universe_manifest.R +++ b/tests/testthat/test-aggregate_listings.R @@ -8,7 +8,7 @@ test_that("ordinary URLs can be written", { ) universe <- file.path(tempfile(), "out") suppressMessages( - r.releases.internals::write_universe_manifest( + aggregate_listings( input = packages, output = universe ) @@ -49,7 +49,7 @@ test_that("\"branch\": \"release\" in certain defined cases", { ) universe <- file.path(tempfile(), "out") suppressMessages( - r.releases.internals::write_universe_manifest( + aggregate_listings( input = packages, output = universe, release_exceptions = c( @@ -95,7 +95,7 @@ test_that("one URL is malformed", { universe <- file.path(tempfile(), "out") out <- try( suppressMessages( - r.releases.internals::write_universe_manifest( + aggregate_listings( input = packages, output = universe ) @@ -124,7 +124,7 @@ test_that("acceptable custom JSON", { ) universe <- file.path(tempfile(), "out") suppressMessages( - r.releases.internals::write_universe_manifest( + aggregate_listings( input = packages, output = universe ) @@ -166,7 +166,7 @@ test_that("malformed URL in JSON", { universe <- file.path(tempfile(), "out") out <- try( suppressMessages( - r.releases.internals::write_universe_manifest( + aggregate_listings( input = packages, output = universe ) @@ -176,7 +176,7 @@ test_that("malformed URL in JSON", { expect_true( grepl( pattern = "Found malformed URL", - x = r.releases.internals::try_message(out) + x = try_message(out) ) ) unlink(packages, recursive = TRUE) @@ -200,7 +200,7 @@ test_that("missing branch field", { universe <- file.path(tempfile(), "out") out <- try( suppressMessages( - r.releases.internals::write_universe_manifest( + aggregate_listings( input = packages, output = universe ) @@ -210,15 +210,15 @@ test_that("missing branch field", { expect_true(inherits(out, "try-error")) expect_true( grepl( - pattern = "JSON entry for package", - x = r.releases.internals::try_message(out), + pattern = "JSON listing for package", + x = try_message(out), fixed = TRUE ) ) expect_true( grepl( pattern = "must have fields", - x = r.releases.internals::try_message(out), + x = try_message(out), fixed = TRUE ) ) @@ -244,7 +244,7 @@ test_that("disagreeing package field", { universe <- file.path(tempfile(), "out") out <- try( suppressMessages( - r.releases.internals::write_universe_manifest( + aggregate_listings( input = packages, output = universe ) @@ -255,7 +255,7 @@ test_that("disagreeing package field", { expect_true( grepl( pattern = "The 'packages' field disagrees with the package name", - x = r.releases.internals::try_message(out), + x = try_message(out), fixed = TRUE ) ) @@ -281,7 +281,7 @@ test_that("bad branch field", { universe <- file.path(tempfile(), "out") out <- try( suppressMessages( - r.releases.internals::write_universe_manifest( + aggregate_listings( input = packages, output = universe ) @@ -292,7 +292,7 @@ test_that("bad branch field", { expect_true( grepl( pattern = "The 'branch' field of package", - x = r.releases.internals::try_message(out), + x = try_message(out), fixed = TRUE ) ) diff --git a/tests/testthat/test-assert_package.R b/tests/testthat/test-assert_package.R index fc818b6..a5c9d67 100644 --- a/tests/testthat/test-assert_package.R +++ b/tests/testthat/test-assert_package.R @@ -2,7 +2,7 @@ test_that("invalid package name with vector", { expect_true( grepl( "Invalid package name", - r.releases.internals::assert_package(name = letters, url = "xy"), + assert_package(name = letters, url = "xy"), fixed = TRUE ) ) @@ -12,7 +12,7 @@ test_that("invalid package name with dot", { expect_true( grepl( "Invalid package name", - r.releases.internals::assert_package( + assert_package( name = ".gh", url = "https://github.com/r-lib/gh" ), @@ -25,7 +25,7 @@ test_that("custom JSON", { expect_true( grepl( "looks like custom JSON", - r.releases.internals::assert_package(name = "xy", url = "{"), + assert_package(name = "xy", url = "{"), fixed = TRUE ) ) @@ -35,7 +35,7 @@ test_that("invalid vector URL", { expect_true( grepl( "Invalid package URL", - r.releases.internals::assert_package( + assert_package( name = "xy", url = letters ), @@ -48,7 +48,7 @@ test_that("malformed URL", { expect_true( grepl( "Found malformed URL", - r.releases.internals::assert_package( + assert_package( name = "gh", url = "github.com/r-lib/gh" ), @@ -61,7 +61,7 @@ test_that("package name/repo disagreement", { expect_true( grepl( "appears to disagree with the repository name in the URL", - r.releases.internals::assert_package( + assert_package( name = "gh2", url = "https://github.com/r-lib/gh" ), @@ -74,7 +74,7 @@ test_that("https", { expect_true( grepl( "is not https", - r.releases.internals::assert_package( + assert_package( name = "gh", url = "http://github.com/r-lib/gh" ), @@ -87,7 +87,7 @@ test_that("GitHub/GitLab URL", { expect_true( grepl( "is not a GitHub or GitLab URL", - r.releases.internals::assert_package( + assert_package( name = "gh", url = "https://github.gov/r-lib/gh" ), @@ -100,7 +100,7 @@ test_that("owner URL", { expect_true( grepl( "appears to be an owner", - r.releases.internals::assert_package( + assert_package( name = "gh", url = "https://github.com/gh" ), @@ -113,7 +113,7 @@ test_that("CRAN mirror", { expect_true( grepl( "appears to use a CRAN mirror", - r.releases.internals::assert_package( + assert_package( name = "gh", url = "https://github.com/cran/gh" ), @@ -126,7 +126,7 @@ test_that("CRAN URL alignment", { expect_true( grepl( "does not appear in its DESCRIPTION file published on CRAN", - r.releases.internals::assert_cran_url( + assert_cran_url( name = "gh", url = "https://github.com/r-lib/gha" ), @@ -139,7 +139,7 @@ test_that("HTTP error", { expect_true( grepl( "returned HTTP error", - r.releases.internals::assert_package( + assert_package( name = "afantasticallylongandimpossiblepackage", url = "https://github.com/r-lib/afantasticallylongandimpossiblepackage" ), @@ -152,7 +152,7 @@ test_that("release URL", { expect_true( grepl( "No full release found at URL", - r.releases.internals::assert_package( + assert_package( name = "test.no.release", url = "https://github.com/wlandau/test.no.release" ), @@ -163,7 +163,7 @@ test_that("release URL", { test_that("good GitHub registration", { expect_null( - r.releases.internals::assert_package( + assert_package( name = "gh", url = "https://github.com/r-lib/gh" ) @@ -173,7 +173,7 @@ test_that("good GitHub registration", { test_that("good GitLab registration", { suppressMessages( expect_null( - r.releases.internals::assert_package( + assert_package( name = "test", url = "https://gitlab.com/wlandau/test" ) @@ -183,7 +183,7 @@ test_that("good GitLab registration", { test_that("good registration with trailing slash", { expect_null( - r.releases.internals::assert_cran_url( + assert_cran_url( name = "curl", url = "https://github.com/jeroen/curl/" ) @@ -192,7 +192,7 @@ test_that("good registration with trailing slash", { test_that("good alignment with CRAN URL", { expect_null( - r.releases.internals::assert_cran_url( + assert_cran_url( name = "jsonlite", url = "https://github.com/jeroen/jsonlite" ) @@ -201,7 +201,7 @@ test_that("good alignment with CRAN URL", { test_that("trivially good alignment with CRAN URL", { expect_null( - r.releases.internals::assert_cran_url( + assert_cran_url( name = "packageNOTonCRAN", url = "https://github.com/jeroen/jsonlite" ) diff --git a/tests/testthat/test-record_versions.R b/tests/testthat/test-record_versions.R index c1b10e3..86ee20c 100644 --- a/tests/testthat/test-record_versions.R +++ b/tests/testthat/test-record_versions.R @@ -13,7 +13,7 @@ test_that("record versions from a mock repo", { version_current = rep("1.0.0", 4L), hash_current = rep("hash_1.0.0", 4L) ) - r.releases.internals::record_versions( + record_versions( manifest = manifest, issues = issues, current = contents @@ -45,7 +45,7 @@ test_that("record versions from a mock repo", { expect_true(!file.exists(issues)) # Update the manifest after no changes to packages or versions. suppressMessages( - r.releases.internals::record_versions( + record_versions( manifest = manifest, issues = issues, current = contents @@ -96,7 +96,7 @@ test_that("record versions from a mock repo", { contents$version_current[index] <- "1.0.0" contents$hash_current[index] <- "hash_1.0.0-modified" for (index in seq_len(2L)) { - r.releases.internals::record_versions( + record_versions( manifest = manifest, issues = issues, current = contents @@ -162,7 +162,7 @@ test_that("manifest can be created and updated from the actual repo", { issues <- tempfile() temp <- utils::capture.output( suppressMessages( - r.releases.internals::record_versions( + record_versions( manifest = manifest, issues = issues ) @@ -174,7 +174,7 @@ test_that("manifest can be created and updated from the actual repo", { lapply(contents, function(x) expect_true(!anyNA(x))) temp <- utils::capture.output( suppressMessages( - r.releases.internals::record_versions( + record_versions( manifest = manifest, issues = issues )