CRAN Package Check Results for Maintainer ‘Henrik Bengtsson <henrikb at braju.com>’

Last updated on 2025-05-09 01:50:36 CEST.

Package ERROR NOTE OK
ACNE 6 7
aroma.affymetrix 9 4
aroma.apd 13
aroma.cn 13
aroma.core 9 4
calmate 2 11
dChipIO 13
doFuture 3 10
future 5 8
future.apply 13
future.batchtools 6 7
future.callr 13
future.mirai 13
future.tests 13
futureverse 13
globals 13
listenv 13
matrixStats 13
parallelly 13
port4me 13
profmem 13
progressr 13
PSCBS 13
R.cache 13
R.devices 1 12
R.filesets 13
R.huge 13
R.matlab 13
R.methodsS3 2 11
R.oo 13
R.rsp 13
R.utils 13
seguid 13
startup 13
TopDom 13

Package ACNE

Current CRAN status: NOTE: 6, OK: 7

Version: 0.9.1
Check: Rd cross-references
Result: NOTE Found the following Rd file(s) with Rd \link{} targets missing package anchors: doACNE.Rd: AffymetrixCelSet, Verbose Please provide package anchors for all Rd \link{} targets not in the package itself and the base packages. Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc, r-devel-windows-x86_64, r-patched-linux-x86_64, r-release-linux-x86_64, r-release-windows-x86_64

Package aroma.affymetrix

Current CRAN status: NOTE: 9, OK: 4

Version: 3.2.2
Check: Rd cross-references
Result: NOTE Found the following Rd file(s) with Rd \link{} targets missing package anchors: SmoothMultiarrayModel.Rd: ChromosomalModel, CopyNumberSegmentationModel byPath.AffymetrixFileSet.Rd: GenericDataFile calculateBaseline.ChipEffectSet.Rd: getAverageFile doCRMAv1.Rd: Verbose doCRMAv2.Rd: Verbose doFIRMA.Rd: Verbose doGCRMA.Rd: Verbose doRMA.Rd: Verbose justRMA.Rd: Verbose Please provide package anchors for all Rd \link{} targets not in the package itself and the base packages. Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc, r-devel-windows-x86_64, r-patched-linux-x86_64, r-release-linux-x86_64, r-release-windows-x86_64

Version: 3.2.2
Check: package dependencies
Result: NOTE Package suggested but not available for checking: ‘AffymetrixDataTestFiles’ Flavors: r-oldrel-macos-arm64, r-oldrel-macos-x86_64

Version: 3.2.2
Check: installed package size
Result: NOTE installed size is 6.1Mb sub-directories of 1Mb or more: R 3.0Mb help 1.1Mb testScripts 1.1Mb Flavors: r-oldrel-macos-arm64, r-oldrel-macos-x86_64, r-oldrel-windows-x86_64

Package aroma.apd

Current CRAN status: OK: 13

Package aroma.cn

Current CRAN status: OK: 13

Package aroma.core

Current CRAN status: NOTE: 9, OK: 4

Version: 3.3.1
Check: Rd cross-references
Result: NOTE Found the following Rd file(s) with Rd \link{} targets missing package anchors: writeDataFrame.AromaUnitSignalBinaryFile.Rd: TabularTextFile writeDataFrame.AromaUnitSignalBinarySet.Rd: TabularTextFileSet writeDataFrame.AromaUnitTabularBinaryFile.Rd: TabularTextFile Please provide package anchors for all Rd \link{} targets not in the package itself and the base packages. Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc, r-devel-windows-x86_64, r-patched-linux-x86_64, r-release-linux-x86_64, r-release-windows-x86_64

Version: 3.3.1
Check: package dependencies
Result: NOTE Packages suggested but not available for checking: 'sfit', 'expectile', 'HaarSeg', 'mpcbs' Flavors: r-oldrel-macos-arm64, r-oldrel-macos-x86_64, r-oldrel-windows-x86_64

Package calmate

Current CRAN status: NOTE: 2, OK: 11

Version: 0.13.0
Check: CRAN incoming feasibility
Result: NOTE Maintainer: ‘Henrik Bengtsson <henrikb@braju.com>’ Package CITATION file contains call(s) to old-style citEntry(). Please use bibentry() instead. Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc

Package dChipIO

Current CRAN status: OK: 13

Package doFuture

Current CRAN status: ERROR: 3, OK: 10

Additional issues

MKL

Version: 1.0.2
Check: tests
Result: ERROR Running 'foreach_dofuture,cluster-missing-doFuture-pkg.R' [62s] Running 'foreach_dofuture,errors.R' [10s] Running 'foreach_dofuture,globals.R' [7s] Running 'foreach_dofuture,nested_colon.R' [14s] Running 'foreach_dofuture,nested_dofuture.R' [15s] Running 'foreach_dofuture,rng.R' [4s] Running 'foreach_dofuture.R' [3s] Running 'foreach_dopar,cluster-missing-doFuture-pkg.R' [62s] Running 'foreach_dopar,doRNG,dopar.R' [2s] Running 'foreach_dopar,doRNG,dorng.R' [6s] Running 'foreach_dopar,errors.R' [7s] Running 'foreach_dopar,globals.R' [7s] Running 'foreach_dopar,nested_colon.R' [12s] Running 'foreach_dopar,nested_dopar.R' [16s] Running 'foreach_dopar,options-for-export.R' [5s] Running 'foreach_dopar.R' [3s] Running 'makeChunks.R' [4s] Running 'options,nested.R' [4s] Running 'registerDoFuture.R' [2s] Running 'times.R' [2s] Running 'utils.R' [1s] Running 'withDoRNG.R' [4s] Running the tests in 'tests/foreach_dofuture,cluster-missing-doFuture-pkg.R' failed. Complete output: > source("incl/start.R") Loading required package: foreach Loading required package: future R Under development (unstable) (2025-05-03 r88188 ucrt) Platform: x86_64-w64-mingw32/x64 Running under: Windows Server 2022 x64 (build 20348) Matrix products: default LAPACK version 3.12.1 locale: [1] LC_COLLATE=C LC_CTYPE=German_Germany.utf8 [3] LC_MONETARY=C LC_NUMERIC=C [5] LC_TIME=C time zone: Europe/Berlin tzcode source: internal attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] doFuture_1.0.2 future_1.40.0 foreach_1.5.2 loaded via a namespace (and not attached): [1] compiler_4.6.0 parallelly_1.43.0 tools_4.6.0 [4] parallel_4.6.0 future.apply_1.11.3 listenv_0.9.1 [7] codetools_0.2-20 iterators_1.0.14 digest_0.6.37 [10] globals_0.17.0 > options(future.debug = FALSE) > > message("*** cluster() ...") *** cluster() ... > > message("Library paths: ", paste(sQuote(.libPaths()), collapse = ", ")) Library paths: 'D:/temp/2025_05_04_01_50_00_20595/RtmpYZkclo/RLIBS_25614370322e5', 'D:/RCompile/recent/R/library' > message("Package path: ", sQuote(system.file(package = "future"))) Package path: 'D:/RCompile/CRANpkg/lib/4.6/future' > > types <- "PSOCK" > #if (supportsMulticore()) types <- c(types, "FORK") > > setupClusterWithoutPkgs <- function(type = "PSOCK", + withs = c("digest", "globals", + "listenv", "future"), + withouts = c("doFuture")) { + cl <- parallel::makeCluster(1L, type = type, timeout = 60) + + ## Emulate a worker that does not have 'future' installed. + ## by setting a different user library path on the worker. + libs <- parallel::clusterEvalQ(cl, .libPaths(tempdir()))[[1]] + attr(cl, "libs") <- libs + + ## 'withouts' tops 'withs' for conveniency + withs <- setdiff(withs, withouts) + + ## "Install" any 'withs' packages? + if (length(withs) > 0L) { + paths <- find.package(withs) + res <- parallel::clusterCall(cl, fun = sapply, X = paths, + FUN = file.copy, to = libs[1], + recursive = TRUE)[[1]] + res <- parallel::clusterCall(cl, fun = sapply, X = withs, + FUN = requireNamespace)[[1]] + } + attr(cl, "withs") <- res + + ## Check whether 'future' is still available on the worker or not. + ## It could be that it is installed in the system library path, which + ## in case we cannot "hide" the future package from the worker. + res <- parallel::clusterCall(cl, fun = sapply, X = withouts, + FUN = requireNamespace)[[1]] + attr(cl, "withouts") <- res + + cl + } > > cl <- NULL > for (type in types) { + message(sprintf("Test set #1 with cluster type %s ...", sQuote(type))) + + cl <- setupClusterWithoutPkgs(type, withouts = c("future", "doFuture")) + if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) { + plan(cluster, workers = cl, .init = FALSE) + + ## Here we will get: + ## <UnexpectedFutureResultError: Unexpected result (of class + ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture + ## future (label = '<none>', expression = '{ ... }'): + ## Package 'future' is not installed on worker (r_version: ...)> + ## Note: This error is produced by the future backend when it recieves + ## the unexpected results. + res <- tryCatch({ + y <- foreach(ii = 1:3) %dofuture% ii + }, error = identity) + print(res) + stopifnot(inherits(res, "FutureError")) + } + parallel::stopCluster(cl) + cl <- NULL + + cl <- setupClusterWithoutPkgs(type) + if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) { + plan(cluster, workers = cl, .init = FALSE) + + ## Here we will get: + ## <UnexpectedFutureResultError: Unexpected result (of class + ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture + ## future (label = '<none>', expression = '{ ... }'): + ## there is no package called 'doFuture'> + ## Note: This error is produced by the future backend when it recieves + ## the unexpected results. + res <- tryCatch({ + y <- foreach(ii = 1:3) %dofuture% ii + }, error = identity) + print(res) + stopifnot(inherits(res, "FutureError")) + } + parallel::stopCluster(cl) + cl <- NULL + + plan(sequential) + + message(sprintf("Test set #1 with cluster type %s ... DONE", sQuote(type))) + } ## for (type ...) Test set #1 with cluster type 'PSOCK' ... [12:21:41.179] doFuture2() ... [12:21:41.240] Number of chunks: 1 [12:21:41.240] Number of futures (= number of chunks): 1 [12:21:41.240] seed = FALSE [12:21:41.241] NULL [12:21:41.244] seed = FALSE [12:21:41.244] seed = FALSE [12:21:41.244] - %dofuture% R expression: [12:21:41.245] ii [12:21:41.245] - foreach iterator arguments: [1] 'ii' [12:21:41.245] - dummy globals (as locals): [1] 'ii' [12:21:41.246] - R expression (map-reduce expression adjusted for RNG): [12:21:41.246] { [12:21:41.246] NULL [12:21:41.246] "# doFuture():::doFuture2(): process chunk of elements" [12:21:41.246] lapply(seq_along(...future.x_ii), FUN = function(jj) { [12:21:41.246] ...future.x_jj <- ...future.x_ii[[jj]] [12:21:41.246] { [12:21:41.246] NULL [12:21:41.246] ii <- NULL [12:21:41.246] } [12:21:41.246] ...future.env <- environment() [12:21:41.246] local({ [12:21:41.246] for (name in names(...future.x_jj)) { [12:21:41.246] assign(name, ...future.x_jj[[name]], envir = ...future.env, [12:21:41.246] inherits = FALSE) [12:21:41.246] } [12:21:41.246] }) [12:21:41.246] NULL [12:21:41.246] tryCatch(ii, error = identity) [12:21:41.246] }) [12:21:41.246] } [12:21:41.247] - identifying globals and packages ... [12:21:41.247] - Argument 'globals': [12:21:41.247] logi TRUE [12:21:41.247] - attr(*, "add")= chr "...future.x_ii" [12:21:41.247] - attr(*, "ignore")= chr "ii" [12:21:41.250] - R expression (map-reduce expression searched for globals): [12:21:41.250] { [12:21:41.250] NULL [12:21:41.250] "# doFuture():::doFuture2(): process chunk of elements" [12:21:41.250] lapply(seq_along(...future.x_ii), FUN = function(jj) { [12:21:41.250] ...future.x_jj <- ...future.x_ii[[jj]] [12:21:41.250] { [12:21:41.250] NULL [12:21:41.250] ii <- NULL [12:21:41.250] } [12:21:41.250] ...future.env <- environment() [12:21:41.250] local({ [12:21:41.250] for (name in names(...future.x_jj)) { [12:21:41.250] assign(name, ...future.x_jj[[name]], envir = ...future.env, [12:21:41.250] inherits = FALSE) [12:21:41.250] } [12:21:41.250] }) [12:21:41.250] NULL [12:21:41.250] tryCatch(ii, error = identity) [12:21:41.250] }) [12:21:41.250] } [12:21:41.264] - R expression (%dofuture% expression searched for globals): [12:21:41.264] ii [12:21:41.266] - Globals in %dofuture% R expression not in map-reduce expression: [12:21:41.266] - Appending 0 globals only found in the vanilla %dofuture% expression: [12:21:41.267] - globals: [1] '...future.x_ii' [12:21:41.267] List of 1 [12:21:41.267] $ ...future.x_ii: num 42 [12:21:41.267] - attr(*, "where")=List of 1 [12:21:41.267] ..$ ...future.x_ii:<environment: R_EmptyEnv> [12:21:41.267] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [12:21:41.267] - attr(*, "resolved")= logi FALSE [12:21:41.267] - attr(*, "total_size")= num 39 [12:21:41.271] - packages: [1] 'doFuture' [12:21:41.271] - identifying globals and packages ... DONE [12:21:41.271] Launching 1 futures (chunks) ... [12:21:41.272] Chunk #1 of 1 ... [12:21:41.272] - Finding globals in 'args_list' for chunk #1 ... [12:21:41.273] [12:21:41.273] [12:21:41.273] - Finding globals in 'args_list' for chunk #1 ... DONE [12:21:41.274] - seeds: <none> [12:21:41.282] Chunk #1 of 1 ... DONE [12:21:41.282] Launching 1 futures (chunks) ... DONE [12:21:41.283] - resolving futures [12:21:41.283] - gathering results & relaying conditions (except errors) <FutureInterruptError: A future ('doFuture2-1') of class ClusterFuture was interrupted, while running on 'localhost'> Future UUID: 6c2fd98c93303f021bf84e8a226a1d34-2 DEBUG: BEGIN TROUBLESHOOTING HELP Future involved: ClusterFuture: Label: 'doFuture2-1' Expression: { NULL "# doFuture():::doFuture2(): process chunk of elements" lapply(seq_along(...future.x_ii), FUN = function(jj) { ...future.x_jj <- ...future.x_ii[[jj]] { NULL ii <- NULL } ...future.env <- environment() local({ for (name in names(...future.x_jj)) { assign(name, ...future.x_jj[[name]], envir = ...future.env, inherits = FALSE) } }) NULL tryCatch(ii, error = identity) }) } Lazy evaluation: FALSE Asynchronous evaluation: TRUE Local evaluation: TRUE Environment: R_GlobalEnv Capture standard output: TRUE Capture condition classes: 'condition' (excluding '<none>') Immediate condition classes: 'immediateCondition' Globals: 1 objects totaling 194 bytes (list '...future.x_ii' of 194 bytes) Packages: 1 packages ('doFuture') L'Ecuyer-CMRG RNG seed: <none> (seed = FALSE) Resolved: TRUE Value: <not collected> Conditions captured: <none> Early signaling: FALSE Owner process: 6c2fd98c93303f021bf84e8a226a1d34 Class: 'ClusterFuture', 'MultiprocessFuture', 'Future' DEBUG: END TROUBLESHOOTING HELP Error in serialize(data, node$con) : error writing to connection Calls: <Anonymous> ... postNode -> sendData -> sendData.SOCKnode -> serialize Execution halted Running the tests in 'tests/foreach_dopar,cluster-missing-doFuture-pkg.R' failed. Complete output: > source("incl/start.R") Loading required package: foreach Loading required package: future R Under development (unstable) (2025-05-03 r88188 ucrt) Platform: x86_64-w64-mingw32/x64 Running under: Windows Server 2022 x64 (build 20348) Matrix products: default LAPACK version 3.12.1 locale: [1] LC_COLLATE=C LC_CTYPE=German_Germany.utf8 [3] LC_MONETARY=C LC_NUMERIC=C [5] LC_TIME=C time zone: Europe/Berlin tzcode source: internal attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] doFuture_1.0.2 future_1.40.0 foreach_1.5.2 loaded via a namespace (and not attached): [1] compiler_4.6.0 parallelly_1.43.0 tools_4.6.0 [4] parallel_4.6.0 future.apply_1.11.3 listenv_0.9.1 [7] codetools_0.2-20 iterators_1.0.14 digest_0.6.37 [10] globals_0.17.0 > options(future.debug = FALSE) > > message("*** cluster() ...") *** cluster() ... > > registerDoFuture() > > message("Library paths: ", paste(sQuote(.libPaths()), collapse = ", ")) Library paths: 'D:/temp/2025_05_04_01_50_00_20595/RtmpYZkclo/RLIBS_25614370322e5', 'D:/RCompile/recent/R/library' > message("Package path: ", sQuote(system.file(package = "future"))) Package path: 'D:/RCompile/CRANpkg/lib/4.6/future' > > types <- "PSOCK" > #if (supportsMulticore()) types <- c(types, "FORK") > > setupClusterWithoutPkgs <- function(type = "PSOCK", + withs = c("digest", "globals", + "listenv", "future"), + withouts = c("doFuture")) { + cl <- parallel::makeCluster(1L, type = type, timeout = 60) + + ## Emulate a worker that does not have 'future' installed. + ## by setting a different user library path on the worker. + libs <- parallel::clusterEvalQ(cl, .libPaths(tempdir()))[[1]] + attr(cl, "libs") <- libs + + ## 'withouts' tops 'withs' for conveniency + withs <- setdiff(withs, withouts) + + ## "Install" any 'withs' packages? + if (length(withs) > 0L) { + paths <- find.package(withs) + res <- parallel::clusterCall(cl, fun = sapply, X = paths, + FUN = file.copy, to = libs[1], + recursive = TRUE)[[1]] + res <- parallel::clusterCall(cl, fun = sapply, X = withs, + FUN = requireNamespace)[[1]] + } + attr(cl, "withs") <- res + + ## Check whether 'future' is still available on the worker or not. + ## It could be that it is installed in the system library path, which + ## in case we cannot "hide" the future package from the worker. + res <- parallel::clusterCall(cl, fun = sapply, X = withouts, + FUN = requireNamespace)[[1]] + attr(cl, "withouts") <- res + + cl + } > > > cl <- NULL > for (type in types) { + message(sprintf("Test set #1 with cluster type %s ...", sQuote(type))) + + cl <- setupClusterWithoutPkgs(type, withouts = c("future", "doFuture")) + if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) { + plan(cluster, workers = cl, .init = FALSE) + + ## Here we will get: + ## <UnexpectedFutureResultError: Unexpected result (of class + ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture + ## future (label = '<none>', expression = '{ ... }'): + ## Package 'future' is not installed on worker (r_version: ...)> + ## Note: This error is produced by the future backend when it recieves + ## the unexpected results. + res <- tryCatch({ + y <- foreach(ii = 1:3) %dopar% ii + }, error = identity) + print(res) + stopifnot(inherits(res, "FutureError")) + } + parallel::stopCluster(cl) + cl <- NULL + + cl <- setupClusterWithoutPkgs(type) + if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) { + plan(cluster, workers = cl, .init = FALSE) + + ## Here we will get: + ## <UnexpectedFutureResultError: Unexpected result (of class + ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture + ## future (label = '<none>', expression = '{ ... }'): + ## there is no package called 'doFuture'> + ## Note: This error is produced by the future backend when it recieves + ## the unexpected results. + res <- tryCatch({ + y <- foreach(ii = 1:3) %dopar% ii + }, error = identity) + print(res) + stopifnot(inherits(res, "FutureError")) + } + parallel::stopCluster(cl) + cl <- NULL + + plan(sequential) + + message(sprintf("Test set #1 with cluster type %s ... DONE", sQuote(type))) + } ## for (type ...) Test set #1 with cluster type 'PSOCK' ... [12:23:36.739] doFuture() ... [12:23:36.741] - dummy globals (as locals): [1] 'ii' [12:23:36.741] - R expression: [12:23:36.741] { [12:23:36.741] "# doFuture():::doFuture(): Make sure that foreach uses 'doFuture'" [12:23:36.741] "# also in nested calls " [12:23:36.741] doFuture::registerDoFuture() [12:23:36.741] "# doFuture():::doFuture(): process chunk of elements" [12:23:36.741] lapply(seq_along(...future.x_ii), FUN = function(jj) { [12:23:36.741] ...future.x_jj <- ...future.x_ii[[jj]] [12:23:36.741] { [12:23:36.741] NULL [12:23:36.741] ii <- NULL [12:23:36.741] } [12:23:36.741] ...future.env <- environment() [12:23:36.741] local({ [12:23:36.741] for (name in names(...future.x_jj)) { [12:23:36.741] assign(name, ...future.x_jj[[name]], envir = ...future.env, [12:23:36.741] inherits = FALSE) [12:23:36.741] } [12:23:36.741] }) [12:23:36.741] tryCatch(ii, error = identity) [12:23:36.741] }) [12:23:36.741] } [12:23:36.742] - identifying globals and packages ... [12:23:36.759] List of 1 [12:23:36.759] $ ...future.x_ii: NULL [12:23:36.759] - attr(*, "where")=List of 1 [12:23:36.759] ..$ ...future.x_ii:<environment: R_EmptyEnv> [12:23:36.759] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [12:23:36.759] - attr(*, "resolved")= logi FALSE [12:23:36.759] - attr(*, "total_size")= num 27 [12:23:36.767] - R expression: [12:23:36.767] { [12:23:36.767] "# doFuture():::doFuture(): Make sure that foreach uses 'doFuture'" [12:23:36.767] "# also in nested calls " [12:23:36.767] doFuture::registerDoFuture() [12:23:36.767] "# doFuture():::doFuture(): process chunk of elements" [12:23:36.767] lapply(seq_along(...future.x_ii), FUN = function(jj) { [12:23:36.767] ...future.x_jj <- ...future.x_ii[[jj]] [12:23:36.767] { [12:23:36.767] NULL [12:23:36.767] ii <- NULL [12:23:36.767] } [12:23:36.767] ...future.env <- environment() [12:23:36.767] local({ [12:23:36.767] for (name in names(...future.x_jj)) { [12:23:36.767] assign(name, ...future.x_jj[[name]], envir = ...future.env, [12:23:36.767] inherits = FALSE) [12:23:36.767] } [12:23:36.767] }) [12:23:36.767] tryCatch(ii, error = identity) [12:23:36.767] }) [12:23:36.767] } [12:23:36.768] - globals: [1] '...future.x_ii' [12:23:36.768] List of 1 [12:23:36.768] $ ...future.x_ii: NULL [12:23:36.768] - attr(*, "where")=List of 1 [12:23:36.768] ..$ ...future.x_ii:<environment: R_EmptyEnv> [12:23:36.768] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [12:23:36.768] - attr(*, "resolved")= logi FALSE [12:23:36.768] - attr(*, "total_size")= num 27 [12:23:36.772] - packages: [1] 'doFuture' [12:23:36.772] - identifying globals and packages ... DONE [12:23:36.808] Number of chunks: 1 [12:23:36.809] Number of futures (= number of chunks): 1 [12:23:36.809] Launching 1 futures (chunks) ... [12:23:36.809] Chunk #1 of 1 ... [12:23:36.809] - Finding globals in 'args_list' chunk #1 ... [12:23:36.810] [12:23:36.810] [12:23:36.810] - Finding globals in 'args_list' for chunk #1 ... DONE [12:23:36.817] Chunk #1 of 1 ... DONE [12:23:36.818] Launching 1 futures (chunks) ... DONE [12:23:36.818] - resolving futures [12:23:36.818] - gathering results & relaying conditions (except errors) <FutureInterruptError: A future ('doFuture-1') of class ClusterFuture was interrupted, while running on 'localhost'> Future UUID: 3e10db7d2aff89ae83bf065d8d54f0c4-2 DEBUG: BEGIN TROUBLESHOOTING HELP Future involved: ClusterFuture: Label: 'doFuture-1' Expression: { "# doFuture():::doFuture(): Make sure that foreach uses 'doFuture'" "# also in nested calls " doFuture::registerDoFuture() "# doFuture():::doFuture(): process chunk of elements" lapply(seq_along(...future.x_ii), FUN = function(jj) { ...future.x_jj <- ...future.x_ii[[jj]] { NULL ii <- NULL } ...future.env <- environment() local({ for (name in names(...future.x_jj)) { assign(name, ...future.x_jj[[name]], envir = ...future.env, inherits = FALSE) } }) tryCatch(ii, error = identity) }) } Lazy evaluation: FALSE Asynchronous evaluation: TRUE Local evaluation: TRUE Environment: R_GlobalEnv Capture standard output: TRUE Capture condition classes: 'condition' (excluding '<none>') Immediate condition classes: 'immediateCondition' Globals: 1 objects totaling 194 bytes (list '...future.x_ii' of 194 bytes) Packages: 1 packages ('doFuture') L'Ecuyer-CMRG RNG seed: <none> (seed = FALSE) Resolved: TRUE Value: <not collected> Conditions captured: <none> Early signaling: FALSE Owner process: 3e10db7d2aff89ae83bf065d8d54f0c4 Class: 'ClusterFuture', 'MultiprocessFuture', 'Future' DEBUG: END TROUBLESHOOTING HELP Error in serialize(data, node$con) : error writing to connection Calls: <Anonymous> ... postNode -> sendData -> sendData.SOCKnode -> serialize Execution halted Flavor: r-devel-windows-x86_64

Version: 1.0.2
Check: tests
Result: ERROR Running 'foreach_dofuture,cluster-missing-doFuture-pkg.R' [62s] Running 'foreach_dofuture,errors.R' [10s] Running 'foreach_dofuture,globals.R' [7s] Running 'foreach_dofuture,nested_colon.R' [14s] Running 'foreach_dofuture,nested_dofuture.R' [15s] Running 'foreach_dofuture,rng.R' [4s] Running 'foreach_dofuture.R' [3s] Running 'foreach_dopar,cluster-missing-doFuture-pkg.R' [62s] Running 'foreach_dopar,doRNG,dopar.R' [2s] Running 'foreach_dopar,doRNG,dorng.R' [6s] Running 'foreach_dopar,errors.R' [7s] Running 'foreach_dopar,globals.R' [7s] Running 'foreach_dopar,nested_colon.R' [12s] Running 'foreach_dopar,nested_dopar.R' [16s] Running 'foreach_dopar,options-for-export.R' [5s] Running 'foreach_dopar.R' [3s] Running 'makeChunks.R' [4s] Running 'options,nested.R' [4s] Running 'registerDoFuture.R' [2s] Running 'times.R' [2s] Running 'utils.R' [1s] Running 'withDoRNG.R' [3s] Running the tests in 'tests/foreach_dofuture,cluster-missing-doFuture-pkg.R' failed. Complete output: > source("incl/start.R") Loading required package: foreach Loading required package: future R version 4.5.0 (2025-04-11 ucrt) Platform: x86_64-w64-mingw32/x64 Running under: Windows Server 2022 x64 (build 20348) Matrix products: default LAPACK version 3.12.1 locale: [1] LC_COLLATE=C LC_CTYPE=German_Germany.utf8 [3] LC_MONETARY=C LC_NUMERIC=C [5] LC_TIME=C time zone: Europe/Berlin tzcode source: internal attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] doFuture_1.0.2 future_1.40.0 foreach_1.5.2 loaded via a namespace (and not attached): [1] compiler_4.5.0 parallelly_1.43.0 tools_4.5.0 [4] parallel_4.5.0 future.apply_1.11.3 listenv_0.9.1 [7] codetools_0.2-20 iterators_1.0.14 digest_0.6.37 [10] globals_0.17.0 > options(future.debug = FALSE) > > message("*** cluster() ...") *** cluster() ... > > message("Library paths: ", paste(sQuote(.libPaths()), collapse = ", ")) Library paths: 'D:/temp/2025_05_07_01_50_00_15065/RtmpuECvju/RLIBS_191f014d84260', 'D:/RCompile/recent/R-4.5.0/library' > message("Package path: ", sQuote(system.file(package = "future"))) Package path: 'D:/RCompile/CRANpkg/lib/4.5/future' > > types <- "PSOCK" > #if (supportsMulticore()) types <- c(types, "FORK") > > setupClusterWithoutPkgs <- function(type = "PSOCK", + withs = c("digest", "globals", + "listenv", "future"), + withouts = c("doFuture")) { + cl <- parallel::makeCluster(1L, type = type, timeout = 60) + + ## Emulate a worker that does not have 'future' installed. + ## by setting a different user library path on the worker. + libs <- parallel::clusterEvalQ(cl, .libPaths(tempdir()))[[1]] + attr(cl, "libs") <- libs + + ## 'withouts' tops 'withs' for conveniency + withs <- setdiff(withs, withouts) + + ## "Install" any 'withs' packages? + if (length(withs) > 0L) { + paths <- find.package(withs) + res <- parallel::clusterCall(cl, fun = sapply, X = paths, + FUN = file.copy, to = libs[1], + recursive = TRUE)[[1]] + res <- parallel::clusterCall(cl, fun = sapply, X = withs, + FUN = requireNamespace)[[1]] + } + attr(cl, "withs") <- res + + ## Check whether 'future' is still available on the worker or not. + ## It could be that it is installed in the system library path, which + ## in case we cannot "hide" the future package from the worker. + res <- parallel::clusterCall(cl, fun = sapply, X = withouts, + FUN = requireNamespace)[[1]] + attr(cl, "withouts") <- res + + cl + } > > cl <- NULL > for (type in types) { + message(sprintf("Test set #1 with cluster type %s ...", sQuote(type))) + + cl <- setupClusterWithoutPkgs(type, withouts = c("future", "doFuture")) + if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) { + plan(cluster, workers = cl, .init = FALSE) + + ## Here we will get: + ## <UnexpectedFutureResultError: Unexpected result (of class + ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture + ## future (label = '<none>', expression = '{ ... }'): + ## Package 'future' is not installed on worker (r_version: ...)> + ## Note: This error is produced by the future backend when it recieves + ## the unexpected results. + res <- tryCatch({ + y <- foreach(ii = 1:3) %dofuture% ii + }, error = identity) + print(res) + stopifnot(inherits(res, "FutureError")) + } + parallel::stopCluster(cl) + cl <- NULL + + cl <- setupClusterWithoutPkgs(type) + if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) { + plan(cluster, workers = cl, .init = FALSE) + + ## Here we will get: + ## <UnexpectedFutureResultError: Unexpected result (of class + ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture + ## future (label = '<none>', expression = '{ ... }'): + ## there is no package called 'doFuture'> + ## Note: This error is produced by the future backend when it recieves + ## the unexpected results. + res <- tryCatch({ + y <- foreach(ii = 1:3) %dofuture% ii + }, error = identity) + print(res) + stopifnot(inherits(res, "FutureError")) + } + parallel::stopCluster(cl) + cl <- NULL + + plan(sequential) + + message(sprintf("Test set #1 with cluster type %s ... DONE", sQuote(type))) + } ## for (type ...) Test set #1 with cluster type 'PSOCK' ... [17:21:20.825] doFuture2() ... [17:21:20.898] Number of chunks: 1 [17:21:20.899] Number of futures (= number of chunks): 1 [17:21:20.899] seed = FALSE [17:21:20.900] NULL [17:21:20.903] seed = FALSE [17:21:20.903] seed = FALSE [17:21:20.904] - %dofuture% R expression: [17:21:20.904] ii [17:21:20.904] - foreach iterator arguments: [1] 'ii' [17:21:20.905] - dummy globals (as locals): [1] 'ii' [17:21:20.905] - R expression (map-reduce expression adjusted for RNG): [17:21:20.906] { [17:21:20.906] NULL [17:21:20.906] "# doFuture():::doFuture2(): process chunk of elements" [17:21:20.906] lapply(seq_along(...future.x_ii), FUN = function(jj) { [17:21:20.906] ...future.x_jj <- ...future.x_ii[[jj]] [17:21:20.906] { [17:21:20.906] NULL [17:21:20.906] ii <- NULL [17:21:20.906] } [17:21:20.906] ...future.env <- environment() [17:21:20.906] local({ [17:21:20.906] for (name in names(...future.x_jj)) { [17:21:20.906] assign(name, ...future.x_jj[[name]], envir = ...future.env, [17:21:20.906] inherits = FALSE) [17:21:20.906] } [17:21:20.906] }) [17:21:20.906] NULL [17:21:20.906] tryCatch(ii, error = identity) [17:21:20.906] }) [17:21:20.906] } [17:21:20.906] - identifying globals and packages ... [17:21:20.907] - Argument 'globals': [17:21:20.907] logi TRUE [17:21:20.907] - attr(*, "add")= chr "...future.x_ii" [17:21:20.907] - attr(*, "ignore")= chr "ii" [17:21:20.910] - R expression (map-reduce expression searched for globals): [17:21:20.910] { [17:21:20.910] NULL [17:21:20.910] "# doFuture():::doFuture2(): process chunk of elements" [17:21:20.910] lapply(seq_along(...future.x_ii), FUN = function(jj) { [17:21:20.910] ...future.x_jj <- ...future.x_ii[[jj]] [17:21:20.910] { [17:21:20.910] NULL [17:21:20.910] ii <- NULL [17:21:20.910] } [17:21:20.910] ...future.env <- environment() [17:21:20.910] local({ [17:21:20.910] for (name in names(...future.x_jj)) { [17:21:20.910] assign(name, ...future.x_jj[[name]], envir = ...future.env, [17:21:20.910] inherits = FALSE) [17:21:20.910] } [17:21:20.910] }) [17:21:20.910] NULL [17:21:20.910] tryCatch(ii, error = identity) [17:21:20.910] }) [17:21:20.910] } [17:21:20.926] - R expression (%dofuture% expression searched for globals): [17:21:20.926] ii [17:21:20.928] - Globals in %dofuture% R expression not in map-reduce expression: [17:21:20.929] - Appending 0 globals only found in the vanilla %dofuture% expression: [17:21:20.929] - globals: [1] '...future.x_ii' [17:21:20.929] List of 1 [17:21:20.929] $ ...future.x_ii: num 42 [17:21:20.929] - attr(*, "where")=List of 1 [17:21:20.929] ..$ ...future.x_ii:<environment: R_EmptyEnv> [17:21:20.929] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [17:21:20.929] - attr(*, "resolved")= logi FALSE [17:21:20.929] - attr(*, "total_size")= num 39 [17:21:20.934] - packages: [1] 'doFuture' [17:21:20.934] - identifying globals and packages ... DONE [17:21:20.935] Launching 1 futures (chunks) ... [17:21:20.935] Chunk #1 of 1 ... [17:21:20.935] - Finding globals in 'args_list' for chunk #1 ... [17:21:20.936] [17:21:20.937] [17:21:20.937] - Finding globals in 'args_list' for chunk #1 ... DONE [17:21:20.937] - seeds: <none> [17:21:20.946] Chunk #1 of 1 ... DONE [17:21:20.947] Launching 1 futures (chunks) ... DONE [17:21:20.947] - resolving futures [17:21:20.947] - gathering results & relaying conditions (except errors) <FutureInterruptError: A future ('doFuture2-1') of class ClusterFuture was interrupted, while running on 'localhost'> Future UUID: 62fb52d71a79b36803b2d505efdac040-2 DEBUG: BEGIN TROUBLESHOOTING HELP Future involved: ClusterFuture: Label: 'doFuture2-1' Expression: { NULL "# doFuture():::doFuture2(): process chunk of elements" lapply(seq_along(...future.x_ii), FUN = function(jj) { ...future.x_jj <- ...future.x_ii[[jj]] { NULL ii <- NULL } ...future.env <- environment() local({ for (name in names(...future.x_jj)) { assign(name, ...future.x_jj[[name]], envir = ...future.env, inherits = FALSE) } }) NULL tryCatch(ii, error = identity) }) } Lazy evaluation: FALSE Asynchronous evaluation: TRUE Local evaluation: TRUE Environment: R_GlobalEnv Capture standard output: TRUE Capture condition classes: 'condition' (excluding '<none>') Immediate condition classes: 'immediateCondition' Globals: 1 objects totaling 194 bytes (list '...future.x_ii' of 194 bytes) Packages: 1 packages ('doFuture') L'Ecuyer-CMRG RNG seed: <none> (seed = FALSE) Resolved: TRUE Value: <not collected> Conditions captured: <none> Early signaling: FALSE Owner process: 62fb52d71a79b36803b2d505efdac040 Class: 'ClusterFuture', 'MultiprocessFuture', 'Future' DEBUG: END TROUBLESHOOTING HELP Error in serialize(data, node$con) : error writing to connection Calls: <Anonymous> ... postNode -> sendData -> sendData.SOCKnode -> serialize Execution halted Running the tests in 'tests/foreach_dopar,cluster-missing-doFuture-pkg.R' failed. Complete output: > source("incl/start.R") Loading required package: foreach Loading required package: future R version 4.5.0 (2025-04-11 ucrt) Platform: x86_64-w64-mingw32/x64 Running under: Windows Server 2022 x64 (build 20348) Matrix products: default LAPACK version 3.12.1 locale: [1] LC_COLLATE=C LC_CTYPE=German_Germany.utf8 [3] LC_MONETARY=C LC_NUMERIC=C [5] LC_TIME=C time zone: Europe/Berlin tzcode source: internal attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] doFuture_1.0.2 future_1.40.0 foreach_1.5.2 loaded via a namespace (and not attached): [1] compiler_4.5.0 parallelly_1.43.0 tools_4.5.0 [4] parallel_4.5.0 future.apply_1.11.3 listenv_0.9.1 [7] codetools_0.2-20 iterators_1.0.14 digest_0.6.37 [10] globals_0.17.0 > options(future.debug = FALSE) > > message("*** cluster() ...") *** cluster() ... > > registerDoFuture() > > message("Library paths: ", paste(sQuote(.libPaths()), collapse = ", ")) Library paths: 'D:/temp/2025_05_07_01_50_00_15065/RtmpuECvju/RLIBS_191f014d84260', 'D:/RCompile/recent/R-4.5.0/library' > message("Package path: ", sQuote(system.file(package = "future"))) Package path: 'D:/RCompile/CRANpkg/lib/4.5/future' > > types <- "PSOCK" > #if (supportsMulticore()) types <- c(types, "FORK") > > setupClusterWithoutPkgs <- function(type = "PSOCK", + withs = c("digest", "globals", + "listenv", "future"), + withouts = c("doFuture")) { + cl <- parallel::makeCluster(1L, type = type, timeout = 60) + + ## Emulate a worker that does not have 'future' installed. + ## by setting a different user library path on the worker. + libs <- parallel::clusterEvalQ(cl, .libPaths(tempdir()))[[1]] + attr(cl, "libs") <- libs + + ## 'withouts' tops 'withs' for conveniency + withs <- setdiff(withs, withouts) + + ## "Install" any 'withs' packages? + if (length(withs) > 0L) { + paths <- find.package(withs) + res <- parallel::clusterCall(cl, fun = sapply, X = paths, + FUN = file.copy, to = libs[1], + recursive = TRUE)[[1]] + res <- parallel::clusterCall(cl, fun = sapply, X = withs, + FUN = requireNamespace)[[1]] + } + attr(cl, "withs") <- res + + ## Check whether 'future' is still available on the worker or not. + ## It could be that it is installed in the system library path, which + ## in case we cannot "hide" the future package from the worker. + res <- parallel::clusterCall(cl, fun = sapply, X = withouts, + FUN = requireNamespace)[[1]] + attr(cl, "withouts") <- res + + cl + } > > > cl <- NULL > for (type in types) { + message(sprintf("Test set #1 with cluster type %s ...", sQuote(type))) + + cl <- setupClusterWithoutPkgs(type, withouts = c("future", "doFuture")) + if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) { + plan(cluster, workers = cl, .init = FALSE) + + ## Here we will get: + ## <UnexpectedFutureResultError: Unexpected result (of class + ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture + ## future (label = '<none>', expression = '{ ... }'): + ## Package 'future' is not installed on worker (r_version: ...)> + ## Note: This error is produced by the future backend when it recieves + ## the unexpected results. + res <- tryCatch({ + y <- foreach(ii = 1:3) %dopar% ii + }, error = identity) + print(res) + stopifnot(inherits(res, "FutureError")) + } + parallel::stopCluster(cl) + cl <- NULL + + cl <- setupClusterWithoutPkgs(type) + if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) { + plan(cluster, workers = cl, .init = FALSE) + + ## Here we will get: + ## <UnexpectedFutureResultError: Unexpected result (of class + ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture + ## future (label = '<none>', expression = '{ ... }'): + ## there is no package called 'doFuture'> + ## Note: This error is produced by the future backend when it recieves + ## the unexpected results. + res <- tryCatch({ + y <- foreach(ii = 1:3) %dopar% ii + }, error = identity) + print(res) + stopifnot(inherits(res, "FutureError")) + } + parallel::stopCluster(cl) + cl <- NULL + + plan(sequential) + + message(sprintf("Test set #1 with cluster type %s ... DONE", sQuote(type))) + } ## for (type ...) Test set #1 with cluster type 'PSOCK' ... [17:23:16.210] doFuture() ... [17:23:16.212] - dummy globals (as locals): [1] 'ii' [17:23:16.213] - R expression: [17:23:16.213] { [17:23:16.213] "# doFuture():::doFuture(): Make sure that foreach uses 'doFuture'" [17:23:16.213] "# also in nested calls " [17:23:16.213] doFuture::registerDoFuture() [17:23:16.213] "# doFuture():::doFuture(): process chunk of elements" [17:23:16.213] lapply(seq_along(...future.x_ii), FUN = function(jj) { [17:23:16.213] ...future.x_jj <- ...future.x_ii[[jj]] [17:23:16.213] { [17:23:16.213] NULL [17:23:16.213] ii <- NULL [17:23:16.213] } [17:23:16.213] ...future.env <- environment() [17:23:16.213] local({ [17:23:16.213] for (name in names(...future.x_jj)) { [17:23:16.213] assign(name, ...future.x_jj[[name]], envir = ...future.env, [17:23:16.213] inherits = FALSE) [17:23:16.213] } [17:23:16.213] }) [17:23:16.213] tryCatch(ii, error = identity) [17:23:16.213] }) [17:23:16.213] } [17:23:16.214] - identifying globals and packages ... [17:23:16.239] List of 1 [17:23:16.239] $ ...future.x_ii: NULL [17:23:16.239] - attr(*, "where")=List of 1 [17:23:16.239] ..$ ...future.x_ii:<environment: R_EmptyEnv> [17:23:16.239] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [17:23:16.239] - attr(*, "resolved")= logi FALSE [17:23:16.239] - attr(*, "total_size")= num 27 [17:23:16.251] - R expression: [17:23:16.251] { [17:23:16.251] "# doFuture():::doFuture(): Make sure that foreach uses 'doFuture'" [17:23:16.251] "# also in nested calls " [17:23:16.251] doFuture::registerDoFuture() [17:23:16.251] "# doFuture():::doFuture(): process chunk of elements" [17:23:16.251] lapply(seq_along(...future.x_ii), FUN = function(jj) { [17:23:16.251] ...future.x_jj <- ...future.x_ii[[jj]] [17:23:16.251] { [17:23:16.251] NULL [17:23:16.251] ii <- NULL [17:23:16.251] } [17:23:16.251] ...future.env <- environment() [17:23:16.251] local({ [17:23:16.251] for (name in names(...future.x_jj)) { [17:23:16.251] assign(name, ...future.x_jj[[name]], envir = ...future.env, [17:23:16.251] inherits = FALSE) [17:23:16.251] } [17:23:16.251] }) [17:23:16.251] tryCatch(ii, error = identity) [17:23:16.251] }) [17:23:16.251] } [17:23:16.253] - globals: [1] '...future.x_ii' [17:23:16.253] List of 1 [17:23:16.253] $ ...future.x_ii: NULL [17:23:16.253] - attr(*, "where")=List of 1 [17:23:16.253] ..$ ...future.x_ii:<environment: R_EmptyEnv> [17:23:16.253] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [17:23:16.253] - attr(*, "resolved")= logi FALSE [17:23:16.253] - attr(*, "total_size")= num 27 [17:23:16.259] - packages: [1] 'doFuture' [17:23:16.259] - identifying globals and packages ... DONE [17:23:16.301] Number of chunks: 1 [17:23:16.301] Number of futures (= number of chunks): 1 [17:23:16.301] Launching 1 futures (chunks) ... [17:23:16.301] Chunk #1 of 1 ... [17:23:16.302] - Finding globals in 'args_list' chunk #1 ... [17:23:16.303] [17:23:16.303] [17:23:16.303] - Finding globals in 'args_list' for chunk #1 ... DONE [17:23:16.311] Chunk #1 of 1 ... DONE [17:23:16.311] Launching 1 futures (chunks) ... DONE [17:23:16.312] - resolving futures [17:23:16.312] - gathering results & relaying conditions (except errors) <FutureInterruptError: A future ('doFuture-1') of class ClusterFuture was interrupted, while running on 'localhost'> Future UUID: 6b6d8c64ee87ad004c153b4a9964633c-2 DEBUG: BEGIN TROUBLESHOOTING HELP Future involved: ClusterFuture: Label: 'doFuture-1' Expression: { "# doFuture():::doFuture(): Make sure that foreach uses 'doFuture'" "# also in nested calls " doFuture::registerDoFuture() "# doFuture():::doFuture(): process chunk of elements" lapply(seq_along(...future.x_ii), FUN = function(jj) { ...future.x_jj <- ...future.x_ii[[jj]] { NULL ii <- NULL } ...future.env <- environment() local({ for (name in names(...future.x_jj)) { assign(name, ...future.x_jj[[name]], envir = ...future.env, inherits = FALSE) } }) tryCatch(ii, error = identity) }) } Lazy evaluation: FALSE Asynchronous evaluation: TRUE Local evaluation: TRUE Environment: R_GlobalEnv Capture standard output: TRUE Capture condition classes: 'condition' (excluding '<none>') Immediate condition classes: 'immediateCondition' Globals: 1 objects totaling 194 bytes (list '...future.x_ii' of 194 bytes) Packages: 1 packages ('doFuture') L'Ecuyer-CMRG RNG seed: <none> (seed = FALSE) Resolved: TRUE Value: <not collected> Conditions captured: <none> Early signaling: FALSE Owner process: 6b6d8c64ee87ad004c153b4a9964633c Class: 'ClusterFuture', 'MultiprocessFuture', 'Future' DEBUG: END TROUBLESHOOTING HELP Error in serialize(data, node$con) : error writing to connection Calls: <Anonymous> ... postNode -> sendData -> sendData.SOCKnode -> serialize Execution halted Flavor: r-release-windows-x86_64

Version: 1.0.2
Check: tests
Result: ERROR Running 'foreach_dofuture,cluster-missing-doFuture-pkg.R' [63s] Running 'foreach_dofuture,errors.R' [12s] Running 'foreach_dofuture,globals.R' [9s] Running 'foreach_dofuture,nested_colon.R' [17s] Running 'foreach_dofuture,nested_dofuture.R' [19s] Running 'foreach_dofuture,rng.R' [5s] Running 'foreach_dofuture.R' [4s] Running 'foreach_dopar,cluster-missing-doFuture-pkg.R' [63s] Running 'foreach_dopar,doRNG,dopar.R' [3s] Running 'foreach_dopar,doRNG,dorng.R' [7s] Running 'foreach_dopar,errors.R' [10s] Running 'foreach_dopar,globals.R' [9s] Running 'foreach_dopar,nested_colon.R' [16s] Running 'foreach_dopar,nested_dopar.R' [21s] Running 'foreach_dopar,options-for-export.R' [6s] Running 'foreach_dopar.R' [4s] Running 'makeChunks.R' [5s] Running 'options,nested.R' [5s] Running 'registerDoFuture.R' [3s] Running 'times.R' [2s] Running 'utils.R' [1s] Running 'withDoRNG.R' [4s] Running the tests in 'tests/foreach_dofuture,cluster-missing-doFuture-pkg.R' failed. Complete output: > source("incl/start.R") Loading required package: foreach Loading required package: future R version 4.4.3 (2025-02-28 ucrt) Platform: x86_64-w64-mingw32/x64 Running under: Windows Server 2022 x64 (build 20348) Matrix products: default locale: [1] LC_COLLATE=C LC_CTYPE=German_Germany.utf8 [3] LC_MONETARY=C LC_NUMERIC=C [5] LC_TIME=C time zone: Europe/Berlin tzcode source: internal attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] doFuture_1.0.2 future_1.40.0 foreach_1.5.2 loaded via a namespace (and not attached): [1] compiler_4.4.3 parallelly_1.43.0 tools_4.4.3 [4] parallel_4.4.3 future.apply_1.11.3 listenv_0.9.1 [7] codetools_0.2-20 iterators_1.0.14 digest_0.6.37 [10] globals_0.17.0 > options(future.debug = FALSE) > > message("*** cluster() ...") *** cluster() ... > > message("Library paths: ", paste(sQuote(.libPaths()), collapse = ", ")) Library paths: 'D:/temp/2025_05_04_01_50_00_20595/RtmpieOMwS/RLIBS_275907b014e43', 'D:/RCompile/recent/R-4.4.3/library' > message("Package path: ", sQuote(system.file(package = "future"))) Package path: 'D:/RCompile/CRANpkg/lib/4.4/future' > > types <- "PSOCK" > #if (supportsMulticore()) types <- c(types, "FORK") > > setupClusterWithoutPkgs <- function(type = "PSOCK", + withs = c("digest", "globals", + "listenv", "future"), + withouts = c("doFuture")) { + cl <- parallel::makeCluster(1L, type = type, timeout = 60) + + ## Emulate a worker that does not have 'future' installed. + ## by setting a different user library path on the worker. + libs <- parallel::clusterEvalQ(cl, .libPaths(tempdir()))[[1]] + attr(cl, "libs") <- libs + + ## 'withouts' tops 'withs' for conveniency + withs <- setdiff(withs, withouts) + + ## "Install" any 'withs' packages? + if (length(withs) > 0L) { + paths <- find.package(withs) + res <- parallel::clusterCall(cl, fun = sapply, X = paths, + FUN = file.copy, to = libs[1], + recursive = TRUE)[[1]] + res <- parallel::clusterCall(cl, fun = sapply, X = withs, + FUN = requireNamespace)[[1]] + } + attr(cl, "withs") <- res + + ## Check whether 'future' is still available on the worker or not. + ## It could be that it is installed in the system library path, which + ## in case we cannot "hide" the future package from the worker. + res <- parallel::clusterCall(cl, fun = sapply, X = withouts, + FUN = requireNamespace)[[1]] + attr(cl, "withouts") <- res + + cl + } > > cl <- NULL > for (type in types) { + message(sprintf("Test set #1 with cluster type %s ...", sQuote(type))) + + cl <- setupClusterWithoutPkgs(type, withouts = c("future", "doFuture")) + if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) { + plan(cluster, workers = cl, .init = FALSE) + + ## Here we will get: + ## <UnexpectedFutureResultError: Unexpected result (of class + ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture + ## future (label = '<none>', expression = '{ ... }'): + ## Package 'future' is not installed on worker (r_version: ...)> + ## Note: This error is produced by the future backend when it recieves + ## the unexpected results. + res <- tryCatch({ + y <- foreach(ii = 1:3) %dofuture% ii + }, error = identity) + print(res) + stopifnot(inherits(res, "FutureError")) + } + parallel::stopCluster(cl) + cl <- NULL + + cl <- setupClusterWithoutPkgs(type) + if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) { + plan(cluster, workers = cl, .init = FALSE) + + ## Here we will get: + ## <UnexpectedFutureResultError: Unexpected result (of class + ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture + ## future (label = '<none>', expression = '{ ... }'): + ## there is no package called 'doFuture'> + ## Note: This error is produced by the future backend when it recieves + ## the unexpected results. + res <- tryCatch({ + y <- foreach(ii = 1:3) %dofuture% ii + }, error = identity) + print(res) + stopifnot(inherits(res, "FutureError")) + } + parallel::stopCluster(cl) + cl <- NULL + + plan(sequential) + + message(sprintf("Test set #1 with cluster type %s ... DONE", sQuote(type))) + } ## for (type ...) Test set #1 with cluster type 'PSOCK' ... [10:12:55.987] doFuture2() ... [10:12:56.074] Number of chunks: 1 [10:12:56.074] Number of futures (= number of chunks): 1 [10:12:56.075] seed = FALSE [10:12:56.076] NULL [10:12:56.080] seed = FALSE [10:12:56.081] seed = FALSE [10:12:56.081] - %dofuture% R expression: [10:12:56.081] ii [10:12:56.082] - foreach iterator arguments: [1] 'ii' [10:12:56.082] - dummy globals (as locals): [1] 'ii' [10:12:56.083] - R expression (map-reduce expression adjusted for RNG): [10:12:56.084] { [10:12:56.084] NULL [10:12:56.084] "# doFuture():::doFuture2(): process chunk of elements" [10:12:56.084] lapply(seq_along(...future.x_ii), FUN = function(jj) { [10:12:56.084] ...future.x_jj <- ...future.x_ii[[jj]] [10:12:56.084] { [10:12:56.084] NULL [10:12:56.084] ii <- NULL [10:12:56.084] } [10:12:56.084] ...future.env <- environment() [10:12:56.084] local({ [10:12:56.084] for (name in names(...future.x_jj)) { [10:12:56.084] assign(name, ...future.x_jj[[name]], envir = ...future.env, [10:12:56.084] inherits = FALSE) [10:12:56.084] } [10:12:56.084] }) [10:12:56.084] NULL [10:12:56.084] tryCatch(ii, error = identity) [10:12:56.084] }) [10:12:56.084] } [10:12:56.085] - identifying globals and packages ... [10:12:56.085] - Argument 'globals': [10:12:56.085] logi TRUE [10:12:56.085] - attr(*, "add")= chr "...future.x_ii" [10:12:56.085] - attr(*, "ignore")= chr "ii" [10:12:56.090] - R expression (map-reduce expression searched for globals): [10:12:56.090] { [10:12:56.090] NULL [10:12:56.090] "# doFuture():::doFuture2(): process chunk of elements" [10:12:56.090] lapply(seq_along(...future.x_ii), FUN = function(jj) { [10:12:56.090] ...future.x_jj <- ...future.x_ii[[jj]] [10:12:56.090] { [10:12:56.090] NULL [10:12:56.090] ii <- NULL [10:12:56.090] } [10:12:56.090] ...future.env <- environment() [10:12:56.090] local({ [10:12:56.090] for (name in names(...future.x_jj)) { [10:12:56.090] assign(name, ...future.x_jj[[name]], envir = ...future.env, [10:12:56.090] inherits = FALSE) [10:12:56.090] } [10:12:56.090] }) [10:12:56.090] NULL [10:12:56.090] tryCatch(ii, error = identity) [10:12:56.090] }) [10:12:56.090] } [10:12:56.114] - R expression (%dofuture% expression searched for globals): [10:12:56.114] ii [10:12:56.117] - Globals in %dofuture% R expression not in map-reduce expression: [10:12:56.118] - Appending 0 globals only found in the vanilla %dofuture% expression: [10:12:56.118] - globals: [1] '...future.x_ii' [10:12:56.118] List of 1 [10:12:56.118] $ ...future.x_ii: num 42 [10:12:56.118] - attr(*, "where")=List of 1 [10:12:56.118] ..$ ...future.x_ii:<environment: R_EmptyEnv> [10:12:56.118] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [10:12:56.118] - attr(*, "resolved")= logi FALSE [10:12:56.118] - attr(*, "total_size")= num 39 [10:12:56.125] - packages: [1] 'doFuture' [10:12:56.125] - identifying globals and packages ... DONE [10:12:56.126] Launching 1 futures (chunks) ... [10:12:56.126] Chunk #1 of 1 ... [10:12:56.126] - Finding globals in 'args_list' for chunk #1 ... [10:12:56.128] [10:12:56.128] [10:12:56.129] - Finding globals in 'args_list' for chunk #1 ... DONE [10:12:56.129] - seeds: <none> [10:12:56.139] Chunk #1 of 1 ... DONE [10:12:56.139] Launching 1 futures (chunks) ... DONE [10:12:56.140] - resolving futures [10:12:56.140] - gathering results & relaying conditions (except errors) <FutureInterruptError: A future ('doFuture2-1') of class ClusterFuture was interrupted, while running on 'localhost'> Future UUID: fa812925f99b7d3379ff7ac1429e6313-2 DEBUG: BEGIN TROUBLESHOOTING HELP Future involved: ClusterFuture: Label: 'doFuture2-1' Expression: { NULL "# doFuture():::doFuture2(): process chunk of elements" lapply(seq_along(...future.x_ii), FUN = function(jj) { ...future.x_jj <- ...future.x_ii[[jj]] { NULL ii <- NULL } ...future.env <- environment() local({ for (name in names(...future.x_jj)) { assign(name, ...future.x_jj[[name]], envir = ...future.env, inherits = FALSE) } }) NULL tryCatch(ii, error = identity) }) } Lazy evaluation: FALSE Asynchronous evaluation: TRUE Local evaluation: TRUE Environment: R_GlobalEnv Capture standard output: TRUE Capture condition classes: 'condition' (excluding '<none>') Immediate condition classes: 'immediateCondition' Globals: 1 objects totaling 194 bytes (list '...future.x_ii' of 194 bytes) Packages: 1 packages ('doFuture') L'Ecuyer-CMRG RNG seed: <none> (seed = FALSE) Resolved: TRUE Value: <not collected> Conditions captured: <none> Early signaling: FALSE Owner process: fa812925f99b7d3379ff7ac1429e6313 Class: 'ClusterFuture', 'MultiprocessFuture', 'Future' DEBUG: END TROUBLESHOOTING HELP Error in serialize(data, node$con) : error writing to connection Calls: <Anonymous> ... postNode -> sendData -> sendData.SOCKnode -> serialize Execution halted Running the tests in 'tests/foreach_dopar,cluster-missing-doFuture-pkg.R' failed. Complete output: > source("incl/start.R") Loading required package: foreach Loading required package: future R version 4.4.3 (2025-02-28 ucrt) Platform: x86_64-w64-mingw32/x64 Running under: Windows Server 2022 x64 (build 20348) Matrix products: default locale: [1] LC_COLLATE=C LC_CTYPE=German_Germany.utf8 [3] LC_MONETARY=C LC_NUMERIC=C [5] LC_TIME=C time zone: Europe/Berlin tzcode source: internal attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] doFuture_1.0.2 future_1.40.0 foreach_1.5.2 loaded via a namespace (and not attached): [1] compiler_4.4.3 parallelly_1.43.0 tools_4.4.3 [4] parallel_4.4.3 future.apply_1.11.3 listenv_0.9.1 [7] codetools_0.2-20 iterators_1.0.14 digest_0.6.37 [10] globals_0.17.0 > options(future.debug = FALSE) > > message("*** cluster() ...") *** cluster() ... > > registerDoFuture() > > message("Library paths: ", paste(sQuote(.libPaths()), collapse = ", ")) Library paths: 'D:/temp/2025_05_04_01_50_00_20595/RtmpieOMwS/RLIBS_275907b014e43', 'D:/RCompile/recent/R-4.4.3/library' > message("Package path: ", sQuote(system.file(package = "future"))) Package path: 'D:/RCompile/CRANpkg/lib/4.4/future' > > types <- "PSOCK" > #if (supportsMulticore()) types <- c(types, "FORK") > > setupClusterWithoutPkgs <- function(type = "PSOCK", + withs = c("digest", "globals", + "listenv", "future"), + withouts = c("doFuture")) { + cl <- parallel::makeCluster(1L, type = type, timeout = 60) + + ## Emulate a worker that does not have 'future' installed. + ## by setting a different user library path on the worker. + libs <- parallel::clusterEvalQ(cl, .libPaths(tempdir()))[[1]] + attr(cl, "libs") <- libs + + ## 'withouts' tops 'withs' for conveniency + withs <- setdiff(withs, withouts) + + ## "Install" any 'withs' packages? + if (length(withs) > 0L) { + paths <- find.package(withs) + res <- parallel::clusterCall(cl, fun = sapply, X = paths, + FUN = file.copy, to = libs[1], + recursive = TRUE)[[1]] + res <- parallel::clusterCall(cl, fun = sapply, X = withs, + FUN = requireNamespace)[[1]] + } + attr(cl, "withs") <- res + + ## Check whether 'future' is still available on the worker or not. + ## It could be that it is installed in the system library path, which + ## in case we cannot "hide" the future package from the worker. + res <- parallel::clusterCall(cl, fun = sapply, X = withouts, + FUN = requireNamespace)[[1]] + attr(cl, "withouts") <- res + + cl + } > > > cl <- NULL > for (type in types) { + message(sprintf("Test set #1 with cluster type %s ...", sQuote(type))) + + cl <- setupClusterWithoutPkgs(type, withouts = c("future", "doFuture")) + if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) { + plan(cluster, workers = cl, .init = FALSE) + + ## Here we will get: + ## <UnexpectedFutureResultError: Unexpected result (of class + ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture + ## future (label = '<none>', expression = '{ ... }'): + ## Package 'future' is not installed on worker (r_version: ...)> + ## Note: This error is produced by the future backend when it recieves + ## the unexpected results. + res <- tryCatch({ + y <- foreach(ii = 1:3) %dopar% ii + }, error = identity) + print(res) + stopifnot(inherits(res, "FutureError")) + } + parallel::stopCluster(cl) + cl <- NULL + + cl <- setupClusterWithoutPkgs(type) + if (all(attr(cl, "withs")) && !all(attr(cl, "withouts"))) { + plan(cluster, workers = cl, .init = FALSE) + + ## Here we will get: + ## <UnexpectedFutureResultError: Unexpected result (of class + ## 'snow-try-error' != 'FutureResult') retrieved for ClusterFuture + ## future (label = '<none>', expression = '{ ... }'): + ## there is no package called 'doFuture'> + ## Note: This error is produced by the future backend when it recieves + ## the unexpected results. + res <- tryCatch({ + y <- foreach(ii = 1:3) %dopar% ii + }, error = identity) + print(res) + stopifnot(inherits(res, "FutureError")) + } + parallel::stopCluster(cl) + cl <- NULL + + plan(sequential) + + message(sprintf("Test set #1 with cluster type %s ... DONE", sQuote(type))) + } ## for (type ...) Test set #1 with cluster type 'PSOCK' ... [10:15:05.256] doFuture() ... [10:15:05.259] - dummy globals (as locals): [1] 'ii' [10:15:05.259] - R expression: [10:15:05.260] { [10:15:05.260] "# doFuture():::doFuture(): Make sure that foreach uses 'doFuture'" [10:15:05.260] "# also in nested calls " [10:15:05.260] doFuture::registerDoFuture() [10:15:05.260] "# doFuture():::doFuture(): process chunk of elements" [10:15:05.260] lapply(seq_along(...future.x_ii), FUN = function(jj) { [10:15:05.260] ...future.x_jj <- ...future.x_ii[[jj]] [10:15:05.260] { [10:15:05.260] NULL [10:15:05.260] ii <- NULL [10:15:05.260] } [10:15:05.260] ...future.env <- environment() [10:15:05.260] local({ [10:15:05.260] for (name in names(...future.x_jj)) { [10:15:05.260] assign(name, ...future.x_jj[[name]], envir = ...future.env, [10:15:05.260] inherits = FALSE) [10:15:05.260] } [10:15:05.260] }) [10:15:05.260] tryCatch(ii, error = identity) [10:15:05.260] }) [10:15:05.260] } [10:15:05.261] - identifying globals and packages ... [10:15:05.281] List of 1 [10:15:05.281] $ ...future.x_ii: NULL [10:15:05.281] - attr(*, "where")=List of 1 [10:15:05.281] ..$ ...future.x_ii:<environment: R_EmptyEnv> [10:15:05.281] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [10:15:05.281] - attr(*, "resolved")= logi FALSE [10:15:05.281] - attr(*, "total_size")= num 27 [10:15:05.294] - R expression: [10:15:05.294] { [10:15:05.294] "# doFuture():::doFuture(): Make sure that foreach uses 'doFuture'" [10:15:05.294] "# also in nested calls " [10:15:05.294] doFuture::registerDoFuture() [10:15:05.294] "# doFuture():::doFuture(): process chunk of elements" [10:15:05.294] lapply(seq_along(...future.x_ii), FUN = function(jj) { [10:15:05.294] ...future.x_jj <- ...future.x_ii[[jj]] [10:15:05.294] { [10:15:05.294] NULL [10:15:05.294] ii <- NULL [10:15:05.294] } [10:15:05.294] ...future.env <- environment() [10:15:05.294] local({ [10:15:05.294] for (name in names(...future.x_jj)) { [10:15:05.294] assign(name, ...future.x_jj[[name]], envir = ...future.env, [10:15:05.294] inherits = FALSE) [10:15:05.294] } [10:15:05.294] }) [10:15:05.294] tryCatch(ii, error = identity) [10:15:05.294] }) [10:15:05.294] } [10:15:05.295] - globals: [1] '...future.x_ii' [10:15:05.296] List of 1 [10:15:05.296] $ ...future.x_ii: NULL [10:15:05.296] - attr(*, "where")=List of 1 [10:15:05.296] ..$ ...future.x_ii:<environment: R_EmptyEnv> [10:15:05.296] - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [10:15:05.296] - attr(*, "resolved")= logi FALSE [10:15:05.296] - attr(*, "total_size")= num 27 [10:15:05.303] - packages: [1] 'doFuture' [10:15:05.303] - identifying globals and packages ... DONE [10:15:05.388] Number of chunks: 1 [10:15:05.389] Number of futures (= number of chunks): 1 [10:15:05.389] Launching 1 futures (chunks) ... [10:15:05.390] Chunk #1 of 1 ... [10:15:05.391] - Finding globals in 'args_list' chunk #1 ... [10:15:05.392] [10:15:05.393] [10:15:05.393] - Finding globals in 'args_list' for chunk #1 ... DONE [10:15:05.401] Chunk #1 of 1 ... DONE [10:15:05.402] Launching 1 futures (chunks) ... DONE [10:15:05.402] - resolving futures [10:15:05.402] - gathering results & relaying conditions (except errors) <FutureInterruptError: A future ('doFuture-1') of class ClusterFuture was interrupted, while running on 'localhost'> Future UUID: 70c81c700ce96db80fdaa43bb8e3de16-2 DEBUG: BEGIN TROUBLESHOOTING HELP Future involved: ClusterFuture: Label: 'doFuture-1' Expression: { "# doFuture():::doFuture(): Make sure that foreach uses 'doFuture'" "# also in nested calls " doFuture::registerDoFuture() "# doFuture():::doFuture(): process chunk of elements" lapply(seq_along(...future.x_ii), FUN = function(jj) { ...future.x_jj <- ...future.x_ii[[jj]] { NULL ii <- NULL } ...future.env <- environment() local({ for (name in names(...future.x_jj)) { assign(name, ...future.x_jj[[name]], envir = ...future.env, inherits = FALSE) } }) tryCatch(ii, error = identity) }) } Lazy evaluation: FALSE Asynchronous evaluation: TRUE Local evaluation: TRUE Environment: R_GlobalEnv Capture standard output: TRUE Capture condition classes: 'condition' (excluding '<none>') Immediate condition classes: 'immediateCondition' Globals: 1 objects totaling 194 bytes (list '...future.x_ii' of 194 bytes) Packages: 1 packages ('doFuture') L'Ecuyer-CMRG RNG seed: <none> (seed = FALSE) Resolved: TRUE Value: <not collected> Conditions captured: <none> Early signaling: FALSE Owner process: 70c81c700ce96db80fdaa43bb8e3de16 Class: 'ClusterFuture', 'MultiprocessFuture', 'Future' DEBUG: END TROUBLESHOOTING HELP Error in serialize(data, node$con) : error writing to connection Calls: <Anonymous> ... postNode -> sendData -> sendData.SOCKnode -> serialize Execution halted Flavor: r-oldrel-windows-x86_64

Package future

Current CRAN status: ERROR: 5, OK: 8

Version: 1.40.0
Check: tests
Result: ERROR Running ‘test-FutureError.R’ [1s/1s] Running ‘test-FutureGlobals.R’ [1s/1s] Running ‘test-FutureRegistry.R’ [1s/2s] Running ‘test-adhoc_native_to_utf8.R’ [1s/1s] Running ‘test-backtrace.R’ [2s/4s] Running ‘test-bquote.R’ [1s/1s] Running ‘test-capture_journals.R’ [2s/3s] Running ‘test-cluster,worker-termination.R’ [1s/3s] Running ‘test-cluster-connection-clashes.R’ [2s/4s] Running ‘test-cluster-missing-future-pkg.R’ [1s/3s] Running ‘test-demo-fibonacci.R’ [2s/3s] Running ‘test-demo-mandelbrot.R’ [4s/5s] Running ‘test-dotdotdot.R’ [4s/7s] Running ‘test-early-signaling.R’ [1s/2s] Running ‘test-future,labels.R’ [3s/4s] Running ‘test-future,optsenvvars.R’ [1s/3s] Running ‘test-future.R’ [1s/1s] Running ‘test-futureAssign.R’ [4s/7s] Running ‘test-futureAssign_OP.R’ [6s/9s] Running ‘test-futureAssign_OP_with_environment.R’ [1s/1s] Running ‘test-futureAssign_OP_with_listenv.R’ [2s/2s] Running ‘test-futureCall.R’ [4s/8s] Running ‘test-futureOf.R’ [1s/1s] Running ‘test-futureOf_with_environment.R’ [1s/1s] Running ‘test-futureOf_with_listenv.R’ [1s/1s] Running ‘test-futureSessionInfo.R’ [1s/2s] Running ‘test-futures.R’ [20s/27s] Running ‘test-globals,NSE.R’ [2s/4s] Running ‘test-globals,S4methods.R’ [2s/5s] Running ‘test-globals,formulas.R’ [8s/14s] Running ‘test-globals,locals.R’ [2s/5s] Running ‘test-globals,manual.R’ [5s/12s] Running ‘test-globals,resolve.R’ [2s/3s] Running ‘test-globals,subassignment.R’ [6s/11s] Running ‘test-globals,toolarge.R’ [1s/2s] Running ‘test-globals,tricky.R’ [17s/29s] Running ‘test-globals,tricky_recursive.R’ [2s/3s] Running ‘test-globalsOf,tweaks.R’ [1s/1s] Running ‘test-immediateCondition.R’ [1s/2s] Running ‘test-interrupt-sets.R’ [2s/6s] Running ‘test-interrupt.R’ [1s/3s] Running ‘test-interrupts-from-worker-itself.R’ [1s/3s] Running ‘test-invalid-owner.R’ [2s/4s] Running ‘test-mandelbrot.R’ [1s/1s] Running ‘test-misuse-connections.R’ [1s/1s] Running ‘test-mpi.R’ [1s/1s] Running ‘test-multicore,multithreading.R’ [2s/2s] Running ‘test-multicore,worker-termination.R’ [1s/1s] Running ‘test-nbrOfWorkers.R’ [3s/6s] Running ‘test-nested_futures,mc.cores.R’ [4s/17s] Running ‘test-nested_futures.R’ [3s/9s] Running ‘test-non-exportable,connections.R’ [1s/2s] Running ‘test-objectSize.R’ [1s/1s] Running ‘test-plan.R’ [3s/13s] Running ‘test-relaying,muffle.R’ [1s/1s] Running ‘test-relaying,split.R’ [1s/1s] Running ‘test-relaying.R’ [2s/5s] Running ‘test-requestCore.R’ [1s/2s] Running ‘test-requestNode.R’ [1s/4s] Running ‘test-reserved-keyword-functions.R’ [1s/1s] Running ‘test-reset.R’ [2s/5s] Running ‘test-resolve.R’ [9s/22s] Running ‘test-resolved-non-blocking-test.R’ [0s/1s] Running ‘test-rng.R’ [28s/37s] Running ‘test-rng_utils.R’ [1s/1s] Running ‘test-sequential.R’ [1s/1s] Running ‘test-sessionDetails.R’ [1s/1s] Running ‘test-startup-onAttach.R’ [1s/1s] Running ‘test-startup-onLoad.R’ [1s/3s] Running ‘test-startup-parseCmdArgs.R’ [1s/1s] Running ‘test-stdout.R’ [5s/9s] Running ‘test-timeouts.R’ [1s/4s] Running ‘test-tweak.R’ [2s/3s] Running ‘test-utils.R’ [1s/1s] Running ‘test-uuid.R’ [1s/2s] Running ‘test-value.R’ [14s/30s] Running ‘test-whichIndex.R’ [1s/1s] Running the tests in ‘tests/test-early-signaling.R’ failed. Complete output: > ## This runs testme test script incl/testme/test-early-signaling.R > ## Don't edit - it was autogenerated by inst/testme/deploy.R > future:::testme("early-signaling") Test 'early-signaling' ... Sourcing 9 prologue scripts ... 01/09 prologue script '/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/future/testme/_prologue/001.load.R' 02/09 prologue script '/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/future/testme/_prologue/002.record-state.R' 03/09 prologue script '/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/future/testme/_prologue/030.imports.R' 04/09 prologue script '/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/future/testme/_prologue/050.utils.R' 05/09 prologue script '/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/future/testme/_prologue/090.context.R' 06/09 prologue script '/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/future/testme/_prologue/090.options.R' 07/09 prologue script '/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/future/testme/_prologue/091.envvars.R' 08/09 prologue script '/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/future/testme/_prologue/099.future-setup.R' 09/09 prologue script '/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/future/testme/_prologue/995.detrius-connections.R' Sourcing 9 prologue scripts ... done Running test script: '/home/hornik/tmp/R.check/r-devel-clang/Work/build/Packages/future/testme/test-early-signaling.R' > library(future) [00:16:33.743] Option 'future.startup.script': TRUE [00:16:33.744] Future startup scripts considered: '.future.R', '~/.future.R' [00:16:33.744] Future startup scripts found: <none> > options(future.debug = FALSE) > message("*** Early signaling of conditions ...") *** Early signaling of conditions ... > message("*** Early signaling of conditions with sequential futures ...") *** Early signaling of conditions with sequential futures ... > plan(sequential) > f <- future({ + stop("bang!") + }) > r <- resolved(f) > stopifnot(r) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > message("- with lazy evaluation ...") - with lazy evaluation ... > f <- future({ + stop("bang!") + }, lazy = TRUE) > r <- resolved(f) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > plan(sequential, earlySignal = TRUE) > f <- tryCatch(future({ + stop("bang!") + }), error = identity) > stopifnot(inherits(f, "error")) > message("- with lazy evaluation ...") - with lazy evaluation ... > f <- future({ + stop("bang!") + }, lazy = TRUE) > r <- tryCatch(resolved(f), error = identity) > stopifnot(inherits(r, "error")) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > f <- future({ + warning("careful!") + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > str(res) List of 2 $ message: chr "careful!" $ call : language eval(quote({ { ... - attr(*, "class")= chr [1:3] "simpleWarning" "warning" "condition" > stopifnot(inherits(res, "warning")) > f <- future({ + message("hey!") + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > stopifnot(inherits(res, "message")) > f <- future({ + signalCondition(simpleCondition("hmm")) + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > stopifnot(inherits(res, "condition")) > message("*** Early signaling of conditions with sequential futures ... DONE") *** Early signaling of conditions with sequential futures ... DONE > message("Number of available cores: ", availableCores()) Number of available cores: 2 > message("*** Early signaling of conditions with multisession futures ...") *** Early signaling of conditions with multisession futures ... > plan(multisession) > f <- future({ + stop("bang!") + }) > Sys.sleep(0.2) > r <- resolved(f) > stopifnot(r) Error: r is not TRUE Execution halted Flavor: r-devel-linux-x86_64-debian-clang

Version: 1.40.0
Check: tests
Result: ERROR Running ‘test-FutureError.R’ Running ‘test-FutureGlobals.R’ Running ‘test-FutureRegistry.R’ Running ‘test-adhoc_native_to_utf8.R’ Running ‘test-backtrace.R’ Running ‘test-bquote.R’ Running ‘test-capture_journals.R’ Running ‘test-cluster,worker-termination.R’ Running ‘test-cluster-connection-clashes.R’ Running ‘test-cluster-missing-future-pkg.R’ Running ‘test-demo-fibonacci.R’ Running ‘test-demo-mandelbrot.R’ Running ‘test-dotdotdot.R’ Running ‘test-early-signaling.R’ Running ‘test-future,labels.R’ Running ‘test-future,optsenvvars.R’ Running ‘test-future.R’ Running ‘test-futureAssign.R’ Running ‘test-futureAssign_OP.R’ [10s/14s] Running ‘test-futureAssign_OP_with_environment.R’ Running ‘test-futureAssign_OP_with_listenv.R’ Running ‘test-futureCall.R’ [6s/11s] Running ‘test-futureOf.R’ Running ‘test-futureOf_with_environment.R’ Running ‘test-futureOf_with_listenv.R’ Running ‘test-futureSessionInfo.R’ Running ‘test-futures.R’ [33s/40s] Running ‘test-globals,NSE.R’ Running ‘test-globals,S4methods.R’ [4s/10s] Running ‘test-globals,formulas.R’ [12s/21s] Running ‘test-globals,locals.R’ Running ‘test-globals,manual.R’ [8s/16s] Running ‘test-globals,resolve.R’ Running ‘test-globals,subassignment.R’ [10s/17s] Running ‘test-globals,toolarge.R’ Running ‘test-globals,tricky.R’ [26s/42s] Running ‘test-globals,tricky_recursive.R’ Running ‘test-globalsOf,tweaks.R’ Running ‘test-immediateCondition.R’ Running ‘test-interrupt-sets.R’ Running ‘test-interrupt.R’ Running ‘test-interrupts-from-worker-itself.R’ Running ‘test-invalid-owner.R’ Running ‘test-mandelbrot.R’ Running ‘test-misuse-connections.R’ Running ‘test-mpi.R’ Running ‘test-multicore,multithreading.R’ Running ‘test-multicore,worker-termination.R’ Running ‘test-nbrOfWorkers.R’ Running ‘test-nested_futures,mc.cores.R’ [6s/19s] Running ‘test-nested_futures.R’ [5s/11s] Running ‘test-non-exportable,connections.R’ Running ‘test-objectSize.R’ Running ‘test-plan.R’ [4s/15s] Running ‘test-relaying,muffle.R’ Running ‘test-relaying,split.R’ Running ‘test-relaying.R’ Running ‘test-requestCore.R’ Running ‘test-requestNode.R’ Running ‘test-reserved-keyword-functions.R’ Running ‘test-reset.R’ Running ‘test-resolve.R’ [13s/23s] Running ‘test-resolved-non-blocking-test.R’ Running ‘test-rng.R’ [45s/44s] Running ‘test-rng_utils.R’ Running ‘test-sequential.R’ Running ‘test-sessionDetails.R’ Running ‘test-startup-onAttach.R’ Running ‘test-startup-onLoad.R’ Running ‘test-startup-parseCmdArgs.R’ Running ‘test-stdout.R’ [8s/10s] Running ‘test-timeouts.R’ Running ‘test-tweak.R’ Running ‘test-utils.R’ Running ‘test-uuid.R’ Running ‘test-value.R’ [21s/30s] Running ‘test-whichIndex.R’ Running the tests in ‘tests/test-early-signaling.R’ failed. Complete output: > ## This runs testme test script incl/testme/test-early-signaling.R > ## Don't edit - it was autogenerated by inst/testme/deploy.R > future:::testme("early-signaling") Test 'early-signaling' ... Sourcing 9 prologue scripts ... 01/09 prologue script '/data/gannet/ripley/R/packages/tests-clang/future.Rcheck/future/testme/_prologue/001.load.R' 02/09 prologue script '/data/gannet/ripley/R/packages/tests-clang/future.Rcheck/future/testme/_prologue/002.record-state.R' 03/09 prologue script '/data/gannet/ripley/R/packages/tests-clang/future.Rcheck/future/testme/_prologue/030.imports.R' 04/09 prologue script '/data/gannet/ripley/R/packages/tests-clang/future.Rcheck/future/testme/_prologue/050.utils.R' 05/09 prologue script '/data/gannet/ripley/R/packages/tests-clang/future.Rcheck/future/testme/_prologue/090.context.R' 06/09 prologue script '/data/gannet/ripley/R/packages/tests-clang/future.Rcheck/future/testme/_prologue/090.options.R' 07/09 prologue script '/data/gannet/ripley/R/packages/tests-clang/future.Rcheck/future/testme/_prologue/091.envvars.R' 08/09 prologue script '/data/gannet/ripley/R/packages/tests-clang/future.Rcheck/future/testme/_prologue/099.future-setup.R' 09/09 prologue script '/data/gannet/ripley/R/packages/tests-clang/future.Rcheck/future/testme/_prologue/995.detrius-connections.R' Sourcing 9 prologue scripts ... done Running test script: '/data/gannet/ripley/R/packages/tests-clang/future.Rcheck/future/testme/test-early-signaling.R' > library(future) [10:17:00.506] Option 'future.startup.script': TRUE [10:17:00.507] Future startup scripts considered: '.future.R', '~/.future.R' [10:17:00.508] Future startup scripts found: <none> > options(future.debug = FALSE) > message("*** Early signaling of conditions ...") *** Early signaling of conditions ... > message("*** Early signaling of conditions with sequential futures ...") *** Early signaling of conditions with sequential futures ... > plan(sequential) > f <- future({ + stop("bang!") + }) > r <- resolved(f) > stopifnot(r) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > message("- with lazy evaluation ...") - with lazy evaluation ... > f <- future({ + stop("bang!") + }, lazy = TRUE) > r <- resolved(f) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > plan(sequential, earlySignal = TRUE) > f <- tryCatch(future({ + stop("bang!") + }), error = identity) > stopifnot(inherits(f, "error")) > message("- with lazy evaluation ...") - with lazy evaluation ... > f <- future({ + stop("bang!") + }, lazy = TRUE) > r <- tryCatch(resolved(f), error = identity) > stopifnot(inherits(r, "error")) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > f <- future({ + warning("careful!") + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > str(res) List of 2 $ message: chr "careful!" $ call : language eval(quote({ { ... - attr(*, "class")= chr [1:3] "simpleWarning" "warning" "condition" > stopifnot(inherits(res, "warning")) > f <- future({ + message("hey!") + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > stopifnot(inherits(res, "message")) > f <- future({ + signalCondition(simpleCondition("hmm")) + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > stopifnot(inherits(res, "condition")) > message("*** Early signaling of conditions with sequential futures ... DONE") *** Early signaling of conditions with sequential futures ... DONE > message("Number of available cores: ", availableCores()) Number of available cores: 2 > message("*** Early signaling of conditions with multisession futures ...") *** Early signaling of conditions with multisession futures ... > plan(multisession) > f <- future({ + stop("bang!") + }) > Sys.sleep(0.2) > r <- resolved(f) > stopifnot(r) Error: r is not TRUE Execution halted Flavor: r-devel-linux-x86_64-fedora-clang

Version: 1.40.0
Check: tests
Result: ERROR Running ‘test-FutureError.R’ Running ‘test-FutureGlobals.R’ Running ‘test-FutureRegistry.R’ Running ‘test-adhoc_native_to_utf8.R’ Running ‘test-backtrace.R’ [4s/11s] Running ‘test-bquote.R’ Running ‘test-capture_journals.R’ [3s/13s] Running ‘test-cluster,worker-termination.R’ Running ‘test-cluster-connection-clashes.R’ [3s/12s] Running ‘test-cluster-missing-future-pkg.R’ Running ‘test-demo-fibonacci.R’ Running ‘test-demo-mandelbrot.R’ [6s/17s] Running ‘test-dotdotdot.R’ [6s/17s] Running ‘test-early-signaling.R’ Running ‘test-future,labels.R’ [4s/15s] Running ‘test-future,optsenvvars.R’ Running ‘test-future.R’ Running ‘test-futureAssign.R’ [7s/18s] Running ‘test-futureAssign_OP.R’ [10s/26s] Running ‘test-futureAssign_OP_with_environment.R’ Running ‘test-futureAssign_OP_with_listenv.R’ Running ‘test-futureCall.R’ [6s/22s] Running ‘test-futureOf.R’ Running ‘test-futureOf_with_environment.R’ Running ‘test-futureOf_with_listenv.R’ Running ‘test-futureSessionInfo.R’ Running ‘test-futures.R’ [35s/82s] Running ‘test-globals,NSE.R’ [3s/11s] Running ‘test-globals,S4methods.R’ [4s/11s] Running ‘test-globals,formulas.R’ [12s/34s] Running ‘test-globals,locals.R’ [4s/11s] Running ‘test-globals,manual.R’ [8s/24s] Running ‘test-globals,resolve.R’ Running ‘test-globals,subassignment.R’ [10s/35s] Running ‘test-globals,toolarge.R’ Running ‘test-globals,tricky.R’ [28s/79s] Running ‘test-globals,tricky_recursive.R’ Running ‘test-globalsOf,tweaks.R’ Running ‘test-immediateCondition.R’ Running ‘test-interrupt-sets.R’ [3s/16s] Running ‘test-interrupt.R’ [2s/10s] Running ‘test-interrupts-from-worker-itself.R’ Running ‘test-invalid-owner.R’ Running ‘test-mandelbrot.R’ Running ‘test-misuse-connections.R’ Running ‘test-mpi.R’ Running ‘test-multicore,multithreading.R’ Running ‘test-multicore,worker-termination.R’ Running ‘test-nbrOfWorkers.R’ [4s/19s] Running ‘test-nested_futures,mc.cores.R’ [6s/38s] Running ‘test-nested_futures.R’ [6s/29s] Running ‘test-non-exportable,connections.R’ Running ‘test-objectSize.R’ Running ‘test-plan.R’ [4s/35s] Running ‘test-relaying,muffle.R’ Running ‘test-relaying,split.R’ Running ‘test-relaying.R’ [4s/13s] Running ‘test-requestCore.R’ Running ‘test-requestNode.R’ Running ‘test-reserved-keyword-functions.R’ Running ‘test-reset.R’ Running ‘test-resolve.R’ [13s/39s] Running ‘test-resolved-non-blocking-test.R’ Running ‘test-rng.R’ [48s/99s] Running ‘test-rng_utils.R’ Running ‘test-sequential.R’ Running ‘test-sessionDetails.R’ Running ‘test-startup-onAttach.R’ Running ‘test-startup-onLoad.R’ Running ‘test-startup-parseCmdArgs.R’ Running ‘test-stdout.R’ [8s/25s] Running ‘test-timeouts.R’ Running ‘test-tweak.R’ [4s/11s] Running ‘test-utils.R’ [15s/36s] Running ‘test-uuid.R’ Running ‘test-value.R’ [21s/53s] Running ‘test-whichIndex.R’ Running the tests in ‘tests/test-early-signaling.R’ failed. Complete output: > ## This runs testme test script incl/testme/test-early-signaling.R > ## Don't edit - it was autogenerated by inst/testme/deploy.R > future:::testme("early-signaling") Test 'early-signaling' ... Sourcing 9 prologue scripts ... 01/09 prologue script '/data/gannet/ripley/R/packages/tests-devel/future.Rcheck/future/testme/_prologue/001.load.R' 02/09 prologue script '/data/gannet/ripley/R/packages/tests-devel/future.Rcheck/future/testme/_prologue/002.record-state.R' 03/09 prologue script '/data/gannet/ripley/R/packages/tests-devel/future.Rcheck/future/testme/_prologue/030.imports.R' 04/09 prologue script '/data/gannet/ripley/R/packages/tests-devel/future.Rcheck/future/testme/_prologue/050.utils.R' 05/09 prologue script '/data/gannet/ripley/R/packages/tests-devel/future.Rcheck/future/testme/_prologue/090.context.R' 06/09 prologue script '/data/gannet/ripley/R/packages/tests-devel/future.Rcheck/future/testme/_prologue/090.options.R' 07/09 prologue script '/data/gannet/ripley/R/packages/tests-devel/future.Rcheck/future/testme/_prologue/091.envvars.R' 08/09 prologue script '/data/gannet/ripley/R/packages/tests-devel/future.Rcheck/future/testme/_prologue/099.future-setup.R' 09/09 prologue script '/data/gannet/ripley/R/packages/tests-devel/future.Rcheck/future/testme/_prologue/995.detrius-connections.R' Sourcing 9 prologue scripts ... done Running test script: '/data/gannet/ripley/R/packages/tests-devel/future.Rcheck/future/testme/test-early-signaling.R' > library(future) [14:45:17.069] Option 'future.startup.script': TRUE [14:45:17.070] Future startup scripts considered: '.future.R', '~/.future.R' [14:45:17.073] Future startup scripts found: <none> > options(future.debug = FALSE) > message("*** Early signaling of conditions ...") *** Early signaling of conditions ... > message("*** Early signaling of conditions with sequential futures ...") *** Early signaling of conditions with sequential futures ... > plan(sequential) > f <- future({ + stop("bang!") + }) > r <- resolved(f) > stopifnot(r) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > message("- with lazy evaluation ...") - with lazy evaluation ... > f <- future({ + stop("bang!") + }, lazy = TRUE) > r <- resolved(f) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > plan(sequential, earlySignal = TRUE) > f <- tryCatch(future({ + stop("bang!") + }), error = identity) > stopifnot(inherits(f, "error")) > message("- with lazy evaluation ...") - with lazy evaluation ... > f <- future({ + stop("bang!") + }, lazy = TRUE) > r <- tryCatch(resolved(f), error = identity) > stopifnot(inherits(r, "error")) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > f <- future({ + warning("careful!") + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > str(res) List of 2 $ message: chr "careful!" $ call : language eval(quote({ { ... - attr(*, "class")= chr [1:3] "simpleWarning" "warning" "condition" > stopifnot(inherits(res, "warning")) > f <- future({ + message("hey!") + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > stopifnot(inherits(res, "message")) > f <- future({ + signalCondition(simpleCondition("hmm")) + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > stopifnot(inherits(res, "condition")) > message("*** Early signaling of conditions with sequential futures ... DONE") *** Early signaling of conditions with sequential futures ... DONE > message("Number of available cores: ", availableCores()) Number of available cores: 2 > message("*** Early signaling of conditions with multisession futures ...") *** Early signaling of conditions with multisession futures ... > plan(multisession) > f <- future({ + stop("bang!") + }) > Sys.sleep(0.2) > r <- resolved(f) > stopifnot(r) Error: r is not TRUE Execution halted Flavor: r-devel-linux-x86_64-fedora-gcc

Version: 1.40.0
Check: tests
Result: ERROR Running ‘test-FutureError.R’ [1s/1s] Running ‘test-FutureGlobals.R’ [1s/1s] Running ‘test-FutureRegistry.R’ [1s/2s] Running ‘test-adhoc_native_to_utf8.R’ [1s/1s] Running ‘test-backtrace.R’ [2s/4s] Running ‘test-bquote.R’ [1s/1s] Running ‘test-capture_journals.R’ [2s/3s] Running ‘test-cluster,worker-termination.R’ [1s/3s] Running ‘test-cluster-connection-clashes.R’ [2s/5s] Running ‘test-cluster-missing-future-pkg.R’ [1s/3s] Running ‘test-demo-fibonacci.R’ [2s/2s] Running ‘test-demo-mandelbrot.R’ [4s/5s] Running ‘test-dotdotdot.R’ [4s/7s] Running ‘test-early-signaling.R’ [1s/3s] Running ‘test-future,labels.R’ [3s/5s] Running ‘test-future,optsenvvars.R’ [1s/3s] Running ‘test-future.R’ [1s/1s] Running ‘test-futureAssign.R’ [4s/7s] Running ‘test-futureAssign_OP.R’ [6s/9s] Running ‘test-futureAssign_OP_with_environment.R’ [1s/1s] Running ‘test-futureAssign_OP_with_listenv.R’ [2s/3s] Running ‘test-futureCall.R’ [4s/9s] Running ‘test-futureOf.R’ [1s/1s] Running ‘test-futureOf_with_environment.R’ [1s/1s] Running ‘test-futureOf_with_listenv.R’ [1s/1s] Running ‘test-futureSessionInfo.R’ [1s/2s] Running ‘test-futures.R’ [20s/28s] Running ‘test-globals,NSE.R’ [2s/4s] Running ‘test-globals,S4methods.R’ [2s/4s] Running ‘test-globals,formulas.R’ [7s/12s] Running ‘test-globals,locals.R’ [2s/4s] Running ‘test-globals,manual.R’ [5s/13s] Running ‘test-globals,resolve.R’ [2s/4s] Running ‘test-globals,subassignment.R’ [6s/10s] Running ‘test-globals,toolarge.R’ [1s/2s] Running ‘test-globals,tricky.R’ [16s/25s] Running ‘test-globals,tricky_recursive.R’ [2s/3s] Running ‘test-globalsOf,tweaks.R’ [1s/1s] Running ‘test-immediateCondition.R’ [1s/2s] Running ‘test-interrupt-sets.R’ [2s/6s] Running ‘test-interrupt.R’ [1s/3s] Running ‘test-interrupts-from-worker-itself.R’ [1s/3s] Running ‘test-invalid-owner.R’ [2s/5s] Running ‘test-mandelbrot.R’ [1s/1s] Running ‘test-misuse-connections.R’ [1s/1s] Running ‘test-mpi.R’ [1s/1s] Running ‘test-multicore,multithreading.R’ [2s/2s] Running ‘test-multicore,worker-termination.R’ [1s/1s] Running ‘test-nbrOfWorkers.R’ [3s/6s] Running ‘test-nested_futures,mc.cores.R’ [4s/16s] Running ‘test-nested_futures.R’ [3s/9s] Running ‘test-non-exportable,connections.R’ [1s/2s] Running ‘test-objectSize.R’ [1s/1s] Running ‘test-plan.R’ [3s/14s] Running ‘test-relaying,muffle.R’ [1s/1s] Running ‘test-relaying,split.R’ [1s/1s] Running ‘test-relaying.R’ [3s/6s] Running ‘test-requestCore.R’ [1s/1s] Running ‘test-requestNode.R’ [1s/3s] Running ‘test-reserved-keyword-functions.R’ [1s/1s] Running ‘test-reset.R’ [4s/10s] Running ‘test-resolve.R’ [9s/23s] Running ‘test-resolved-non-blocking-test.R’ [0s/1s] Running ‘test-rng.R’ [28s/40s] Running ‘test-rng_utils.R’ [1s/1s] Running ‘test-sequential.R’ [1s/1s] Running ‘test-sessionDetails.R’ [1s/1s] Running ‘test-startup-onAttach.R’ [1s/1s] Running ‘test-startup-onLoad.R’ [1s/2s] Running ‘test-startup-parseCmdArgs.R’ [1s/1s] Running ‘test-stdout.R’ [5s/9s] Running ‘test-timeouts.R’ [1s/3s] Running ‘test-tweak.R’ [2s/4s] Running ‘test-utils.R’ [1s/1s] Running ‘test-uuid.R’ [1s/2s] Running ‘test-value.R’ [14s/29s] Running ‘test-whichIndex.R’ [1s/1s] Running the tests in ‘tests/test-early-signaling.R’ failed. Complete output: > ## This runs testme test script incl/testme/test-early-signaling.R > ## Don't edit - it was autogenerated by inst/testme/deploy.R > future:::testme("early-signaling") Test 'early-signaling' ... Sourcing 9 prologue scripts ... 01/09 prologue script '/home/hornik/tmp/R.check/r-patched-gcc/Work/build/Packages/future/testme/_prologue/001.load.R' 02/09 prologue script '/home/hornik/tmp/R.check/r-patched-gcc/Work/build/Packages/future/testme/_prologue/002.record-state.R' 03/09 prologue script '/home/hornik/tmp/R.check/r-patched-gcc/Work/build/Packages/future/testme/_prologue/030.imports.R' 04/09 prologue script '/home/hornik/tmp/R.check/r-patched-gcc/Work/build/Packages/future/testme/_prologue/050.utils.R' 05/09 prologue script '/home/hornik/tmp/R.check/r-patched-gcc/Work/build/Packages/future/testme/_prologue/090.context.R' 06/09 prologue script '/home/hornik/tmp/R.check/r-patched-gcc/Work/build/Packages/future/testme/_prologue/090.options.R' 07/09 prologue script '/home/hornik/tmp/R.check/r-patched-gcc/Work/build/Packages/future/testme/_prologue/091.envvars.R' 08/09 prologue script '/home/hornik/tmp/R.check/r-patched-gcc/Work/build/Packages/future/testme/_prologue/099.future-setup.R' 09/09 prologue script '/home/hornik/tmp/R.check/r-patched-gcc/Work/build/Packages/future/testme/_prologue/995.detrius-connections.R' Sourcing 9 prologue scripts ... done Running test script: '/home/hornik/tmp/R.check/r-patched-gcc/Work/build/Packages/future/testme/test-early-signaling.R' > library(future) [00:02:52.163] Option 'future.startup.script': TRUE [00:02:52.163] Future startup scripts considered: '.future.R', '~/.future.R' [00:02:52.164] Future startup scripts found: <none> > options(future.debug = FALSE) > message("*** Early signaling of conditions ...") *** Early signaling of conditions ... > message("*** Early signaling of conditions with sequential futures ...") *** Early signaling of conditions with sequential futures ... > plan(sequential) > f <- future({ + stop("bang!") + }) > r <- resolved(f) > stopifnot(r) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > message("- with lazy evaluation ...") - with lazy evaluation ... > f <- future({ + stop("bang!") + }, lazy = TRUE) > r <- resolved(f) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > plan(sequential, earlySignal = TRUE) > f <- tryCatch(future({ + stop("bang!") + }), error = identity) > stopifnot(inherits(f, "error")) > message("- with lazy evaluation ...") - with lazy evaluation ... > f <- future({ + stop("bang!") + }, lazy = TRUE) > r <- tryCatch(resolved(f), error = identity) > stopifnot(inherits(r, "error")) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > f <- future({ + warning("careful!") + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > str(res) List of 2 $ message: chr "careful!" $ call : language eval(quote({ { ... - attr(*, "class")= chr [1:3] "simpleWarning" "warning" "condition" > stopifnot(inherits(res, "warning")) > f <- future({ + message("hey!") + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > stopifnot(inherits(res, "message")) > f <- future({ + signalCondition(simpleCondition("hmm")) + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > stopifnot(inherits(res, "condition")) > message("*** Early signaling of conditions with sequential futures ... DONE") *** Early signaling of conditions with sequential futures ... DONE > message("Number of available cores: ", availableCores()) Number of available cores: 2 > message("*** Early signaling of conditions with multisession futures ...") *** Early signaling of conditions with multisession futures ... > plan(multisession) > f <- future({ + stop("bang!") + }) > Sys.sleep(0.2) > r <- resolved(f) > stopifnot(r) Error: r is not TRUE Execution halted Flavor: r-patched-linux-x86_64

Version: 1.40.0
Check: tests
Result: ERROR Running ‘test-FutureError.R’ [1s/1s] Running ‘test-FutureGlobals.R’ [1s/1s] Running ‘test-FutureRegistry.R’ [1s/2s] Running ‘test-adhoc_native_to_utf8.R’ [1s/1s] Running ‘test-backtrace.R’ [2s/5s] Running ‘test-bquote.R’ [1s/1s] Running ‘test-capture_journals.R’ [2s/4s] Running ‘test-cluster,worker-termination.R’ [1s/3s] Running ‘test-cluster-connection-clashes.R’ [2s/5s] Running ‘test-cluster-missing-future-pkg.R’ [1s/3s] Running ‘test-demo-fibonacci.R’ [2s/2s] Running ‘test-demo-mandelbrot.R’ [3s/5s] Running ‘test-dotdotdot.R’ [4s/7s] Running ‘test-early-signaling.R’ [1s/3s] Running ‘test-future,labels.R’ [3s/5s] Running ‘test-future,optsenvvars.R’ [1s/3s] Running ‘test-future.R’ [1s/2s] Running ‘test-futureAssign.R’ [4s/7s] Running ‘test-futureAssign_OP.R’ [6s/10s] Running ‘test-futureAssign_OP_with_environment.R’ [1s/1s] Running ‘test-futureAssign_OP_with_listenv.R’ [2s/2s] Running ‘test-futureCall.R’ [4s/9s] Running ‘test-futureOf.R’ [1s/1s] Running ‘test-futureOf_with_environment.R’ [1s/1s] Running ‘test-futureOf_with_listenv.R’ [1s/1s] Running ‘test-futureSessionInfo.R’ [1s/2s] Running ‘test-futures.R’ [19s/26s] Running ‘test-globals,NSE.R’ [2s/4s] Running ‘test-globals,S4methods.R’ [2s/4s] Running ‘test-globals,formulas.R’ [7s/12s] Running ‘test-globals,locals.R’ [2s/4s] Running ‘test-globals,manual.R’ [5s/12s] Running ‘test-globals,resolve.R’ [2s/4s] Running ‘test-globals,subassignment.R’ [6s/11s] Running ‘test-globals,toolarge.R’ [1s/2s] Running ‘test-globals,tricky.R’ [16s/24s] Running ‘test-globals,tricky_recursive.R’ [1s/3s] Running ‘test-globalsOf,tweaks.R’ [1s/1s] Running ‘test-immediateCondition.R’ [1s/3s] Running ‘test-interrupt-sets.R’ [2s/6s] Running ‘test-interrupt.R’ [1s/4s] Running ‘test-interrupts-from-worker-itself.R’ [1s/3s] Running ‘test-invalid-owner.R’ [2s/4s] Running ‘test-mandelbrot.R’ [1s/1s] Running ‘test-misuse-connections.R’ [1s/1s] Running ‘test-mpi.R’ [1s/1s] Running ‘test-multicore,multithreading.R’ [1s/2s] Running ‘test-multicore,worker-termination.R’ [1s/1s] Running ‘test-nbrOfWorkers.R’ [2s/6s] Running ‘test-nested_futures,mc.cores.R’ [4s/15s] Running ‘test-nested_futures.R’ [3s/10s] Running ‘test-non-exportable,connections.R’ [1s/2s] Running ‘test-objectSize.R’ [1s/1s] Running ‘test-plan.R’ [3s/13s] Running ‘test-relaying,muffle.R’ [1s/1s] Running ‘test-relaying,split.R’ [1s/1s] Running ‘test-relaying.R’ [2s/5s] Running ‘test-requestCore.R’ [1s/1s] Running ‘test-requestNode.R’ [1s/3s] Running ‘test-reserved-keyword-functions.R’ [1s/1s] Running ‘test-reset.R’ [5s/12s] Running ‘test-resolve.R’ [9s/22s] Running ‘test-resolved-non-blocking-test.R’ [0s/1s] Running ‘test-rng.R’ [27s/35s] Running ‘test-rng_utils.R’ [1s/1s] Running ‘test-sequential.R’ [1s/1s] Running ‘test-sessionDetails.R’ [1s/1s] Running ‘test-startup-onAttach.R’ [1s/1s] Running ‘test-startup-onLoad.R’ [1s/3s] Running ‘test-startup-parseCmdArgs.R’ [1s/1s] Running ‘test-stdout.R’ [5s/9s] Running ‘test-timeouts.R’ [1s/3s] Running ‘test-tweak.R’ [2s/3s] Running ‘test-utils.R’ [1s/1s] Running ‘test-uuid.R’ [1s/1s] Running ‘test-value.R’ [14s/29s] Running ‘test-whichIndex.R’ [1s/1s] Running the tests in ‘tests/test-early-signaling.R’ failed. Complete output: > ## This runs testme test script incl/testme/test-early-signaling.R > ## Don't edit - it was autogenerated by inst/testme/deploy.R > future:::testme("early-signaling") Test 'early-signaling' ... Sourcing 9 prologue scripts ... 01/09 prologue script '/home/hornik/tmp/R.check/r-release-gcc/Work/build/Packages/future/testme/_prologue/001.load.R' 02/09 prologue script '/home/hornik/tmp/R.check/r-release-gcc/Work/build/Packages/future/testme/_prologue/002.record-state.R' 03/09 prologue script '/home/hornik/tmp/R.check/r-release-gcc/Work/build/Packages/future/testme/_prologue/030.imports.R' 04/09 prologue script '/home/hornik/tmp/R.check/r-release-gcc/Work/build/Packages/future/testme/_prologue/050.utils.R' 05/09 prologue script '/home/hornik/tmp/R.check/r-release-gcc/Work/build/Packages/future/testme/_prologue/090.context.R' 06/09 prologue script '/home/hornik/tmp/R.check/r-release-gcc/Work/build/Packages/future/testme/_prologue/090.options.R' 07/09 prologue script '/home/hornik/tmp/R.check/r-release-gcc/Work/build/Packages/future/testme/_prologue/091.envvars.R' 08/09 prologue script '/home/hornik/tmp/R.check/r-release-gcc/Work/build/Packages/future/testme/_prologue/099.future-setup.R' 09/09 prologue script '/home/hornik/tmp/R.check/r-release-gcc/Work/build/Packages/future/testme/_prologue/995.detrius-connections.R' Sourcing 9 prologue scripts ... done Running test script: '/home/hornik/tmp/R.check/r-release-gcc/Work/build/Packages/future/testme/test-early-signaling.R' > library(future) [23:57:24.322] Option 'future.startup.script': TRUE [23:57:24.323] Future startup scripts considered: '.future.R', '~/.future.R' [23:57:24.323] Future startup scripts found: <none> > options(future.debug = FALSE) > message("*** Early signaling of conditions ...") *** Early signaling of conditions ... > message("*** Early signaling of conditions with sequential futures ...") *** Early signaling of conditions with sequential futures ... > plan(sequential) > f <- future({ + stop("bang!") + }) > r <- resolved(f) > stopifnot(r) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > message("- with lazy evaluation ...") - with lazy evaluation ... > f <- future({ + stop("bang!") + }, lazy = TRUE) > r <- resolved(f) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > plan(sequential, earlySignal = TRUE) > f <- tryCatch(future({ + stop("bang!") + }), error = identity) > stopifnot(inherits(f, "error")) > message("- with lazy evaluation ...") - with lazy evaluation ... > f <- future({ + stop("bang!") + }, lazy = TRUE) > r <- tryCatch(resolved(f), error = identity) > stopifnot(inherits(r, "error")) > v <- tryCatch(value(f), error = identity) > stopifnot(inherits(v, "error")) > f <- future({ + warning("careful!") + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > str(res) List of 2 $ message: chr "careful!" $ call : language eval(quote({ { ... - attr(*, "class")= chr [1:3] "simpleWarning" "warning" "condition" > stopifnot(inherits(res, "warning")) > f <- future({ + message("hey!") + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > stopifnot(inherits(res, "message")) > f <- future({ + signalCondition(simpleCondition("hmm")) + }, lazy = TRUE) > res <- tryCatch({ + r <- resolved(f) + }, condition = function(w) w) > stopifnot(inherits(res, "condition")) > message("*** Early signaling of conditions with sequential futures ... DONE") *** Early signaling of conditions with sequential futures ... DONE > message("Number of available cores: ", availableCores()) Number of available cores: 2 > message("*** Early signaling of conditions with multisession futures ...") *** Early signaling of conditions with multisession futures ... > plan(multisession) > f <- future({ + stop("bang!") + }) > Sys.sleep(0.2) > r <- resolved(f) > stopifnot(r) Error: r is not TRUE Execution halted Flavor: r-release-linux-x86_64

Package future.apply

Current CRAN status: OK: 13

Package future.batchtools

Current CRAN status: NOTE: 6, OK: 7

Version: 0.12.1
Check: Rd cross-references
Result: NOTE Found the following Rd file(s) with Rd \link{} targets missing package anchors: nbrOfWorkers.batchtools.Rd: plan Please provide package anchors for all Rd \link{} targets not in the package itself and the base packages. Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc, r-devel-windows-x86_64, r-patched-linux-x86_64, r-release-linux-x86_64, r-release-windows-x86_64

Package future.callr

Current CRAN status: OK: 13

Package future.mirai

Current CRAN status: OK: 13

Package future.tests

Current CRAN status: OK: 13

Package futureverse

Current CRAN status: OK: 13

Package globals

Current CRAN status: OK: 13

Package listenv

Current CRAN status: OK: 13

Package matrixStats

Current CRAN status: OK: 13

Package parallelly

Current CRAN status: OK: 13

Package port4me

Current CRAN status: OK: 13

Package profmem

Current CRAN status: OK: 13

Package progressr

Current CRAN status: OK: 13

Package PSCBS

Current CRAN status: OK: 13

Package R.cache

Current CRAN status: OK: 13

Package R.devices

Current CRAN status: NOTE: 1, OK: 12

Version: 2.17.2
Check: package vignettes
Result: NOTE Package has ‘vignettes’ subdirectory but apparently no vignettes. Perhaps the ‘VignetteBuilder’ information is missing from the DESCRIPTION file? Flavor: r-oldrel-macos-x86_64

Package R.filesets

Current CRAN status: OK: 13

Package R.huge

Current CRAN status: OK: 13

Package R.matlab

Current CRAN status: NOTE: 13

Version: 3.7.0
Check: Rd files
Result: NOTE checkRd: (-1) setOption.Matlab.Rd:37-39: Lost braces in \itemize; meant \describe ? checkRd: (-1) setOption.Matlab.Rd:40-41: Lost braces in \itemize; meant \describe ? Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc, r-devel-linux-x86_64-fedora-clang, r-devel-linux-x86_64-fedora-gcc, r-devel-windows-x86_64, r-patched-linux-x86_64, r-release-linux-x86_64, r-release-macos-arm64, r-release-macos-x86_64, r-release-windows-x86_64, r-oldrel-macos-arm64, r-oldrel-macos-x86_64, r-oldrel-windows-x86_64

Package R.methodsS3

Current CRAN status: NOTE: 2, OK: 11

Version: 1.8.2
Check: CRAN incoming feasibility
Result: NOTE Maintainer: ‘Henrik Bengtsson <henrikb@braju.com>’ Package CITATION file contains call(s) to old-style citEntry(). Please use bibentry() instead. Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc

Package R.oo

Current CRAN status: OK: 13

Package R.rsp

Current CRAN status: OK: 13

Package R.utils

Current CRAN status: OK: 13

Package seguid

Current CRAN status: OK: 13

Package startup

Current CRAN status: OK: 13

Package TopDom

Current CRAN status: NOTE: 13

Version: 0.10.1
Check: CRAN incoming feasibility
Result: NOTE Maintainer: ‘Henrik Bengtsson <henrikb@braju.com>’ Package CITATION file contains call(s) to old-style citEntry(). Please use bibentry() instead. Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc

Version: 0.10.1
Check: Rd files
Result: NOTE checkRd: (-1) TopDom.Rd:21: Lost braces; missing escapes or markup? 21 | Recommended range is in {5, ..., 20}.} | ^ Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc, r-devel-linux-x86_64-fedora-clang, r-devel-linux-x86_64-fedora-gcc, r-devel-windows-x86_64, r-patched-linux-x86_64, r-release-linux-x86_64, r-release-macos-arm64, r-release-macos-x86_64, r-release-windows-x86_64, r-oldrel-macos-arm64, r-oldrel-macos-x86_64, r-oldrel-windows-x86_64