R Under development (unstable) (2025-09-01 r88761 ucrt) -- "Unsuffered Consequences" Copyright (C) 2025 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > library(tools) > > bad <- FALSE > walk <- function(x) { + # Use \link[pkg]{topic} for external help, \link{topic} for internal help + if (identical(attr(x, 'Rd_tag'), '\\link')) { + topic <- as.vector(x[[1]]) + package <- as.vector(attr(x, 'Rd_option')) + if (is.null(package)) package <- 'albatross' + + h <- help((topic), (package)) + + if (length(h) != 1) { + bad <<- TRUE + message( + getSrcFilename(x), ':', getSrcLocation(x), ': ', + getSrcref(x), '\n', + 'Found ', length(h), ' results for help(', + topic, ', ', package, ') instead of 1:', '\n', + deparse(as.vector(h)) + ) + } + } + if (is.list(x)) for(tag in x) Recall(tag) + } > > walk(Rd_db('albatross')) > > if (is.na(packageVersion('albatross')[[1,4]])) { + # must be release testing + n <- news(package = 'albatross') + for (column in c('Date', 'Version', 'Text')) + if (any(i <- is.na(n[,column]))) { + i <- which(i) + message( + 'NEWS: column ', sQuote(column), ' is NA in row[s] ', + paste(i, collapse = ', ') + ) + bad <<- TRUE + } + } > > if (bad) stop('Problems found, see above') > > proc.time() user system elapsed 1.20 0.26 1.46