* using log directory ‘/Users/ripley/R/packages/tests-devel/reproducible.Rcheck’ * using R Under development (unstable) (2026-05-15 r90061) * using platform: aarch64-apple-darwin25.5.0 * R was compiled by Apple clang version 21.0.0 (clang-2100.1.1.101) GNU Fortran (GCC) 14.2.0 * running under: macOS Tahoe 26.5 * using session charset: UTF-8 * current time: 2026-05-16 14:15:49 UTC * using option ‘--no-stop-on-test-error’ * checking for file ‘reproducible/DESCRIPTION’ ... OK * checking extension type ... Package * this is package ‘reproducible’ version ‘3.1.0’ * package encoding: UTF-8 * checking package namespace information ... OK * checking package dependencies ... OK * checking if this is a source package ... OK * checking if there is a namespace ... OK * checking for executable files ... OK * checking for hidden files and directories ... OK * checking for portable file names ... OK * checking for sufficient/correct file permissions ... OK * checking whether package ‘reproducible’ can be installed ... OK * checking installed package size ... OK * checking package directory ... OK * checking ‘build’ directory ... OK * checking DESCRIPTION meta-information ... OK * checking top-level files ... OK * checking for left-over files ... OK * checking index information ... OK * checking package subdirectories ... OK * checking code files for non-ASCII characters ... OK * checking R files for syntax errors ... OK * checking whether the package can be loaded ... OK * checking whether the package can be loaded with stated dependencies ... OK * checking whether the package can be unloaded cleanly ... OK * checking whether the namespace can be loaded with stated dependencies ... OK * checking whether the namespace can be unloaded cleanly ... OK * checking loading without being on the library search path ... OK * checking whether startup messages can be suppressed ... OK * checking use of S3 registration ... OK * checking dependencies in R code ... OK * checking S3 generic/method consistency ... OK * checking replacement functions ... OK * checking foreign function calls ... OK * checking R code for possible problems ... OK * checking Rd files ... OK * checking Rd metadata ... OK * checking Rd cross-references ... OK * checking for missing documentation entries ... OK * checking for code/documentation mismatches ... OK * checking Rd \usage sections ... OK * checking Rd contents ... OK * checking for unstated dependencies in examples ... OK * checking installed files from ‘inst/doc’ ... OK * checking files in ‘vignettes’ ... OK * checking examples ... OK * checking for unstated dependencies in ‘tests’ ... OK * checking tests ... Running ‘test-all.R’ [26s/27s] [26s/27s] ERROR Running the tests in ‘tests/test-all.R’ failed. Complete output: > library(testthat) > > # NOTE: ALL OPTIONS ARE BEING SET IN tests/testthat/setup.R > > ## Test matrix: 5 combinations of {raster, terra} × {USE_DBI, no DBI} + > ## qs cache format. Running them sequentially in one R session was the > ## documented behavior, but on ubuntu CI it triggered SIGTERM mass-kills > ## (cumulative memory pressure from 5 test_check passes loading namespaces > ## + raster/SF objects without releasing between iterations). Bisect on > ## branch `bisect-ubuntu-fail` confirmed the SINGLE-pass full suite > ## passes; only the 5-pass version wedges. Default to single pass; opt > ## back into the full matrix via R_REPRO_TEST_FULL_MATRIX=true (e.g. > ## locally or on a separate workflow) when you want the full coverage. > if (nzchar(Sys.getenv("R_REPRO_TEST_FULL_MATRIX")) && + as.logical(Sys.getenv("R_REPRO_TEST_FULL_MATRIX"))) { + ## Full 5-combo matrix (opt-in) + Sys.setenv(R_REPRODUCIBLE_RASTER_READ = "raster::raster") + Sys.setenv(R_REPRODUCIBLE_USE_DBI = "false") + test_check("reproducible") + + Sys.setenv(R_REPRODUCIBLE_RASTER_READ = "raster::raster") + Sys.setenv(R_REPRODUCIBLE_USE_DBI = "true") + test_check("reproducible") + + Sys.setenv(R_REPRODUCIBLE_RASTER_READ = "terra::rast") ## default + Sys.setenv(R_REPRODUCIBLE_USE_DBI = "false") ## default + test_check("reproducible") + + Sys.setenv(R_REPRODUCIBLE_RASTER_READ = "terra::rast") + Sys.setenv(R_REPRODUCIBLE_USE_DBI = "true") + test_check("reproducible") + + Sys.setenv(R_REPRODUCIBLE_CACHESAVEFORMAT = "qs") ## default + Sys.setenv(R_REPRODUCIBLE_USE_DBI = "false") ## default + test_check("reproducible") + + } else { + ## Single pass at defaults (terra + USE_DBI=FALSE + qs format). + ## Covers ~95% of the test surface; alternate raster/DBI paths are + ## still exercised by individual test files that explicitly opt in. + test_check("reproducible") + } Loading required package: reproducible Attaching package: 'data.table' The following object is masked from 'package:base': %notin% [ FAIL 6 | WARN 18 | SKIP 105 | PASS 688 ] ══ Skipped tests (105) ═════════════════════════════════════════════════════════ • No Drive token (3): 'test-misc.R:141:3', 'test-prepInputs.R:1303:3', 'test-prepInputs.R:1322:3' • On CRAN (99): 'test-cache.R:158:3', 'test-cache.R:924:3', 'test-cache.R:944:3', 'test-cache.R:1157:3', 'test-cache.R:1723:3', 'test-cache.R:1846:3', 'test-cache.R:1858:3', 'test-cacheGeo.R:2:3', 'test-cloud.R:2:3', 'test-cloud.R:147:3', 'test-cloud.R:190:3', 'test-cloud.R:214:3', 'test-cloud.R:238:3', 'test-cluster.R:2:3', 'test-destinationPathShared.R:742:3', 'test-destinationPathShared.R:1152:1', 'test-destinationPathShared.R:1201:1', 'test-download.R:2:3', 'test-download.R:14:3', 'test-filesMissingExtension.R:2:3', 'test-filesMissingExtension.R:19:3', 'test-filesMissingExtension.R:36:3', 'test-filesMissingExtension.R:54:3', 'test-filesMissingExtension.R:71:3', 'test-gis.R:2:3', 'test-lazyAsyncSpawn.R:6:3', 'test-lazyAsyncSpawn.R:41:3', 'test-misc.R:62:3', 'test-omitArgsTRUE.R:5:3', 'test-omitArgsTRUE.R:47:3', 'test-postProcess.R:2:3', 'test-postProcess.R:231:3', 'test-postProcess.R:279:3', 'test-preProcessDoesntWork.R:2:3', 'test-preProcessDoesntWork.R:130:3', 'test-preProcessDoesntWork.R:146:3', 'test-preProcessDoesntWork.R:160:3', 'test-preProcessDoesntWork.R:196:3', 'test-preProcessWorks.R:2:3', 'test-preProcessWorks.R:13:3', 'test-preProcessWorks.R:24:3', 'test-preProcessWorks.R:33:3', 'test-preProcessWorks.R:55:3', 'test-preProcessWorks.R:78:3', 'test-preProcessWorks.R:90:3', 'test-preProcessWorks.R:104:3', 'test-preProcessWorks.R:120:3', 'test-preProcessWorks.R:135:3', 'test-preProcessWorks.R:151:3', 'test-preProcessWorks.R:166:3', 'test-preProcessWorks.R:183:3', 'test-preProcessWorks.R:206:3', 'test-preProcessWorks.R:236:3', 'test-preProcessWorks.R:251:3', 'test-preProcessWorks.R:266:3', 'test-preProcessWorks.R:281:3', 'test-preProcessWorks.R:292:3', 'test-preProcessWorks.R:308:3', 'test-preProcessWorks.R:326:3', 'test-preProcessWorks.R:337:3', 'test-preProcessWorks.R:352:3', 'test-preProcessWorks.R:367:3', 'test-preProcessWorks.R:383:3', 'test-preProcessWorks.R:412:3', 'test-preProcessWorks.R:433:3', 'test-preProcessWorks.R:443:3', 'test-preProcessWorks.R:465:3', 'test-preProcessWorks.R:519:3', 'test-preProcessWorks.R:546:3', 'test-preProcessWorks.R:663:3', 'test-prepInputs-large-files.R:2:3', 'test-prepInputs-large-files.R:34:3', 'test-prepInputs-large-files.R:58:3', 'test-prepInputs.R:2:3', 'test-prepInputs.R:180:3', 'test-prepInputs.R:321:3', 'test-prepInputs.R:1226:3', 'test-prepInputs.R:1439:3', 'test-prepInputs.R:1614:3', 'test-prepInputs.R:1705:3', 'test-prepInputs.R:1980:3', 'test-prepInputs.R:2002:3', 'test-prepInputs.R:2133:3', 'test-prepInputs.R:2178:3', 'test-prepInputsCOG.R:36:3', 'test-prepInputsCOG.R:48:3', 'test-prepInputsInNestedArchives.R:2:3', 'test-prepInputsInNestedArchives.R:13:3', 'test-prepInputsInNestedArchives.R:28:3', 'test-prepInputsInNestedArchives.R:39:3', 'test-prepInputsInNestedArchives.R:59:5', 'test-prepInputsInNestedArchives.R:82:5', 'test-prepInputsInNestedArchives.R:104:5', 'test-prepInputsInNestedArchives.R:127:5', 'test-prepInputsInNestedArchives.R:152:5', 'test-prepInputsInNestedArchives.R:174:3', 'test-prepInputsUrlTiles.R:2:3', 'test-showCacheCorruptFile.R:8:3', 'test-symlinks.R:2:3' • On Mac (1): 'test-prepInputs.R:2210:3' • Only relevant for DBI backend (1): 'test-cache.R:1903:3' • empty test (1): 'test-examples.R:1:1' ══ Failed tests ════════════════════════════════════════════════════════════════ ── Failure ('test-destinationPathShared.R:256:3'): H1: file in destinationPathShared with matching CHECKSUMS → hardlinked, no copy ── Expected `isTRUE(sameInode(file.path(dest, "foo.csv"), fixShared$path))` to be TRUE. Differences: `actual`: FALSE `expected`: TRUE destinationPath copy should share inode with destinationPathShared (hardlink) ── Failure ('test-destinationPathShared.R:310:3'): H5: two destinationPathShared entries; file only in second → found ── Expected `isTRUE(sameInode(file.path(dest, "foo.csv"), fixShared$path))` to be TRUE. Differences: `actual`: FALSE `expected`: TRUE ── Failure ('test-destinationPathShared.R:336:3'): H6: file in both destinationPathShared entries → first wins ── Expected `isTRUE(sameInode(file.path(dest, "foo.csv"), fix1$path))` to be TRUE. Differences: `actual`: FALSE `expected`: TRUE deterministic order: first destinationPathShared entry wins ── Failure ('test-destinationPathShared.R:689:3'): B1: legacy reproducible.inputPaths still works (regression guard) ── Expected `isTRUE(sameInode(file.path(dest, "foo.csv"), fixShared$path))` to be TRUE. Differences: `actual`: FALSE `expected`: TRUE ── Failure ('test-destinationPathShared.R:733:3'): I1+I2: Cache(prepInputs(...)) — cold uses destinationPathShared; warm is cache hit ── Expected `isTRUE(sameInode(file.path(dest, "foo.csv"), fixShared$path))` to be TRUE. Differences: `actual`: FALSE `expected`: TRUE ── Failure ('test-destinationPathShared.R:1197:3'): C5: deleted local file + stale sidecar + file in destinationPathShared → relink, no download ── Expected `isTRUE(sameInode(file.path(dest, "foo.csv"), fixShared$path))` to be TRUE. Differences: `actual`: FALSE `expected`: TRUE C5: should hardlink from destinationPathShared, not re-download [ FAIL 6 | WARN 18 | SKIP 105 | PASS 688 ] Error: ! Test failures. Execution halted * checking for unstated dependencies in vignettes ... OK * checking package vignettes ... OK * checking re-building of vignette outputs ... OK * checking PDF version of manual ... OK * checking HTML version of manual ... OK * checking for detritus in the temp directory ... OK * DONE Status: 1 ERROR See ‘/Users/ripley/R/packages/tests-devel/reproducible.Rcheck/00check.log’ for details. 83.36 real 66.98 user 12.12 sys