R Under development (unstable) (2026-03-17 r89645 ucrt) -- "Unsuffered Consequences" Copyright (C) 2026 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > #! /usr/bin/env Rscript > ## This runs testme test script inst/testme/test-future.apply-future_lapply,globals.R > ## Don't edit - it was autogenerated by inst/testme/deploy.R > futurize:::testme("future.apply-future_lapply,globals") Test 'future.apply-future_lapply,globals' ... chr "none" > if (requireNamespace("future.apply", quietly = TRUE)) { + library(futurize) + library(tools) + options(future.debug = FALSE) + optio .... [TRUNCATED] Loading required package: future *** future_lapply() - globals ... List of 4 $ A: NULL $ B:List of 1 ..$ : num 1 $ C:List of 1 ..$ : num 1 $ D:List of 1 ..$ : num 2 Globals set 'A' [15:29:40.912] future_lapply() ... [15:29:40.928] | Globals in FUN(): [n=5] '{', 'median', 'c', 'a', 'b' [15:29:40.929] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:40.931] | future_lapply() -> future_xapply() ... [15:29:40.932] | : Number of chunks: 1 [15:29:40.934] | : getGlobalsAndPackagesXApply() ... [15:29:40.934] | : . future.globals: FALSE [15:29:40.940] | : . globals found/used: [n=2] 'FUN', 'future.call.arguments' [15:29:40.941] | : . needed namespaces: [n=0] [15:29:40.942] | : . use_args: TRUE [15:29:40.943] | : . Getting '...' globals ... [15:29:40.947] | : . ' '...' content: [n=0] [15:29:40.948] | : . ' List of 1 [15:29:40.948] | : . ' $ ...: list() [15:29:40.948] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:40.948] | : . ' - attr(*, "where")=List of 1 [15:29:40.948] | : . ' ..$ ...: [15:29:40.948] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:40.948] | : . ' - attr(*, "resolved")= logi TRUE [15:29:40.948] | : . ' - attr(*, "total_size")= num NA [15:29:40.956] | : . Getting '...' globals ... done [15:29:40.957] | : . Globals to be used in all futures (chunks): [n=3] '...future.FUN', 'future.call.arguments', '...' [15:29:40.958] | : . List of 3 [15:29:40.958] | : . $ ...future.FUN :function (x) [15:29:40.958] | : . $ future.call.arguments: list() [15:29:40.958] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:40.958] | : . $ ... : list() [15:29:40.958] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:40.958] | : . - attr(*, "where")=List of 3 [15:29:40.958] | : . ..$ ...future.FUN : [15:29:40.958] | : . ..$ future.call.arguments: [15:29:40.958] | : . ..$ ... : [15:29:40.958] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:40.958] | : . - attr(*, "resolved")= logi FALSE [15:29:40.958] | : . - attr(*, "total_size")= num 3577 [15:29:40.968] | : . Packages to be attached in all futures: [n=1] 'utils' [15:29:40.970] | : getGlobalsAndPackagesXApply() ... done [15:29:40.971] | : Globals pass to each chunk: [n=6] '...future.FUN', 'future.call.arguments', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:40.972] | : List of 6 [15:29:40.972] | : $ ...future.FUN :function (x) [15:29:40.972] | : $ future.call.arguments : list() [15:29:40.972] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:40.972] | : $ ... : list() [15:29:40.972] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:40.972] | : $ ...future.elements_ii : NULL [15:29:40.972] | : $ ...future.seeds_ii : NULL [15:29:40.972] | : $ ...future.globals.maxSize: NULL [15:29:40.972] | : - attr(*, "where")=List of 6 [15:29:40.972] | : ..$ ...future.FUN : [15:29:40.972] | : ..$ future.call.arguments : [15:29:40.972] | : ..$ ... : [15:29:40.972] | : ..$ ...future.elements_ii : [15:29:40.972] | : ..$ ...future.seeds_ii : [15:29:40.972] | : ..$ ...future.globals.maxSize: [15:29:40.972] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:40.972] | : - attr(*, "resolved")= logi FALSE [15:29:40.972] | : - attr(*, "total_size")= num 3577 [15:29:40.988] | : Number of futures (= number of chunks): 1 [15:29:40.992] | : Launching 1 futures (chunks) ... [15:29:40.995] | : Chunk #1 of 1 ... [15:29:40.996] | : - seeds: [15:29:40.998] | : - All globals exported: [n=6] '...future.FUN', 'future.call.arguments', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.010] | : Created future: [15:29:41.011] | : ClusterFuture: [15:29:41.011] | : Label: 'future_lapply-1' [15:29:41.011] | : Expression: [15:29:41.011] | : { [15:29:41.011] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:41.011] | : "# expression in do.call(), because function called uses '...' " [15:29:41.011] | : "# as a global variable " [15:29:41.011] | : do.call(function(...) { [15:29:41.011] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:41.011] | : "# without having an '...' argument. This means '...' is treated" [15:29:41.011] | : "# as a global variable. This may happen when FUN() is an " [15:29:41.011] | : "# anonymous function. " [15:29:41.011] | : "# " [15:29:41.011] | : "# If an anonymous function, we will make sure to restore the " [15:29:41.011] | : "# function environment of FUN() to the calling environment. " [15:29:41.011] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:41.011] | : "# global environment, which is where globals are written. " [15:29:41.011] | : penv <- env <- environment(...future.FUN) [15:29:41.011] | : repeat { [15:29:41.011] | : if (identical(env, globalenv()) || identical(env, [15:29:41.011] | : emptyenv())) [15:29:41.011] | : break [15:29:41.011] | : penv <- env [15:29:41.011] | : env <- parent.env(env) [15:29:41.011] | : } [15:29:41.011] | : if (identical(penv, globalenv())) { [15:29:41.011] | : environment(...future.FUN) <- environment() [15:29:41.011] | : } [15:29:41.011] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:41.011] | : !isNamespace(penv)) { [15:29:41.011] | : parent.env(penv) <- environment() [15:29:41.011] | : } [15:29:41.011] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:41.011] | : { [15:29:41.011] | : "# future.apply:::future_xapply(): preserve future option" [15:29:41.011] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:41.011] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:41.011] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:41.011] | : on.exit(options(oopts), add = TRUE) [15:29:41.011] | : } [15:29:41.011] | : { [15:29:41.011] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:41.011] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:41.011] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:41.011] | : { [15:29:41.011] | : ...future.FUN(...future.X_jj, ...) [15:29:41.011] | : } [15:29:41.011] | : }) [15:29:41.011] | : } [15:29:41.011] | : } [15:29:41.011] | : }, args = future.call.arguments) [15:29:41.011] | : } [15:29:41.011] | : Globals: 5 objects totaling 3.68 KiB (function '...future.FUN' of 174 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 47 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:41.011] | : Packages: 1 packages ('utils') [15:29:41.011] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:41.011] | : Capture standard output: TRUE [15:29:41.011] | : Capture condition classes: 'condition' (excluding '') [15:29:41.011] | : Immediate condition classes: 'immediateCondition' [15:29:41.011] | : Lazy evaluation: FALSE [15:29:41.011] | : Local evaluation: TRUE [15:29:41.011] | : Early signaling: FALSE [15:29:41.011] | : Actions: [n=1] 'run' [15:29:41.011] | : State: 'running' ("Future is being evaluated") [15:29:41.011] | : Resolved: TRUE [15:29:41.011] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-1 [15:29:41.011] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:41.011] | : Class: 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:41.011] | : Value: [15:29:41.011] | : Conditions captured: [15:29:41.115] | : Chunk #1 of 1 ... DONE [15:29:41.116] | : Launching 1 futures (chunks) ... DONE [15:29:41.117] | : Resolving 1 futures (chunks) ... [15:29:41.122] | : onError() ... [15:29:41.123] | : . Received Warning: Caught simpleError. Canceling all iterations ... [15:29:41.125] | : . Signaling: [15:29:41.126] | : onError() ... done [15:29:41.127] | future_lapply() -> future_xapply() ... done [15:29:41.128] future_lapply() ... done Globals set 'B' [15:29:41.130] future_lapply() ... [15:29:41.133] | Globals in FUN(): [n=5] '{', 'median', 'c', 'a', 'b' [15:29:41.134] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:41.135] | future_lapply() -> future_xapply() ... [15:29:41.136] | : Number of chunks: 1 [15:29:41.137] | : getGlobalsAndPackagesXApply() ... [15:29:41.138] | : . future.globals: TRUE [15:29:41.165] | : . globals found/used: [n=3] 'FUN', 'a', 'b' [15:29:41.166] | : . needed namespaces: [n=1] 'stats' [15:29:41.167] | : . use_args: TRUE [15:29:41.168] | : . Getting '...' globals ... [15:29:41.170] | : . ' '...' content: [n=0] [15:29:41.170] | : . ' List of 1 [15:29:41.170] | : . ' $ ...: list() [15:29:41.170] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.170] | : . ' - attr(*, "where")=List of 1 [15:29:41.170] | : . ' ..$ ...: [15:29:41.170] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.170] | : . ' - attr(*, "resolved")= logi TRUE [15:29:41.170] | : . ' - attr(*, "total_size")= num NA [15:29:41.176] | : . Getting '...' globals ... done [15:29:41.177] | : . Globals to be used in all futures (chunks): [n=4] '...future.FUN', 'a', 'b', '...' [15:29:41.178] | : . List of 4 [15:29:41.178] | : . $ ...future.FUN:function (x) [15:29:41.178] | : . $ a : num 1 [15:29:41.178] | : . $ b : num 2 [15:29:41.178] | : . $ ... : list() [15:29:41.178] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.178] | : . - attr(*, "where")=List of 4 [15:29:41.178] | : . ..$ ...future.FUN: [15:29:41.178] | : . ..$ a : [15:29:41.178] | : . ..$ b : [15:29:41.178] | : . ..$ ... : [15:29:41.178] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.178] | : . - attr(*, "resolved")= logi FALSE [15:29:41.178] | : . - attr(*, "total_size")= num 3558 [15:29:41.187] | : . Packages to be attached in all futures: [n=2] 'stats', 'utils' [15:29:41.188] | : getGlobalsAndPackagesXApply() ... done [15:29:41.189] | : Globals pass to each chunk: [n=7] '...future.FUN', 'a', 'b', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.190] | : List of 7 [15:29:41.190] | : $ ...future.FUN :function (x) [15:29:41.190] | : $ a : num 1 [15:29:41.190] | : $ b : num 2 [15:29:41.190] | : $ ... : list() [15:29:41.190] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.190] | : $ ...future.elements_ii : NULL [15:29:41.190] | : $ ...future.seeds_ii : NULL [15:29:41.190] | : $ ...future.globals.maxSize: NULL [15:29:41.190] | : - attr(*, "where")=List of 7 [15:29:41.190] | : ..$ ...future.FUN : [15:29:41.190] | : ..$ a : [15:29:41.190] | : ..$ b : [15:29:41.190] | : ..$ ... : [15:29:41.190] | : ..$ ...future.elements_ii : [15:29:41.190] | : ..$ ...future.seeds_ii : [15:29:41.190] | : ..$ ...future.globals.maxSize: [15:29:41.190] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.190] | : - attr(*, "resolved")= logi FALSE [15:29:41.190] | : - attr(*, "total_size")= num 3558 [15:29:41.201] | : Number of futures (= number of chunks): 1 [15:29:41.202] | : Launching 1 futures (chunks) ... [15:29:41.203] | : Chunk #1 of 1 ... [15:29:41.204] | : - Finding globals in 'X' for chunk #1 ... [15:29:41.205] | : + additional globals found: [n=0] [15:29:41.206] | : + additional namespaces needed: [n=0] [15:29:41.207] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:41.208] | : - seeds: [15:29:41.209] | : - All globals exported: [n=7] '...future.FUN', 'a', 'b', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.214] | : Created future: [15:29:41.215] | : ClusterFuture: [15:29:41.215] | : Label: 'future_lapply-1' [15:29:41.215] | : Expression: [15:29:41.215] | : { [15:29:41.215] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:41.215] | : "# expression in do.call(), because function called uses '...' " [15:29:41.215] | : "# as a global variable " [15:29:41.215] | : do.call(function(...) { [15:29:41.215] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:41.215] | : "# without having an '...' argument. This means '...' is treated" [15:29:41.215] | : "# as a global variable. This may happen when FUN() is an " [15:29:41.215] | : "# anonymous function. " [15:29:41.215] | : "# " [15:29:41.215] | : "# If an anonymous function, we will make sure to restore the " [15:29:41.215] | : "# function environment of FUN() to the calling environment. " [15:29:41.215] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:41.215] | : "# global environment, which is where globals are written. " [15:29:41.215] | : penv <- env <- environment(...future.FUN) [15:29:41.215] | : repeat { [15:29:41.215] | : if (identical(env, globalenv()) || identical(env, [15:29:41.215] | : emptyenv())) [15:29:41.215] | : break [15:29:41.215] | : penv <- env [15:29:41.215] | : env <- parent.env(env) [15:29:41.215] | : } [15:29:41.215] | : if (identical(penv, globalenv())) { [15:29:41.215] | : environment(...future.FUN) <- environment() [15:29:41.215] | : } [15:29:41.215] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:41.215] | : !isNamespace(penv)) { [15:29:41.215] | : parent.env(penv) <- environment() [15:29:41.215] | : } [15:29:41.215] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:41.215] | : { [15:29:41.215] | : "# future.apply:::future_xapply(): preserve future option" [15:29:41.215] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:41.215] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:41.215] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:41.215] | : on.exit(options(oopts), add = TRUE) [15:29:41.215] | : } [15:29:41.215] | : { [15:29:41.215] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:41.215] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:41.215] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:41.215] | : { [15:29:41.215] | : ...future.FUN(...future.X_jj, ...) [15:29:41.215] | : } [15:29:41.215] | : }) [15:29:41.215] | : } [15:29:41.215] | : } [15:29:41.215] | : }, args = future.call.arguments) [15:29:41.215] | : } [15:29:41.215] | : Globals: 7 objects totaling 3.76 KiB (function '...future.FUN' of 174 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 47 bytes, numeric 'a' of 39 bytes, numeric 'b' of 39 bytes, ...) [15:29:41.215] | : Packages: 2 packages ('stats', 'utils') [15:29:41.215] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:41.215] | : Capture standard output: TRUE [15:29:41.215] | : Capture condition classes: 'condition' (excluding '') [15:29:41.215] | : Immediate condition classes: 'immediateCondition' [15:29:41.215] | : Lazy evaluation: FALSE [15:29:41.215] | : Local evaluation: TRUE [15:29:41.215] | : Early signaling: FALSE [15:29:41.215] | : Actions: [n=1] 'run' [15:29:41.215] | : State: 'running' ("Future is being evaluated") [15:29:41.215] | : Resolved: TRUE [15:29:41.215] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-2 [15:29:41.215] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:41.215] | : Class: 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:41.215] | : Value: [15:29:41.215] | : Conditions captured: [15:29:41.225] | : Chunk #1 of 1 ... DONE [15:29:41.226] | : Launching 1 futures (chunks) ... DONE [15:29:41.227] | : Resolving 1 futures (chunks) ... [15:29:41.229] | : - Number of value chunks collected: 1 [15:29:41.230] | : Resolving 1 futures (chunks) ... DONE [15:29:41.231] | : Reducing values from 1 chunks ... [15:29:41.232] | : - Number of values collected after concatenation: 1 [15:29:41.232] | : - Number of values expected: 1 [15:29:41.234] | : Reducing values from 1 chunks ... DONE [15:29:41.234] | future_lapply() -> future_xapply() ... done [15:29:41.235] future_lapply() ... done [[1]] [1] 1 Globals set 'C' [15:29:41.237] future_lapply() ... [15:29:41.240] | Globals in FUN(): [n=5] '{', 'median', 'c', 'a', 'b' [15:29:41.240] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:41.242] | future_lapply() -> future_xapply() ... [15:29:41.243] | : Number of chunks: 1 [15:29:41.244] | : getGlobalsAndPackagesXApply() ... [15:29:41.244] | : . future.globals: 'a', 'b' [15:29:41.246] | : . use_args: TRUE [15:29:41.247] | : . Globals to be used in all futures (chunks): [n=4] 'a', 'b', '...future.FUN', '...' [15:29:41.248] | : . List of 4 [15:29:41.248] | : . $ a : num 1 [15:29:41.248] | : . $ b : num 2 [15:29:41.248] | : . $ ...future.FUN:function (x) [15:29:41.248] | : . $ ... : list() [15:29:41.248] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.248] | : . - attr(*, "where")=List of 4 [15:29:41.248] | : . ..$ a : [15:29:41.248] | : . ..$ b : [15:29:41.248] | : . ..$ ...future.FUN: [15:29:41.248] | : . ..$ ... : [15:29:41.248] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.248] | : . - attr(*, "resolved")= logi FALSE [15:29:41.248] | : . - attr(*, "total_size")= num NA [15:29:41.257] | : . Packages to be attached in all futures: [n=1] 'utils' [15:29:41.258] | : getGlobalsAndPackagesXApply() ... done [15:29:41.259] | : Globals pass to each chunk: [n=7] 'a', 'b', '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.261] | : List of 7 [15:29:41.261] | : $ a : num 1 [15:29:41.261] | : $ b : num 2 [15:29:41.261] | : $ ...future.FUN :function (x) [15:29:41.261] | : $ ... : list() [15:29:41.261] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.261] | : $ ...future.elements_ii : NULL [15:29:41.261] | : $ ...future.seeds_ii : NULL [15:29:41.261] | : $ ...future.globals.maxSize: NULL [15:29:41.261] | : - attr(*, "where")=List of 7 [15:29:41.261] | : ..$ a : [15:29:41.261] | : ..$ b : [15:29:41.261] | : ..$ ...future.FUN : [15:29:41.261] | : ..$ ... : [15:29:41.261] | : ..$ ...future.elements_ii : [15:29:41.261] | : ..$ ...future.seeds_ii : [15:29:41.261] | : ..$ ...future.globals.maxSize: [15:29:41.261] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.261] | : - attr(*, "resolved")= logi FALSE [15:29:41.261] | : - attr(*, "total_size")= num NA [15:29:41.274] | : Number of futures (= number of chunks): 1 [15:29:41.275] | : Launching 1 futures (chunks) ... [15:29:41.276] | : Chunk #1 of 1 ... [15:29:41.277] | : - seeds: [15:29:41.278] | : - All globals exported: [n=7] 'a', 'b', '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.284] | : Created future: [15:29:41.285] | : ClusterFuture: [15:29:41.285] | : Label: 'future_lapply-1' [15:29:41.285] | : Expression: [15:29:41.285] | : { [15:29:41.285] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:41.285] | : "# expression in do.call(), because function called uses '...' " [15:29:41.285] | : "# as a global variable " [15:29:41.285] | : do.call(function(...) { [15:29:41.285] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:41.285] | : "# without having an '...' argument. This means '...' is treated" [15:29:41.285] | : "# as a global variable. This may happen when FUN() is an " [15:29:41.285] | : "# anonymous function. " [15:29:41.285] | : "# " [15:29:41.285] | : "# If an anonymous function, we will make sure to restore the " [15:29:41.285] | : "# function environment of FUN() to the calling environment. " [15:29:41.285] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:41.285] | : "# global environment, which is where globals are written. " [15:29:41.285] | : penv <- env <- environment(...future.FUN) [15:29:41.285] | : repeat { [15:29:41.285] | : if (identical(env, globalenv()) || identical(env, [15:29:41.285] | : emptyenv())) [15:29:41.285] | : break [15:29:41.285] | : penv <- env [15:29:41.285] | : env <- parent.env(env) [15:29:41.285] | : } [15:29:41.285] | : if (identical(penv, globalenv())) { [15:29:41.285] | : environment(...future.FUN) <- environment() [15:29:41.285] | : } [15:29:41.285] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:41.285] | : !isNamespace(penv)) { [15:29:41.285] | : parent.env(penv) <- environment() [15:29:41.285] | : } [15:29:41.285] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:41.285] | : { [15:29:41.285] | : "# future.apply:::future_xapply(): preserve future option" [15:29:41.285] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:41.285] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:41.285] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:41.285] | : on.exit(options(oopts), add = TRUE) [15:29:41.285] | : } [15:29:41.285] | : { [15:29:41.285] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:41.285] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:41.285] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:41.285] | : { [15:29:41.285] | : ...future.FUN(...future.X_jj, ...) [15:29:41.285] | : } [15:29:41.285] | : }) [15:29:41.285] | : } [15:29:41.285] | : } [15:29:41.285] | : }, args = future.call.arguments) [15:29:41.285] | : } [15:29:41.285] | : Globals: 7 objects totaling 3.78 KiB (function '...future.FUN' of 174 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 47 bytes, numeric 'a' of 39 bytes, numeric 'b' of 39 bytes, ...) [15:29:41.285] | : Packages: 1 packages ('utils') [15:29:41.285] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:41.285] | : Capture standard output: TRUE [15:29:41.285] | : Capture condition classes: 'condition' (excluding '') [15:29:41.285] | : Immediate condition classes: 'immediateCondition' [15:29:41.285] | : Lazy evaluation: FALSE [15:29:41.285] | : Local evaluation: TRUE [15:29:41.285] | : Early signaling: FALSE [15:29:41.285] | : Actions: [n=1] 'run' [15:29:41.285] | : State: 'running' ("Future is being evaluated") [15:29:41.285] | : Resolved: TRUE [15:29:41.285] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-3 [15:29:41.285] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:41.285] | : Class: 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:41.285] | : Value: [15:29:41.285] | : Conditions captured: [15:29:41.293] | : Chunk #1 of 1 ... DONE [15:29:41.294] | : Launching 1 futures (chunks) ... DONE [15:29:41.295] | : Resolving 1 futures (chunks) ... [15:29:41.297] | : - Number of value chunks collected: 1 [15:29:41.298] | : Resolving 1 futures (chunks) ... DONE [15:29:41.299] | : Reducing values from 1 chunks ... [15:29:41.300] | : - Number of values collected after concatenation: 1 [15:29:41.301] | : - Number of values expected: 1 [15:29:41.302] | : Reducing values from 1 chunks ... DONE [15:29:41.303] | future_lapply() -> future_xapply() ... done [15:29:41.304] future_lapply() ... done [[1]] [1] 1 Globals set 'D' [15:29:41.306] future_lapply() ... [15:29:41.309] | Globals in FUN(): [n=5] '{', 'median', 'c', 'a', 'b' [15:29:41.310] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:41.311] | future_lapply() -> future_xapply() ... [15:29:41.312] | : Number of chunks: 1 [15:29:41.313] | : getGlobalsAndPackagesXApply() ... [15:29:41.314] | : . future.globals: with names 'a', 'b' [15:29:41.316] | : . use_args: TRUE [15:29:41.317] | : . Getting '...' globals ... [15:29:41.318] | : . ' '...' content: [n=0] [15:29:41.319] | : . ' List of 1 [15:29:41.319] | : . ' $ ...: list() [15:29:41.319] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.319] | : . ' - attr(*, "where")=List of 1 [15:29:41.319] | : . ' ..$ ...: [15:29:41.319] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.319] | : . ' - attr(*, "resolved")= logi TRUE [15:29:41.319] | : . ' - attr(*, "total_size")= num NA [15:29:41.324] | : . Getting '...' globals ... done [15:29:41.325] | : . Globals to be used in all futures (chunks): [n=4] 'a', 'b', '...future.FUN', '...' [15:29:41.326] | : . List of 4 [15:29:41.326] | : . $ a : num 2 [15:29:41.326] | : . $ b : num 3 [15:29:41.326] | : . $ ...future.FUN:function (x) [15:29:41.326] | : . $ ... : list() [15:29:41.326] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.326] | : . - attr(*, "where")=List of 4 [15:29:41.326] | : . ..$ a : [15:29:41.326] | : . ..$ b : [15:29:41.326] | : . ..$ ...future.FUN: [15:29:41.326] | : . ..$ ... : [15:29:41.326] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.326] | : . - attr(*, "resolved")= logi FALSE [15:29:41.326] | : . - attr(*, "total_size")= num NA [15:29:41.333] | : . Packages to be attached in all futures: [n=1] 'utils' [15:29:41.334] | : getGlobalsAndPackagesXApply() ... done [15:29:41.335] | : Globals pass to each chunk: [n=7] 'a', 'b', '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.335] | : List of 7 [15:29:41.335] | : $ a : num 2 [15:29:41.335] | : $ b : num 3 [15:29:41.335] | : $ ...future.FUN :function (x) [15:29:41.335] | : $ ... : list() [15:29:41.335] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.335] | : $ ...future.elements_ii : NULL [15:29:41.335] | : $ ...future.seeds_ii : NULL [15:29:41.335] | : $ ...future.globals.maxSize: NULL [15:29:41.335] | : - attr(*, "where")=List of 7 [15:29:41.335] | : ..$ a : [15:29:41.335] | : ..$ b : [15:29:41.335] | : ..$ ...future.FUN : [15:29:41.335] | : ..$ ... : [15:29:41.335] | : ..$ ...future.elements_ii : [15:29:41.335] | : ..$ ...future.seeds_ii : [15:29:41.335] | : ..$ ...future.globals.maxSize: [15:29:41.335] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.335] | : - attr(*, "resolved")= logi FALSE [15:29:41.335] | : - attr(*, "total_size")= num NA [15:29:41.346] | : Number of futures (= number of chunks): 1 [15:29:41.347] | : Launching 1 futures (chunks) ... [15:29:41.348] | : Chunk #1 of 1 ... [15:29:41.348] | : - seeds: [15:29:41.349] | : - All globals exported: [n=7] 'a', 'b', '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.353] | : Created future: [15:29:41.355] | : ClusterFuture: [15:29:41.355] | : Label: 'future_lapply-1' [15:29:41.355] | : Expression: [15:29:41.355] | : { [15:29:41.355] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:41.355] | : "# expression in do.call(), because function called uses '...' " [15:29:41.355] | : "# as a global variable " [15:29:41.355] | : do.call(function(...) { [15:29:41.355] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:41.355] | : "# without having an '...' argument. This means '...' is treated" [15:29:41.355] | : "# as a global variable. This may happen when FUN() is an " [15:29:41.355] | : "# anonymous function. " [15:29:41.355] | : "# " [15:29:41.355] | : "# If an anonymous function, we will make sure to restore the " [15:29:41.355] | : "# function environment of FUN() to the calling environment. " [15:29:41.355] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:41.355] | : "# global environment, which is where globals are written. " [15:29:41.355] | : penv <- env <- environment(...future.FUN) [15:29:41.355] | : repeat { [15:29:41.355] | : if (identical(env, globalenv()) || identical(env, [15:29:41.355] | : emptyenv())) [15:29:41.355] | : break [15:29:41.355] | : penv <- env [15:29:41.355] | : env <- parent.env(env) [15:29:41.355] | : } [15:29:41.355] | : if (identical(penv, globalenv())) { [15:29:41.355] | : environment(...future.FUN) <- environment() [15:29:41.355] | : } [15:29:41.355] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:41.355] | : !isNamespace(penv)) { [15:29:41.355] | : parent.env(penv) <- environment() [15:29:41.355] | : } [15:29:41.355] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:41.355] | : { [15:29:41.355] | : "# future.apply:::future_xapply(): preserve future option" [15:29:41.355] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:41.355] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:41.355] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:41.355] | : on.exit(options(oopts), add = TRUE) [15:29:41.355] | : } [15:29:41.355] | : { [15:29:41.355] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:41.355] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:41.355] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:41.355] | : { [15:29:41.355] | : ...future.FUN(...future.X_jj, ...) [15:29:41.355] | : } [15:29:41.355] | : }) [15:29:41.355] | : } [15:29:41.355] | : } [15:29:41.355] | : }, args = future.call.arguments) [15:29:41.355] | : } [15:29:41.355] | : Globals: 7 objects totaling 3.88 KiB (function '...future.FUN' of 174 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 47 bytes, numeric 'a' of 39 bytes, numeric 'b' of 39 bytes, ...) [15:29:41.355] | : Packages: 1 packages ('utils') [15:29:41.355] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:41.355] | : Capture standard output: TRUE [15:29:41.355] | : Capture condition classes: 'condition' (excluding '') [15:29:41.355] | : Immediate condition classes: 'immediateCondition' [15:29:41.355] | : Lazy evaluation: FALSE [15:29:41.355] | : Local evaluation: TRUE [15:29:41.355] | : Early signaling: FALSE [15:29:41.355] | : Actions: [n=1] 'run' [15:29:41.355] | : State: 'running' ("Future is being evaluated") [15:29:41.355] | : Resolved: TRUE [15:29:41.355] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-4 [15:29:41.355] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:41.355] | : Class: 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:41.355] | : Value: [15:29:41.355] | : Conditions captured: [15:29:41.366] | : Chunk #1 of 1 ... DONE [15:29:41.367] | : Launching 1 futures (chunks) ... DONE [15:29:41.367] | : Resolving 1 futures (chunks) ... [15:29:41.369] | : - Number of value chunks collected: 1 [15:29:41.369] | : Resolving 1 futures (chunks) ... DONE [15:29:41.370] | : Reducing values from 1 chunks ... [15:29:41.371] | : - Number of values collected after concatenation: 1 [15:29:41.371] | : - Number of values expected: 1 [15:29:41.372] | : Reducing values from 1 chunks ... DONE [15:29:41.373] | future_lapply() -> future_xapply() ... done [15:29:41.373] future_lapply() ... done [[1]] [1] 2 *** future_lapply() - globals ... DONE *** future_lapply() - manual globals ... [15:29:41.375] future_lapply() ... [15:29:41.379] | Globals in FUN(): [n=3] '{', '*', 'd' [15:29:41.380] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:41.381] | future_lapply() -> future_xapply() ... [15:29:41.381] | : Number of chunks: 1 [15:29:41.382] | : getGlobalsAndPackagesXApply() ... [15:29:41.383] | : . future.globals: FALSE [15:29:41.385] | : . globals found/used: [n=3] 'd', 'FUN', 'future.call.arguments' [15:29:41.386] | : . needed namespaces: [n=0] [15:29:41.387] | : . use_args: TRUE [15:29:41.387] | : . Getting '...' globals ... [15:29:41.388] | : . ' '...' content: [n=0] [15:29:41.389] | : . ' List of 1 [15:29:41.389] | : . ' $ ...: list() [15:29:41.389] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.389] | : . ' - attr(*, "where")=List of 1 [15:29:41.389] | : . ' ..$ ...: [15:29:41.389] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.389] | : . ' - attr(*, "resolved")= logi TRUE [15:29:41.389] | : . ' - attr(*, "total_size")= num NA [15:29:41.393] | : . Getting '...' globals ... done [15:29:41.394] | : . Globals to be used in all futures (chunks): [n=4] 'd', '...future.FUN', 'future.call.arguments', '...' [15:29:41.395] | : . List of 4 [15:29:41.395] | : . $ d : num 42 [15:29:41.395] | : . $ ...future.FUN :function (x) [15:29:41.395] | : . $ future.call.arguments: list() [15:29:41.395] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.395] | : . $ ... : list() [15:29:41.395] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.395] | : . - attr(*, "where")=List of 4 [15:29:41.395] | : . ..$ d : [15:29:41.395] | : . ..$ ...future.FUN : [15:29:41.395] | : . ..$ future.call.arguments: [15:29:41.395] | : . ..$ ... : [15:29:41.395] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.395] | : . - attr(*, "resolved")= logi FALSE [15:29:41.395] | : . - attr(*, "total_size")= num 3694 [15:29:41.402] | : . Packages to be attached in all futures: [n=0] [15:29:41.403] | : getGlobalsAndPackagesXApply() ... done [15:29:41.403] | : Globals pass to each chunk: [n=7] 'd', '...future.FUN', 'future.call.arguments', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.404] | : List of 7 [15:29:41.404] | : $ d : num 42 [15:29:41.404] | : $ ...future.FUN :function (x) [15:29:41.404] | : $ future.call.arguments : list() [15:29:41.404] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.404] | : $ ... : list() [15:29:41.404] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.404] | : $ ...future.elements_ii : NULL [15:29:41.404] | : $ ...future.seeds_ii : NULL [15:29:41.404] | : $ ...future.globals.maxSize: NULL [15:29:41.404] | : - attr(*, "where")=List of 7 [15:29:41.404] | : ..$ d : [15:29:41.404] | : ..$ ...future.FUN : [15:29:41.404] | : ..$ future.call.arguments : [15:29:41.404] | : ..$ ... : [15:29:41.404] | : ..$ ...future.elements_ii : [15:29:41.404] | : ..$ ...future.seeds_ii : [15:29:41.404] | : ..$ ...future.globals.maxSize: [15:29:41.404] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.404] | : - attr(*, "resolved")= logi FALSE [15:29:41.404] | : - attr(*, "total_size")= num 3694 [15:29:41.414] | : Number of futures (= number of chunks): 1 [15:29:41.414] | : Launching 1 futures (chunks) ... [15:29:41.415] | : Chunk #1 of 1 ... [15:29:41.416] | : - seeds: [15:29:41.417] | : - All globals exported: [n=7] 'd', '...future.FUN', 'future.call.arguments', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.420] | : Created future: [15:29:41.421] | : ClusterFuture: [15:29:41.421] | : Label: 'future_lapply-1' [15:29:41.421] | : Expression: [15:29:41.421] | : { [15:29:41.421] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:41.421] | : "# expression in do.call(), because function called uses '...' " [15:29:41.421] | : "# as a global variable " [15:29:41.421] | : do.call(function(...) { [15:29:41.421] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:41.421] | : "# without having an '...' argument. This means '...' is treated" [15:29:41.421] | : "# as a global variable. This may happen when FUN() is an " [15:29:41.421] | : "# anonymous function. " [15:29:41.421] | : "# " [15:29:41.421] | : "# If an anonymous function, we will make sure to restore the " [15:29:41.421] | : "# function environment of FUN() to the calling environment. " [15:29:41.421] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:41.421] | : "# global environment, which is where globals are written. " [15:29:41.421] | : penv <- env <- environment(...future.FUN) [15:29:41.421] | : repeat { [15:29:41.421] | : if (identical(env, globalenv()) || identical(env, [15:29:41.421] | : emptyenv())) [15:29:41.421] | : break [15:29:41.421] | : penv <- env [15:29:41.421] | : env <- parent.env(env) [15:29:41.421] | : } [15:29:41.421] | : if (identical(penv, globalenv())) { [15:29:41.421] | : environment(...future.FUN) <- environment() [15:29:41.421] | : } [15:29:41.421] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:41.421] | : !isNamespace(penv)) { [15:29:41.421] | : parent.env(penv) <- environment() [15:29:41.421] | : } [15:29:41.421] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:41.421] | : { [15:29:41.421] | : "# future.apply:::future_xapply(): preserve future option" [15:29:41.421] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:41.421] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:41.421] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:41.421] | : on.exit(options(oopts), add = TRUE) [15:29:41.421] | : } [15:29:41.421] | : { [15:29:41.421] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:41.421] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:41.421] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:41.421] | : { [15:29:41.421] | : ...future.FUN(...future.X_jj, ...) [15:29:41.421] | : } [15:29:41.421] | : }) [15:29:41.421] | : } [15:29:41.421] | : } [15:29:41.421] | : }, args = future.call.arguments) [15:29:41.421] | : } [15:29:41.421] | : Globals: 6 objects totaling 3.81 KiB (function '...future.FUN' of 127 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 55 bytes, numeric 'd' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes, ...) [15:29:41.421] | : Packages: [15:29:41.421] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:41.421] | : Capture standard output: TRUE [15:29:41.421] | : Capture condition classes: 'condition' (excluding '') [15:29:41.421] | : Immediate condition classes: 'immediateCondition' [15:29:41.421] | : Lazy evaluation: FALSE [15:29:41.421] | : Local evaluation: TRUE [15:29:41.421] | : Early signaling: FALSE [15:29:41.421] | : Actions: [n=1] 'run' [15:29:41.421] | : State: 'running' ("Future is being evaluated") [15:29:41.421] | : Resolved: TRUE [15:29:41.421] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-5 [15:29:41.421] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:41.421] | : Class: 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:41.421] | : Value: [15:29:41.421] | : Conditions captured: [15:29:41.430] | : Chunk #1 of 1 ... DONE [15:29:41.431] | : Launching 1 futures (chunks) ... DONE [15:29:41.432] | : Resolving 1 futures (chunks) ... [15:29:41.433] | : - Number of value chunks collected: 1 [15:29:41.434] | : Resolving 1 futures (chunks) ... DONE [15:29:41.435] | : Reducing values from 1 chunks ... [15:29:41.436] | : - Number of values collected after concatenation: 2 [15:29:41.437] | : - Number of values expected: 2 [15:29:41.437] | : Reducing values from 1 chunks ... DONE [15:29:41.438] | future_lapply() -> future_xapply() ... done [15:29:41.439] future_lapply() ... done [15:29:41.440] future_lapply() ... [15:29:41.443] | Globals in FUN(): [n=3] '{', '*', 'e' [15:29:41.444] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:41.445] | future_lapply() -> future_xapply() ... [15:29:41.446] | : Number of chunks: 1 [15:29:41.447] | : getGlobalsAndPackagesXApply() ... [15:29:41.448] | : . future.globals: TRUE [15:29:41.463] | : . globals found/used: [n=1] 'FUN' [15:29:41.464] | : . needed namespaces: [n=0] [15:29:41.465] | : . use_args: TRUE [15:29:41.466] | : . Getting '...' globals ... [15:29:41.468] | : . ' '...' content: [n=0] [15:29:41.470] | : . ' List of 1 [15:29:41.470] | : . ' $ ...: list() [15:29:41.470] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.470] | : . ' - attr(*, "where")=List of 1 [15:29:41.470] | : . ' ..$ ...: [15:29:41.470] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.470] | : . ' - attr(*, "resolved")= logi TRUE [15:29:41.470] | : . ' - attr(*, "total_size")= num NA [15:29:41.477] | : . Getting '...' globals ... done [15:29:41.478] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:41.479] | : . List of 2 [15:29:41.479] | : . $ ...future.FUN:function (x) [15:29:41.479] | : . $ ... : list() [15:29:41.479] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.479] | : . - attr(*, "where")=List of 2 [15:29:41.479] | : . ..$ ...future.FUN: [15:29:41.479] | : . ..$ ... : [15:29:41.479] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.479] | : . - attr(*, "resolved")= logi FALSE [15:29:41.479] | : . - attr(*, "total_size")= num 3585 [15:29:41.486] | : . Packages to be attached in all futures: [n=0] [15:29:41.487] | : getGlobalsAndPackagesXApply() ... done [15:29:41.488] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.489] | : List of 5 [15:29:41.489] | : $ ...future.FUN :function (x) [15:29:41.489] | : $ ... : list() [15:29:41.489] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.489] | : $ ...future.elements_ii : NULL [15:29:41.489] | : $ ...future.seeds_ii : NULL [15:29:41.489] | : $ ...future.globals.maxSize: NULL [15:29:41.489] | : - attr(*, "where")=List of 5 [15:29:41.489] | : ..$ ...future.FUN : [15:29:41.489] | : ..$ ... : [15:29:41.489] | : ..$ ...future.elements_ii : [15:29:41.489] | : ..$ ...future.seeds_ii : [15:29:41.489] | : ..$ ...future.globals.maxSize: [15:29:41.489] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.489] | : - attr(*, "resolved")= logi FALSE [15:29:41.489] | : - attr(*, "total_size")= num 3585 [15:29:41.501] | : Number of futures (= number of chunks): 1 [15:29:41.502] | : Launching 1 futures (chunks) ... [15:29:41.503] | : Chunk #1 of 1 ... [15:29:41.505] | : - Finding globals in 'X' for chunk #1 ... [15:29:41.506] | : + additional globals found: [n=0] [15:29:41.508] | : + additional namespaces needed: [n=0] [15:29:41.509] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:41.510] | : - seeds: [15:29:41.511] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.516] | : Created future: [15:29:41.517] | : ClusterFuture: [15:29:41.517] | : Label: 'future_lapply-1' [15:29:41.517] | : Expression: [15:29:41.517] | : { [15:29:41.517] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:41.517] | : "# expression in do.call(), because function called uses '...' " [15:29:41.517] | : "# as a global variable " [15:29:41.517] | : do.call(function(...) { [15:29:41.517] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:41.517] | : "# without having an '...' argument. This means '...' is treated" [15:29:41.517] | : "# as a global variable. This may happen when FUN() is an " [15:29:41.517] | : "# anonymous function. " [15:29:41.517] | : "# " [15:29:41.517] | : "# If an anonymous function, we will make sure to restore the " [15:29:41.517] | : "# function environment of FUN() to the calling environment. " [15:29:41.517] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:41.517] | : "# global environment, which is where globals are written. " [15:29:41.517] | : penv <- env <- environment(...future.FUN) [15:29:41.517] | : repeat { [15:29:41.517] | : if (identical(env, globalenv()) || identical(env, [15:29:41.517] | : emptyenv())) [15:29:41.517] | : break [15:29:41.517] | : penv <- env [15:29:41.517] | : env <- parent.env(env) [15:29:41.517] | : } [15:29:41.517] | : if (identical(penv, globalenv())) { [15:29:41.517] | : environment(...future.FUN) <- environment() [15:29:41.517] | : } [15:29:41.517] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:41.517] | : !isNamespace(penv)) { [15:29:41.517] | : parent.env(penv) <- environment() [15:29:41.517] | : } [15:29:41.517] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:41.517] | : { [15:29:41.517] | : "# future.apply:::future_xapply(): preserve future option" [15:29:41.517] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:41.517] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:41.517] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:41.517] | : on.exit(options(oopts), add = TRUE) [15:29:41.517] | : } [15:29:41.517] | : { [15:29:41.517] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:41.517] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:41.517] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:41.517] | : { [15:29:41.517] | : ...future.FUN(...future.X_jj, ...) [15:29:41.517] | : } [15:29:41.517] | : }) [15:29:41.517] | : } [15:29:41.517] | : } [15:29:41.517] | : }, args = future.call.arguments) [15:29:41.517] | : } [15:29:41.517] | : Globals: 5 objects totaling 3.80 KiB (function '...future.FUN' of 139 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 55 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:41.517] | : Packages: [15:29:41.517] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:41.517] | : Capture standard output: TRUE [15:29:41.517] | : Capture condition classes: 'condition' (excluding '') [15:29:41.517] | : Immediate condition classes: 'immediateCondition' [15:29:41.517] | : Lazy evaluation: FALSE [15:29:41.517] | : Local evaluation: TRUE [15:29:41.517] | : Early signaling: FALSE [15:29:41.517] | : Actions: [n=1] 'run' [15:29:41.517] | : State: 'running' ("Future is being evaluated") [15:29:41.517] | : Resolved: TRUE [15:29:41.517] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-6 [15:29:41.517] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:41.517] | : Class: 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:41.517] | : Value: [15:29:41.517] | : Conditions captured: [15:29:41.527] | : Chunk #1 of 1 ... DONE [15:29:41.528] | : Launching 1 futures (chunks) ... DONE [15:29:41.529] | : Resolving 1 futures (chunks) ... [15:29:41.532] | : onError() ... [15:29:41.533] | : . Received Warning: Caught simpleError. Canceling all iterations ... [15:29:41.535] | : . Signaling: [15:29:41.536] | : onError() ... done [15:29:41.537] | future_lapply() -> future_xapply() ... done [15:29:41.538] future_lapply() ... done *** future_lapply() - manual globals ... DONE *** future_lapply() - tricky globals ... [15:29:41.678] future_lapply() ... [15:29:41.679] | Globals in FUN(): [n=7] '{', 'do.call', 'caller', 'c', 'list', '+', 'args' [15:29:41.680] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:41.681] | future_lapply() -> future_xapply() ... [15:29:41.682] | : Number of chunks: 1 [15:29:41.682] | : getGlobalsAndPackagesXApply() ... [15:29:41.683] | : . future.globals: TRUE [15:29:41.721] | : . globals found/used: [n=5] 'FUN', 'caller', 'args', 'call_my_add', 'my_add' [15:29:41.722] | : . needed namespaces: [n=0] [15:29:41.723] | : . use_args: TRUE [15:29:41.724] | : . Getting '...' globals ... [15:29:41.726] | : . ' '...' content: [n=0] [15:29:41.727] | : . ' List of 1 [15:29:41.727] | : . ' $ ...: list() [15:29:41.727] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.727] | : . ' - attr(*, "where")=List of 1 [15:29:41.727] | : . ' ..$ ...: [15:29:41.727] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.727] | : . ' - attr(*, "resolved")= logi TRUE [15:29:41.727] | : . ' - attr(*, "total_size")= num NA [15:29:41.733] | : . Getting '...' globals ... done [15:29:41.735] | : . Globals to be used in all futures (chunks): [n=6] '...future.FUN', 'caller', 'args', 'call_my_add', 'my_add', '...' [15:29:41.736] | : . List of 6 [15:29:41.736] | : . $ ...future.FUN:function (i) [15:29:41.736] | : . $ caller :function (a, b, FUN = call_my_add) [15:29:41.736] | : . $ args :List of 1 [15:29:41.736] | : . ..$ FUN:function (a, b) [15:29:41.736] | : . $ call_my_add :function (a, b) [15:29:41.736] | : . $ my_add :function (a, b) [15:29:41.736] | : . $ ... : list() [15:29:41.736] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.736] | : . - attr(*, "where")=List of 6 [15:29:41.736] | : . ..$ ...future.FUN: [15:29:41.736] | : . ..$ caller : [15:29:41.736] | : . ..$ args : [15:29:41.736] | : . ..$ call_my_add : [15:29:41.736] | : . ..$ my_add : [15:29:41.736] | : . ..$ ... : [15:29:41.736] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.736] | : . - attr(*, "resolved")= logi FALSE [15:29:41.736] | : . - attr(*, "total_size")= num 6429 [15:29:41.748] | : . Packages to be attached in all futures: [n=0] [15:29:41.749] | : getGlobalsAndPackagesXApply() ... done [15:29:41.751] | : Globals pass to each chunk: [n=9] '...future.FUN', 'caller', 'args', 'call_my_add', 'my_add', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.752] | : List of 9 [15:29:41.752] | : $ ...future.FUN :function (i) [15:29:41.752] | : $ caller :function (a, b, FUN = call_my_add) [15:29:41.752] | : $ args :List of 1 [15:29:41.752] | : ..$ FUN:function (a, b) [15:29:41.752] | : $ call_my_add :function (a, b) [15:29:41.752] | : $ my_add :function (a, b) [15:29:41.752] | : $ ... : list() [15:29:41.752] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.752] | : $ ...future.elements_ii : NULL [15:29:41.752] | : $ ...future.seeds_ii : NULL [15:29:41.752] | : $ ...future.globals.maxSize: NULL [15:29:41.752] | : - attr(*, "where")=List of 9 [15:29:41.752] | : ..$ ...future.FUN : [15:29:41.752] | : ..$ caller : [15:29:41.752] | : ..$ args : [15:29:41.752] | : ..$ call_my_add : [15:29:41.752] | : ..$ my_add : [15:29:41.752] | : ..$ ... : [15:29:41.752] | : ..$ ...future.elements_ii : [15:29:41.752] | : ..$ ...future.seeds_ii : [15:29:41.752] | : ..$ ...future.globals.maxSize: [15:29:41.752] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.752] | : - attr(*, "resolved")= logi FALSE [15:29:41.752] | : - attr(*, "total_size")= num 6429 [15:29:41.767] | : Number of futures (= number of chunks): 1 [15:29:41.768] | : Launching 1 futures (chunks) ... [15:29:41.769] | : Chunk #1 of 1 ... [15:29:41.770] | : - Finding globals in 'X' for chunk #1 ... [15:29:41.771] | : + additional globals found: [n=0] [15:29:41.772] | : + additional namespaces needed: [n=0] [15:29:41.773] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:41.774] | : - seeds: [15:29:41.775] | : - All globals exported: [n=9] '...future.FUN', 'caller', 'args', 'call_my_add', 'my_add', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.802] | : Created future: [15:29:41.803] | : SequentialFuture: [15:29:41.803] | : Label: 'future_lapply-1' [15:29:41.803] | : Expression: [15:29:41.803] | : { [15:29:41.803] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:41.803] | : "# expression in do.call(), because function called uses '...' " [15:29:41.803] | : "# as a global variable " [15:29:41.803] | : do.call(function(...) { [15:29:41.803] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:41.803] | : "# without having an '...' argument. This means '...' is treated" [15:29:41.803] | : "# as a global variable. This may happen when FUN() is an " [15:29:41.803] | : "# anonymous function. " [15:29:41.803] | : "# " [15:29:41.803] | : "# If an anonymous function, we will make sure to restore the " [15:29:41.803] | : "# function environment of FUN() to the calling environment. " [15:29:41.803] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:41.803] | : "# global environment, which is where globals are written. " [15:29:41.803] | : penv <- env <- environment(...future.FUN) [15:29:41.803] | : repeat { [15:29:41.803] | : if (identical(env, globalenv()) || identical(env, [15:29:41.803] | : emptyenv())) [15:29:41.803] | : break [15:29:41.803] | : penv <- env [15:29:41.803] | : env <- parent.env(env) [15:29:41.803] | : } [15:29:41.803] | : if (identical(penv, globalenv())) { [15:29:41.803] | : environment(...future.FUN) <- environment() [15:29:41.803] | : } [15:29:41.803] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:41.803] | : !isNamespace(penv)) { [15:29:41.803] | : parent.env(penv) <- environment() [15:29:41.803] | : } [15:29:41.803] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:41.803] | : { [15:29:41.803] | : "# future.apply:::future_xapply(): preserve future option" [15:29:41.803] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:41.803] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:41.803] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:41.803] | : on.exit(options(oopts), add = TRUE) [15:29:41.803] | : } [15:29:41.803] | : { [15:29:41.803] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:41.803] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:41.803] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:41.803] | : { [15:29:41.803] | : ...future.FUN(...future.X_jj, ...) [15:29:41.803] | : } [15:29:41.803] | : }) [15:29:41.803] | : } [15:29:41.803] | : } [15:29:41.803] | : }, args = future.call.arguments) [15:29:41.803] | : } [15:29:41.803] | : Globals: 9 objects totaling 8.84 KiB (function '...future.FUN' of 2.77 KiB, list 'args' of 928 bytes, function 'caller' of 904 bytes, function 'call_my_add' of 876 bytes, function 'my_add' of 114 bytes, ...) [15:29:41.803] | : Packages: [15:29:41.803] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:41.803] | : Capture standard output: TRUE [15:29:41.803] | : Capture condition classes: 'condition' (excluding '') [15:29:41.803] | : Immediate condition classes: 'immediateCondition' [15:29:41.803] | : Lazy evaluation: FALSE [15:29:41.803] | : Local evaluation: TRUE [15:29:41.803] | : Early signaling: FALSE [15:29:41.803] | : Actions: [n=1] 'run' [15:29:41.803] | : State: 'finished' ("Future was resolved successfully") [15:29:41.803] | : Resolved: TRUE [15:29:41.803] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-7 [15:29:41.803] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:41.803] | : Class: 'SequentialFuture', 'UniprocessFuture', 'Future' [15:29:41.803] | : Value: 67 bytes of class 'list' [15:29:41.803] | : Duration: 0.01951909 secs (started 2026-03-18 15:29:41.780856) [15:29:41.803] | : Worker process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:41.808] | : Chunk #1 of 1 ... DONE [15:29:41.809] | : Launching 1 futures (chunks) ... DONE [15:29:41.810] | : Resolving 1 futures (chunks) ... [15:29:41.812] | : - Number of value chunks collected: 1 [15:29:41.813] | : Resolving 1 futures (chunks) ... DONE [15:29:41.814] | : Reducing values from 1 chunks ... [15:29:41.815] | : - Number of values collected after concatenation: 3 [15:29:41.816] | : - Number of values expected: 3 [15:29:41.817] | : Reducing values from 1 chunks ... DONE [15:29:41.818] | future_lapply() -> future_xapply() ... done [15:29:41.819] future_lapply() ... done - lapply(x, FUN = do.call, ...) |> futurize() ... [15:29:41.820] future_lapply() ... [15:29:41.825] | Globals in FUN(): [n=10] 'parent.frame', '{', 'if', '!', 'is.list', 'stop', '<-', 'lapply', 'enquote', '.Internal' [15:29:41.826] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:41.827] | future_lapply() -> future_xapply() ... [15:29:41.828] | : Number of chunks: 1 [15:29:41.829] | : getGlobalsAndPackagesXApply() ... [15:29:41.830] | : . future.globals: TRUE [15:29:41.874] | : . globals found/used: [n=1] 'FUN' [15:29:41.875] | : . needed namespaces: [n=0] [15:29:41.876] | : . use_args: TRUE [15:29:41.877] | : . Getting '...' globals ... [15:29:41.878] | : . ' '...' content: [n=1] 'what' [15:29:41.879] | : . ' List of 1 [15:29:41.879] | : . ' $ ...:List of 1 [15:29:41.879] | : . ' ..$ what:function (x) [15:29:41.879] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.879] | : . ' - attr(*, "where")=List of 1 [15:29:41.879] | : . ' ..$ ...: [15:29:41.879] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.879] | : . ' - attr(*, "resolved")= logi TRUE [15:29:41.879] | : . ' - attr(*, "total_size")= num NA [15:29:41.883] | : . Getting '...' globals ... done [15:29:41.884] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:41.885] | : . List of 2 [15:29:41.885] | : . $ ...future.FUN:function (what, args, quote = FALSE, envir = parent.frame()) [15:29:41.885] | : . $ ... :List of 1 [15:29:41.885] | : . ..$ what:function (x) [15:29:41.885] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.885] | : . - attr(*, "where")=List of 2 [15:29:41.885] | : . ..$ ...future.FUN: [15:29:41.885] | : . ..$ ... : [15:29:41.885] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.885] | : . - attr(*, "resolved")= logi FALSE [15:29:41.885] | : . - attr(*, "total_size")= num 6979 [15:29:41.892] | : . Packages to be attached in all futures: [n=0] [15:29:41.893] | : getGlobalsAndPackagesXApply() ... done [15:29:41.894] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.895] | : List of 5 [15:29:41.895] | : $ ...future.FUN :function (what, args, quote = FALSE, envir = parent.frame()) [15:29:41.895] | : $ ... :List of 1 [15:29:41.895] | : ..$ what:function (x) [15:29:41.895] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.895] | : $ ...future.elements_ii : NULL [15:29:41.895] | : $ ...future.seeds_ii : NULL [15:29:41.895] | : $ ...future.globals.maxSize: NULL [15:29:41.895] | : - attr(*, "where")=List of 5 [15:29:41.895] | : ..$ ...future.FUN : [15:29:41.895] | : ..$ ... : [15:29:41.895] | : ..$ ...future.elements_ii : [15:29:41.895] | : ..$ ...future.seeds_ii : [15:29:41.895] | : ..$ ...future.globals.maxSize: [15:29:41.895] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.895] | : - attr(*, "resolved")= logi FALSE [15:29:41.895] | : - attr(*, "total_size")= num 6979 [15:29:41.904] | : Number of futures (= number of chunks): 1 [15:29:41.905] | : Launching 1 futures (chunks) ... [15:29:41.906] | : Chunk #1 of 1 ... [15:29:41.907] | : - Finding globals in 'X' for chunk #1 ... [15:29:41.907] | : + additional globals found: [n=0] [15:29:41.908] | : + additional namespaces needed: [n=0] [15:29:41.909] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:41.909] | : - seeds: [15:29:41.910] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:41.916] | : Created future: [15:29:41.917] | : SequentialFuture: [15:29:41.917] | : Label: 'future_lapply-1' [15:29:41.917] | : Expression: [15:29:41.917] | : { [15:29:41.917] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:41.917] | : "# expression in do.call(), because function called uses '...' " [15:29:41.917] | : "# as a global variable " [15:29:41.917] | : do.call(function(...) { [15:29:41.917] | : "# future.apply:::future_xapply(): preserve future option" [15:29:41.917] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:41.917] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:41.917] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:41.917] | : on.exit(options(oopts), add = TRUE) [15:29:41.917] | : } [15:29:41.917] | : { [15:29:41.917] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:41.917] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:41.917] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:41.917] | : { [15:29:41.917] | : ...future.FUN(...future.X_jj, ...) [15:29:41.917] | : } [15:29:41.917] | : }) [15:29:41.917] | : } [15:29:41.917] | : }, args = future.call.arguments) [15:29:41.917] | : } [15:29:41.917] | : Globals: 5 objects totaling 7.00 KiB (function '...future.FUN' of 1.79 KiB, DotDotDotList 'future.call.arguments' of 152 bytes, list '...future.elements_ii' of 149 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:41.917] | : Packages: [15:29:41.917] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:41.917] | : Capture standard output: TRUE [15:29:41.917] | : Capture condition classes: 'condition' (excluding '') [15:29:41.917] | : Immediate condition classes: 'immediateCondition' [15:29:41.917] | : Lazy evaluation: FALSE [15:29:41.917] | : Local evaluation: TRUE [15:29:41.917] | : Early signaling: FALSE [15:29:41.917] | : Actions: [n=1] 'run' [15:29:41.917] | : State: 'finished' ("Future was resolved successfully") [15:29:41.917] | : Resolved: TRUE [15:29:41.917] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-8 [15:29:41.917] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:41.917] | : Class: 'SequentialFuture', 'UniprocessFuture', 'Future' [15:29:41.917] | : Value: 43 bytes of class 'list' [15:29:41.917] | : Duration: 0.003317118 secs (started 2026-03-18 15:29:41.912027) [15:29:41.917] | : Worker process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:41.919] | : Chunk #1 of 1 ... DONE [15:29:41.920] | : Launching 1 futures (chunks) ... DONE [15:29:41.920] | : Resolving 1 futures (chunks) ... [15:29:41.921] | : - Number of value chunks collected: 1 [15:29:41.922] | : Resolving 1 futures (chunks) ... DONE [15:29:41.923] | : Reducing values from 1 chunks ... [15:29:41.924] | : - Number of values collected after concatenation: 1 [15:29:41.925] | : - Number of values expected: 1 [15:29:41.926] | : Reducing values from 1 chunks ... DONE [15:29:41.927] | future_lapply() -> future_xapply() ... done [15:29:41.928] future_lapply() ... done [15:29:41.929] future_lapply() ... [15:29:41.934] | Globals in FUN(): [n=10] 'parent.frame', '{', 'if', '!', 'is.list', 'stop', '<-', 'lapply', 'enquote', '.Internal' [15:29:41.935] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:41.936] | future_lapply() -> future_xapply() ... [15:29:41.937] | : Number of chunks: 1 [15:29:41.937] | : getGlobalsAndPackagesXApply() ... [15:29:41.938] | : . future.globals: TRUE [15:29:41.987] | : . globals found/used: [n=1] 'FUN' [15:29:41.988] | : . needed namespaces: [n=0] [15:29:41.989] | : . use_args: TRUE [15:29:41.990] | : . Getting '...' globals ... [15:29:41.992] | : . ' '...' content: [n=1] 'what' [15:29:41.993] | : . ' List of 1 [15:29:41.993] | : . ' $ ...:List of 1 [15:29:41.993] | : . ' ..$ what:function (...) [15:29:41.993] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:41.993] | : . ' - attr(*, "where")=List of 1 [15:29:41.993] | : . ' ..$ ...: [15:29:41.993] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:41.993] | : . ' - attr(*, "resolved")= logi TRUE [15:29:41.993] | : . ' - attr(*, "total_size")= num NA [15:29:41.999] | : . Getting '...' globals ... done [15:29:42.000] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:42.001] | : . List of 2 [15:29:42.001] | : . $ ...future.FUN:function (what, args, quote = FALSE, envir = parent.frame()) [15:29:42.001] | : . $ ... :List of 1 [15:29:42.001] | : . ..$ what:function (...) [15:29:42.001] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.001] | : . - attr(*, "where")=List of 2 [15:29:42.001] | : . ..$ ...future.FUN: [15:29:42.001] | : . ..$ ... : [15:29:42.001] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.001] | : . - attr(*, "resolved")= logi FALSE [15:29:42.001] | : . - attr(*, "total_size")= num 7047 [15:29:42.008] | : . Packages to be attached in all futures: [n=0] [15:29:42.009] | : getGlobalsAndPackagesXApply() ... done [15:29:42.010] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.011] | : List of 5 [15:29:42.011] | : $ ...future.FUN :function (what, args, quote = FALSE, envir = parent.frame()) [15:29:42.011] | : $ ... :List of 1 [15:29:42.011] | : ..$ what:function (...) [15:29:42.011] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.011] | : $ ...future.elements_ii : NULL [15:29:42.011] | : $ ...future.seeds_ii : NULL [15:29:42.011] | : $ ...future.globals.maxSize: NULL [15:29:42.011] | : - attr(*, "where")=List of 5 [15:29:42.011] | : ..$ ...future.FUN : [15:29:42.011] | : ..$ ... : [15:29:42.011] | : ..$ ...future.elements_ii : [15:29:42.011] | : ..$ ...future.seeds_ii : [15:29:42.011] | : ..$ ...future.globals.maxSize: [15:29:42.011] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.011] | : - attr(*, "resolved")= logi FALSE [15:29:42.011] | : - attr(*, "total_size")= num 7047 [15:29:42.021] | : Number of futures (= number of chunks): 1 [15:29:42.022] | : Launching 1 futures (chunks) ... [15:29:42.023] | : Chunk #1 of 1 ... [15:29:42.024] | : - Finding globals in 'X' for chunk #1 ... [15:29:42.026] | : + additional globals found: [n=0] [15:29:42.027] | : + additional namespaces needed: [n=0] [15:29:42.028] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:42.029] | : - seeds: [15:29:42.029] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.042] | : Created future: [15:29:42.043] | : SequentialFuture: [15:29:42.043] | : Label: 'future_lapply-1' [15:29:42.043] | : Expression: [15:29:42.043] | : { [15:29:42.043] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:42.043] | : "# expression in do.call(), because function called uses '...' " [15:29:42.043] | : "# as a global variable " [15:29:42.043] | : do.call(function(...) { [15:29:42.043] | : "# future.apply:::future_xapply(): preserve future option" [15:29:42.043] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:42.043] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:42.043] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:42.043] | : on.exit(options(oopts), add = TRUE) [15:29:42.043] | : } [15:29:42.043] | : { [15:29:42.043] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:42.043] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:42.043] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:42.043] | : { [15:29:42.043] | : ...future.FUN(...future.X_jj, ...) [15:29:42.043] | : } [15:29:42.043] | : }) [15:29:42.043] | : } [15:29:42.043] | : }, args = future.call.arguments) [15:29:42.043] | : } [15:29:42.043] | : Globals: 5 objects totaling 7.43 KiB (function '...future.FUN' of 1.79 KiB, DotDotDotList 'future.call.arguments' of 388 bytes, list '...future.elements_ii' of 149 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:42.043] | : Packages: [15:29:42.043] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:42.043] | : Capture standard output: TRUE [15:29:42.043] | : Capture condition classes: 'condition' (excluding '') [15:29:42.043] | : Immediate condition classes: 'immediateCondition' [15:29:42.043] | : Lazy evaluation: FALSE [15:29:42.043] | : Local evaluation: TRUE [15:29:42.043] | : Early signaling: FALSE [15:29:42.043] | : Actions: [n=1] 'run' [15:29:42.043] | : State: 'finished' ("Future was resolved successfully") [15:29:42.043] | : Resolved: TRUE [15:29:42.043] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-9 [15:29:42.043] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.043] | : Class: 'SequentialFuture', 'UniprocessFuture', 'Future' [15:29:42.043] | : Value: 43 bytes of class 'list' [15:29:42.043] | : Duration: 0.007736206 secs (started 2026-03-18 15:29:42.032539) [15:29:42.043] | : Worker process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.047] | : Chunk #1 of 1 ... DONE [15:29:42.048] | : Launching 1 futures (chunks) ... DONE [15:29:42.049] | : Resolving 1 futures (chunks) ... [15:29:42.050] | : - Number of value chunks collected: 1 [15:29:42.051] | : Resolving 1 futures (chunks) ... DONE [15:29:42.052] | : Reducing values from 1 chunks ... [15:29:42.052] | : - Number of values collected after concatenation: 1 [15:29:42.053] | : - Number of values expected: 1 [15:29:42.054] | : Reducing values from 1 chunks ... DONE [15:29:42.054] | future_lapply() -> future_xapply() ... done [15:29:42.055] future_lapply() ... done - lapply(x, ...) |> futurize() - passing arguments via '...' ... [15:29:42.056] future_lapply() ... [15:29:42.057] | Globals in FUN(): [n=1] 'typeof' [15:29:42.058] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:42.058] | future_lapply() -> future_xapply() ... [15:29:42.059] | : Number of chunks: 1 [15:29:42.059] | : getGlobalsAndPackagesXApply() ... [15:29:42.060] | : . future.globals: TRUE [15:29:42.069] | : . globals found/used: [n=1] 'FUN' [15:29:42.070] | : . needed namespaces: [n=0] [15:29:42.070] | : . use_args: TRUE [15:29:42.071] | : . Getting '...' globals ... [15:29:42.072] | : . ' '...' content: [n=1] 'b' [15:29:42.073] | : . ' List of 1 [15:29:42.073] | : . ' $ ...:List of 1 [15:29:42.073] | : . ' ..$ b:'data.frame': 2 obs. of 1 variable: [15:29:42.073] | : . ' .. ..$ a: int [1:2] 1 2 [15:29:42.073] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.073] | : . ' - attr(*, "where")=List of 1 [15:29:42.073] | : . ' ..$ ...: [15:29:42.073] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.073] | : . ' - attr(*, "resolved")= logi TRUE [15:29:42.073] | : . ' - attr(*, "total_size")= num NA [15:29:42.082] | : . Getting '...' globals ... done [15:29:42.083] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:42.084] | : . List of 2 [15:29:42.084] | : . $ ...future.FUN:function (a, b) [15:29:42.084] | : . $ ... :List of 1 [15:29:42.084] | : . ..$ b:'data.frame': 2 obs. of 1 variable: [15:29:42.084] | : . .. ..$ a: int [1:2] 1 2 [15:29:42.084] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.084] | : . - attr(*, "where")=List of 2 [15:29:42.084] | : . ..$ ...future.FUN: [15:29:42.084] | : . ..$ ... : [15:29:42.084] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.084] | : . - attr(*, "resolved")= logi FALSE [15:29:42.084] | : . - attr(*, "total_size")= num 3751 [15:29:42.091] | : . Packages to be attached in all futures: [n=0] [15:29:42.092] | : getGlobalsAndPackagesXApply() ... done [15:29:42.093] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.094] | : List of 5 [15:29:42.094] | : $ ...future.FUN :function (a, b) [15:29:42.094] | : $ ... :List of 1 [15:29:42.094] | : ..$ b:'data.frame': 2 obs. of 1 variable: [15:29:42.094] | : .. ..$ a: int [1:2] 1 2 [15:29:42.094] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.094] | : $ ...future.elements_ii : NULL [15:29:42.094] | : $ ...future.seeds_ii : NULL [15:29:42.094] | : $ ...future.globals.maxSize: NULL [15:29:42.094] | : - attr(*, "where")=List of 5 [15:29:42.094] | : ..$ ...future.FUN : [15:29:42.094] | : ..$ ... : [15:29:42.094] | : ..$ ...future.elements_ii : [15:29:42.094] | : ..$ ...future.seeds_ii : [15:29:42.094] | : ..$ ...future.globals.maxSize: [15:29:42.094] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.094] | : - attr(*, "resolved")= logi FALSE [15:29:42.094] | : - attr(*, "total_size")= num 3751 [15:29:42.105] | : Number of futures (= number of chunks): 1 [15:29:42.106] | : Launching 1 futures (chunks) ... [15:29:42.107] | : Chunk #1 of 1 ... [15:29:42.108] | : - Finding globals in 'X' for chunk #1 ... [15:29:42.110] | : + additional globals found: [n=0] [15:29:42.111] | : + additional namespaces needed: [n=0] [15:29:42.112] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:42.113] | : - seeds: [15:29:42.114] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.124] | : Created future: [15:29:42.125] | : SequentialFuture: [15:29:42.125] | : Label: 'future_lapply-1' [15:29:42.125] | : Expression: [15:29:42.125] | : { [15:29:42.125] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:42.125] | : "# expression in do.call(), because function called uses '...' " [15:29:42.125] | : "# as a global variable " [15:29:42.125] | : do.call(function(...) { [15:29:42.125] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:42.125] | : "# without having an '...' argument. This means '...' is treated" [15:29:42.125] | : "# as a global variable. This may happen when FUN() is an " [15:29:42.125] | : "# anonymous function. " [15:29:42.125] | : "# " [15:29:42.125] | : "# If an anonymous function, we will make sure to restore the " [15:29:42.125] | : "# function environment of FUN() to the calling environment. " [15:29:42.125] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:42.125] | : "# global environment, which is where globals are written. " [15:29:42.125] | : penv <- env <- environment(...future.FUN) [15:29:42.125] | : repeat { [15:29:42.125] | : if (identical(env, globalenv()) || identical(env, [15:29:42.125] | : emptyenv())) [15:29:42.125] | : break [15:29:42.125] | : penv <- env [15:29:42.125] | : env <- parent.env(env) [15:29:42.125] | : } [15:29:42.125] | : if (identical(penv, globalenv())) { [15:29:42.125] | : environment(...future.FUN) <- environment() [15:29:42.125] | : } [15:29:42.125] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:42.125] | : !isNamespace(penv)) { [15:29:42.125] | : parent.env(penv) <- environment() [15:29:42.125] | : } [15:29:42.125] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:42.125] | : { [15:29:42.125] | : "# future.apply:::future_xapply(): preserve future option" [15:29:42.125] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:42.125] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:42.125] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:42.125] | : on.exit(options(oopts), add = TRUE) [15:29:42.125] | : } [15:29:42.125] | : { [15:29:42.125] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:42.125] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:42.125] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:42.125] | : { [15:29:42.125] | : ...future.FUN(...future.X_jj, ...) [15:29:42.125] | : } [15:29:42.125] | : }) [15:29:42.125] | : } [15:29:42.125] | : } [15:29:42.125] | : }, args = future.call.arguments) [15:29:42.125] | : } [15:29:42.125] | : Globals: 5 objects totaling 3.95 KiB (DotDotDotList 'future.call.arguments' of 357 bytes, function '...future.FUN' of 111 bytes, list '...future.elements_ii' of 43 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:42.125] | : Packages: [15:29:42.125] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:42.125] | : Capture standard output: TRUE [15:29:42.125] | : Capture condition classes: 'condition' (excluding '') [15:29:42.125] | : Immediate condition classes: 'immediateCondition' [15:29:42.125] | : Lazy evaluation: FALSE [15:29:42.125] | : Local evaluation: TRUE [15:29:42.125] | : Early signaling: FALSE [15:29:42.125] | : Actions: [n=1] 'run' [15:29:42.125] | : State: 'finished' ("Future was resolved successfully") [15:29:42.125] | : Resolved: TRUE [15:29:42.125] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-10 [15:29:42.125] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.125] | : Class: 'SequentialFuture', 'UniprocessFuture', 'Future' [15:29:42.125] | : Value: 51 bytes of class 'list' [15:29:42.125] | : Duration: 0.005627871 secs (started 2026-03-18 15:29:42.116624) [15:29:42.125] | : Worker process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.130] | : Chunk #1 of 1 ... DONE [15:29:42.131] | : Launching 1 futures (chunks) ... DONE [15:29:42.131] | : Resolving 1 futures (chunks) ... [15:29:42.133] | : - Number of value chunks collected: 1 [15:29:42.134] | : Resolving 1 futures (chunks) ... DONE [15:29:42.135] | : Reducing values from 1 chunks ... [15:29:42.136] | : - Number of values collected after concatenation: 1 [15:29:42.137] | : - Number of values expected: 1 [15:29:42.138] | : Reducing values from 1 chunks ... DONE [15:29:42.139] | future_lapply() -> future_xapply() ... done [15:29:42.140] future_lapply() ... done [15:29:42.141] future_lapply() ... [15:29:42.143] | Globals in FUN(): [n=1] 'typeof' [15:29:42.145] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:42.146] | future_lapply() -> future_xapply() ... [15:29:42.147] | : Number of chunks: 1 [15:29:42.149] | : getGlobalsAndPackagesXApply() ... [15:29:42.150] | : . future.globals: TRUE [15:29:42.168] | : . globals found/used: [n=1] 'FUN' [15:29:42.170] | : . needed namespaces: [n=0] [15:29:42.171] | : . use_args: TRUE [15:29:42.172] | : . Getting '...' globals ... [15:29:42.174] | : . ' '...' content: [n=1] 'b' [15:29:42.176] | : . ' List of 1 [15:29:42.176] | : . ' $ ...:List of 1 [15:29:42.176] | : . ' ..$ b: [15:29:42.176] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.176] | : . ' - attr(*, "where")=List of 1 [15:29:42.176] | : . ' ..$ ...: [15:29:42.176] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.176] | : . ' - attr(*, "resolved")= logi TRUE [15:29:42.176] | : . ' - attr(*, "total_size")= num NA [15:29:42.184] | : . Getting '...' globals ... done [15:29:42.185] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:42.186] | : . List of 2 [15:29:42.186] | : . $ ...future.FUN:function (a, b) [15:29:42.186] | : . $ ... :List of 1 [15:29:42.186] | : . ..$ b: [15:29:42.186] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.186] | : . - attr(*, "where")=List of 2 [15:29:42.186] | : . ..$ ...future.FUN: [15:29:42.186] | : . ..$ ... : [15:29:42.186] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.186] | : . - attr(*, "resolved")= logi FALSE [15:29:42.186] | : . - attr(*, "total_size")= num 3506 [15:29:42.194] | : . Packages to be attached in all futures: [n=0] [15:29:42.195] | : getGlobalsAndPackagesXApply() ... done [15:29:42.196] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.197] | : List of 5 [15:29:42.197] | : $ ...future.FUN :function (a, b) [15:29:42.197] | : $ ... :List of 1 [15:29:42.197] | : ..$ b: [15:29:42.197] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.197] | : $ ...future.elements_ii : NULL [15:29:42.197] | : $ ...future.seeds_ii : NULL [15:29:42.197] | : $ ...future.globals.maxSize: NULL [15:29:42.197] | : - attr(*, "where")=List of 5 [15:29:42.197] | : ..$ ...future.FUN : [15:29:42.197] | : ..$ ... : [15:29:42.197] | : ..$ ...future.elements_ii : [15:29:42.197] | : ..$ ...future.seeds_ii : [15:29:42.197] | : ..$ ...future.globals.maxSize: [15:29:42.197] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.197] | : - attr(*, "resolved")= logi FALSE [15:29:42.197] | : - attr(*, "total_size")= num 3506 [15:29:42.208] | : Number of futures (= number of chunks): 1 [15:29:42.209] | : Launching 1 futures (chunks) ... [15:29:42.209] | : Chunk #1 of 1 ... [15:29:42.210] | : - Finding globals in 'X' for chunk #1 ... [15:29:42.212] | : + additional globals found: [n=0] [15:29:42.213] | : + additional namespaces needed: [n=0] [15:29:42.214] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:42.214] | : - seeds: [15:29:42.215] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.225] | : Created future: [15:29:42.226] | : SequentialFuture: [15:29:42.226] | : Label: 'future_lapply-1' [15:29:42.226] | : Expression: [15:29:42.226] | : { [15:29:42.226] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:42.226] | : "# expression in do.call(), because function called uses '...' " [15:29:42.226] | : "# as a global variable " [15:29:42.226] | : do.call(function(...) { [15:29:42.226] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:42.226] | : "# without having an '...' argument. This means '...' is treated" [15:29:42.226] | : "# as a global variable. This may happen when FUN() is an " [15:29:42.226] | : "# anonymous function. " [15:29:42.226] | : "# " [15:29:42.226] | : "# If an anonymous function, we will make sure to restore the " [15:29:42.226] | : "# function environment of FUN() to the calling environment. " [15:29:42.226] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:42.226] | : "# global environment, which is where globals are written. " [15:29:42.226] | : penv <- env <- environment(...future.FUN) [15:29:42.226] | : repeat { [15:29:42.226] | : if (identical(env, globalenv()) || identical(env, [15:29:42.226] | : emptyenv())) [15:29:42.226] | : break [15:29:42.226] | : penv <- env [15:29:42.226] | : env <- parent.env(env) [15:29:42.226] | : } [15:29:42.226] | : if (identical(penv, globalenv())) { [15:29:42.226] | : environment(...future.FUN) <- environment() [15:29:42.226] | : } [15:29:42.226] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:42.226] | : !isNamespace(penv)) { [15:29:42.226] | : parent.env(penv) <- environment() [15:29:42.226] | : } [15:29:42.226] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:42.226] | : { [15:29:42.226] | : "# future.apply:::future_xapply(): preserve future option" [15:29:42.226] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:42.226] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:42.226] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:42.226] | : on.exit(options(oopts), add = TRUE) [15:29:42.226] | : } [15:29:42.226] | : { [15:29:42.226] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:42.226] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:42.226] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:42.226] | : { [15:29:42.226] | : ...future.FUN(...future.X_jj, ...) [15:29:42.226] | : } [15:29:42.226] | : }) [15:29:42.226] | : } [15:29:42.226] | : } [15:29:42.226] | : }, args = future.call.arguments) [15:29:42.226] | : } [15:29:42.226] | : Globals: 5 objects totaling 3.71 KiB (DotDotDotList 'future.call.arguments' of 279 bytes, function '...future.FUN' of 111 bytes, list '...future.elements_ii' of 43 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:42.226] | : Packages: [15:29:42.226] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:42.226] | : Capture standard output: TRUE [15:29:42.226] | : Capture condition classes: 'condition' (excluding '') [15:29:42.226] | : Immediate condition classes: 'immediateCondition' [15:29:42.226] | : Lazy evaluation: FALSE [15:29:42.226] | : Local evaluation: TRUE [15:29:42.226] | : Early signaling: FALSE [15:29:42.226] | : Actions: [n=1] 'run' [15:29:42.226] | : State: 'finished' ("Future was resolved successfully") [15:29:42.226] | : Resolved: TRUE [15:29:42.226] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-11 [15:29:42.226] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.226] | : Class: 'SequentialFuture', 'UniprocessFuture', 'Future' [15:29:42.226] | : Value: 58 bytes of class 'list' [15:29:42.226] | : Duration: 0.00512886 secs (started 2026-03-18 15:29:42.218192) [15:29:42.226] | : Worker process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.230] | : Chunk #1 of 1 ... DONE [15:29:42.231] | : Launching 1 futures (chunks) ... DONE [15:29:42.232] | : Resolving 1 futures (chunks) ... [15:29:42.233] | : - Number of value chunks collected: 1 [15:29:42.234] | : Resolving 1 futures (chunks) ... DONE [15:29:42.235] | : Reducing values from 1 chunks ... [15:29:42.236] | : - Number of values collected after concatenation: 1 [15:29:42.237] | : - Number of values expected: 1 [15:29:42.238] | : Reducing values from 1 chunks ... DONE [15:29:42.238] | future_lapply() -> future_xapply() ... done [15:29:42.239] future_lapply() ... done [15:29:42.241] future_lapply() ... [15:29:42.242] | Globals in FUN(): [n=1] 'typeof' [15:29:42.243] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:42.244] | future_lapply() -> future_xapply() ... [15:29:42.245] | : Number of chunks: 1 [15:29:42.246] | : getGlobalsAndPackagesXApply() ... [15:29:42.247] | : . future.globals: TRUE [15:29:42.266] | : . globals found/used: [n=1] 'FUN' [15:29:42.267] | : . needed namespaces: [n=0] [15:29:42.268] | : . use_args: TRUE [15:29:42.270] | : . Getting '...' globals ... [15:29:42.272] | : . ' '...' content: [n=1] 'b' [15:29:42.273] | : . ' List of 1 [15:29:42.273] | : . ' $ ...:List of 1 [15:29:42.273] | : . ' ..$ b:Formal class 'classRepresentation' [package "methods"] with 11 slots [15:29:42.273] | : . ' .. .. ..@ slots :List of 4 [15:29:42.273] | : . ' .. .. .. ..$ .Data : chr "function" [15:29:42.273] | : . ' .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. ..$ target : chr "signature" [15:29:42.273] | : . ' .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. ..$ defined: chr "signature" [15:29:42.273] | : . ' .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. ..$ generic: chr "character" [15:29:42.273] | : . ' .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. ..@ contains :List of 4 [15:29:42.273] | : . ' .. .. .. ..$ function :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.273] | : . ' .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ superClass: chr "function" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.273] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:42.273] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.273] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.273] | : . ' .. .. .. .. .. ..@ by : chr(0) [15:29:42.273] | : . ' .. .. .. .. .. ..@ dataPart : logi TRUE [15:29:42.273] | : . ' .. .. .. .. .. ..@ distance : num 1 [15:29:42.273] | : . ' .. .. .. ..$ OptionalFunction:Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.273] | : . ' .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ superClass: chr "OptionalFunction" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.273] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:42.273] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.273] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.273] | : . ' .. .. .. .. .. ..@ by : chr "function" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.273] | : . ' .. .. .. .. .. ..@ distance : num 2 [15:29:42.273] | : . ' .. .. .. ..$ PossibleMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.273] | : . ' .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ superClass: chr "PossibleMethod" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.273] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:42.273] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.273] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.273] | : . ' .. .. .. .. .. ..@ by : chr "function" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.273] | : . ' .. .. .. .. .. ..@ distance : num 2 [15:29:42.273] | : . ' .. .. .. ..$ optionalMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.273] | : . ' .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ superClass: chr "optionalMethod" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.273] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:42.273] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.273] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.273] | : . ' .. .. .. .. .. ..@ by : chr "function" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.273] | : . ' .. .. .. .. .. ..@ distance : num 3 [15:29:42.273] | : . ' .. .. ..@ virtual : logi FALSE [15:29:42.273] | : . ' .. .. ..@ prototype :Formal class 'function' [package ""] with 0 slots [15:29:42.273] | : . ' list() [15:29:42.273] | : . ' .. .. .. .. ..$ target :Formal class 'signature' [package "methods"] with 3 slots [15:29:42.273] | : . ' .. .. .. .. .. .. ..@ .Data : chr(0) [15:29:42.273] | : . ' .. .. .. .. .. .. ..@ names : chr(0) [15:29:42.273] | : . ' .. .. .. .. .. .. ..@ package: chr(0) [15:29:42.273] | : . ' .. .. .. .. ..$ defined:Formal class 'signature' [package "methods"] with 3 slots [15:29:42.273] | : . ' .. .. .. .. .. .. ..@ .Data : chr(0) [15:29:42.273] | : . ' .. .. .. .. .. .. ..@ names : chr(0) [15:29:42.273] | : . ' .. .. .. .. .. .. ..@ package: chr(0) [15:29:42.273] | : . ' .. .. .. .. ..$ generic: chr(0) [15:29:42.273] | : . ' .. .. ..@ validity : NULL [15:29:42.273] | : . ' .. .. ..@ access : list() [15:29:42.273] | : . ' .. .. ..@ className : chr "MethodDefinition" [15:29:42.273] | : . ' .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. ..@ package : chr "methods" [15:29:42.273] | : . ' .. .. ..@ subclasses:List of 7 [15:29:42.273] | : . ' .. .. .. ..$ derivedDefaultMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.273] | : . ' .. .. .. .. .. ..@ subClass : chr "derivedDefaultMethod" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.273] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:42.273] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.273] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.273] | : . ' .. .. .. .. .. ..@ by : chr(0) [15:29:42.273] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.273] | : . ' .. .. .. .. .. ..@ distance : num 1 [15:29:42.273] | : . ' .. .. .. ..$ MethodWithNext :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.273] | : . ' .. .. .. .. .. ..@ subClass : chr "MethodWithNext" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.273] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:42.273] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.273] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.273] | : . ' .. .. .. .. .. ..@ by : chr(0) [15:29:42.273] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.273] | : . ' .. .. .. .. .. ..@ distance : num 1 [15:29:42.273] | : . ' .. .. .. ..$ SealedMethodDefinition :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.273] | : . ' .. .. .. .. .. ..@ subClass : chr "SealedMethodDefinition" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.273] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:42.273] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.273] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.273] | : . ' .. .. .. .. .. ..@ by : chr(0) [15:29:42.273] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.273] | : . ' .. .. .. .. .. ..@ distance : num 1 [15:29:42.273] | : . ' .. .. .. ..$ MethodDefinitionWithTrace :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.273] | : . ' .. .. .. .. .. ..@ subClass : chr "MethodDefinitionWithTrace" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.273] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:42.273] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.273] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.273] | : . ' .. .. .. .. .. ..@ by : chr(0) [15:29:42.273] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.273] | : . ' .. .. .. .. .. ..@ distance : num 1 [15:29:42.273] | : . ' .. .. .. ..$ internalDispatchMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.273] | : . ' .. .. .. .. .. ..@ subClass : chr "internalDispatchMethod" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.273] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:42.273] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.273] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.273] | : . ' .. .. .. .. .. ..@ by : chr "derivedDefaultMethod" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.273] | : . ' .. .. .. .. .. ..@ distance : num 2 [15:29:42.273] | : . ' .. .. .. ..$ MethodWithNextWithTrace :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.273] | : . ' .. .. .. .. .. ..@ subClass : chr "MethodWithNextWithTrace" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.273] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:42.273] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.273] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.273] | : . ' .. .. .. .. .. ..@ by : chr "MethodWithNext" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.273] | : . ' .. .. .. .. .. ..@ distance : num 2 [15:29:42.273] | : . ' .. .. .. ..$ derivedDefaultMethodWithTrace:Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.273] | : . ' .. .. .. .. .. ..@ subClass : chr "derivedDefaultMethodWithTrace" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.273] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:42.273] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.273] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.273] | : . ' .. .. .. .. .. ..@ by : chr "derivedDefaultMethod" [15:29:42.273] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.273] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.273] | : . ' .. .. .. .. .. ..@ distance : num 2 [15:29:42.273] | : . ' .. .. ..@ versionKey: [15:29:42.273] | : . ' .. .. ..@ sealed : logi TRUE [15:29:42.273] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.273] | : . ' - attr(*, "where")=List of 1 [15:29:42.273] | : . ' ..$ ...: [15:29:42.273] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.273] | : . ' - attr(*, "resolved")= logi TRUE [15:29:42.273] | : . ' - attr(*, "total_size")= num NA [15:29:42.381] | : . Getting '...' globals ... done [15:29:42.382] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:42.384] | : . List of 2 [15:29:42.384] | : . $ ...future.FUN:function (a, b) [15:29:42.384] | : . $ ... :List of 1 [15:29:42.384] | : . ..$ b:Formal class 'classRepresentation' [package "methods"] with 11 slots [15:29:42.384] | : . .. .. ..@ slots :List of 4 [15:29:42.384] | : . .. .. .. ..$ .Data : chr "function" [15:29:42.384] | : . .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. ..$ target : chr "signature" [15:29:42.384] | : . .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. ..$ defined: chr "signature" [15:29:42.384] | : . .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. ..$ generic: chr "character" [15:29:42.384] | : . .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. ..@ contains :List of 4 [15:29:42.384] | : . .. .. .. ..$ function :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.384] | : . .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ superClass: chr "function" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.384] | : . .. .. .. .. .. ..@ test :function (object) [15:29:42.384] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.384] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.384] | : . .. .. .. .. .. ..@ by : chr(0) [15:29:42.384] | : . .. .. .. .. .. ..@ dataPart : logi TRUE [15:29:42.384] | : . .. .. .. .. .. ..@ distance : num 1 [15:29:42.384] | : . .. .. .. ..$ OptionalFunction:Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.384] | : . .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ superClass: chr "OptionalFunction" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.384] | : . .. .. .. .. .. ..@ test :function (object) [15:29:42.384] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.384] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.384] | : . .. .. .. .. .. ..@ by : chr "function" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.384] | : . .. .. .. .. .. ..@ distance : num 2 [15:29:42.384] | : . .. .. .. ..$ PossibleMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.384] | : . .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ superClass: chr "PossibleMethod" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.384] | : . .. .. .. .. .. ..@ test :function (object) [15:29:42.384] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.384] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.384] | : . .. .. .. .. .. ..@ by : chr "function" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.384] | : . .. .. .. .. .. ..@ distance : num 2 [15:29:42.384] | : . .. .. .. ..$ optionalMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.384] | : . .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ superClass: chr "optionalMethod" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.384] | : . .. .. .. .. .. ..@ test :function (object) [15:29:42.384] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.384] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.384] | : . .. .. .. .. .. ..@ by : chr "function" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.384] | : . .. .. .. .. .. ..@ distance : num 3 [15:29:42.384] | : . .. .. ..@ virtual : logi FALSE [15:29:42.384] | : . .. .. ..@ prototype :Formal class 'function' [package ""] with 0 slots [15:29:42.384] | : . list() [15:29:42.384] | : . .. .. .. .. ..$ target :Formal class 'signature' [package "methods"] with 3 slots [15:29:42.384] | : . .. .. .. .. .. .. ..@ .Data : chr(0) [15:29:42.384] | : . .. .. .. .. .. .. ..@ names : chr(0) [15:29:42.384] | : . .. .. .. .. .. .. ..@ package: chr(0) [15:29:42.384] | : . .. .. .. .. ..$ defined:Formal class 'signature' [package "methods"] with 3 slots [15:29:42.384] | : . .. .. .. .. .. .. ..@ .Data : chr(0) [15:29:42.384] | : . .. .. .. .. .. .. ..@ names : chr(0) [15:29:42.384] | : . .. .. .. .. .. .. ..@ package: chr(0) [15:29:42.384] | : . .. .. .. .. ..$ generic: chr(0) [15:29:42.384] | : . .. .. ..@ validity : NULL [15:29:42.384] | : . .. .. ..@ access : list() [15:29:42.384] | : . .. .. ..@ className : chr "MethodDefinition" [15:29:42.384] | : . .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. ..@ package : chr "methods" [15:29:42.384] | : . .. .. ..@ subclasses:List of 7 [15:29:42.384] | : . .. .. .. ..$ derivedDefaultMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.384] | : . .. .. .. .. .. ..@ subClass : chr "derivedDefaultMethod" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.384] | : . .. .. .. .. .. ..@ test :function (object) [15:29:42.384] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.384] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.384] | : . .. .. .. .. .. ..@ by : chr(0) [15:29:42.384] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.384] | : . .. .. .. .. .. ..@ distance : num 1 [15:29:42.384] | : . .. .. .. ..$ MethodWithNext :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.384] | : . .. .. .. .. .. ..@ subClass : chr "MethodWithNext" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.384] | : . .. .. .. .. .. ..@ test :function (object) [15:29:42.384] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.384] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.384] | : . .. .. .. .. .. ..@ by : chr(0) [15:29:42.384] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.384] | : . .. .. .. .. .. ..@ distance : num 1 [15:29:42.384] | : . .. .. .. ..$ SealedMethodDefinition :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.384] | : . .. .. .. .. .. ..@ subClass : chr "SealedMethodDefinition" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.384] | : . .. .. .. .. .. ..@ test :function (object) [15:29:42.384] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.384] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.384] | : . .. .. .. .. .. ..@ by : chr(0) [15:29:42.384] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.384] | : . .. .. .. .. .. ..@ distance : num 1 [15:29:42.384] | : . .. .. .. ..$ MethodDefinitionWithTrace :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.384] | : . .. .. .. .. .. ..@ subClass : chr "MethodDefinitionWithTrace" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.384] | : . .. .. .. .. .. ..@ test :function (object) [15:29:42.384] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.384] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.384] | : . .. .. .. .. .. ..@ by : chr(0) [15:29:42.384] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.384] | : . .. .. .. .. .. ..@ distance : num 1 [15:29:42.384] | : . .. .. .. ..$ internalDispatchMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.384] | : . .. .. .. .. .. ..@ subClass : chr "internalDispatchMethod" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.384] | : . .. .. .. .. .. ..@ test :function (object) [15:29:42.384] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.384] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.384] | : . .. .. .. .. .. ..@ by : chr "derivedDefaultMethod" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.384] | : . .. .. .. .. .. ..@ distance : num 2 [15:29:42.384] | : . .. .. .. ..$ MethodWithNextWithTrace :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.384] | : . .. .. .. .. .. ..@ subClass : chr "MethodWithNextWithTrace" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.384] | : . .. .. .. .. .. ..@ test :function (object) [15:29:42.384] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.384] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.384] | : . .. .. .. .. .. ..@ by : chr "MethodWithNext" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.384] | : . .. .. .. .. .. ..@ distance : num 2 [15:29:42.384] | : . .. .. .. ..$ derivedDefaultMethodWithTrace:Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.384] | : . .. .. .. .. .. ..@ subClass : chr "derivedDefaultMethodWithTrace" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.384] | : . .. .. .. .. .. ..@ test :function (object) [15:29:42.384] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.384] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.384] | : . .. .. .. .. .. ..@ by : chr "derivedDefaultMethod" [15:29:42.384] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.384] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.384] | : . .. .. .. .. .. ..@ distance : num 2 [15:29:42.384] | : . .. .. ..@ versionKey: [15:29:42.384] | : . .. .. ..@ sealed : logi TRUE [15:29:42.384] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.384] | : . - attr(*, "where")=List of 2 [15:29:42.384] | : . ..$ ...future.FUN: [15:29:42.384] | : . ..$ ... : [15:29:42.384] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.384] | : . - attr(*, "resolved")= logi FALSE [15:29:42.384] | : . - attr(*, "total_size")= num 105373 [15:29:42.466] | : . Packages to be attached in all futures: [n=0] [15:29:42.467] | : getGlobalsAndPackagesXApply() ... done [15:29:42.468] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.468] | : List of 5 [15:29:42.468] | : $ ...future.FUN :function (a, b) [15:29:42.468] | : $ ... :List of 1 [15:29:42.468] | : ..$ b:Formal class 'classRepresentation' [package "methods"] with 11 slots [15:29:42.468] | : .. .. ..@ slots :List of 4 [15:29:42.468] | : .. .. .. ..$ .Data : chr "function" [15:29:42.468] | : .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. ..$ target : chr "signature" [15:29:42.468] | : .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. ..$ defined: chr "signature" [15:29:42.468] | : .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. ..$ generic: chr "character" [15:29:42.468] | : .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. ..@ contains :List of 4 [15:29:42.468] | : .. .. .. ..$ function :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.468] | : .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ superClass: chr "function" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.468] | : .. .. .. .. .. ..@ test :function (object) [15:29:42.468] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.468] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.468] | : .. .. .. .. .. ..@ by : chr(0) [15:29:42.468] | : .. .. .. .. .. ..@ dataPart : logi TRUE [15:29:42.468] | : .. .. .. .. .. ..@ distance : num 1 [15:29:42.468] | : .. .. .. ..$ OptionalFunction:Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.468] | : .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ superClass: chr "OptionalFunction" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.468] | : .. .. .. .. .. ..@ test :function (object) [15:29:42.468] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.468] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.468] | : .. .. .. .. .. ..@ by : chr "function" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.468] | : .. .. .. .. .. ..@ distance : num 2 [15:29:42.468] | : .. .. .. ..$ PossibleMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.468] | : .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ superClass: chr "PossibleMethod" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.468] | : .. .. .. .. .. ..@ test :function (object) [15:29:42.468] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.468] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.468] | : .. .. .. .. .. ..@ by : chr "function" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.468] | : .. .. .. .. .. ..@ distance : num 2 [15:29:42.468] | : .. .. .. ..$ optionalMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.468] | : .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ superClass: chr "optionalMethod" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.468] | : .. .. .. .. .. ..@ test :function (object) [15:29:42.468] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.468] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.468] | : .. .. .. .. .. ..@ by : chr "function" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.468] | : .. .. .. .. .. ..@ distance : num 3 [15:29:42.468] | : .. .. ..@ virtual : logi FALSE [15:29:42.468] | : .. .. ..@ prototype :Formal class 'function' [package ""] with 0 slots [15:29:42.468] | : list() [15:29:42.468] | : .. .. .. .. ..$ target :Formal class 'signature' [package "methods"] with 3 slots [15:29:42.468] | : .. .. .. .. .. .. ..@ .Data : chr(0) [15:29:42.468] | : .. .. .. .. .. .. ..@ names : chr(0) [15:29:42.468] | : .. .. .. .. .. .. ..@ package: chr(0) [15:29:42.468] | : .. .. .. .. ..$ defined:Formal class 'signature' [package "methods"] with 3 slots [15:29:42.468] | : .. .. .. .. .. .. ..@ .Data : chr(0) [15:29:42.468] | : .. .. .. .. .. .. ..@ names : chr(0) [15:29:42.468] | : .. .. .. .. .. .. ..@ package: chr(0) [15:29:42.468] | : .. .. .. .. ..$ generic: chr(0) [15:29:42.468] | : .. .. ..@ validity : NULL [15:29:42.468] | : .. .. ..@ access : list() [15:29:42.468] | : .. .. ..@ className : chr "MethodDefinition" [15:29:42.468] | : .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. ..@ package : chr "methods" [15:29:42.468] | : .. .. ..@ subclasses:List of 7 [15:29:42.468] | : .. .. .. ..$ derivedDefaultMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.468] | : .. .. .. .. .. ..@ subClass : chr "derivedDefaultMethod" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.468] | : .. .. .. .. .. ..@ test :function (object) [15:29:42.468] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.468] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.468] | : .. .. .. .. .. ..@ by : chr(0) [15:29:42.468] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.468] | : .. .. .. .. .. ..@ distance : num 1 [15:29:42.468] | : .. .. .. ..$ MethodWithNext :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.468] | : .. .. .. .. .. ..@ subClass : chr "MethodWithNext" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.468] | : .. .. .. .. .. ..@ test :function (object) [15:29:42.468] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.468] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.468] | : .. .. .. .. .. ..@ by : chr(0) [15:29:42.468] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.468] | : .. .. .. .. .. ..@ distance : num 1 [15:29:42.468] | : .. .. .. ..$ SealedMethodDefinition :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.468] | : .. .. .. .. .. ..@ subClass : chr "SealedMethodDefinition" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.468] | : .. .. .. .. .. ..@ test :function (object) [15:29:42.468] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.468] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.468] | : .. .. .. .. .. ..@ by : chr(0) [15:29:42.468] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.468] | : .. .. .. .. .. ..@ distance : num 1 [15:29:42.468] | : .. .. .. ..$ MethodDefinitionWithTrace :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.468] | : .. .. .. .. .. ..@ subClass : chr "MethodDefinitionWithTrace" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.468] | : .. .. .. .. .. ..@ test :function (object) [15:29:42.468] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.468] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.468] | : .. .. .. .. .. ..@ by : chr(0) [15:29:42.468] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.468] | : .. .. .. .. .. ..@ distance : num 1 [15:29:42.468] | : .. .. .. ..$ internalDispatchMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.468] | : .. .. .. .. .. ..@ subClass : chr "internalDispatchMethod" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.468] | : .. .. .. .. .. ..@ test :function (object) [15:29:42.468] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.468] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.468] | : .. .. .. .. .. ..@ by : chr "derivedDefaultMethod" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.468] | : .. .. .. .. .. ..@ distance : num 2 [15:29:42.468] | : .. .. .. ..$ MethodWithNextWithTrace :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.468] | : .. .. .. .. .. ..@ subClass : chr "MethodWithNextWithTrace" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.468] | : .. .. .. .. .. ..@ test :function (object) [15:29:42.468] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.468] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.468] | : .. .. .. .. .. ..@ by : chr "MethodWithNext" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.468] | : .. .. .. .. .. ..@ distance : num 2 [15:29:42.468] | : .. .. .. ..$ derivedDefaultMethodWithTrace:Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:42.468] | : .. .. .. .. .. ..@ subClass : chr "derivedDefaultMethodWithTrace" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:42.468] | : .. .. .. .. .. ..@ test :function (object) [15:29:42.468] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:42.468] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:42.468] | : .. .. .. .. .. ..@ by : chr "derivedDefaultMethod" [15:29:42.468] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:42.468] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:42.468] | : .. .. .. .. .. ..@ distance : num 2 [15:29:42.468] | : .. .. ..@ versionKey: [15:29:42.468] | : .. .. ..@ sealed : logi TRUE [15:29:42.468] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.468] | : $ ...future.elements_ii : NULL [15:29:42.468] | : $ ...future.seeds_ii : NULL [15:29:42.468] | : $ ...future.globals.maxSize: NULL [15:29:42.468] | : - attr(*, "where")=List of 5 [15:29:42.468] | : ..$ ...future.FUN : [15:29:42.468] | : ..$ ... : [15:29:42.468] | : ..$ ...future.elements_ii : [15:29:42.468] | : ..$ ...future.seeds_ii : [15:29:42.468] | : ..$ ...future.globals.maxSize: [15:29:42.468] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.468] | : - attr(*, "resolved")= logi FALSE [15:29:42.468] | : - attr(*, "total_size")= num 105373 [15:29:42.552] | : Number of futures (= number of chunks): 1 [15:29:42.553] | : Launching 1 futures (chunks) ... [15:29:42.554] | : Chunk #1 of 1 ... [15:29:42.555] | : - Finding globals in 'X' for chunk #1 ... [15:29:42.556] | : + additional globals found: [n=0] [15:29:42.556] | : + additional namespaces needed: [n=0] [15:29:42.557] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:42.557] | : - seeds: [15:29:42.558] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.566] | : Created future: [15:29:42.567] | : SequentialFuture: [15:29:42.567] | : Label: 'future_lapply-1' [15:29:42.567] | : Expression: [15:29:42.567] | : { [15:29:42.567] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:42.567] | : "# expression in do.call(), because function called uses '...' " [15:29:42.567] | : "# as a global variable " [15:29:42.567] | : do.call(function(...) { [15:29:42.567] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:42.567] | : "# without having an '...' argument. This means '...' is treated" [15:29:42.567] | : "# as a global variable. This may happen when FUN() is an " [15:29:42.567] | : "# anonymous function. " [15:29:42.567] | : "# " [15:29:42.567] | : "# If an anonymous function, we will make sure to restore the " [15:29:42.567] | : "# function environment of FUN() to the calling environment. " [15:29:42.567] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:42.567] | : "# global environment, which is where globals are written. " [15:29:42.567] | : penv <- env <- environment(...future.FUN) [15:29:42.567] | : repeat { [15:29:42.567] | : if (identical(env, globalenv()) || identical(env, [15:29:42.567] | : emptyenv())) [15:29:42.567] | : break [15:29:42.567] | : penv <- env [15:29:42.567] | : env <- parent.env(env) [15:29:42.567] | : } [15:29:42.567] | : if (identical(penv, globalenv())) { [15:29:42.567] | : environment(...future.FUN) <- environment() [15:29:42.567] | : } [15:29:42.567] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:42.567] | : !isNamespace(penv)) { [15:29:42.567] | : parent.env(penv) <- environment() [15:29:42.567] | : } [15:29:42.567] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:42.567] | : { [15:29:42.567] | : "# future.apply:::future_xapply(): preserve future option" [15:29:42.567] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:42.567] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:42.567] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:42.567] | : on.exit(options(oopts), add = TRUE) [15:29:42.567] | : } [15:29:42.567] | : { [15:29:42.567] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:42.567] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:42.567] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:42.567] | : { [15:29:42.567] | : ...future.FUN(...future.X_jj, ...) [15:29:42.567] | : } [15:29:42.567] | : }) [15:29:42.567] | : } [15:29:42.567] | : } [15:29:42.567] | : }, args = future.call.arguments) [15:29:42.567] | : } [15:29:42.567] | : Globals: 5 objects totaling 103.19 KiB (DotDotDotList 'future.call.arguments' of 50.30 KiB, function '...future.FUN' of 111 bytes, list '...future.elements_ii' of 43 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:42.567] | : Packages: [15:29:42.567] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:42.567] | : Capture standard output: TRUE [15:29:42.567] | : Capture condition classes: 'condition' (excluding '') [15:29:42.567] | : Immediate condition classes: 'immediateCondition' [15:29:42.567] | : Lazy evaluation: FALSE [15:29:42.567] | : Local evaluation: TRUE [15:29:42.567] | : Early signaling: FALSE [15:29:42.567] | : Actions: [n=1] 'run' [15:29:42.567] | : State: 'finished' ("Future was resolved successfully") [15:29:42.567] | : Resolved: TRUE [15:29:42.567] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-12 [15:29:42.567] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.567] | : Class: 'SequentialFuture', 'UniprocessFuture', 'Future' [15:29:42.567] | : Value: 49 bytes of class 'list' [15:29:42.567] | : Duration: 0.004071951 secs (started 2026-03-18 15:29:42.56089) [15:29:42.567] | : Worker process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.573] | : Chunk #1 of 1 ... DONE [15:29:42.574] | : Launching 1 futures (chunks) ... DONE [15:29:42.575] | : Resolving 1 futures (chunks) ... [15:29:42.577] | : - Number of value chunks collected: 1 [15:29:42.578] | : Resolving 1 futures (chunks) ... DONE [15:29:42.578] | : Reducing values from 1 chunks ... [15:29:42.579] | : - Number of values collected after concatenation: 1 [15:29:42.580] | : - Number of values expected: 1 [15:29:42.581] | : Reducing values from 1 chunks ... DONE [15:29:42.582] | future_lapply() -> future_xapply() ... done [15:29:42.583] future_lapply() ... done - lapply(X, ...) |> futurize() - 'X' containing globals ... List of 4 $ : num 84 $ : num 10.5 $ : num 63 $ : int 11 [15:29:42.589] future_lapply() ... [15:29:42.591] | Globals in FUN(): [n=0] [15:29:42.592] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:42.593] | future_lapply() -> future_xapply() ... [15:29:42.594] | : Number of chunks: 1 [15:29:42.595] | : getGlobalsAndPackagesXApply() ... [15:29:42.596] | : . future.globals: TRUE [15:29:42.604] | : . globals found/used: [n=1] 'FUN' [15:29:42.605] | : . needed namespaces: [n=0] [15:29:42.606] | : . use_args: TRUE [15:29:42.607] | : . Getting '...' globals ... [15:29:42.609] | : . ' '...' content: [n=0] [15:29:42.610] | : . ' List of 1 [15:29:42.610] | : . ' $ ...: list() [15:29:42.610] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.610] | : . ' - attr(*, "where")=List of 1 [15:29:42.610] | : . ' ..$ ...: [15:29:42.610] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.610] | : . ' - attr(*, "resolved")= logi TRUE [15:29:42.610] | : . ' - attr(*, "total_size")= num NA [15:29:42.617] | : . Getting '...' globals ... done [15:29:42.618] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:42.619] | : . List of 2 [15:29:42.619] | : . $ ...future.FUN:function (f) [15:29:42.619] | : . $ ... : list() [15:29:42.619] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.619] | : . - attr(*, "where")=List of 2 [15:29:42.619] | : . ..$ ...future.FUN: [15:29:42.619] | : . ..$ ... : [15:29:42.619] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.619] | : . - attr(*, "resolved")= logi FALSE [15:29:42.619] | : . - attr(*, "total_size")= num 4778 [15:29:42.626] | : . Packages to be attached in all futures: [n=0] [15:29:42.627] | : getGlobalsAndPackagesXApply() ... done [15:29:42.628] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.629] | : List of 5 [15:29:42.629] | : $ ...future.FUN :function (f) [15:29:42.629] | : $ ... : list() [15:29:42.629] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.629] | : $ ...future.elements_ii : NULL [15:29:42.629] | : $ ...future.seeds_ii : NULL [15:29:42.629] | : $ ...future.globals.maxSize: NULL [15:29:42.629] | : - attr(*, "where")=List of 5 [15:29:42.629] | : ..$ ...future.FUN : [15:29:42.629] | : ..$ ... : [15:29:42.629] | : ..$ ...future.elements_ii : [15:29:42.629] | : ..$ ...future.seeds_ii : [15:29:42.629] | : ..$ ...future.globals.maxSize: [15:29:42.629] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.629] | : - attr(*, "resolved")= logi FALSE [15:29:42.629] | : - attr(*, "total_size")= num 4778 [15:29:42.638] | : Number of futures (= number of chunks): 1 [15:29:42.639] | : Launching 1 futures (chunks) ... [15:29:42.640] | : Chunk #1 of 1 ... [15:29:42.641] | : - Finding globals in 'X' for chunk #1 ... [15:29:42.684] | : + additional globals found: [n=2] 'a', 'b' [15:29:42.685] | : + additional namespaces needed: [n=0] [15:29:42.686] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:42.687] | : - seeds: [15:29:42.687] | : - All globals exported: [n=7] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize', 'a', 'b' [15:29:42.694] | : Created future: [15:29:42.695] | : SequentialFuture: [15:29:42.695] | : Label: 'future_lapply-1' [15:29:42.695] | : Expression: [15:29:42.695] | : { [15:29:42.695] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:42.695] | : "# expression in do.call(), because function called uses '...' " [15:29:42.695] | : "# as a global variable " [15:29:42.695] | : do.call(function(...) { [15:29:42.695] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:42.695] | : "# without having an '...' argument. This means '...' is treated" [15:29:42.695] | : "# as a global variable. This may happen when FUN() is an " [15:29:42.695] | : "# anonymous function. " [15:29:42.695] | : "# " [15:29:42.695] | : "# If an anonymous function, we will make sure to restore the " [15:29:42.695] | : "# function environment of FUN() to the calling environment. " [15:29:42.695] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:42.695] | : "# global environment, which is where globals are written. " [15:29:42.695] | : penv <- env <- environment(...future.FUN) [15:29:42.695] | : repeat { [15:29:42.695] | : if (identical(env, globalenv()) || identical(env, [15:29:42.695] | : emptyenv())) [15:29:42.695] | : break [15:29:42.695] | : penv <- env [15:29:42.695] | : env <- parent.env(env) [15:29:42.695] | : } [15:29:42.695] | : if (identical(penv, globalenv())) { [15:29:42.695] | : environment(...future.FUN) <- environment() [15:29:42.695] | : } [15:29:42.695] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:42.695] | : !isNamespace(penv)) { [15:29:42.695] | : parent.env(penv) <- environment() [15:29:42.695] | : } [15:29:42.695] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:42.695] | : { [15:29:42.695] | : "# future.apply:::future_xapply(): preserve future option" [15:29:42.695] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:42.695] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:42.695] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:42.695] | : on.exit(options(oopts), add = TRUE) [15:29:42.695] | : } [15:29:42.695] | : { [15:29:42.695] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:42.695] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:42.695] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:42.695] | : { [15:29:42.695] | : ...future.FUN(...future.X_jj, ...) [15:29:42.695] | : } [15:29:42.695] | : }) [15:29:42.695] | : } [15:29:42.695] | : } [15:29:42.695] | : }, args = future.call.arguments) [15:29:42.695] | : } [15:29:42.695] | : Globals: 7 objects totaling 6.49 KiB (list '...future.elements_ii' of 1.59 KiB, DotDotDotList 'future.call.arguments' of 97 bytes, function '...future.FUN' of 68 bytes, numeric 'a' of 39 bytes, numeric 'b' of 39 bytes, ...) [15:29:42.695] | : Packages: [15:29:42.695] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:42.695] | : Capture standard output: TRUE [15:29:42.695] | : Capture condition classes: 'condition' (excluding '') [15:29:42.695] | : Immediate condition classes: 'immediateCondition' [15:29:42.695] | : Lazy evaluation: FALSE [15:29:42.695] | : Local evaluation: TRUE [15:29:42.695] | : Early signaling: FALSE [15:29:42.695] | : Actions: [n=1] 'run' [15:29:42.695] | : State: 'finished' ("Future was resolved successfully") [15:29:42.695] | : Resolved: TRUE [15:29:42.695] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-13 [15:29:42.695] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.695] | : Class: 'SequentialFuture', 'UniprocessFuture', 'Future' [15:29:42.695] | : Value: 91 bytes of class 'list' [15:29:42.695] | : Duration: 0.003960133 secs (started 2026-03-18 15:29:42.68935) [15:29:42.695] | : Worker process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.698] | : Chunk #1 of 1 ... DONE [15:29:42.698] | : Launching 1 futures (chunks) ... DONE [15:29:42.699] | : Resolving 1 futures (chunks) ... [15:29:42.700] | : - Number of value chunks collected: 1 [15:29:42.701] | : Resolving 1 futures (chunks) ... DONE [15:29:42.701] | : Reducing values from 1 chunks ... [15:29:42.702] | : - Number of values collected after concatenation: 4 [15:29:42.702] | : - Number of values expected: 4 [15:29:42.703] | : Reducing values from 1 chunks ... DONE [15:29:42.703] | future_lapply() -> future_xapply() ... done [15:29:42.704] future_lapply() ... done List of 4 $ : num 84 $ : num 10.5 $ : num 63 $ : int 11 - lapply(X, ...) |> futurize() - '{ a <- a + 1; a }' ... [15:29:42.707] future_lapply() ... [15:29:42.709] | Globals in FUN(): [n=4] '{', '<-', 'a', '+' [15:29:42.709] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:42.710] | future_lapply() -> future_xapply() ... [15:29:42.711] | : Number of chunks: 1 [15:29:42.712] | : getGlobalsAndPackagesXApply() ... [15:29:42.712] | : . future.globals: TRUE [15:29:42.724] | : . globals found/used: [n=2] 'FUN', 'a' [15:29:42.725] | : . needed namespaces: [n=0] [15:29:42.726] | : . use_args: TRUE [15:29:42.726] | : . Getting '...' globals ... [15:29:42.728] | : . ' '...' content: [n=0] [15:29:42.728] | : . ' List of 1 [15:29:42.728] | : . ' $ ...: list() [15:29:42.728] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.728] | : . ' - attr(*, "where")=List of 1 [15:29:42.728] | : . ' ..$ ...: [15:29:42.728] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.728] | : . ' - attr(*, "resolved")= logi TRUE [15:29:42.728] | : . ' - attr(*, "total_size")= num NA [15:29:42.732] | : . Getting '...' globals ... done [15:29:42.733] | : . Globals to be used in all futures (chunks): [n=3] '...future.FUN', 'a', '...' [15:29:42.733] | : . List of 3 [15:29:42.733] | : . $ ...future.FUN:function (ii) [15:29:42.733] | : . $ a : num 1 [15:29:42.733] | : . $ ... : list() [15:29:42.733] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.733] | : . - attr(*, "where")=List of 3 [15:29:42.733] | : . ..$ ...future.FUN: [15:29:42.733] | : . ..$ a : [15:29:42.733] | : . ..$ ... : [15:29:42.733] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.733] | : . - attr(*, "resolved")= logi FALSE [15:29:42.733] | : . - attr(*, "total_size")= num 3499 [15:29:42.739] | : . Packages to be attached in all futures: [n=0] [15:29:42.740] | : getGlobalsAndPackagesXApply() ... done [15:29:42.740] | : Globals pass to each chunk: [n=6] '...future.FUN', 'a', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.741] | : List of 6 [15:29:42.741] | : $ ...future.FUN :function (ii) [15:29:42.741] | : $ a : num 1 [15:29:42.741] | : $ ... : list() [15:29:42.741] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.741] | : $ ...future.elements_ii : NULL [15:29:42.741] | : $ ...future.seeds_ii : NULL [15:29:42.741] | : $ ...future.globals.maxSize: NULL [15:29:42.741] | : - attr(*, "where")=List of 6 [15:29:42.741] | : ..$ ...future.FUN : [15:29:42.741] | : ..$ a : [15:29:42.741] | : ..$ ... : [15:29:42.741] | : ..$ ...future.elements_ii : [15:29:42.741] | : ..$ ...future.seeds_ii : [15:29:42.741] | : ..$ ...future.globals.maxSize: [15:29:42.741] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.741] | : - attr(*, "resolved")= logi FALSE [15:29:42.741] | : - attr(*, "total_size")= num 3499 [15:29:42.748] | : Number of futures (= number of chunks): 1 [15:29:42.748] | : Launching 1 futures (chunks) ... [15:29:42.749] | : Chunk #1 of 1 ... [15:29:42.750] | : - Finding globals in 'X' for chunk #1 ... [15:29:42.751] | : + additional globals found: [n=0] [15:29:42.752] | : + additional namespaces needed: [n=0] [15:29:42.753] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:42.754] | : - seeds: [15:29:42.755] | : - All globals exported: [n=6] '...future.FUN', 'a', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.765] | : Created future: [15:29:42.766] | : SequentialFuture: [15:29:42.766] | : Label: 'future_lapply-1' [15:29:42.766] | : Expression: [15:29:42.766] | : { [15:29:42.766] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:42.766] | : "# expression in do.call(), because function called uses '...' " [15:29:42.766] | : "# as a global variable " [15:29:42.766] | : do.call(function(...) { [15:29:42.766] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:42.766] | : "# without having an '...' argument. This means '...' is treated" [15:29:42.766] | : "# as a global variable. This may happen when FUN() is an " [15:29:42.766] | : "# anonymous function. " [15:29:42.766] | : "# " [15:29:42.766] | : "# If an anonymous function, we will make sure to restore the " [15:29:42.766] | : "# function environment of FUN() to the calling environment. " [15:29:42.766] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:42.766] | : "# global environment, which is where globals are written. " [15:29:42.766] | : penv <- env <- environment(...future.FUN) [15:29:42.766] | : repeat { [15:29:42.766] | : if (identical(env, globalenv()) || identical(env, [15:29:42.766] | : emptyenv())) [15:29:42.766] | : break [15:29:42.766] | : penv <- env [15:29:42.766] | : env <- parent.env(env) [15:29:42.766] | : } [15:29:42.766] | : if (identical(penv, globalenv())) { [15:29:42.766] | : environment(...future.FUN) <- environment() [15:29:42.766] | : } [15:29:42.766] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:42.766] | : !isNamespace(penv)) { [15:29:42.766] | : parent.env(penv) <- environment() [15:29:42.766] | : } [15:29:42.766] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:42.766] | : { [15:29:42.766] | : "# future.apply:::future_xapply(): preserve future option" [15:29:42.766] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:42.766] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:42.766] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:42.766] | : on.exit(options(oopts), add = TRUE) [15:29:42.766] | : } [15:29:42.766] | : { [15:29:42.766] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:42.766] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:42.766] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:42.766] | : { [15:29:42.766] | : ...future.FUN(...future.X_jj, ...) [15:29:42.766] | : } [15:29:42.766] | : }) [15:29:42.766] | : } [15:29:42.766] | : } [15:29:42.766] | : }, args = future.call.arguments) [15:29:42.766] | : } [15:29:42.766] | : Globals: 6 objects totaling 3.69 KiB (function '...future.FUN' of 182 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 47 bytes, numeric 'a' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes, ...) [15:29:42.766] | : Packages: [15:29:42.766] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:42.766] | : Capture standard output: TRUE [15:29:42.766] | : Capture condition classes: 'condition' (excluding '') [15:29:42.766] | : Immediate condition classes: 'immediateCondition' [15:29:42.766] | : Lazy evaluation: FALSE [15:29:42.766] | : Local evaluation: TRUE [15:29:42.766] | : Early signaling: FALSE [15:29:42.766] | : Actions: [n=1] 'run' [15:29:42.766] | : State: 'finished' ("Future was resolved successfully") [15:29:42.766] | : Resolved: TRUE [15:29:42.766] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-14 [15:29:42.766] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.766] | : Class: 'SequentialFuture', 'UniprocessFuture', 'Future' [15:29:42.766] | : Value: 47 bytes of class 'list' [15:29:42.766] | : Duration: 0.005532026 secs (started 2026-03-18 15:29:42.757856) [15:29:42.766] | : Worker process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.771] | : Chunk #1 of 1 ... DONE [15:29:42.772] | : Launching 1 futures (chunks) ... DONE [15:29:42.773] | : Resolving 1 futures (chunks) ... [15:29:42.775] | : - Number of value chunks collected: 1 [15:29:42.775] | : Resolving 1 futures (chunks) ... DONE [15:29:42.776] | : Reducing values from 1 chunks ... [15:29:42.777] | : - Number of values collected after concatenation: 1 [15:29:42.778] | : - Number of values expected: 1 [15:29:42.779] | : Reducing values from 1 chunks ... DONE [15:29:42.780] | future_lapply() -> future_xapply() ... done [15:29:42.781] future_lapply() ... done - lapply(X, ...) |> futurize() - '{ a; a <- a + 1 }' ... [15:29:42.783] future_lapply() ... [15:29:42.785] | Globals in FUN(): [n=4] '{', 'a', '<-', '+' [15:29:42.786] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:42.788] | future_lapply() -> future_xapply() ... [15:29:42.789] | : Number of chunks: 1 [15:29:42.790] | : getGlobalsAndPackagesXApply() ... [15:29:42.791] | : . future.globals: TRUE [15:29:42.812] | : . globals found/used: [n=2] 'FUN', 'a' [15:29:42.813] | : . needed namespaces: [n=0] [15:29:42.814] | : . use_args: TRUE [15:29:42.814] | : . Getting '...' globals ... [15:29:42.816] | : . ' '...' content: [n=0] [15:29:42.817] | : . ' List of 1 [15:29:42.817] | : . ' $ ...: list() [15:29:42.817] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.817] | : . ' - attr(*, "where")=List of 1 [15:29:42.817] | : . ' ..$ ...: [15:29:42.817] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.817] | : . ' - attr(*, "resolved")= logi TRUE [15:29:42.817] | : . ' - attr(*, "total_size")= num NA [15:29:42.823] | : . Getting '...' globals ... done [15:29:42.824] | : . Globals to be used in all futures (chunks): [n=3] '...future.FUN', 'a', '...' [15:29:42.825] | : . List of 3 [15:29:42.825] | : . $ ...future.FUN:function (ii) [15:29:42.825] | : . $ a : num 1 [15:29:42.825] | : . $ ... : list() [15:29:42.825] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.825] | : . - attr(*, "where")=List of 3 [15:29:42.825] | : . ..$ ...future.FUN: [15:29:42.825] | : . ..$ a : [15:29:42.825] | : . ..$ ... : [15:29:42.825] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.825] | : . - attr(*, "resolved")= logi FALSE [15:29:42.825] | : . - attr(*, "total_size")= num 3499 [15:29:42.832] | : . Packages to be attached in all futures: [n=0] [15:29:42.833] | : getGlobalsAndPackagesXApply() ... done [15:29:42.835] | : Globals pass to each chunk: [n=6] '...future.FUN', 'a', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.836] | : List of 6 [15:29:42.836] | : $ ...future.FUN :function (ii) [15:29:42.836] | : $ a : num 1 [15:29:42.836] | : $ ... : list() [15:29:42.836] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.836] | : $ ...future.elements_ii : NULL [15:29:42.836] | : $ ...future.seeds_ii : NULL [15:29:42.836] | : $ ...future.globals.maxSize: NULL [15:29:42.836] | : - attr(*, "where")=List of 6 [15:29:42.836] | : ..$ ...future.FUN : [15:29:42.836] | : ..$ a : [15:29:42.836] | : ..$ ... : [15:29:42.836] | : ..$ ...future.elements_ii : [15:29:42.836] | : ..$ ...future.seeds_ii : [15:29:42.836] | : ..$ ...future.globals.maxSize: [15:29:42.836] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.836] | : - attr(*, "resolved")= logi FALSE [15:29:42.836] | : - attr(*, "total_size")= num 3499 [15:29:42.846] | : Number of futures (= number of chunks): 1 [15:29:42.847] | : Launching 1 futures (chunks) ... [15:29:42.847] | : Chunk #1 of 1 ... [15:29:42.848] | : - Finding globals in 'X' for chunk #1 ... [15:29:42.849] | : + additional globals found: [n=0] [15:29:42.849] | : + additional namespaces needed: [n=0] [15:29:42.850] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:42.850] | : - seeds: [15:29:42.851] | : - All globals exported: [n=6] '...future.FUN', 'a', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.857] | : Created future: [15:29:42.857] | : SequentialFuture: [15:29:42.857] | : Label: 'future_lapply-1' [15:29:42.857] | : Expression: [15:29:42.857] | : { [15:29:42.857] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:42.857] | : "# expression in do.call(), because function called uses '...' " [15:29:42.857] | : "# as a global variable " [15:29:42.857] | : do.call(function(...) { [15:29:42.857] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:42.857] | : "# without having an '...' argument. This means '...' is treated" [15:29:42.857] | : "# as a global variable. This may happen when FUN() is an " [15:29:42.857] | : "# anonymous function. " [15:29:42.857] | : "# " [15:29:42.857] | : "# If an anonymous function, we will make sure to restore the " [15:29:42.857] | : "# function environment of FUN() to the calling environment. " [15:29:42.857] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:42.857] | : "# global environment, which is where globals are written. " [15:29:42.857] | : penv <- env <- environment(...future.FUN) [15:29:42.857] | : repeat { [15:29:42.857] | : if (identical(env, globalenv()) || identical(env, [15:29:42.857] | : emptyenv())) [15:29:42.857] | : break [15:29:42.857] | : penv <- env [15:29:42.857] | : env <- parent.env(env) [15:29:42.857] | : } [15:29:42.857] | : if (identical(penv, globalenv())) { [15:29:42.857] | : environment(...future.FUN) <- environment() [15:29:42.857] | : } [15:29:42.857] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:42.857] | : !isNamespace(penv)) { [15:29:42.857] | : parent.env(penv) <- environment() [15:29:42.857] | : } [15:29:42.857] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:42.857] | : { [15:29:42.857] | : "# future.apply:::future_xapply(): preserve future option" [15:29:42.857] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:42.857] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:42.857] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:42.857] | : on.exit(options(oopts), add = TRUE) [15:29:42.857] | : } [15:29:42.857] | : { [15:29:42.857] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:42.857] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:42.857] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:42.857] | : { [15:29:42.857] | : ...future.FUN(...future.X_jj, ...) [15:29:42.857] | : } [15:29:42.857] | : }) [15:29:42.857] | : } [15:29:42.857] | : } [15:29:42.857] | : }, args = future.call.arguments) [15:29:42.857] | : } [15:29:42.857] | : Globals: 6 objects totaling 3.69 KiB (function '...future.FUN' of 182 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 47 bytes, numeric 'a' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes, ...) [15:29:42.857] | : Packages: [15:29:42.857] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:42.857] | : Capture standard output: TRUE [15:29:42.857] | : Capture condition classes: 'condition' (excluding '') [15:29:42.857] | : Immediate condition classes: 'immediateCondition' [15:29:42.857] | : Lazy evaluation: FALSE [15:29:42.857] | : Local evaluation: TRUE [15:29:42.857] | : Early signaling: FALSE [15:29:42.857] | : Actions: [n=1] 'run' [15:29:42.857] | : State: 'finished' ("Future was resolved successfully") [15:29:42.857] | : Resolved: TRUE [15:29:42.857] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-15 [15:29:42.857] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.857] | : Class: 'SequentialFuture', 'UniprocessFuture', 'Future' [15:29:42.857] | : Value: 47 bytes of class 'list' [15:29:42.857] | : Duration: 0.003122091 secs (started 2026-03-18 15:29:42.852911) [15:29:42.857] | : Worker process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.860] | : Chunk #1 of 1 ... DONE [15:29:42.861] | : Launching 1 futures (chunks) ... DONE [15:29:42.861] | : Resolving 1 futures (chunks) ... [15:29:42.862] | : - Number of value chunks collected: 1 [15:29:42.863] | : Resolving 1 futures (chunks) ... DONE [15:29:42.863] | : Reducing values from 1 chunks ... [15:29:42.864] | : - Number of values collected after concatenation: 1 [15:29:42.865] | : - Number of values expected: 1 [15:29:42.865] | : Reducing values from 1 chunks ... DONE [15:29:42.866] | future_lapply() -> future_xapply() ... done [15:29:42.866] future_lapply() ... done - lapply(..., future.globals = ) |> futurize() ... [15:29:42.867] future_lapply() ... [15:29:42.868] | Globals in FUN(): [n=1] 'a' [15:29:42.869] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:42.869] | future_lapply() -> future_xapply() ... [15:29:42.870] | : Number of chunks: 1 [15:29:42.870] | : getGlobalsAndPackagesXApply() ... [15:29:42.871] | : . future.globals: with names 'a' [15:29:42.872] | : . use_args: TRUE [15:29:42.872] | : . Getting '...' globals ... [15:29:42.873] | : . ' '...' content: [n=0] [15:29:42.874] | : . ' List of 1 [15:29:42.874] | : . ' $ ...: list() [15:29:42.874] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.874] | : . ' - attr(*, "where")=List of 1 [15:29:42.874] | : . ' ..$ ...: [15:29:42.874] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.874] | : . ' - attr(*, "resolved")= logi TRUE [15:29:42.874] | : . ' - attr(*, "total_size")= num NA [15:29:42.877] | : . Getting '...' globals ... done [15:29:42.878] | : . Globals to be used in all futures (chunks): [n=3] 'a', '...future.FUN', '...' [15:29:42.878] | : . List of 3 [15:29:42.878] | : . $ a : num 42 [15:29:42.878] | : . $ ...future.FUN:function (x) [15:29:42.878] | : . $ ... : list() [15:29:42.878] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.878] | : . - attr(*, "where")=List of 3 [15:29:42.878] | : . ..$ a : [15:29:42.878] | : . ..$ ...future.FUN: [15:29:42.878] | : . ..$ ... : [15:29:42.878] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.878] | : . - attr(*, "resolved")= logi FALSE [15:29:42.878] | : . - attr(*, "total_size")= num NA [15:29:42.883] | : . Packages to be attached in all futures: [n=0] [15:29:42.883] | : getGlobalsAndPackagesXApply() ... done [15:29:42.884] | : Globals pass to each chunk: [n=6] 'a', '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.884] | : List of 6 [15:29:42.884] | : $ a : num 42 [15:29:42.884] | : $ ...future.FUN :function (x) [15:29:42.884] | : $ ... : list() [15:29:42.884] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:42.884] | : $ ...future.elements_ii : NULL [15:29:42.884] | : $ ...future.seeds_ii : NULL [15:29:42.884] | : $ ...future.globals.maxSize: NULL [15:29:42.884] | : - attr(*, "where")=List of 6 [15:29:42.884] | : ..$ a : [15:29:42.884] | : ..$ ...future.FUN : [15:29:42.884] | : ..$ ... : [15:29:42.884] | : ..$ ...future.elements_ii : [15:29:42.884] | : ..$ ...future.seeds_ii : [15:29:42.884] | : ..$ ...future.globals.maxSize: [15:29:42.884] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:42.884] | : - attr(*, "resolved")= logi FALSE [15:29:42.884] | : - attr(*, "total_size")= num NA [15:29:42.890] | : Number of futures (= number of chunks): 1 [15:29:42.891] | : Launching 1 futures (chunks) ... [15:29:42.891] | : Chunk #1 of 1 ... [15:29:42.892] | : - seeds: [15:29:42.893] | : - All globals exported: [n=6] 'a', '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:42.906] | : Created future: [15:29:42.907] | : SequentialFuture: [15:29:42.907] | : Label: 'future_lapply-1' [15:29:42.907] | : Expression: [15:29:42.907] | : { [15:29:42.907] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:42.907] | : "# expression in do.call(), because function called uses '...' " [15:29:42.907] | : "# as a global variable " [15:29:42.907] | : do.call(function(...) { [15:29:42.907] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:42.907] | : "# without having an '...' argument. This means '...' is treated" [15:29:42.907] | : "# as a global variable. This may happen when FUN() is an " [15:29:42.907] | : "# anonymous function. " [15:29:42.907] | : "# " [15:29:42.907] | : "# If an anonymous function, we will make sure to restore the " [15:29:42.907] | : "# function environment of FUN() to the calling environment. " [15:29:42.907] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:42.907] | : "# global environment, which is where globals are written. " [15:29:42.907] | : penv <- env <- environment(...future.FUN) [15:29:42.907] | : repeat { [15:29:42.907] | : if (identical(env, globalenv()) || identical(env, [15:29:42.907] | : emptyenv())) [15:29:42.907] | : break [15:29:42.907] | : penv <- env [15:29:42.907] | : env <- parent.env(env) [15:29:42.907] | : } [15:29:42.907] | : if (identical(penv, globalenv())) { [15:29:42.907] | : environment(...future.FUN) <- environment() [15:29:42.907] | : } [15:29:42.907] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:42.907] | : !isNamespace(penv)) { [15:29:42.907] | : parent.env(penv) <- environment() [15:29:42.907] | : } [15:29:42.907] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:42.907] | : { [15:29:42.907] | : "# future.apply:::future_xapply(): preserve future option" [15:29:42.907] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:42.907] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:42.907] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:42.907] | : on.exit(options(oopts), add = TRUE) [15:29:42.907] | : } [15:29:42.907] | : { [15:29:42.907] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:42.907] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:42.907] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:42.907] | : { [15:29:42.907] | : ...future.FUN(...future.X_jj, ...) [15:29:42.907] | : } [15:29:42.907] | : }) [15:29:42.907] | : } [15:29:42.907] | : } [15:29:42.907] | : }, args = future.call.arguments) [15:29:42.907] | : } [15:29:42.907] | : Globals: 6 objects totaling 3.57 KiB (DotDotDotList 'future.call.arguments' of 97 bytes, function '...future.FUN' of 69 bytes, list '...future.elements_ii' of 47 bytes, numeric 'a' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes, ...) [15:29:42.907] | : Packages: [15:29:42.907] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:42.907] | : Capture standard output: TRUE [15:29:42.907] | : Capture condition classes: 'condition' (excluding '') [15:29:42.907] | : Immediate condition classes: 'immediateCondition' [15:29:42.907] | : Lazy evaluation: FALSE [15:29:42.907] | : Local evaluation: TRUE [15:29:42.907] | : Early signaling: FALSE [15:29:42.907] | : Actions: [n=1] 'run' [15:29:42.907] | : State: 'finished' ("Future was resolved successfully") [15:29:42.907] | : Resolved: TRUE [15:29:42.907] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-16 [15:29:42.907] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.907] | : Class: 'SequentialFuture', 'UniprocessFuture', 'Future' [15:29:42.907] | : Value: 47 bytes of class 'list' [15:29:42.907] | : Duration: 0.007250071 secs (started 2026-03-18 15:29:42.896332) [15:29:42.907] | : Worker process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:42.913] | : Chunk #1 of 1 ... DONE [15:29:42.914] | : Launching 1 futures (chunks) ... DONE [15:29:42.916] | : Resolving 1 futures (chunks) ... [15:29:42.918] | : - Number of value chunks collected: 1 [15:29:42.919] | : Resolving 1 futures (chunks) ... DONE [15:29:42.920] | : Reducing values from 1 chunks ... [15:29:42.921] | : - Number of values collected after concatenation: 1 [15:29:42.922] | : - Number of values expected: 1 [15:29:42.924] | : Reducing values from 1 chunks ... DONE [15:29:42.925] | future_lapply() -> future_xapply() ... done [15:29:42.926] future_lapply() ... done List of 1 $ : num 42 [15:29:43.466] future_lapply() ... [15:29:43.469] | Globals in FUN(): [n=7] '{', 'do.call', 'caller', 'c', 'list', '+', 'args' [15:29:43.470] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:43.472] | future_lapply() -> future_xapply() ... [15:29:43.475] | : Number of chunks: 2 [15:29:43.477] | : getGlobalsAndPackagesXApply() ... [15:29:43.478] | : . future.globals: TRUE [15:29:43.545] | : . globals found/used: [n=5] 'FUN', 'caller', 'args', 'call_my_add', 'my_add' [15:29:43.547] | : . needed namespaces: [n=0] [15:29:43.548] | : . use_args: TRUE [15:29:43.549] | : . Getting '...' globals ... [15:29:43.551] | : . ' '...' content: [n=0] [15:29:43.552] | : . ' List of 1 [15:29:43.552] | : . ' $ ...: list() [15:29:43.552] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:43.552] | : . ' - attr(*, "where")=List of 1 [15:29:43.552] | : . ' ..$ ...: [15:29:43.552] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:43.552] | : . ' - attr(*, "resolved")= logi TRUE [15:29:43.552] | : . ' - attr(*, "total_size")= num NA [15:29:43.558] | : . Getting '...' globals ... done [15:29:43.560] | : . Globals to be used in all futures (chunks): [n=6] '...future.FUN', 'caller', 'args', 'call_my_add', 'my_add', '...' [15:29:43.561] | : . List of 6 [15:29:43.561] | : . $ ...future.FUN:function (i) [15:29:43.561] | : . $ caller :function (a, b, FUN = call_my_add) [15:29:43.561] | : . $ args :List of 1 [15:29:43.561] | : . ..$ FUN:function (a, b) [15:29:43.561] | : . $ call_my_add :function (a, b) [15:29:43.561] | : . $ my_add :function (a, b) [15:29:43.561] | : . $ ... : list() [15:29:43.561] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:43.561] | : . - attr(*, "where")=List of 6 [15:29:43.561] | : . ..$ ...future.FUN: [15:29:43.561] | : . ..$ caller : [15:29:43.561] | : . ..$ args : [15:29:43.561] | : . ..$ call_my_add : [15:29:43.561] | : . ..$ my_add : [15:29:43.561] | : . ..$ ... : [15:29:43.561] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:43.561] | : . - attr(*, "resolved")= logi FALSE [15:29:43.561] | : . - attr(*, "total_size")= num 10976 [15:29:43.575] | : . Packages to be attached in all futures: [n=0] [15:29:43.576] | : getGlobalsAndPackagesXApply() ... done [15:29:43.578] | : Globals pass to each chunk: [n=9] '...future.FUN', 'caller', 'args', 'call_my_add', 'my_add', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:43.579] | : List of 9 [15:29:43.579] | : $ ...future.FUN :function (i) [15:29:43.579] | : $ caller :function (a, b, FUN = call_my_add) [15:29:43.579] | : $ args :List of 1 [15:29:43.579] | : ..$ FUN:function (a, b) [15:29:43.579] | : $ call_my_add :function (a, b) [15:29:43.579] | : $ my_add :function (a, b) [15:29:43.579] | : $ ... : list() [15:29:43.579] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:43.579] | : $ ...future.elements_ii : NULL [15:29:43.579] | : $ ...future.seeds_ii : NULL [15:29:43.579] | : $ ...future.globals.maxSize: NULL [15:29:43.579] | : - attr(*, "where")=List of 9 [15:29:43.579] | : ..$ ...future.FUN : [15:29:43.579] | : ..$ caller : [15:29:43.579] | : ..$ args : [15:29:43.579] | : ..$ call_my_add : [15:29:43.579] | : ..$ my_add : [15:29:43.579] | : ..$ ... : [15:29:43.579] | : ..$ ...future.elements_ii : [15:29:43.579] | : ..$ ...future.seeds_ii : [15:29:43.579] | : ..$ ...future.globals.maxSize: [15:29:43.579] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:43.579] | : - attr(*, "resolved")= logi FALSE [15:29:43.579] | : - attr(*, "total_size")= num 10976 [15:29:43.597] | : Number of futures (= number of chunks): 2 [15:29:43.598] | : Launching 2 futures (chunks) ... [15:29:43.599] | : Chunk #1 of 2 ... [15:29:43.600] | : - Finding globals in 'X' for chunk #1 ... [15:29:43.602] | : + additional globals found: [n=0] [15:29:43.603] | : + additional namespaces needed: [n=0] [15:29:43.604] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:43.605] | : - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [15:29:43.606] | : - seeds: [15:29:43.607] | : - All globals exported: [n=9] '...future.FUN', 'caller', 'args', 'call_my_add', 'my_add', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:43.614] | : Created future: [15:29:43.615] | : MultisessionFuture: [15:29:43.615] | : Label: 'future_lapply-1' [15:29:43.615] | : Expression: [15:29:43.615] | : { [15:29:43.615] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:43.615] | : "# expression in do.call(), because function called uses '...' " [15:29:43.615] | : "# as a global variable " [15:29:43.615] | : do.call(function(...) { [15:29:43.615] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:43.615] | : "# without having an '...' argument. This means '...' is treated" [15:29:43.615] | : "# as a global variable. This may happen when FUN() is an " [15:29:43.615] | : "# anonymous function. " [15:29:43.615] | : "# " [15:29:43.615] | : "# If an anonymous function, we will make sure to restore the " [15:29:43.615] | : "# function environment of FUN() to the calling environment. " [15:29:43.615] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:43.615] | : "# global environment, which is where globals are written. " [15:29:43.615] | : penv <- env <- environment(...future.FUN) [15:29:43.615] | : repeat { [15:29:43.615] | : if (identical(env, globalenv()) || identical(env, [15:29:43.615] | : emptyenv())) [15:29:43.615] | : break [15:29:43.615] | : penv <- env [15:29:43.615] | : env <- parent.env(env) [15:29:43.615] | : } [15:29:43.615] | : if (identical(penv, globalenv())) { [15:29:43.615] | : environment(...future.FUN) <- environment() [15:29:43.615] | : } [15:29:43.615] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:43.615] | : !isNamespace(penv)) { [15:29:43.615] | : parent.env(penv) <- environment() [15:29:43.615] | : } [15:29:43.615] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:43.615] | : { [15:29:43.615] | : "# future.apply:::future_xapply(): preserve future option" [15:29:43.615] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:43.615] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:43.615] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:43.615] | : on.exit(options(oopts), add = TRUE) [15:29:43.615] | : } [15:29:43.615] | : { [15:29:43.615] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:43.615] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:43.615] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:43.615] | : { [15:29:43.615] | : ...future.FUN(...future.X_jj, ...) [15:29:43.615] | : } [15:29:43.615] | : }) [15:29:43.615] | : } [15:29:43.615] | : } [15:29:43.615] | : }, args = future.call.arguments) [15:29:43.615] | : } [15:29:43.615] | : Globals: 9 objects totaling 8.49 KiB (function '...future.FUN' of 2.44 KiB, list 'args' of 928 bytes, function 'caller' of 904 bytes, function 'call_my_add' of 876 bytes, function 'my_add' of 114 bytes, ...) [15:29:43.615] | : Packages: [15:29:43.615] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:43.615] | : Capture standard output: TRUE [15:29:43.615] | : Capture condition classes: 'condition' (excluding '') [15:29:43.615] | : Immediate condition classes: 'immediateCondition' [15:29:43.615] | : Lazy evaluation: FALSE [15:29:43.615] | : Local evaluation: TRUE [15:29:43.615] | : Early signaling: FALSE [15:29:43.615] | : Actions: [n=1] 'run' [15:29:43.615] | : State: 'running' ("Future is being evaluated") [15:29:43.615] | : Resolved: TRUE [15:29:43.615] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-17 [15:29:43.615] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:43.615] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:43.615] | : Value: [15:29:43.615] | : Conditions captured: [15:29:43.730] | : Chunk #1 of 2 ... DONE [15:29:43.731] | : Chunk #2 of 2 ... [15:29:43.735] | : - Finding globals in 'X' for chunk #2 ... [15:29:43.737] | : + additional globals found: [n=0] [15:29:43.738] | : + additional namespaces needed: [n=0] [15:29:43.739] | : - Finding globals in 'X' for chunk #2 ... DONE [15:29:43.739] | : - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [15:29:43.740] | : - seeds: [15:29:43.741] | : - All globals exported: [n=9] '...future.FUN', 'caller', 'args', 'call_my_add', 'my_add', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:43.746] | : Created future: [15:29:43.747] | : MultisessionFuture: [15:29:43.747] | : Label: 'future_lapply-2' [15:29:43.747] | : Expression: [15:29:43.747] | : { [15:29:43.747] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:43.747] | : "# expression in do.call(), because function called uses '...' " [15:29:43.747] | : "# as a global variable " [15:29:43.747] | : do.call(function(...) { [15:29:43.747] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:43.747] | : "# without having an '...' argument. This means '...' is treated" [15:29:43.747] | : "# as a global variable. This may happen when FUN() is an " [15:29:43.747] | : "# anonymous function. " [15:29:43.747] | : "# " [15:29:43.747] | : "# If an anonymous function, we will make sure to restore the " [15:29:43.747] | : "# function environment of FUN() to the calling environment. " [15:29:43.747] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:43.747] | : "# global environment, which is where globals are written. " [15:29:43.747] | : penv <- env <- environment(...future.FUN) [15:29:43.747] | : repeat { [15:29:43.747] | : if (identical(env, globalenv()) || identical(env, [15:29:43.747] | : emptyenv())) [15:29:43.747] | : break [15:29:43.747] | : penv <- env [15:29:43.747] | : env <- parent.env(env) [15:29:43.747] | : } [15:29:43.747] | : if (identical(penv, globalenv())) { [15:29:43.747] | : environment(...future.FUN) <- environment() [15:29:43.747] | : } [15:29:43.747] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:43.747] | : !isNamespace(penv)) { [15:29:43.747] | : parent.env(penv) <- environment() [15:29:43.747] | : } [15:29:43.747] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:43.747] | : { [15:29:43.747] | : "# future.apply:::future_xapply(): preserve future option" [15:29:43.747] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:43.747] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:43.747] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:43.747] | : on.exit(options(oopts), add = TRUE) [15:29:43.747] | : } [15:29:43.747] | : { [15:29:43.747] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:43.747] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:43.747] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:43.747] | : { [15:29:43.747] | : ...future.FUN(...future.X_jj, ...) [15:29:43.747] | : } [15:29:43.747] | : }) [15:29:43.747] | : } [15:29:43.747] | : } [15:29:43.747] | : }, args = future.call.arguments) [15:29:43.747] | : } [15:29:43.747] | : Globals: 9 objects totaling 8.50 KiB (function '...future.FUN' of 2.44 KiB, list 'args' of 928 bytes, function 'caller' of 904 bytes, function 'call_my_add' of 876 bytes, function 'my_add' of 114 bytes, ...) [15:29:43.747] | : Packages: [15:29:43.747] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:43.747] | : Capture standard output: TRUE [15:29:43.747] | : Capture condition classes: 'condition' (excluding '') [15:29:43.747] | : Immediate condition classes: 'immediateCondition' [15:29:43.747] | : Lazy evaluation: FALSE [15:29:43.747] | : Local evaluation: TRUE [15:29:43.747] | : Early signaling: FALSE [15:29:43.747] | : Actions: [n=1] 'run' [15:29:43.747] | : State: 'running' ("Future is being evaluated") [15:29:43.747] | : Resolved: TRUE [15:29:43.747] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-18 [15:29:43.747] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:43.747] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:43.747] | : Value: [15:29:43.747] | : Conditions captured: [15:29:43.754] | : Chunk #2 of 2 ... DONE [15:29:43.755] | : Launching 2 futures (chunks) ... DONE [15:29:43.756] | : Resolving 2 futures (chunks) ... [15:29:43.759] | : - Number of value chunks collected: 2 [15:29:43.760] | : Resolving 2 futures (chunks) ... DONE [15:29:43.761] | : Reducing values from 2 chunks ... [15:29:43.762] | : - Number of values collected after concatenation: 3 [15:29:43.763] | : - Number of values expected: 3 [15:29:43.764] | : Reducing values from 2 chunks ... DONE [15:29:43.765] | future_lapply() -> future_xapply() ... done [15:29:43.766] future_lapply() ... done - lapply(x, FUN = do.call, ...) |> futurize() ... [15:29:43.767] future_lapply() ... [15:29:43.772] | Globals in FUN(): [n=10] 'parent.frame', '{', 'if', '!', 'is.list', 'stop', '<-', 'lapply', 'enquote', '.Internal' [15:29:43.773] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:43.774] | future_lapply() -> future_xapply() ... [15:29:43.775] | : Number of chunks: 1 [15:29:43.776] | : getGlobalsAndPackagesXApply() ... [15:29:43.777] | : . future.globals: TRUE [15:29:43.823] | : . globals found/used: [n=1] 'FUN' [15:29:43.824] | : . needed namespaces: [n=0] [15:29:43.825] | : . use_args: TRUE [15:29:43.826] | : . Getting '...' globals ... [15:29:43.828] | : . ' '...' content: [n=1] 'what' [15:29:43.829] | : . ' List of 1 [15:29:43.829] | : . ' $ ...:List of 1 [15:29:43.829] | : . ' ..$ what:function (x) [15:29:43.829] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:43.829] | : . ' - attr(*, "where")=List of 1 [15:29:43.829] | : . ' ..$ ...: [15:29:43.829] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:43.829] | : . ' - attr(*, "resolved")= logi TRUE [15:29:43.829] | : . ' - attr(*, "total_size")= num NA [15:29:43.837] | : . Getting '...' globals ... done [15:29:43.838] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:43.839] | : . List of 2 [15:29:43.839] | : . $ ...future.FUN:function (what, args, quote = FALSE, envir = parent.frame()) [15:29:43.839] | : . $ ... :List of 1 [15:29:43.839] | : . ..$ what:function (x) [15:29:43.839] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:43.839] | : . - attr(*, "where")=List of 2 [15:29:43.839] | : . ..$ ...future.FUN: [15:29:43.839] | : . ..$ ... : [15:29:43.839] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:43.839] | : . - attr(*, "resolved")= logi FALSE [15:29:43.839] | : . - attr(*, "total_size")= num 6979 [15:29:43.847] | : . Packages to be attached in all futures: [n=0] [15:29:43.848] | : getGlobalsAndPackagesXApply() ... done [15:29:43.850] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:43.851] | : List of 5 [15:29:43.851] | : $ ...future.FUN :function (what, args, quote = FALSE, envir = parent.frame()) [15:29:43.851] | : $ ... :List of 1 [15:29:43.851] | : ..$ what:function (x) [15:29:43.851] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:43.851] | : $ ...future.elements_ii : NULL [15:29:43.851] | : $ ...future.seeds_ii : NULL [15:29:43.851] | : $ ...future.globals.maxSize: NULL [15:29:43.851] | : - attr(*, "where")=List of 5 [15:29:43.851] | : ..$ ...future.FUN : [15:29:43.851] | : ..$ ... : [15:29:43.851] | : ..$ ...future.elements_ii : [15:29:43.851] | : ..$ ...future.seeds_ii : [15:29:43.851] | : ..$ ...future.globals.maxSize: [15:29:43.851] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:43.851] | : - attr(*, "resolved")= logi FALSE [15:29:43.851] | : - attr(*, "total_size")= num 6979 [15:29:43.862] | : Number of futures (= number of chunks): 1 [15:29:43.863] | : Launching 1 futures (chunks) ... [15:29:43.864] | : Chunk #1 of 1 ... [15:29:43.865] | : - Finding globals in 'X' for chunk #1 ... [15:29:43.867] | : + additional globals found: [n=0] [15:29:43.868] | : + additional namespaces needed: [n=0] [15:29:43.869] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:43.870] | : - seeds: [15:29:43.871] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:43.876] | : Created future: [15:29:43.877] | : MultisessionFuture: [15:29:43.877] | : Label: 'future_lapply-1' [15:29:43.877] | : Expression: [15:29:43.877] | : { [15:29:43.877] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:43.877] | : "# expression in do.call(), because function called uses '...' " [15:29:43.877] | : "# as a global variable " [15:29:43.877] | : do.call(function(...) { [15:29:43.877] | : "# future.apply:::future_xapply(): preserve future option" [15:29:43.877] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:43.877] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:43.877] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:43.877] | : on.exit(options(oopts), add = TRUE) [15:29:43.877] | : } [15:29:43.877] | : { [15:29:43.877] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:43.877] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:43.877] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:43.877] | : { [15:29:43.877] | : ...future.FUN(...future.X_jj, ...) [15:29:43.877] | : } [15:29:43.877] | : }) [15:29:43.877] | : } [15:29:43.877] | : }, args = future.call.arguments) [15:29:43.877] | : } [15:29:43.877] | : Globals: 5 objects totaling 7.00 KiB (function '...future.FUN' of 1.79 KiB, DotDotDotList 'future.call.arguments' of 152 bytes, list '...future.elements_ii' of 149 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:43.877] | : Packages: [15:29:43.877] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:43.877] | : Capture standard output: TRUE [15:29:43.877] | : Capture condition classes: 'condition' (excluding '') [15:29:43.877] | : Immediate condition classes: 'immediateCondition' [15:29:43.877] | : Lazy evaluation: FALSE [15:29:43.877] | : Local evaluation: TRUE [15:29:43.877] | : Early signaling: FALSE [15:29:43.877] | : Actions: [n=1] 'run' [15:29:43.877] | : State: 'running' ("Future is being evaluated") [15:29:43.877] | : Resolved: TRUE [15:29:43.877] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-19 [15:29:43.877] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:43.877] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:43.877] | : Value: [15:29:43.877] | : Conditions captured: [15:29:43.883] | : Chunk #1 of 1 ... DONE [15:29:43.884] | : Launching 1 futures (chunks) ... DONE [15:29:43.885] | : Resolving 1 futures (chunks) ... [15:29:43.887] | : - Number of value chunks collected: 1 [15:29:43.888] | : Resolving 1 futures (chunks) ... DONE [15:29:43.889] | : Reducing values from 1 chunks ... [15:29:43.890] | : - Number of values collected after concatenation: 1 [15:29:43.891] | : - Number of values expected: 1 [15:29:43.892] | : Reducing values from 1 chunks ... DONE [15:29:43.893] | future_lapply() -> future_xapply() ... done [15:29:43.894] future_lapply() ... done [15:29:43.895] future_lapply() ... [15:29:43.900] | Globals in FUN(): [n=10] 'parent.frame', '{', 'if', '!', 'is.list', 'stop', '<-', 'lapply', 'enquote', '.Internal' [15:29:43.901] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:43.902] | future_lapply() -> future_xapply() ... [15:29:43.903] | : Number of chunks: 1 [15:29:43.904] | : getGlobalsAndPackagesXApply() ... [15:29:43.905] | : . future.globals: TRUE [15:29:43.964] | : . globals found/used: [n=1] 'FUN' [15:29:43.965] | : . needed namespaces: [n=0] [15:29:43.966] | : . use_args: TRUE [15:29:43.967] | : . Getting '...' globals ... [15:29:43.969] | : . ' '...' content: [n=1] 'what' [15:29:43.970] | : . ' List of 1 [15:29:43.970] | : . ' $ ...:List of 1 [15:29:43.970] | : . ' ..$ what:function (...) [15:29:43.970] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:43.970] | : . ' - attr(*, "where")=List of 1 [15:29:43.970] | : . ' ..$ ...: [15:29:43.970] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:43.970] | : . ' - attr(*, "resolved")= logi TRUE [15:29:43.970] | : . ' - attr(*, "total_size")= num NA [15:29:43.977] | : . Getting '...' globals ... done [15:29:43.978] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:43.979] | : . List of 2 [15:29:43.979] | : . $ ...future.FUN:function (what, args, quote = FALSE, envir = parent.frame()) [15:29:43.979] | : . $ ... :List of 1 [15:29:43.979] | : . ..$ what:function (...) [15:29:43.979] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:43.979] | : . - attr(*, "where")=List of 2 [15:29:43.979] | : . ..$ ...future.FUN: [15:29:43.979] | : . ..$ ... : [15:29:43.979] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:43.979] | : . - attr(*, "resolved")= logi FALSE [15:29:43.979] | : . - attr(*, "total_size")= num 7415 [15:29:43.987] | : . Packages to be attached in all futures: [n=0] [15:29:43.988] | : getGlobalsAndPackagesXApply() ... done [15:29:43.989] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:43.990] | : List of 5 [15:29:43.990] | : $ ...future.FUN :function (what, args, quote = FALSE, envir = parent.frame()) [15:29:43.990] | : $ ... :List of 1 [15:29:43.990] | : ..$ what:function (...) [15:29:43.990] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:43.990] | : $ ...future.elements_ii : NULL [15:29:43.990] | : $ ...future.seeds_ii : NULL [15:29:43.990] | : $ ...future.globals.maxSize: NULL [15:29:43.990] | : - attr(*, "where")=List of 5 [15:29:43.990] | : ..$ ...future.FUN : [15:29:43.990] | : ..$ ... : [15:29:43.990] | : ..$ ...future.elements_ii : [15:29:43.990] | : ..$ ...future.seeds_ii : [15:29:43.990] | : ..$ ...future.globals.maxSize: [15:29:43.990] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:43.990] | : - attr(*, "resolved")= logi FALSE [15:29:43.990] | : - attr(*, "total_size")= num 7415 [15:29:44.001] | : Number of futures (= number of chunks): 1 [15:29:44.002] | : Launching 1 futures (chunks) ... [15:29:44.003] | : Chunk #1 of 1 ... [15:29:44.004] | : - Finding globals in 'X' for chunk #1 ... [15:29:44.006] | : + additional globals found: [n=0] [15:29:44.007] | : + additional namespaces needed: [n=0] [15:29:44.008] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:44.009] | : - seeds: [15:29:44.010] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:44.015] | : Created future: [15:29:44.016] | : MultisessionFuture: [15:29:44.016] | : Label: 'future_lapply-1' [15:29:44.016] | : Expression: [15:29:44.016] | : { [15:29:44.016] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:44.016] | : "# expression in do.call(), because function called uses '...' " [15:29:44.016] | : "# as a global variable " [15:29:44.016] | : do.call(function(...) { [15:29:44.016] | : "# future.apply:::future_xapply(): preserve future option" [15:29:44.016] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:44.016] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:44.016] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:44.016] | : on.exit(options(oopts), add = TRUE) [15:29:44.016] | : } [15:29:44.016] | : { [15:29:44.016] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:44.016] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:44.016] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:44.016] | : { [15:29:44.016] | : ...future.FUN(...future.X_jj, ...) [15:29:44.016] | : } [15:29:44.016] | : }) [15:29:44.016] | : } [15:29:44.016] | : }, args = future.call.arguments) [15:29:44.016] | : } [15:29:44.016] | : Globals: 5 objects totaling 7.43 KiB (function '...future.FUN' of 1.79 KiB, DotDotDotList 'future.call.arguments' of 388 bytes, list '...future.elements_ii' of 149 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:44.016] | : Packages: [15:29:44.016] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:44.016] | : Capture standard output: TRUE [15:29:44.016] | : Capture condition classes: 'condition' (excluding '') [15:29:44.016] | : Immediate condition classes: 'immediateCondition' [15:29:44.016] | : Lazy evaluation: FALSE [15:29:44.016] | : Local evaluation: TRUE [15:29:44.016] | : Early signaling: FALSE [15:29:44.016] | : Actions: [n=1] 'run' [15:29:44.016] | : State: 'running' ("Future is being evaluated") [15:29:44.016] | : Resolved: TRUE [15:29:44.016] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-20 [15:29:44.016] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:44.016] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:44.016] | : Value: [15:29:44.016] | : Conditions captured: [15:29:44.026] | : Chunk #1 of 1 ... DONE [15:29:44.027] | : Launching 1 futures (chunks) ... DONE [15:29:44.028] | : Resolving 1 futures (chunks) ... [15:29:44.030] | : - Number of value chunks collected: 1 [15:29:44.031] | : Resolving 1 futures (chunks) ... DONE [15:29:44.032] | : Reducing values from 1 chunks ... [15:29:44.033] | : - Number of values collected after concatenation: 1 [15:29:44.034] | : - Number of values expected: 1 [15:29:44.035] | : Reducing values from 1 chunks ... DONE [15:29:44.036] | future_lapply() -> future_xapply() ... done [15:29:44.037] future_lapply() ... done - lapply(x, ...) |> futurize() - passing arguments via '...' ... [15:29:44.039] future_lapply() ... [15:29:44.041] | Globals in FUN(): [n=1] 'typeof' [15:29:44.042] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:44.043] | future_lapply() -> future_xapply() ... [15:29:44.044] | : Number of chunks: 1 [15:29:44.045] | : getGlobalsAndPackagesXApply() ... [15:29:44.046] | : . future.globals: TRUE [15:29:44.063] | : . globals found/used: [n=1] 'FUN' [15:29:44.064] | : . needed namespaces: [n=0] [15:29:44.065] | : . use_args: TRUE [15:29:44.066] | : . Getting '...' globals ... [15:29:44.068] | : . ' '...' content: [n=1] 'b' [15:29:44.069] | : . ' List of 1 [15:29:44.069] | : . ' $ ...:List of 1 [15:29:44.069] | : . ' ..$ b:'data.frame': 2 obs. of 1 variable: [15:29:44.069] | : . ' .. ..$ a: int [1:2] 1 2 [15:29:44.069] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.069] | : . ' - attr(*, "where")=List of 1 [15:29:44.069] | : . ' ..$ ...: [15:29:44.069] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.069] | : . ' - attr(*, "resolved")= logi TRUE [15:29:44.069] | : . ' - attr(*, "total_size")= num NA [15:29:44.080] | : . Getting '...' globals ... done [15:29:44.082] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:44.083] | : . List of 2 [15:29:44.083] | : . $ ...future.FUN:function (a, b) [15:29:44.083] | : . $ ... :List of 1 [15:29:44.083] | : . ..$ b:'data.frame': 2 obs. of 1 variable: [15:29:44.083] | : . .. ..$ a: int [1:2] 1 2 [15:29:44.083] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.083] | : . - attr(*, "where")=List of 2 [15:29:44.083] | : . ..$ ...future.FUN: [15:29:44.083] | : . ..$ ... : [15:29:44.083] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.083] | : . - attr(*, "resolved")= logi FALSE [15:29:44.083] | : . - attr(*, "total_size")= num 3751 [15:29:44.092] | : . Packages to be attached in all futures: [n=0] [15:29:44.093] | : getGlobalsAndPackagesXApply() ... done [15:29:44.094] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:44.096] | : List of 5 [15:29:44.096] | : $ ...future.FUN :function (a, b) [15:29:44.096] | : $ ... :List of 1 [15:29:44.096] | : ..$ b:'data.frame': 2 obs. of 1 variable: [15:29:44.096] | : .. ..$ a: int [1:2] 1 2 [15:29:44.096] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.096] | : $ ...future.elements_ii : NULL [15:29:44.096] | : $ ...future.seeds_ii : NULL [15:29:44.096] | : $ ...future.globals.maxSize: NULL [15:29:44.096] | : - attr(*, "where")=List of 5 [15:29:44.096] | : ..$ ...future.FUN : [15:29:44.096] | : ..$ ... : [15:29:44.096] | : ..$ ...future.elements_ii : [15:29:44.096] | : ..$ ...future.seeds_ii : [15:29:44.096] | : ..$ ...future.globals.maxSize: [15:29:44.096] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.096] | : - attr(*, "resolved")= logi FALSE [15:29:44.096] | : - attr(*, "total_size")= num 3751 [15:29:44.108] | : Number of futures (= number of chunks): 1 [15:29:44.110] | : Launching 1 futures (chunks) ... [15:29:44.111] | : Chunk #1 of 1 ... [15:29:44.112] | : - Finding globals in 'X' for chunk #1 ... [15:29:44.113] | : + additional globals found: [n=0] [15:29:44.114] | : + additional namespaces needed: [n=0] [15:29:44.115] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:44.116] | : - seeds: [15:29:44.117] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:44.122] | : Created future: [15:29:44.123] | : MultisessionFuture: [15:29:44.123] | : Label: 'future_lapply-1' [15:29:44.123] | : Expression: [15:29:44.123] | : { [15:29:44.123] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:44.123] | : "# expression in do.call(), because function called uses '...' " [15:29:44.123] | : "# as a global variable " [15:29:44.123] | : do.call(function(...) { [15:29:44.123] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:44.123] | : "# without having an '...' argument. This means '...' is treated" [15:29:44.123] | : "# as a global variable. This may happen when FUN() is an " [15:29:44.123] | : "# anonymous function. " [15:29:44.123] | : "# " [15:29:44.123] | : "# If an anonymous function, we will make sure to restore the " [15:29:44.123] | : "# function environment of FUN() to the calling environment. " [15:29:44.123] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:44.123] | : "# global environment, which is where globals are written. " [15:29:44.123] | : penv <- env <- environment(...future.FUN) [15:29:44.123] | : repeat { [15:29:44.123] | : if (identical(env, globalenv()) || identical(env, [15:29:44.123] | : emptyenv())) [15:29:44.123] | : break [15:29:44.123] | : penv <- env [15:29:44.123] | : env <- parent.env(env) [15:29:44.123] | : } [15:29:44.123] | : if (identical(penv, globalenv())) { [15:29:44.123] | : environment(...future.FUN) <- environment() [15:29:44.123] | : } [15:29:44.123] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:44.123] | : !isNamespace(penv)) { [15:29:44.123] | : parent.env(penv) <- environment() [15:29:44.123] | : } [15:29:44.123] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:44.123] | : { [15:29:44.123] | : "# future.apply:::future_xapply(): preserve future option" [15:29:44.123] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:44.123] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:44.123] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:44.123] | : on.exit(options(oopts), add = TRUE) [15:29:44.123] | : } [15:29:44.123] | : { [15:29:44.123] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:44.123] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:44.123] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:44.123] | : { [15:29:44.123] | : ...future.FUN(...future.X_jj, ...) [15:29:44.123] | : } [15:29:44.123] | : }) [15:29:44.123] | : } [15:29:44.123] | : } [15:29:44.123] | : }, args = future.call.arguments) [15:29:44.123] | : } [15:29:44.123] | : Globals: 5 objects totaling 3.95 KiB (DotDotDotList 'future.call.arguments' of 357 bytes, function '...future.FUN' of 111 bytes, list '...future.elements_ii' of 43 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:44.123] | : Packages: [15:29:44.123] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:44.123] | : Capture standard output: TRUE [15:29:44.123] | : Capture condition classes: 'condition' (excluding '') [15:29:44.123] | : Immediate condition classes: 'immediateCondition' [15:29:44.123] | : Lazy evaluation: FALSE [15:29:44.123] | : Local evaluation: TRUE [15:29:44.123] | : Early signaling: FALSE [15:29:44.123] | : Actions: [n=1] 'run' [15:29:44.123] | : State: 'running' ("Future is being evaluated") [15:29:44.123] | : Resolved: TRUE [15:29:44.123] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-21 [15:29:44.123] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:44.123] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:44.123] | : Value: [15:29:44.123] | : Conditions captured: [15:29:44.131] | : Chunk #1 of 1 ... DONE [15:29:44.132] | : Launching 1 futures (chunks) ... DONE [15:29:44.133] | : Resolving 1 futures (chunks) ... [15:29:44.135] | : - Number of value chunks collected: 1 [15:29:44.136] | : Resolving 1 futures (chunks) ... DONE [15:29:44.137] | : Reducing values from 1 chunks ... [15:29:44.138] | : - Number of values collected after concatenation: 1 [15:29:44.140] | : - Number of values expected: 1 [15:29:44.141] | : Reducing values from 1 chunks ... DONE [15:29:44.142] | future_lapply() -> future_xapply() ... done [15:29:44.143] future_lapply() ... done [15:29:44.144] future_lapply() ... [15:29:44.146] | Globals in FUN(): [n=1] 'typeof' [15:29:44.148] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:44.149] | future_lapply() -> future_xapply() ... [15:29:44.150] | : Number of chunks: 1 [15:29:44.151] | : getGlobalsAndPackagesXApply() ... [15:29:44.152] | : . future.globals: TRUE [15:29:44.170] | : . globals found/used: [n=1] 'FUN' [15:29:44.171] | : . needed namespaces: [n=0] [15:29:44.173] | : . use_args: TRUE [15:29:44.174] | : . Getting '...' globals ... [15:29:44.175] | : . ' '...' content: [n=1] 'b' [15:29:44.176] | : . ' List of 1 [15:29:44.176] | : . ' $ ...:List of 1 [15:29:44.176] | : . ' ..$ b: [15:29:44.176] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.176] | : . ' - attr(*, "where")=List of 1 [15:29:44.176] | : . ' ..$ ...: [15:29:44.176] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.176] | : . ' - attr(*, "resolved")= logi TRUE [15:29:44.176] | : . ' - attr(*, "total_size")= num NA [15:29:44.180] | : . Getting '...' globals ... done [15:29:44.181] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:44.182] | : . List of 2 [15:29:44.182] | : . $ ...future.FUN:function (a, b) [15:29:44.182] | : . $ ... :List of 1 [15:29:44.182] | : . ..$ b: [15:29:44.182] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.182] | : . - attr(*, "where")=List of 2 [15:29:44.182] | : . ..$ ...future.FUN: [15:29:44.182] | : . ..$ ... : [15:29:44.182] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.182] | : . - attr(*, "resolved")= logi FALSE [15:29:44.182] | : . - attr(*, "total_size")= num 3506 [15:29:44.190] | : . Packages to be attached in all futures: [n=0] [15:29:44.191] | : getGlobalsAndPackagesXApply() ... done [15:29:44.193] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:44.194] | : List of 5 [15:29:44.194] | : $ ...future.FUN :function (a, b) [15:29:44.194] | : $ ... :List of 1 [15:29:44.194] | : ..$ b: [15:29:44.194] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.194] | : $ ...future.elements_ii : NULL [15:29:44.194] | : $ ...future.seeds_ii : NULL [15:29:44.194] | : $ ...future.globals.maxSize: NULL [15:29:44.194] | : - attr(*, "where")=List of 5 [15:29:44.194] | : ..$ ...future.FUN : [15:29:44.194] | : ..$ ... : [15:29:44.194] | : ..$ ...future.elements_ii : [15:29:44.194] | : ..$ ...future.seeds_ii : [15:29:44.194] | : ..$ ...future.globals.maxSize: [15:29:44.194] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.194] | : - attr(*, "resolved")= logi FALSE [15:29:44.194] | : - attr(*, "total_size")= num 3506 [15:29:44.204] | : Number of futures (= number of chunks): 1 [15:29:44.206] | : Launching 1 futures (chunks) ... [15:29:44.207] | : Chunk #1 of 1 ... [15:29:44.207] | : - Finding globals in 'X' for chunk #1 ... [15:29:44.209] | : + additional globals found: [n=0] [15:29:44.210] | : + additional namespaces needed: [n=0] [15:29:44.210] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:44.211] | : - seeds: [15:29:44.212] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:44.216] | : Created future: [15:29:44.217] | : MultisessionFuture: [15:29:44.217] | : Label: 'future_lapply-1' [15:29:44.217] | : Expression: [15:29:44.217] | : { [15:29:44.217] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:44.217] | : "# expression in do.call(), because function called uses '...' " [15:29:44.217] | : "# as a global variable " [15:29:44.217] | : do.call(function(...) { [15:29:44.217] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:44.217] | : "# without having an '...' argument. This means '...' is treated" [15:29:44.217] | : "# as a global variable. This may happen when FUN() is an " [15:29:44.217] | : "# anonymous function. " [15:29:44.217] | : "# " [15:29:44.217] | : "# If an anonymous function, we will make sure to restore the " [15:29:44.217] | : "# function environment of FUN() to the calling environment. " [15:29:44.217] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:44.217] | : "# global environment, which is where globals are written. " [15:29:44.217] | : penv <- env <- environment(...future.FUN) [15:29:44.217] | : repeat { [15:29:44.217] | : if (identical(env, globalenv()) || identical(env, [15:29:44.217] | : emptyenv())) [15:29:44.217] | : break [15:29:44.217] | : penv <- env [15:29:44.217] | : env <- parent.env(env) [15:29:44.217] | : } [15:29:44.217] | : if (identical(penv, globalenv())) { [15:29:44.217] | : environment(...future.FUN) <- environment() [15:29:44.217] | : } [15:29:44.217] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:44.217] | : !isNamespace(penv)) { [15:29:44.217] | : parent.env(penv) <- environment() [15:29:44.217] | : } [15:29:44.217] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:44.217] | : { [15:29:44.217] | : "# future.apply:::future_xapply(): preserve future option" [15:29:44.217] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:44.217] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:44.217] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:44.217] | : on.exit(options(oopts), add = TRUE) [15:29:44.217] | : } [15:29:44.217] | : { [15:29:44.217] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:44.217] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:44.217] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:44.217] | : { [15:29:44.217] | : ...future.FUN(...future.X_jj, ...) [15:29:44.217] | : } [15:29:44.217] | : }) [15:29:44.217] | : } [15:29:44.217] | : } [15:29:44.217] | : }, args = future.call.arguments) [15:29:44.217] | : } [15:29:44.217] | : Globals: 5 objects totaling 3.71 KiB (DotDotDotList 'future.call.arguments' of 279 bytes, function '...future.FUN' of 111 bytes, list '...future.elements_ii' of 43 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:44.217] | : Packages: [15:29:44.217] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:44.217] | : Capture standard output: TRUE [15:29:44.217] | : Capture condition classes: 'condition' (excluding '') [15:29:44.217] | : Immediate condition classes: 'immediateCondition' [15:29:44.217] | : Lazy evaluation: FALSE [15:29:44.217] | : Local evaluation: TRUE [15:29:44.217] | : Early signaling: FALSE [15:29:44.217] | : Actions: [n=1] 'run' [15:29:44.217] | : State: 'running' ("Future is being evaluated") [15:29:44.217] | : Resolved: TRUE [15:29:44.217] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-22 [15:29:44.217] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:44.217] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:44.217] | : Value: [15:29:44.217] | : Conditions captured: [15:29:44.224] | : Chunk #1 of 1 ... DONE [15:29:44.225] | : Launching 1 futures (chunks) ... DONE [15:29:44.226] | : Resolving 1 futures (chunks) ... [15:29:44.228] | : - Number of value chunks collected: 1 [15:29:44.229] | : Resolving 1 futures (chunks) ... DONE [15:29:44.230] | : Reducing values from 1 chunks ... [15:29:44.231] | : - Number of values collected after concatenation: 1 [15:29:44.232] | : - Number of values expected: 1 [15:29:44.233] | : Reducing values from 1 chunks ... DONE [15:29:44.234] | future_lapply() -> future_xapply() ... done [15:29:44.235] future_lapply() ... done [15:29:44.236] future_lapply() ... [15:29:44.238] | Globals in FUN(): [n=1] 'typeof' [15:29:44.239] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:44.240] | future_lapply() -> future_xapply() ... [15:29:44.241] | : Number of chunks: 1 [15:29:44.242] | : getGlobalsAndPackagesXApply() ... [15:29:44.243] | : . future.globals: TRUE [15:29:44.259] | : . globals found/used: [n=1] 'FUN' [15:29:44.260] | : . needed namespaces: [n=0] [15:29:44.261] | : . use_args: TRUE [15:29:44.261] | : . Getting '...' globals ... [15:29:44.263] | : . ' '...' content: [n=1] 'b' [15:29:44.264] | : . ' List of 1 [15:29:44.264] | : . ' $ ...:List of 1 [15:29:44.264] | : . ' ..$ b:Formal class 'classRepresentation' [package "methods"] with 11 slots [15:29:44.264] | : . ' .. .. ..@ slots :List of 4 [15:29:44.264] | : . ' .. .. .. ..$ .Data : chr "function" [15:29:44.264] | : . ' .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. ..$ target : chr "signature" [15:29:44.264] | : . ' .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. ..$ defined: chr "signature" [15:29:44.264] | : . ' .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. ..$ generic: chr "character" [15:29:44.264] | : . ' .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. ..@ contains :List of 4 [15:29:44.264] | : . ' .. .. .. ..$ function :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.264] | : . ' .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ superClass: chr "function" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.264] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:44.264] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.264] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.264] | : . ' .. .. .. .. .. ..@ by : chr(0) [15:29:44.264] | : . ' .. .. .. .. .. ..@ dataPart : logi TRUE [15:29:44.264] | : . ' .. .. .. .. .. ..@ distance : num 1 [15:29:44.264] | : . ' .. .. .. ..$ OptionalFunction:Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.264] | : . ' .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ superClass: chr "OptionalFunction" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.264] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:44.264] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.264] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.264] | : . ' .. .. .. .. .. ..@ by : chr "function" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.264] | : . ' .. .. .. .. .. ..@ distance : num 2 [15:29:44.264] | : . ' .. .. .. ..$ PossibleMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.264] | : . ' .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ superClass: chr "PossibleMethod" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.264] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:44.264] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.264] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.264] | : . ' .. .. .. .. .. ..@ by : chr "function" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.264] | : . ' .. .. .. .. .. ..@ distance : num 2 [15:29:44.264] | : . ' .. .. .. ..$ optionalMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.264] | : . ' .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ superClass: chr "optionalMethod" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.264] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:44.264] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.264] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.264] | : . ' .. .. .. .. .. ..@ by : chr "function" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.264] | : . ' .. .. .. .. .. ..@ distance : num 3 [15:29:44.264] | : . ' .. .. ..@ virtual : logi FALSE [15:29:44.264] | : . ' .. .. ..@ prototype :Formal class 'function' [package ""] with 0 slots [15:29:44.264] | : . ' list() [15:29:44.264] | : . ' .. .. .. .. ..$ target :Formal class 'signature' [package "methods"] with 3 slots [15:29:44.264] | : . ' .. .. .. .. .. .. ..@ .Data : chr(0) [15:29:44.264] | : . ' .. .. .. .. .. .. ..@ names : chr(0) [15:29:44.264] | : . ' .. .. .. .. .. .. ..@ package: chr(0) [15:29:44.264] | : . ' .. .. .. .. ..$ defined:Formal class 'signature' [package "methods"] with 3 slots [15:29:44.264] | : . ' .. .. .. .. .. .. ..@ .Data : chr(0) [15:29:44.264] | : . ' .. .. .. .. .. .. ..@ names : chr(0) [15:29:44.264] | : . ' .. .. .. .. .. .. ..@ package: chr(0) [15:29:44.264] | : . ' .. .. .. .. ..$ generic: chr(0) [15:29:44.264] | : . ' .. .. ..@ validity : NULL [15:29:44.264] | : . ' .. .. ..@ access : list() [15:29:44.264] | : . ' .. .. ..@ className : chr "MethodDefinition" [15:29:44.264] | : . ' .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. ..@ package : chr "methods" [15:29:44.264] | : . ' .. .. ..@ subclasses:List of 7 [15:29:44.264] | : . ' .. .. .. ..$ derivedDefaultMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.264] | : . ' .. .. .. .. .. ..@ subClass : chr "derivedDefaultMethod" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.264] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:44.264] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.264] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.264] | : . ' .. .. .. .. .. ..@ by : chr(0) [15:29:44.264] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.264] | : . ' .. .. .. .. .. ..@ distance : num 1 [15:29:44.264] | : . ' .. .. .. ..$ MethodWithNext :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.264] | : . ' .. .. .. .. .. ..@ subClass : chr "MethodWithNext" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.264] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:44.264] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.264] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.264] | : . ' .. .. .. .. .. ..@ by : chr(0) [15:29:44.264] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.264] | : . ' .. .. .. .. .. ..@ distance : num 1 [15:29:44.264] | : . ' .. .. .. ..$ SealedMethodDefinition :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.264] | : . ' .. .. .. .. .. ..@ subClass : chr "SealedMethodDefinition" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.264] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:44.264] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.264] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.264] | : . ' .. .. .. .. .. ..@ by : chr(0) [15:29:44.264] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.264] | : . ' .. .. .. .. .. ..@ distance : num 1 [15:29:44.264] | : . ' .. .. .. ..$ MethodDefinitionWithTrace :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.264] | : . ' .. .. .. .. .. ..@ subClass : chr "MethodDefinitionWithTrace" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.264] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:44.264] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.264] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.264] | : . ' .. .. .. .. .. ..@ by : chr(0) [15:29:44.264] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.264] | : . ' .. .. .. .. .. ..@ distance : num 1 [15:29:44.264] | : . ' .. .. .. ..$ internalDispatchMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.264] | : . ' .. .. .. .. .. ..@ subClass : chr "internalDispatchMethod" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.264] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:44.264] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.264] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.264] | : . ' .. .. .. .. .. ..@ by : chr "derivedDefaultMethod" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.264] | : . ' .. .. .. .. .. ..@ distance : num 2 [15:29:44.264] | : . ' .. .. .. ..$ MethodWithNextWithTrace :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.264] | : . ' .. .. .. .. .. ..@ subClass : chr "MethodWithNextWithTrace" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.264] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:44.264] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.264] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.264] | : . ' .. .. .. .. .. ..@ by : chr "MethodWithNext" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.264] | : . ' .. .. .. .. .. ..@ distance : num 2 [15:29:44.264] | : . ' .. .. .. ..$ derivedDefaultMethodWithTrace:Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.264] | : . ' .. .. .. .. .. ..@ subClass : chr "derivedDefaultMethodWithTrace" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ package : chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.264] | : . ' .. .. .. .. .. ..@ test :function (object) [15:29:44.264] | : . ' .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.264] | : . ' .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.264] | : . ' .. .. .. .. .. ..@ by : chr "derivedDefaultMethod" [15:29:44.264] | : . ' .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.264] | : . ' .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.264] | : . ' .. .. .. .. .. ..@ distance : num 2 [15:29:44.264] | : . ' .. .. ..@ versionKey: [15:29:44.264] | : . ' .. .. ..@ sealed : logi TRUE [15:29:44.264] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.264] | : . ' - attr(*, "where")=List of 1 [15:29:44.264] | : . ' ..$ ...: [15:29:44.264] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.264] | : . ' - attr(*, "resolved")= logi TRUE [15:29:44.264] | : . ' - attr(*, "total_size")= num NA [15:29:44.363] | : . Getting '...' globals ... done [15:29:44.364] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:44.365] | : . List of 2 [15:29:44.365] | : . $ ...future.FUN:function (a, b) [15:29:44.365] | : . $ ... :List of 1 [15:29:44.365] | : . ..$ b:Formal class 'classRepresentation' [package "methods"] with 11 slots [15:29:44.365] | : . .. .. ..@ slots :List of 4 [15:29:44.365] | : . .. .. .. ..$ .Data : chr "function" [15:29:44.365] | : . .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. ..$ target : chr "signature" [15:29:44.365] | : . .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. ..$ defined: chr "signature" [15:29:44.365] | : . .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. ..$ generic: chr "character" [15:29:44.365] | : . .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. ..@ contains :List of 4 [15:29:44.365] | : . .. .. .. ..$ function :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.365] | : . .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ superClass: chr "function" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.365] | : . .. .. .. .. .. ..@ test :function (object) [15:29:44.365] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.365] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.365] | : . .. .. .. .. .. ..@ by : chr(0) [15:29:44.365] | : . .. .. .. .. .. ..@ dataPart : logi TRUE [15:29:44.365] | : . .. .. .. .. .. ..@ distance : num 1 [15:29:44.365] | : . .. .. .. ..$ OptionalFunction:Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.365] | : . .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ superClass: chr "OptionalFunction" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.365] | : . .. .. .. .. .. ..@ test :function (object) [15:29:44.365] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.365] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.365] | : . .. .. .. .. .. ..@ by : chr "function" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.365] | : . .. .. .. .. .. ..@ distance : num 2 [15:29:44.365] | : . .. .. .. ..$ PossibleMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.365] | : . .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ superClass: chr "PossibleMethod" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.365] | : . .. .. .. .. .. ..@ test :function (object) [15:29:44.365] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.365] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.365] | : . .. .. .. .. .. ..@ by : chr "function" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.365] | : . .. .. .. .. .. ..@ distance : num 2 [15:29:44.365] | : . .. .. .. ..$ optionalMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.365] | : . .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ superClass: chr "optionalMethod" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.365] | : . .. .. .. .. .. ..@ test :function (object) [15:29:44.365] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.365] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.365] | : . .. .. .. .. .. ..@ by : chr "function" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.365] | : . .. .. .. .. .. ..@ distance : num 3 [15:29:44.365] | : . .. .. ..@ virtual : logi FALSE [15:29:44.365] | : . .. .. ..@ prototype :Formal class 'function' [package ""] with 0 slots [15:29:44.365] | : . list() [15:29:44.365] | : . .. .. .. .. ..$ target :Formal class 'signature' [package "methods"] with 3 slots [15:29:44.365] | : . .. .. .. .. .. .. ..@ .Data : chr(0) [15:29:44.365] | : . .. .. .. .. .. .. ..@ names : chr(0) [15:29:44.365] | : . .. .. .. .. .. .. ..@ package: chr(0) [15:29:44.365] | : . .. .. .. .. ..$ defined:Formal class 'signature' [package "methods"] with 3 slots [15:29:44.365] | : . .. .. .. .. .. .. ..@ .Data : chr(0) [15:29:44.365] | : . .. .. .. .. .. .. ..@ names : chr(0) [15:29:44.365] | : . .. .. .. .. .. .. ..@ package: chr(0) [15:29:44.365] | : . .. .. .. .. ..$ generic: chr(0) [15:29:44.365] | : . .. .. ..@ validity : NULL [15:29:44.365] | : . .. .. ..@ access : list() [15:29:44.365] | : . .. .. ..@ className : chr "MethodDefinition" [15:29:44.365] | : . .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. ..@ package : chr "methods" [15:29:44.365] | : . .. .. ..@ subclasses:List of 7 [15:29:44.365] | : . .. .. .. ..$ derivedDefaultMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.365] | : . .. .. .. .. .. ..@ subClass : chr "derivedDefaultMethod" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.365] | : . .. .. .. .. .. ..@ test :function (object) [15:29:44.365] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.365] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.365] | : . .. .. .. .. .. ..@ by : chr(0) [15:29:44.365] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.365] | : . .. .. .. .. .. ..@ distance : num 1 [15:29:44.365] | : . .. .. .. ..$ MethodWithNext :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.365] | : . .. .. .. .. .. ..@ subClass : chr "MethodWithNext" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.365] | : . .. .. .. .. .. ..@ test :function (object) [15:29:44.365] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.365] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.365] | : . .. .. .. .. .. ..@ by : chr(0) [15:29:44.365] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.365] | : . .. .. .. .. .. ..@ distance : num 1 [15:29:44.365] | : . .. .. .. ..$ SealedMethodDefinition :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.365] | : . .. .. .. .. .. ..@ subClass : chr "SealedMethodDefinition" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.365] | : . .. .. .. .. .. ..@ test :function (object) [15:29:44.365] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.365] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.365] | : . .. .. .. .. .. ..@ by : chr(0) [15:29:44.365] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.365] | : . .. .. .. .. .. ..@ distance : num 1 [15:29:44.365] | : . .. .. .. ..$ MethodDefinitionWithTrace :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.365] | : . .. .. .. .. .. ..@ subClass : chr "MethodDefinitionWithTrace" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.365] | : . .. .. .. .. .. ..@ test :function (object) [15:29:44.365] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.365] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.365] | : . .. .. .. .. .. ..@ by : chr(0) [15:29:44.365] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.365] | : . .. .. .. .. .. ..@ distance : num 1 [15:29:44.365] | : . .. .. .. ..$ internalDispatchMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.365] | : . .. .. .. .. .. ..@ subClass : chr "internalDispatchMethod" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.365] | : . .. .. .. .. .. ..@ test :function (object) [15:29:44.365] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.365] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.365] | : . .. .. .. .. .. ..@ by : chr "derivedDefaultMethod" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.365] | : . .. .. .. .. .. ..@ distance : num 2 [15:29:44.365] | : . .. .. .. ..$ MethodWithNextWithTrace :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.365] | : . .. .. .. .. .. ..@ subClass : chr "MethodWithNextWithTrace" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.365] | : . .. .. .. .. .. ..@ test :function (object) [15:29:44.365] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.365] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.365] | : . .. .. .. .. .. ..@ by : chr "MethodWithNext" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.365] | : . .. .. .. .. .. ..@ distance : num 2 [15:29:44.365] | : . .. .. .. ..$ derivedDefaultMethodWithTrace:Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.365] | : . .. .. .. .. .. ..@ subClass : chr "derivedDefaultMethodWithTrace" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ package : chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.365] | : . .. .. .. .. .. ..@ test :function (object) [15:29:44.365] | : . .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.365] | : . .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.365] | : . .. .. .. .. .. ..@ by : chr "derivedDefaultMethod" [15:29:44.365] | : . .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.365] | : . .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.365] | : . .. .. .. .. .. ..@ distance : num 2 [15:29:44.365] | : . .. .. ..@ versionKey: [15:29:44.365] | : . .. .. ..@ sealed : logi TRUE [15:29:44.365] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.365] | : . - attr(*, "where")=List of 2 [15:29:44.365] | : . ..$ ...future.FUN: [15:29:44.365] | : . ..$ ... : [15:29:44.365] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.365] | : . - attr(*, "resolved")= logi FALSE [15:29:44.365] | : . - attr(*, "total_size")= num 105373 [15:29:44.478] | : . Packages to be attached in all futures: [n=0] [15:29:44.479] | : getGlobalsAndPackagesXApply() ... done [15:29:44.480] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:44.480] | : List of 5 [15:29:44.480] | : $ ...future.FUN :function (a, b) [15:29:44.480] | : $ ... :List of 1 [15:29:44.480] | : ..$ b:Formal class 'classRepresentation' [package "methods"] with 11 slots [15:29:44.480] | : .. .. ..@ slots :List of 4 [15:29:44.480] | : .. .. .. ..$ .Data : chr "function" [15:29:44.480] | : .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. ..$ target : chr "signature" [15:29:44.480] | : .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. ..$ defined: chr "signature" [15:29:44.480] | : .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. ..$ generic: chr "character" [15:29:44.480] | : .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. ..@ contains :List of 4 [15:29:44.480] | : .. .. .. ..$ function :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.480] | : .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ superClass: chr "function" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.480] | : .. .. .. .. .. ..@ test :function (object) [15:29:44.480] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.480] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.480] | : .. .. .. .. .. ..@ by : chr(0) [15:29:44.480] | : .. .. .. .. .. ..@ dataPart : logi TRUE [15:29:44.480] | : .. .. .. .. .. ..@ distance : num 1 [15:29:44.480] | : .. .. .. ..$ OptionalFunction:Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.480] | : .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ superClass: chr "OptionalFunction" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.480] | : .. .. .. .. .. ..@ test :function (object) [15:29:44.480] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.480] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.480] | : .. .. .. .. .. ..@ by : chr "function" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.480] | : .. .. .. .. .. ..@ distance : num 2 [15:29:44.480] | : .. .. .. ..$ PossibleMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.480] | : .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ superClass: chr "PossibleMethod" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.480] | : .. .. .. .. .. ..@ test :function (object) [15:29:44.480] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.480] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.480] | : .. .. .. .. .. ..@ by : chr "function" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.480] | : .. .. .. .. .. ..@ distance : num 2 [15:29:44.480] | : .. .. .. ..$ optionalMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.480] | : .. .. .. .. .. ..@ subClass : chr "MethodDefinition" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ superClass: chr "optionalMethod" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.480] | : .. .. .. .. .. ..@ test :function (object) [15:29:44.480] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.480] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.480] | : .. .. .. .. .. ..@ by : chr "function" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.480] | : .. .. .. .. .. ..@ distance : num 3 [15:29:44.480] | : .. .. ..@ virtual : logi FALSE [15:29:44.480] | : .. .. ..@ prototype :Formal class 'function' [package ""] with 0 slots [15:29:44.480] | : list() [15:29:44.480] | : .. .. .. .. ..$ target :Formal class 'signature' [package "methods"] with 3 slots [15:29:44.480] | : .. .. .. .. .. .. ..@ .Data : chr(0) [15:29:44.480] | : .. .. .. .. .. .. ..@ names : chr(0) [15:29:44.480] | : .. .. .. .. .. .. ..@ package: chr(0) [15:29:44.480] | : .. .. .. .. ..$ defined:Formal class 'signature' [package "methods"] with 3 slots [15:29:44.480] | : .. .. .. .. .. .. ..@ .Data : chr(0) [15:29:44.480] | : .. .. .. .. .. .. ..@ names : chr(0) [15:29:44.480] | : .. .. .. .. .. .. ..@ package: chr(0) [15:29:44.480] | : .. .. .. .. ..$ generic: chr(0) [15:29:44.480] | : .. .. ..@ validity : NULL [15:29:44.480] | : .. .. ..@ access : list() [15:29:44.480] | : .. .. ..@ className : chr "MethodDefinition" [15:29:44.480] | : .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. ..@ package : chr "methods" [15:29:44.480] | : .. .. ..@ subclasses:List of 7 [15:29:44.480] | : .. .. .. ..$ derivedDefaultMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.480] | : .. .. .. .. .. ..@ subClass : chr "derivedDefaultMethod" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.480] | : .. .. .. .. .. ..@ test :function (object) [15:29:44.480] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.480] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.480] | : .. .. .. .. .. ..@ by : chr(0) [15:29:44.480] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.480] | : .. .. .. .. .. ..@ distance : num 1 [15:29:44.480] | : .. .. .. ..$ MethodWithNext :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.480] | : .. .. .. .. .. ..@ subClass : chr "MethodWithNext" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.480] | : .. .. .. .. .. ..@ test :function (object) [15:29:44.480] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.480] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.480] | : .. .. .. .. .. ..@ by : chr(0) [15:29:44.480] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.480] | : .. .. .. .. .. ..@ distance : num 1 [15:29:44.480] | : .. .. .. ..$ SealedMethodDefinition :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.480] | : .. .. .. .. .. ..@ subClass : chr "SealedMethodDefinition" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.480] | : .. .. .. .. .. ..@ test :function (object) [15:29:44.480] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.480] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.480] | : .. .. .. .. .. ..@ by : chr(0) [15:29:44.480] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.480] | : .. .. .. .. .. ..@ distance : num 1 [15:29:44.480] | : .. .. .. ..$ MethodDefinitionWithTrace :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.480] | : .. .. .. .. .. ..@ subClass : chr "MethodDefinitionWithTrace" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.480] | : .. .. .. .. .. ..@ test :function (object) [15:29:44.480] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.480] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.480] | : .. .. .. .. .. ..@ by : chr(0) [15:29:44.480] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.480] | : .. .. .. .. .. ..@ distance : num 1 [15:29:44.480] | : .. .. .. ..$ internalDispatchMethod :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.480] | : .. .. .. .. .. ..@ subClass : chr "internalDispatchMethod" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.480] | : .. .. .. .. .. ..@ test :function (object) [15:29:44.480] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.480] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.480] | : .. .. .. .. .. ..@ by : chr "derivedDefaultMethod" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.480] | : .. .. .. .. .. ..@ distance : num 2 [15:29:44.480] | : .. .. .. ..$ MethodWithNextWithTrace :Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.480] | : .. .. .. .. .. ..@ subClass : chr "MethodWithNextWithTrace" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.480] | : .. .. .. .. .. ..@ test :function (object) [15:29:44.480] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.480] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.480] | : .. .. .. .. .. ..@ by : chr "MethodWithNext" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.480] | : .. .. .. .. .. ..@ distance : num 2 [15:29:44.480] | : .. .. .. ..$ derivedDefaultMethodWithTrace:Formal class 'SClassExtension' [package "methods"] with 10 slots [15:29:44.480] | : .. .. .. .. .. ..@ subClass : chr "derivedDefaultMethodWithTrace" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ superClass: chr "MethodDefinition" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ package : chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ coerce :function (from, strict = TRUE) [15:29:44.480] | : .. .. .. .. .. ..@ test :function (object) [15:29:44.480] | : .. .. .. .. .. ..@ replace :function (from, to, value) [15:29:44.480] | : .. .. .. .. .. ..@ simple : logi TRUE [15:29:44.480] | : .. .. .. .. .. ..@ by : chr "derivedDefaultMethod" [15:29:44.480] | : .. .. .. .. .. .. ..- attr(*, "package")= chr "methods" [15:29:44.480] | : .. .. .. .. .. ..@ dataPart : logi FALSE [15:29:44.480] | : .. .. .. .. .. ..@ distance : num 2 [15:29:44.480] | : .. .. ..@ versionKey: [15:29:44.480] | : .. .. ..@ sealed : logi TRUE [15:29:44.480] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.480] | : $ ...future.elements_ii : NULL [15:29:44.480] | : $ ...future.seeds_ii : NULL [15:29:44.480] | : $ ...future.globals.maxSize: NULL [15:29:44.480] | : - attr(*, "where")=List of 5 [15:29:44.480] | : ..$ ...future.FUN : [15:29:44.480] | : ..$ ... : [15:29:44.480] | : ..$ ...future.elements_ii : [15:29:44.480] | : ..$ ...future.seeds_ii : [15:29:44.480] | : ..$ ...future.globals.maxSize: [15:29:44.480] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.480] | : - attr(*, "resolved")= logi FALSE [15:29:44.480] | : - attr(*, "total_size")= num 105373 [15:29:44.592] | : Number of futures (= number of chunks): 1 [15:29:44.593] | : Launching 1 futures (chunks) ... [15:29:44.594] | : Chunk #1 of 1 ... [15:29:44.595] | : - Finding globals in 'X' for chunk #1 ... [15:29:44.596] | : + additional globals found: [n=0] [15:29:44.597] | : + additional namespaces needed: [n=0] [15:29:44.598] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:44.599] | : - seeds: [15:29:44.600] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:44.606] | : Created future: [15:29:44.608] | : MultisessionFuture: [15:29:44.608] | : Label: 'future_lapply-1' [15:29:44.608] | : Expression: [15:29:44.608] | : { [15:29:44.608] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:44.608] | : "# expression in do.call(), because function called uses '...' " [15:29:44.608] | : "# as a global variable " [15:29:44.608] | : do.call(function(...) { [15:29:44.608] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:44.608] | : "# without having an '...' argument. This means '...' is treated" [15:29:44.608] | : "# as a global variable. This may happen when FUN() is an " [15:29:44.608] | : "# anonymous function. " [15:29:44.608] | : "# " [15:29:44.608] | : "# If an anonymous function, we will make sure to restore the " [15:29:44.608] | : "# function environment of FUN() to the calling environment. " [15:29:44.608] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:44.608] | : "# global environment, which is where globals are written. " [15:29:44.608] | : penv <- env <- environment(...future.FUN) [15:29:44.608] | : repeat { [15:29:44.608] | : if (identical(env, globalenv()) || identical(env, [15:29:44.608] | : emptyenv())) [15:29:44.608] | : break [15:29:44.608] | : penv <- env [15:29:44.608] | : env <- parent.env(env) [15:29:44.608] | : } [15:29:44.608] | : if (identical(penv, globalenv())) { [15:29:44.608] | : environment(...future.FUN) <- environment() [15:29:44.608] | : } [15:29:44.608] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:44.608] | : !isNamespace(penv)) { [15:29:44.608] | : parent.env(penv) <- environment() [15:29:44.608] | : } [15:29:44.608] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:44.608] | : { [15:29:44.608] | : "# future.apply:::future_xapply(): preserve future option" [15:29:44.608] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:44.608] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:44.608] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:44.608] | : on.exit(options(oopts), add = TRUE) [15:29:44.608] | : } [15:29:44.608] | : { [15:29:44.608] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:44.608] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:44.608] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:44.608] | : { [15:29:44.608] | : ...future.FUN(...future.X_jj, ...) [15:29:44.608] | : } [15:29:44.608] | : }) [15:29:44.608] | : } [15:29:44.608] | : } [15:29:44.608] | : }, args = future.call.arguments) [15:29:44.608] | : } [15:29:44.608] | : Globals: 5 objects totaling 103.19 KiB (DotDotDotList 'future.call.arguments' of 50.30 KiB, function '...future.FUN' of 111 bytes, list '...future.elements_ii' of 43 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:44.608] | : Packages: [15:29:44.608] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:44.608] | : Capture standard output: TRUE [15:29:44.608] | : Capture condition classes: 'condition' (excluding '') [15:29:44.608] | : Immediate condition classes: 'immediateCondition' [15:29:44.608] | : Lazy evaluation: FALSE [15:29:44.608] | : Local evaluation: TRUE [15:29:44.608] | : Early signaling: FALSE [15:29:44.608] | : Actions: [n=1] 'run' [15:29:44.608] | : State: 'running' ("Future is being evaluated") [15:29:44.608] | : Resolved: TRUE [15:29:44.608] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-23 [15:29:44.608] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:44.608] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:44.608] | : Value: [15:29:44.608] | : Conditions captured: [15:29:44.616] | : Chunk #1 of 1 ... DONE [15:29:44.618] | : Launching 1 futures (chunks) ... DONE [15:29:44.619] | : Resolving 1 futures (chunks) ... [15:29:44.620] | : - Number of value chunks collected: 1 [15:29:44.622] | : Resolving 1 futures (chunks) ... DONE [15:29:44.623] | : Reducing values from 1 chunks ... [15:29:44.624] | : - Number of values collected after concatenation: 1 [15:29:44.625] | : - Number of values expected: 1 [15:29:44.626] | : Reducing values from 1 chunks ... DONE [15:29:44.627] | future_lapply() -> future_xapply() ... done [15:29:44.628] future_lapply() ... done - lapply(X, ...) |> futurize() - 'X' containing globals ... List of 4 $ : num 84 $ : num 10.5 $ : num 63 $ : int 11 [15:29:44.634] future_lapply() ... [15:29:44.636] | Globals in FUN(): [n=0] [15:29:44.636] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:44.637] | future_lapply() -> future_xapply() ... [15:29:44.639] | : Number of chunks: 2 [15:29:44.640] | : getGlobalsAndPackagesXApply() ... [15:29:44.641] | : . future.globals: TRUE [15:29:44.648] | : . globals found/used: [n=1] 'FUN' [15:29:44.649] | : . needed namespaces: [n=0] [15:29:44.650] | : . use_args: TRUE [15:29:44.650] | : . Getting '...' globals ... [15:29:44.652] | : . ' '...' content: [n=0] [15:29:44.652] | : . ' List of 1 [15:29:44.652] | : . ' $ ...: list() [15:29:44.652] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.652] | : . ' - attr(*, "where")=List of 1 [15:29:44.652] | : . ' ..$ ...: [15:29:44.652] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.652] | : . ' - attr(*, "resolved")= logi TRUE [15:29:44.652] | : . ' - attr(*, "total_size")= num NA [15:29:44.657] | : . Getting '...' globals ... done [15:29:44.658] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:44.659] | : . List of 2 [15:29:44.659] | : . $ ...future.FUN:function (f) [15:29:44.659] | : . $ ... : list() [15:29:44.659] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.659] | : . - attr(*, "where")=List of 2 [15:29:44.659] | : . ..$ ...future.FUN: [15:29:44.659] | : . ..$ ... : [15:29:44.659] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.659] | : . - attr(*, "resolved")= logi FALSE [15:29:44.659] | : . - attr(*, "total_size")= num 4778 [15:29:44.662] | : . Packages to be attached in all futures: [n=0] [15:29:44.663] | : getGlobalsAndPackagesXApply() ... done [15:29:44.663] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:44.664] | : List of 5 [15:29:44.664] | : $ ...future.FUN :function (f) [15:29:44.664] | : $ ... : list() [15:29:44.664] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.664] | : $ ...future.elements_ii : NULL [15:29:44.664] | : $ ...future.seeds_ii : NULL [15:29:44.664] | : $ ...future.globals.maxSize: NULL [15:29:44.664] | : - attr(*, "where")=List of 5 [15:29:44.664] | : ..$ ...future.FUN : [15:29:44.664] | : ..$ ... : [15:29:44.664] | : ..$ ...future.elements_ii : [15:29:44.664] | : ..$ ...future.seeds_ii : [15:29:44.664] | : ..$ ...future.globals.maxSize: [15:29:44.664] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.664] | : - attr(*, "resolved")= logi FALSE [15:29:44.664] | : - attr(*, "total_size")= num 4778 [15:29:44.670] | : Number of futures (= number of chunks): 2 [15:29:44.670] | : Launching 2 futures (chunks) ... [15:29:44.671] | : Chunk #1 of 2 ... [15:29:44.671] | : - Finding globals in 'X' for chunk #1 ... [15:29:44.700] | : + additional globals found: [n=2] 'a', 'b' [15:29:44.701] | : + additional namespaces needed: [n=0] [15:29:44.702] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:44.703] | : - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [15:29:44.704] | : - seeds: [15:29:44.705] | : - All globals exported: [n=7] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize', 'a', 'b' [15:29:44.710] | : Created future: [15:29:44.711] | : MultisessionFuture: [15:29:44.711] | : Label: 'future_lapply-1' [15:29:44.711] | : Expression: [15:29:44.711] | : { [15:29:44.711] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:44.711] | : "# expression in do.call(), because function called uses '...' " [15:29:44.711] | : "# as a global variable " [15:29:44.711] | : do.call(function(...) { [15:29:44.711] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:44.711] | : "# without having an '...' argument. This means '...' is treated" [15:29:44.711] | : "# as a global variable. This may happen when FUN() is an " [15:29:44.711] | : "# anonymous function. " [15:29:44.711] | : "# " [15:29:44.711] | : "# If an anonymous function, we will make sure to restore the " [15:29:44.711] | : "# function environment of FUN() to the calling environment. " [15:29:44.711] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:44.711] | : "# global environment, which is where globals are written. " [15:29:44.711] | : penv <- env <- environment(...future.FUN) [15:29:44.711] | : repeat { [15:29:44.711] | : if (identical(env, globalenv()) || identical(env, [15:29:44.711] | : emptyenv())) [15:29:44.711] | : break [15:29:44.711] | : penv <- env [15:29:44.711] | : env <- parent.env(env) [15:29:44.711] | : } [15:29:44.711] | : if (identical(penv, globalenv())) { [15:29:44.711] | : environment(...future.FUN) <- environment() [15:29:44.711] | : } [15:29:44.711] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:44.711] | : !isNamespace(penv)) { [15:29:44.711] | : parent.env(penv) <- environment() [15:29:44.711] | : } [15:29:44.711] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:44.711] | : { [15:29:44.711] | : "# future.apply:::future_xapply(): preserve future option" [15:29:44.711] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:44.711] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:44.711] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:44.711] | : on.exit(options(oopts), add = TRUE) [15:29:44.711] | : } [15:29:44.711] | : { [15:29:44.711] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:44.711] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:44.711] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:44.711] | : { [15:29:44.711] | : ...future.FUN(...future.X_jj, ...) [15:29:44.711] | : } [15:29:44.711] | : }) [15:29:44.711] | : } [15:29:44.711] | : } [15:29:44.711] | : }, args = future.call.arguments) [15:29:44.711] | : } [15:29:44.711] | : Globals: 7 objects totaling 5.54 KiB (list '...future.elements_ii' of 588 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, function '...future.FUN' of 68 bytes, numeric 'a' of 39 bytes, numeric 'b' of 39 bytes, ...) [15:29:44.711] | : Packages: [15:29:44.711] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:44.711] | : Capture standard output: TRUE [15:29:44.711] | : Capture condition classes: 'condition' (excluding '') [15:29:44.711] | : Immediate condition classes: 'immediateCondition' [15:29:44.711] | : Lazy evaluation: FALSE [15:29:44.711] | : Local evaluation: TRUE [15:29:44.711] | : Early signaling: FALSE [15:29:44.711] | : Actions: [n=1] 'run' [15:29:44.711] | : State: 'running' ("Future is being evaluated") [15:29:44.711] | : Resolved: TRUE [15:29:44.711] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-24 [15:29:44.711] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:44.711] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:44.711] | : Value: [15:29:44.711] | : Conditions captured: [15:29:44.718] | : Chunk #1 of 2 ... DONE [15:29:44.719] | : Chunk #2 of 2 ... [15:29:44.720] | : - Finding globals in 'X' for chunk #2 ... [15:29:44.737] | : + additional globals found: [n=2] 'a', 'b' [15:29:44.738] | : + additional namespaces needed: [n=0] [15:29:44.739] | : - Finding globals in 'X' for chunk #2 ... DONE [15:29:44.740] | : - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [15:29:44.741] | : - seeds: [15:29:44.741] | : - All globals exported: [n=7] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize', 'a', 'b' [15:29:44.745] | : Created future: [15:29:44.746] | : MultisessionFuture: [15:29:44.746] | : Label: 'future_lapply-2' [15:29:44.746] | : Expression: [15:29:44.746] | : { [15:29:44.746] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:44.746] | : "# expression in do.call(), because function called uses '...' " [15:29:44.746] | : "# as a global variable " [15:29:44.746] | : do.call(function(...) { [15:29:44.746] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:44.746] | : "# without having an '...' argument. This means '...' is treated" [15:29:44.746] | : "# as a global variable. This may happen when FUN() is an " [15:29:44.746] | : "# anonymous function. " [15:29:44.746] | : "# " [15:29:44.746] | : "# If an anonymous function, we will make sure to restore the " [15:29:44.746] | : "# function environment of FUN() to the calling environment. " [15:29:44.746] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:44.746] | : "# global environment, which is where globals are written. " [15:29:44.746] | : penv <- env <- environment(...future.FUN) [15:29:44.746] | : repeat { [15:29:44.746] | : if (identical(env, globalenv()) || identical(env, [15:29:44.746] | : emptyenv())) [15:29:44.746] | : break [15:29:44.746] | : penv <- env [15:29:44.746] | : env <- parent.env(env) [15:29:44.746] | : } [15:29:44.746] | : if (identical(penv, globalenv())) { [15:29:44.746] | : environment(...future.FUN) <- environment() [15:29:44.746] | : } [15:29:44.746] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:44.746] | : !isNamespace(penv)) { [15:29:44.746] | : parent.env(penv) <- environment() [15:29:44.746] | : } [15:29:44.746] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:44.746] | : { [15:29:44.746] | : "# future.apply:::future_xapply(): preserve future option" [15:29:44.746] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:44.746] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:44.746] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:44.746] | : on.exit(options(oopts), add = TRUE) [15:29:44.746] | : } [15:29:44.746] | : { [15:29:44.746] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:44.746] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:44.746] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:44.746] | : { [15:29:44.746] | : ...future.FUN(...future.X_jj, ...) [15:29:44.746] | : } [15:29:44.746] | : }) [15:29:44.746] | : } [15:29:44.746] | : } [15:29:44.746] | : }, args = future.call.arguments) [15:29:44.746] | : } [15:29:44.746] | : Globals: 7 objects totaling 5.99 KiB (list '...future.elements_ii' of 1.08 KiB, DotDotDotList 'future.call.arguments' of 97 bytes, function '...future.FUN' of 68 bytes, numeric 'a' of 39 bytes, numeric 'b' of 39 bytes, ...) [15:29:44.746] | : Packages: [15:29:44.746] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:44.746] | : Capture standard output: TRUE [15:29:44.746] | : Capture condition classes: 'condition' (excluding '') [15:29:44.746] | : Immediate condition classes: 'immediateCondition' [15:29:44.746] | : Lazy evaluation: FALSE [15:29:44.746] | : Local evaluation: TRUE [15:29:44.746] | : Early signaling: FALSE [15:29:44.746] | : Actions: [n=1] 'run' [15:29:44.746] | : State: 'running' ("Future is being evaluated") [15:29:44.746] | : Resolved: TRUE [15:29:44.746] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-25 [15:29:44.746] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:44.746] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:44.746] | : Value: [15:29:44.746] | : Conditions captured: [15:29:44.755] | : Chunk #2 of 2 ... DONE [15:29:44.756] | : Launching 2 futures (chunks) ... DONE [15:29:44.756] | : Resolving 2 futures (chunks) ... [15:29:44.758] | : - Number of value chunks collected: 2 [15:29:44.758] | : Resolving 2 futures (chunks) ... DONE [15:29:44.759] | : Reducing values from 2 chunks ... [15:29:44.760] | : - Number of values collected after concatenation: 4 [15:29:44.760] | : - Number of values expected: 4 [15:29:44.761] | : Reducing values from 2 chunks ... DONE [15:29:44.761] | future_lapply() -> future_xapply() ... done [15:29:44.762] future_lapply() ... done List of 4 $ : num 84 $ : num 10.5 $ : num 63 $ : int 11 - lapply(X, ...) |> futurize() - '{ a <- a + 1; a }' ... [15:29:44.765] future_lapply() ... [15:29:44.767] | Globals in FUN(): [n=4] '{', '<-', 'a', '+' [15:29:44.768] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:44.769] | future_lapply() -> future_xapply() ... [15:29:44.770] | : Number of chunks: 1 [15:29:44.771] | : getGlobalsAndPackagesXApply() ... [15:29:44.772] | : . future.globals: TRUE [15:29:44.785] | : . globals found/used: [n=2] 'FUN', 'a' [15:29:44.786] | : . needed namespaces: [n=0] [15:29:44.787] | : . use_args: TRUE [15:29:44.788] | : . Getting '...' globals ... [15:29:44.790] | : . ' '...' content: [n=0] [15:29:44.791] | : . ' List of 1 [15:29:44.791] | : . ' $ ...: list() [15:29:44.791] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.791] | : . ' - attr(*, "where")=List of 1 [15:29:44.791] | : . ' ..$ ...: [15:29:44.791] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.791] | : . ' - attr(*, "resolved")= logi TRUE [15:29:44.791] | : . ' - attr(*, "total_size")= num NA [15:29:44.797] | : . Getting '...' globals ... done [15:29:44.798] | : . Globals to be used in all futures (chunks): [n=3] '...future.FUN', 'a', '...' [15:29:44.799] | : . List of 3 [15:29:44.799] | : . $ ...future.FUN:function (ii) [15:29:44.799] | : . $ a : num 1 [15:29:44.799] | : . $ ... : list() [15:29:44.799] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.799] | : . - attr(*, "where")=List of 3 [15:29:44.799] | : . ..$ ...future.FUN: [15:29:44.799] | : . ..$ a : [15:29:44.799] | : . ..$ ... : [15:29:44.799] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.799] | : . - attr(*, "resolved")= logi FALSE [15:29:44.799] | : . - attr(*, "total_size")= num 3499 [15:29:44.805] | : . Packages to be attached in all futures: [n=0] [15:29:44.806] | : getGlobalsAndPackagesXApply() ... done [15:29:44.806] | : Globals pass to each chunk: [n=6] '...future.FUN', 'a', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:44.807] | : List of 6 [15:29:44.807] | : $ ...future.FUN :function (ii) [15:29:44.807] | : $ a : num 1 [15:29:44.807] | : $ ... : list() [15:29:44.807] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.807] | : $ ...future.elements_ii : NULL [15:29:44.807] | : $ ...future.seeds_ii : NULL [15:29:44.807] | : $ ...future.globals.maxSize: NULL [15:29:44.807] | : - attr(*, "where")=List of 6 [15:29:44.807] | : ..$ ...future.FUN : [15:29:44.807] | : ..$ a : [15:29:44.807] | : ..$ ... : [15:29:44.807] | : ..$ ...future.elements_ii : [15:29:44.807] | : ..$ ...future.seeds_ii : [15:29:44.807] | : ..$ ...future.globals.maxSize: [15:29:44.807] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.807] | : - attr(*, "resolved")= logi FALSE [15:29:44.807] | : - attr(*, "total_size")= num 3499 [15:29:44.814] | : Number of futures (= number of chunks): 1 [15:29:44.815] | : Launching 1 futures (chunks) ... [15:29:44.815] | : Chunk #1 of 1 ... [15:29:44.816] | : - Finding globals in 'X' for chunk #1 ... [15:29:44.817] | : + additional globals found: [n=0] [15:29:44.817] | : + additional namespaces needed: [n=0] [15:29:44.818] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:44.819] | : - seeds: [15:29:44.819] | : - All globals exported: [n=6] '...future.FUN', 'a', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:44.823] | : Created future: [15:29:44.824] | : MultisessionFuture: [15:29:44.824] | : Label: 'future_lapply-1' [15:29:44.824] | : Expression: [15:29:44.824] | : { [15:29:44.824] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:44.824] | : "# expression in do.call(), because function called uses '...' " [15:29:44.824] | : "# as a global variable " [15:29:44.824] | : do.call(function(...) { [15:29:44.824] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:44.824] | : "# without having an '...' argument. This means '...' is treated" [15:29:44.824] | : "# as a global variable. This may happen when FUN() is an " [15:29:44.824] | : "# anonymous function. " [15:29:44.824] | : "# " [15:29:44.824] | : "# If an anonymous function, we will make sure to restore the " [15:29:44.824] | : "# function environment of FUN() to the calling environment. " [15:29:44.824] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:44.824] | : "# global environment, which is where globals are written. " [15:29:44.824] | : penv <- env <- environment(...future.FUN) [15:29:44.824] | : repeat { [15:29:44.824] | : if (identical(env, globalenv()) || identical(env, [15:29:44.824] | : emptyenv())) [15:29:44.824] | : break [15:29:44.824] | : penv <- env [15:29:44.824] | : env <- parent.env(env) [15:29:44.824] | : } [15:29:44.824] | : if (identical(penv, globalenv())) { [15:29:44.824] | : environment(...future.FUN) <- environment() [15:29:44.824] | : } [15:29:44.824] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:44.824] | : !isNamespace(penv)) { [15:29:44.824] | : parent.env(penv) <- environment() [15:29:44.824] | : } [15:29:44.824] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:44.824] | : { [15:29:44.824] | : "# future.apply:::future_xapply(): preserve future option" [15:29:44.824] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:44.824] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:44.824] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:44.824] | : on.exit(options(oopts), add = TRUE) [15:29:44.824] | : } [15:29:44.824] | : { [15:29:44.824] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:44.824] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:44.824] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:44.824] | : { [15:29:44.824] | : ...future.FUN(...future.X_jj, ...) [15:29:44.824] | : } [15:29:44.824] | : }) [15:29:44.824] | : } [15:29:44.824] | : } [15:29:44.824] | : }, args = future.call.arguments) [15:29:44.824] | : } [15:29:44.824] | : Globals: 6 objects totaling 3.69 KiB (function '...future.FUN' of 182 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 47 bytes, numeric 'a' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes, ...) [15:29:44.824] | : Packages: [15:29:44.824] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:44.824] | : Capture standard output: TRUE [15:29:44.824] | : Capture condition classes: 'condition' (excluding '') [15:29:44.824] | : Immediate condition classes: 'immediateCondition' [15:29:44.824] | : Lazy evaluation: FALSE [15:29:44.824] | : Local evaluation: TRUE [15:29:44.824] | : Early signaling: FALSE [15:29:44.824] | : Actions: [n=1] 'run' [15:29:44.824] | : State: 'running' ("Future is being evaluated") [15:29:44.824] | : Resolved: TRUE [15:29:44.824] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-26 [15:29:44.824] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:44.824] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:44.824] | : Value: [15:29:44.824] | : Conditions captured: [15:29:44.835] | : Chunk #1 of 1 ... DONE [15:29:44.836] | : Launching 1 futures (chunks) ... DONE [15:29:44.837] | : Resolving 1 futures (chunks) ... [15:29:44.838] | : - Number of value chunks collected: 1 [15:29:44.839] | : Resolving 1 futures (chunks) ... DONE [15:29:44.840] | : Reducing values from 1 chunks ... [15:29:44.841] | : - Number of values collected after concatenation: 1 [15:29:44.842] | : - Number of values expected: 1 [15:29:44.843] | : Reducing values from 1 chunks ... DONE [15:29:44.843] | future_lapply() -> future_xapply() ... done [15:29:44.848] future_lapply() ... done - lapply(X, ...) |> futurize() - '{ a; a <- a + 1 }' ... [15:29:44.849] future_lapply() ... [15:29:44.852] | Globals in FUN(): [n=4] '{', 'a', '<-', '+' [15:29:44.853] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:44.854] | future_lapply() -> future_xapply() ... [15:29:44.855] | : Number of chunks: 1 [15:29:44.855] | : getGlobalsAndPackagesXApply() ... [15:29:44.856] | : . future.globals: TRUE [15:29:44.871] | : . globals found/used: [n=2] 'FUN', 'a' [15:29:44.872] | : . needed namespaces: [n=0] [15:29:44.873] | : . use_args: TRUE [15:29:44.874] | : . Getting '...' globals ... [15:29:44.876] | : . ' '...' content: [n=0] [15:29:44.877] | : . ' List of 1 [15:29:44.877] | : . ' $ ...: list() [15:29:44.877] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.877] | : . ' - attr(*, "where")=List of 1 [15:29:44.877] | : . ' ..$ ...: [15:29:44.877] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.877] | : . ' - attr(*, "resolved")= logi TRUE [15:29:44.877] | : . ' - attr(*, "total_size")= num NA [15:29:44.882] | : . Getting '...' globals ... done [15:29:44.883] | : . Globals to be used in all futures (chunks): [n=3] '...future.FUN', 'a', '...' [15:29:44.884] | : . List of 3 [15:29:44.884] | : . $ ...future.FUN:function (ii) [15:29:44.884] | : . $ a : num 1 [15:29:44.884] | : . $ ... : list() [15:29:44.884] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.884] | : . - attr(*, "where")=List of 3 [15:29:44.884] | : . ..$ ...future.FUN: [15:29:44.884] | : . ..$ a : [15:29:44.884] | : . ..$ ... : [15:29:44.884] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.884] | : . - attr(*, "resolved")= logi FALSE [15:29:44.884] | : . - attr(*, "total_size")= num 3499 [15:29:44.891] | : . Packages to be attached in all futures: [n=0] [15:29:44.892] | : getGlobalsAndPackagesXApply() ... done [15:29:44.893] | : Globals pass to each chunk: [n=6] '...future.FUN', 'a', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:44.894] | : List of 6 [15:29:44.894] | : $ ...future.FUN :function (ii) [15:29:44.894] | : $ a : num 1 [15:29:44.894] | : $ ... : list() [15:29:44.894] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.894] | : $ ...future.elements_ii : NULL [15:29:44.894] | : $ ...future.seeds_ii : NULL [15:29:44.894] | : $ ...future.globals.maxSize: NULL [15:29:44.894] | : - attr(*, "where")=List of 6 [15:29:44.894] | : ..$ ...future.FUN : [15:29:44.894] | : ..$ a : [15:29:44.894] | : ..$ ... : [15:29:44.894] | : ..$ ...future.elements_ii : [15:29:44.894] | : ..$ ...future.seeds_ii : [15:29:44.894] | : ..$ ...future.globals.maxSize: [15:29:44.894] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.894] | : - attr(*, "resolved")= logi FALSE [15:29:44.894] | : - attr(*, "total_size")= num 3499 [15:29:44.902] | : Number of futures (= number of chunks): 1 [15:29:44.903] | : Launching 1 futures (chunks) ... [15:29:44.903] | : Chunk #1 of 1 ... [15:29:44.904] | : - Finding globals in 'X' for chunk #1 ... [15:29:44.906] | : + additional globals found: [n=0] [15:29:44.906] | : + additional namespaces needed: [n=0] [15:29:44.907] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:44.908] | : - seeds: [15:29:44.909] | : - All globals exported: [n=6] '...future.FUN', 'a', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:44.913] | : Created future: [15:29:44.914] | : MultisessionFuture: [15:29:44.914] | : Label: 'future_lapply-1' [15:29:44.914] | : Expression: [15:29:44.914] | : { [15:29:44.914] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:44.914] | : "# expression in do.call(), because function called uses '...' " [15:29:44.914] | : "# as a global variable " [15:29:44.914] | : do.call(function(...) { [15:29:44.914] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:44.914] | : "# without having an '...' argument. This means '...' is treated" [15:29:44.914] | : "# as a global variable. This may happen when FUN() is an " [15:29:44.914] | : "# anonymous function. " [15:29:44.914] | : "# " [15:29:44.914] | : "# If an anonymous function, we will make sure to restore the " [15:29:44.914] | : "# function environment of FUN() to the calling environment. " [15:29:44.914] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:44.914] | : "# global environment, which is where globals are written. " [15:29:44.914] | : penv <- env <- environment(...future.FUN) [15:29:44.914] | : repeat { [15:29:44.914] | : if (identical(env, globalenv()) || identical(env, [15:29:44.914] | : emptyenv())) [15:29:44.914] | : break [15:29:44.914] | : penv <- env [15:29:44.914] | : env <- parent.env(env) [15:29:44.914] | : } [15:29:44.914] | : if (identical(penv, globalenv())) { [15:29:44.914] | : environment(...future.FUN) <- environment() [15:29:44.914] | : } [15:29:44.914] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:44.914] | : !isNamespace(penv)) { [15:29:44.914] | : parent.env(penv) <- environment() [15:29:44.914] | : } [15:29:44.914] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:44.914] | : { [15:29:44.914] | : "# future.apply:::future_xapply(): preserve future option" [15:29:44.914] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:44.914] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:44.914] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:44.914] | : on.exit(options(oopts), add = TRUE) [15:29:44.914] | : } [15:29:44.914] | : { [15:29:44.914] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:44.914] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:44.914] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:44.914] | : { [15:29:44.914] | : ...future.FUN(...future.X_jj, ...) [15:29:44.914] | : } [15:29:44.914] | : }) [15:29:44.914] | : } [15:29:44.914] | : } [15:29:44.914] | : }, args = future.call.arguments) [15:29:44.914] | : } [15:29:44.914] | : Globals: 6 objects totaling 3.69 KiB (function '...future.FUN' of 182 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 47 bytes, numeric 'a' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes, ...) [15:29:44.914] | : Packages: [15:29:44.914] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:44.914] | : Capture standard output: TRUE [15:29:44.914] | : Capture condition classes: 'condition' (excluding '') [15:29:44.914] | : Immediate condition classes: 'immediateCondition' [15:29:44.914] | : Lazy evaluation: FALSE [15:29:44.914] | : Local evaluation: TRUE [15:29:44.914] | : Early signaling: FALSE [15:29:44.914] | : Actions: [n=1] 'run' [15:29:44.914] | : State: 'running' ("Future is being evaluated") [15:29:44.914] | : Resolved: TRUE [15:29:44.914] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-27 [15:29:44.914] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:44.914] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:44.914] | : Value: [15:29:44.914] | : Conditions captured: [15:29:44.922] | : Chunk #1 of 1 ... DONE [15:29:44.923] | : Launching 1 futures (chunks) ... DONE [15:29:44.924] | : Resolving 1 futures (chunks) ... [15:29:44.925] | : - Number of value chunks collected: 1 [15:29:44.926] | : Resolving 1 futures (chunks) ... DONE [15:29:44.927] | : Reducing values from 1 chunks ... [15:29:44.928] | : - Number of values collected after concatenation: 1 [15:29:44.928] | : - Number of values expected: 1 [15:29:44.929] | : Reducing values from 1 chunks ... DONE [15:29:44.930] | future_lapply() -> future_xapply() ... done [15:29:44.931] future_lapply() ... done - lapply(..., future.globals = ) |> futurize() ... [15:29:44.932] future_lapply() ... [15:29:44.933] | Globals in FUN(): [n=1] 'a' [15:29:44.934] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:44.935] | future_lapply() -> future_xapply() ... [15:29:44.936] | : Number of chunks: 1 [15:29:44.937] | : getGlobalsAndPackagesXApply() ... [15:29:44.938] | : . future.globals: with names 'a' [15:29:44.938] | : . use_args: TRUE [15:29:44.939] | : . Getting '...' globals ... [15:29:44.941] | : . ' '...' content: [n=0] [15:29:44.941] | : . ' List of 1 [15:29:44.941] | : . ' $ ...: list() [15:29:44.941] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.941] | : . ' - attr(*, "where")=List of 1 [15:29:44.941] | : . ' ..$ ...: [15:29:44.941] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.941] | : . ' - attr(*, "resolved")= logi TRUE [15:29:44.941] | : . ' - attr(*, "total_size")= num NA [15:29:44.947] | : . Getting '...' globals ... done [15:29:44.948] | : . Globals to be used in all futures (chunks): [n=3] 'a', '...future.FUN', '...' [15:29:44.949] | : . List of 3 [15:29:44.949] | : . $ a : num 42 [15:29:44.949] | : . $ ...future.FUN:function (x) [15:29:44.949] | : . $ ... : list() [15:29:44.949] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.949] | : . - attr(*, "where")=List of 3 [15:29:44.949] | : . ..$ a : [15:29:44.949] | : . ..$ ...future.FUN: [15:29:44.949] | : . ..$ ... : [15:29:44.949] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.949] | : . - attr(*, "resolved")= logi FALSE [15:29:44.949] | : . - attr(*, "total_size")= num NA [15:29:44.956] | : . Packages to be attached in all futures: [n=0] [15:29:44.957] | : getGlobalsAndPackagesXApply() ... done [15:29:44.958] | : Globals pass to each chunk: [n=6] 'a', '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:44.958] | : List of 6 [15:29:44.958] | : $ a : num 42 [15:29:44.958] | : $ ...future.FUN :function (x) [15:29:44.958] | : $ ... : list() [15:29:44.958] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:44.958] | : $ ...future.elements_ii : NULL [15:29:44.958] | : $ ...future.seeds_ii : NULL [15:29:44.958] | : $ ...future.globals.maxSize: NULL [15:29:44.958] | : - attr(*, "where")=List of 6 [15:29:44.958] | : ..$ a : [15:29:44.958] | : ..$ ...future.FUN : [15:29:44.958] | : ..$ ... : [15:29:44.958] | : ..$ ...future.elements_ii : [15:29:44.958] | : ..$ ...future.seeds_ii : [15:29:44.958] | : ..$ ...future.globals.maxSize: [15:29:44.958] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:44.958] | : - attr(*, "resolved")= logi FALSE [15:29:44.958] | : - attr(*, "total_size")= num NA [15:29:44.968] | : Number of futures (= number of chunks): 1 [15:29:44.969] | : Launching 1 futures (chunks) ... [15:29:44.970] | : Chunk #1 of 1 ... [15:29:44.971] | : - seeds: [15:29:44.971] | : - All globals exported: [n=6] 'a', '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:44.977] | : Created future: [15:29:44.978] | : MultisessionFuture: [15:29:44.978] | : Label: 'future_lapply-1' [15:29:44.978] | : Expression: [15:29:44.978] | : { [15:29:44.978] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:44.978] | : "# expression in do.call(), because function called uses '...' " [15:29:44.978] | : "# as a global variable " [15:29:44.978] | : do.call(function(...) { [15:29:44.978] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:44.978] | : "# without having an '...' argument. This means '...' is treated" [15:29:44.978] | : "# as a global variable. This may happen when FUN() is an " [15:29:44.978] | : "# anonymous function. " [15:29:44.978] | : "# " [15:29:44.978] | : "# If an anonymous function, we will make sure to restore the " [15:29:44.978] | : "# function environment of FUN() to the calling environment. " [15:29:44.978] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:44.978] | : "# global environment, which is where globals are written. " [15:29:44.978] | : penv <- env <- environment(...future.FUN) [15:29:44.978] | : repeat { [15:29:44.978] | : if (identical(env, globalenv()) || identical(env, [15:29:44.978] | : emptyenv())) [15:29:44.978] | : break [15:29:44.978] | : penv <- env [15:29:44.978] | : env <- parent.env(env) [15:29:44.978] | : } [15:29:44.978] | : if (identical(penv, globalenv())) { [15:29:44.978] | : environment(...future.FUN) <- environment() [15:29:44.978] | : } [15:29:44.978] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:44.978] | : !isNamespace(penv)) { [15:29:44.978] | : parent.env(penv) <- environment() [15:29:44.978] | : } [15:29:44.978] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:44.978] | : { [15:29:44.978] | : "# future.apply:::future_xapply(): preserve future option" [15:29:44.978] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:44.978] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:44.978] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:44.978] | : on.exit(options(oopts), add = TRUE) [15:29:44.978] | : } [15:29:44.978] | : { [15:29:44.978] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:44.978] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:44.978] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:44.978] | : { [15:29:44.978] | : ...future.FUN(...future.X_jj, ...) [15:29:44.978] | : } [15:29:44.978] | : }) [15:29:44.978] | : } [15:29:44.978] | : } [15:29:44.978] | : }, args = future.call.arguments) [15:29:44.978] | : } [15:29:44.978] | : Globals: 6 objects totaling 3.57 KiB (DotDotDotList 'future.call.arguments' of 97 bytes, function '...future.FUN' of 69 bytes, list '...future.elements_ii' of 47 bytes, numeric 'a' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes, ...) [15:29:44.978] | : Packages: [15:29:44.978] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:44.978] | : Capture standard output: TRUE [15:29:44.978] | : Capture condition classes: 'condition' (excluding '') [15:29:44.978] | : Immediate condition classes: 'immediateCondition' [15:29:44.978] | : Lazy evaluation: FALSE [15:29:44.978] | : Local evaluation: TRUE [15:29:44.978] | : Early signaling: FALSE [15:29:44.978] | : Actions: [n=1] 'run' [15:29:44.978] | : State: 'running' ("Future is being evaluated") [15:29:44.978] | : Resolved: TRUE [15:29:44.978] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-28 [15:29:44.978] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:44.978] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:44.978] | : Value: [15:29:44.978] | : Conditions captured: [15:29:44.985] | : Chunk #1 of 1 ... DONE [15:29:44.987] | : Launching 1 futures (chunks) ... DONE [15:29:44.988] | : Resolving 1 futures (chunks) ... [15:29:44.990] | : - Number of value chunks collected: 1 [15:29:44.991] | : Resolving 1 futures (chunks) ... DONE [15:29:44.992] | : Reducing values from 1 chunks ... [15:29:44.993] | : - Number of values collected after concatenation: 1 [15:29:44.994] | : - Number of values expected: 1 [15:29:44.995] | : Reducing values from 1 chunks ... DONE [15:29:44.996] | future_lapply() -> future_xapply() ... done [15:29:44.997] future_lapply() ... done List of 1 $ : num 42 *** future_lapply() - tricky globals ... DONE *** future_lapply() - missing arguments ... [15:29:45.001] future_lapply() ... [15:29:45.003] | Globals in FUN(): [n=0] [15:29:45.004] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:45.005] | future_lapply() -> future_xapply() ... [15:29:45.007] | : Number of chunks: 2 [15:29:45.008] | : getGlobalsAndPackagesXApply() ... [15:29:45.009] | : . future.globals: TRUE [15:29:45.019] | : . globals found/used: [n=1] 'FUN' [15:29:45.020] | : . needed namespaces: [n=0] [15:29:45.021] | : . use_args: TRUE [15:29:45.022] | : . Getting '...' globals ... [15:29:45.024] | : . ' '...' content: [n=0] [15:29:45.025] | : . ' List of 1 [15:29:45.025] | : . ' $ ...: list() [15:29:45.025] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.025] | : . ' - attr(*, "where")=List of 1 [15:29:45.025] | : . ' ..$ ...: [15:29:45.025] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.025] | : . ' - attr(*, "resolved")= logi TRUE [15:29:45.025] | : . ' - attr(*, "total_size")= num NA [15:29:45.035] | : . Getting '...' globals ... done [15:29:45.036] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:45.037] | : . List of 2 [15:29:45.037] | : . $ ...future.FUN:function (y) [15:29:45.037] | : . $ ... : list() [15:29:45.037] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.037] | : . - attr(*, "where")=List of 2 [15:29:45.037] | : . ..$ ...future.FUN: [15:29:45.037] | : . ..$ ... : [15:29:45.037] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.037] | : . - attr(*, "resolved")= logi FALSE [15:29:45.037] | : . - attr(*, "total_size")= num 3716 [15:29:45.042] | : . Packages to be attached in all futures: [n=0] [15:29:45.042] | : getGlobalsAndPackagesXApply() ... done [15:29:45.043] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.044] | : List of 5 [15:29:45.044] | : $ ...future.FUN :function (y) [15:29:45.044] | : $ ... : list() [15:29:45.044] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.044] | : $ ...future.elements_ii : NULL [15:29:45.044] | : $ ...future.seeds_ii : NULL [15:29:45.044] | : $ ...future.globals.maxSize: NULL [15:29:45.044] | : - attr(*, "where")=List of 5 [15:29:45.044] | : ..$ ...future.FUN : [15:29:45.044] | : ..$ ... : [15:29:45.044] | : ..$ ...future.elements_ii : [15:29:45.044] | : ..$ ...future.seeds_ii : [15:29:45.044] | : ..$ ...future.globals.maxSize: [15:29:45.044] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.044] | : - attr(*, "resolved")= logi FALSE [15:29:45.044] | : - attr(*, "total_size")= num 3716 [15:29:45.050] | : Number of futures (= number of chunks): 2 [15:29:45.050] | : Launching 2 futures (chunks) ... [15:29:45.051] | : Chunk #1 of 2 ... [15:29:45.052] | : - Finding globals in 'X' for chunk #1 ... [15:29:45.053] | : + additional globals found: [n=0] [15:29:45.053] | : + additional namespaces needed: [n=0] [15:29:45.054] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:45.054] | : - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [15:29:45.055] | : - seeds: [15:29:45.056] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.060] | : Created future: [15:29:45.062] | : MultisessionFuture: [15:29:45.062] | : Label: 'future_lapply-1' [15:29:45.062] | : Expression: [15:29:45.062] | : { [15:29:45.062] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.062] | : "# expression in do.call(), because function called uses '...' " [15:29:45.062] | : "# as a global variable " [15:29:45.062] | : do.call(function(...) { [15:29:45.062] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.062] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.062] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.062] | : "# anonymous function. " [15:29:45.062] | : "# " [15:29:45.062] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.062] | : "# function environment of FUN() to the calling environment. " [15:29:45.062] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.062] | : "# global environment, which is where globals are written. " [15:29:45.062] | : penv <- env <- environment(...future.FUN) [15:29:45.062] | : repeat { [15:29:45.062] | : if (identical(env, globalenv()) || identical(env, [15:29:45.062] | : emptyenv())) [15:29:45.062] | : break [15:29:45.062] | : penv <- env [15:29:45.062] | : env <- parent.env(env) [15:29:45.062] | : } [15:29:45.062] | : if (identical(penv, globalenv())) { [15:29:45.062] | : environment(...future.FUN) <- environment() [15:29:45.062] | : } [15:29:45.062] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.062] | : !isNamespace(penv)) { [15:29:45.062] | : parent.env(penv) <- environment() [15:29:45.062] | : } [15:29:45.062] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.062] | : { [15:29:45.062] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.062] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.062] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.062] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.062] | : on.exit(options(oopts), add = TRUE) [15:29:45.062] | : } [15:29:45.062] | : { [15:29:45.062] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.062] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.062] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.062] | : { [15:29:45.062] | : ...future.FUN(...future.X_jj, ...) [15:29:45.062] | : } [15:29:45.062] | : }) [15:29:45.062] | : } [15:29:45.062] | : } [15:29:45.062] | : }, args = future.call.arguments) [15:29:45.062] | : } [15:29:45.062] | : Globals: 5 objects totaling 3.71 KiB (function '...future.FUN' of 295 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 43 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:45.062] | : Packages: [15:29:45.062] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.062] | : Capture standard output: TRUE [15:29:45.062] | : Capture condition classes: 'condition' (excluding '') [15:29:45.062] | : Immediate condition classes: 'immediateCondition' [15:29:45.062] | : Lazy evaluation: FALSE [15:29:45.062] | : Local evaluation: TRUE [15:29:45.062] | : Early signaling: FALSE [15:29:45.062] | : Actions: [n=1] 'run' [15:29:45.062] | : State: 'running' ("Future is being evaluated") [15:29:45.062] | : Resolved: TRUE [15:29:45.062] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-29 [15:29:45.062] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.062] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.062] | : Value: [15:29:45.062] | : Conditions captured: [15:29:45.068] | : Chunk #1 of 2 ... DONE [15:29:45.069] | : Chunk #2 of 2 ... [15:29:45.070] | : - Finding globals in 'X' for chunk #2 ... [15:29:45.071] | : + additional globals found: [n=0] [15:29:45.072] | : + additional namespaces needed: [n=0] [15:29:45.073] | : - Finding globals in 'X' for chunk #2 ... DONE [15:29:45.074] | : - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [15:29:45.075] | : - seeds: [15:29:45.076] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.081] | : Created future: [15:29:45.081] | : MultisessionFuture: [15:29:45.081] | : Label: 'future_lapply-2' [15:29:45.081] | : Expression: [15:29:45.081] | : { [15:29:45.081] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.081] | : "# expression in do.call(), because function called uses '...' " [15:29:45.081] | : "# as a global variable " [15:29:45.081] | : do.call(function(...) { [15:29:45.081] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.081] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.081] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.081] | : "# anonymous function. " [15:29:45.081] | : "# " [15:29:45.081] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.081] | : "# function environment of FUN() to the calling environment. " [15:29:45.081] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.081] | : "# global environment, which is where globals are written. " [15:29:45.081] | : penv <- env <- environment(...future.FUN) [15:29:45.081] | : repeat { [15:29:45.081] | : if (identical(env, globalenv()) || identical(env, [15:29:45.081] | : emptyenv())) [15:29:45.081] | : break [15:29:45.081] | : penv <- env [15:29:45.081] | : env <- parent.env(env) [15:29:45.081] | : } [15:29:45.081] | : if (identical(penv, globalenv())) { [15:29:45.081] | : environment(...future.FUN) <- environment() [15:29:45.081] | : } [15:29:45.081] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.081] | : !isNamespace(penv)) { [15:29:45.081] | : parent.env(penv) <- environment() [15:29:45.081] | : } [15:29:45.081] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.081] | : { [15:29:45.081] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.081] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.081] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.081] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.081] | : on.exit(options(oopts), add = TRUE) [15:29:45.081] | : } [15:29:45.081] | : { [15:29:45.081] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.081] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.081] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.081] | : { [15:29:45.081] | : ...future.FUN(...future.X_jj, ...) [15:29:45.081] | : } [15:29:45.081] | : }) [15:29:45.081] | : } [15:29:45.081] | : } [15:29:45.081] | : }, args = future.call.arguments) [15:29:45.081] | : } [15:29:45.081] | : Globals: 5 objects totaling 3.71 KiB (function '...future.FUN' of 295 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 43 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:45.081] | : Packages: [15:29:45.081] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.081] | : Capture standard output: TRUE [15:29:45.081] | : Capture condition classes: 'condition' (excluding '') [15:29:45.081] | : Immediate condition classes: 'immediateCondition' [15:29:45.081] | : Lazy evaluation: FALSE [15:29:45.081] | : Local evaluation: TRUE [15:29:45.081] | : Early signaling: FALSE [15:29:45.081] | : Actions: [n=1] 'run' [15:29:45.081] | : State: 'running' ("Future is being evaluated") [15:29:45.081] | : Resolved: TRUE [15:29:45.081] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-30 [15:29:45.081] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.081] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.081] | : Value: [15:29:45.081] | : Conditions captured: [15:29:45.090] | : Chunk #2 of 2 ... DONE [15:29:45.090] | : Launching 2 futures (chunks) ... DONE [15:29:45.091] | : Resolving 2 futures (chunks) ... [15:29:45.092] | : - Number of value chunks collected: 2 [15:29:45.092] | : Resolving 2 futures (chunks) ... DONE [15:29:45.093] | : Reducing values from 2 chunks ... [15:29:45.093] | : - Number of values collected after concatenation: 2 [15:29:45.094] | : - Number of values expected: 2 [15:29:45.094] | : Reducing values from 2 chunks ... DONE [15:29:45.095] | future_lapply() -> future_xapply() ... done [15:29:45.095] future_lapply() ... done *** future_lapply() - missing arguments ... DONE *** future_lapply() - false positives ... [15:29:45.096] future_lapply() ... [15:29:45.099] | Globals in FUN(): [n=0] [15:29:45.100] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:45.102] | future_lapply() -> future_xapply() ... [15:29:45.104] | : Number of chunks: 2 [15:29:45.104] | : getGlobalsAndPackagesXApply() ... [15:29:45.105] | : . future.globals: TRUE [15:29:45.115] | : . globals found/used: [n=1] 'FUN' [15:29:45.116] | : . needed namespaces: [n=0] [15:29:45.117] | : . use_args: TRUE [15:29:45.118] | : . Getting '...' globals ... [15:29:45.119] | : . ' '...' content: [n=0] [15:29:45.120] | : . ' List of 1 [15:29:45.120] | : . ' $ ...: list() [15:29:45.120] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.120] | : . ' - attr(*, "where")=List of 1 [15:29:45.120] | : . ' ..$ ...: [15:29:45.120] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.120] | : . ' - attr(*, "resolved")= logi TRUE [15:29:45.120] | : . ' - attr(*, "total_size")= num NA [15:29:45.126] | : . Getting '...' globals ... done [15:29:45.127] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:45.128] | : . List of 2 [15:29:45.128] | : . $ ...future.FUN:function (y) [15:29:45.128] | : . $ ... : list() [15:29:45.128] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.128] | : . - attr(*, "where")=List of 2 [15:29:45.128] | : . ..$ ...future.FUN: [15:29:45.128] | : . ..$ ... : [15:29:45.128] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.128] | : . - attr(*, "resolved")= logi FALSE [15:29:45.128] | : . - attr(*, "total_size")= num 3904 [15:29:45.135] | : . Packages to be attached in all futures: [n=0] [15:29:45.137] | : getGlobalsAndPackagesXApply() ... done [15:29:45.138] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.139] | : List of 5 [15:29:45.139] | : $ ...future.FUN :function (y) [15:29:45.139] | : $ ... : list() [15:29:45.139] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.139] | : $ ...future.elements_ii : NULL [15:29:45.139] | : $ ...future.seeds_ii : NULL [15:29:45.139] | : $ ...future.globals.maxSize: NULL [15:29:45.139] | : - attr(*, "where")=List of 5 [15:29:45.139] | : ..$ ...future.FUN : [15:29:45.139] | : ..$ ... : [15:29:45.139] | : ..$ ...future.elements_ii : [15:29:45.139] | : ..$ ...future.seeds_ii : [15:29:45.139] | : ..$ ...future.globals.maxSize: [15:29:45.139] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.139] | : - attr(*, "resolved")= logi FALSE [15:29:45.139] | : - attr(*, "total_size")= num 3904 [15:29:45.149] | : Number of futures (= number of chunks): 2 [15:29:45.150] | : Launching 2 futures (chunks) ... [15:29:45.151] | : Chunk #1 of 2 ... [15:29:45.152] | : - Finding globals in 'X' for chunk #1 ... [15:29:45.154] | : + additional globals found: [n=0] [15:29:45.155] | : + additional namespaces needed: [n=0] [15:29:45.156] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:45.157] | : - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [15:29:45.158] | : - seeds: [15:29:45.159] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.164] | : Created future: [15:29:45.165] | : MultisessionFuture: [15:29:45.165] | : Label: 'future_lapply-1' [15:29:45.165] | : Expression: [15:29:45.165] | : { [15:29:45.165] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.165] | : "# expression in do.call(), because function called uses '...' " [15:29:45.165] | : "# as a global variable " [15:29:45.165] | : do.call(function(...) { [15:29:45.165] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.165] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.165] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.165] | : "# anonymous function. " [15:29:45.165] | : "# " [15:29:45.165] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.165] | : "# function environment of FUN() to the calling environment. " [15:29:45.165] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.165] | : "# global environment, which is where globals are written. " [15:29:45.165] | : penv <- env <- environment(...future.FUN) [15:29:45.165] | : repeat { [15:29:45.165] | : if (identical(env, globalenv()) || identical(env, [15:29:45.165] | : emptyenv())) [15:29:45.165] | : break [15:29:45.165] | : penv <- env [15:29:45.165] | : env <- parent.env(env) [15:29:45.165] | : } [15:29:45.165] | : if (identical(penv, globalenv())) { [15:29:45.165] | : environment(...future.FUN) <- environment() [15:29:45.165] | : } [15:29:45.165] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.165] | : !isNamespace(penv)) { [15:29:45.165] | : parent.env(penv) <- environment() [15:29:45.165] | : } [15:29:45.165] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.165] | : { [15:29:45.165] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.165] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.165] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.165] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.165] | : on.exit(options(oopts), add = TRUE) [15:29:45.165] | : } [15:29:45.165] | : { [15:29:45.165] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.165] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.165] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.165] | : { [15:29:45.165] | : ...future.FUN(...future.X_jj, ...) [15:29:45.165] | : } [15:29:45.165] | : }) [15:29:45.165] | : } [15:29:45.165] | : } [15:29:45.165] | : }, args = future.call.arguments) [15:29:45.165] | : } [15:29:45.165] | : Globals: 5 objects totaling 3.80 KiB (function '...future.FUN' of 389 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 43 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:45.165] | : Packages: [15:29:45.165] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.165] | : Capture standard output: TRUE [15:29:45.165] | : Capture condition classes: 'condition' (excluding '') [15:29:45.165] | : Immediate condition classes: 'immediateCondition' [15:29:45.165] | : Lazy evaluation: FALSE [15:29:45.165] | : Local evaluation: TRUE [15:29:45.165] | : Early signaling: FALSE [15:29:45.165] | : Actions: [n=1] 'run' [15:29:45.165] | : State: 'running' ("Future is being evaluated") [15:29:45.165] | : Resolved: TRUE [15:29:45.165] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-31 [15:29:45.165] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.165] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.165] | : Value: [15:29:45.165] | : Conditions captured: [15:29:45.173] | : Chunk #1 of 2 ... DONE [15:29:45.174] | : Chunk #2 of 2 ... [15:29:45.175] | : - Finding globals in 'X' for chunk #2 ... [15:29:45.177] | : + additional globals found: [n=0] [15:29:45.178] | : + additional namespaces needed: [n=0] [15:29:45.178] | : - Finding globals in 'X' for chunk #2 ... DONE [15:29:45.179] | : - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [15:29:45.180] | : - seeds: [15:29:45.181] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.186] | : Created future: [15:29:45.187] | : MultisessionFuture: [15:29:45.187] | : Label: 'future_lapply-2' [15:29:45.187] | : Expression: [15:29:45.187] | : { [15:29:45.187] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.187] | : "# expression in do.call(), because function called uses '...' " [15:29:45.187] | : "# as a global variable " [15:29:45.187] | : do.call(function(...) { [15:29:45.187] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.187] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.187] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.187] | : "# anonymous function. " [15:29:45.187] | : "# " [15:29:45.187] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.187] | : "# function environment of FUN() to the calling environment. " [15:29:45.187] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.187] | : "# global environment, which is where globals are written. " [15:29:45.187] | : penv <- env <- environment(...future.FUN) [15:29:45.187] | : repeat { [15:29:45.187] | : if (identical(env, globalenv()) || identical(env, [15:29:45.187] | : emptyenv())) [15:29:45.187] | : break [15:29:45.187] | : penv <- env [15:29:45.187] | : env <- parent.env(env) [15:29:45.187] | : } [15:29:45.187] | : if (identical(penv, globalenv())) { [15:29:45.187] | : environment(...future.FUN) <- environment() [15:29:45.187] | : } [15:29:45.187] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.187] | : !isNamespace(penv)) { [15:29:45.187] | : parent.env(penv) <- environment() [15:29:45.187] | : } [15:29:45.187] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.187] | : { [15:29:45.187] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.187] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.187] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.187] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.187] | : on.exit(options(oopts), add = TRUE) [15:29:45.187] | : } [15:29:45.187] | : { [15:29:45.187] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.187] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.187] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.187] | : { [15:29:45.187] | : ...future.FUN(...future.X_jj, ...) [15:29:45.187] | : } [15:29:45.187] | : }) [15:29:45.187] | : } [15:29:45.187] | : } [15:29:45.187] | : }, args = future.call.arguments) [15:29:45.187] | : } [15:29:45.187] | : Globals: 5 objects totaling 3.80 KiB (function '...future.FUN' of 389 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, list '...future.elements_ii' of 43 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:45.187] | : Packages: [15:29:45.187] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.187] | : Capture standard output: TRUE [15:29:45.187] | : Capture condition classes: 'condition' (excluding '') [15:29:45.187] | : Immediate condition classes: 'immediateCondition' [15:29:45.187] | : Lazy evaluation: FALSE [15:29:45.187] | : Local evaluation: TRUE [15:29:45.187] | : Early signaling: FALSE [15:29:45.187] | : Actions: [n=1] 'run' [15:29:45.187] | : State: 'running' ("Future is being evaluated") [15:29:45.187] | : Resolved: TRUE [15:29:45.187] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-32 [15:29:45.187] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.187] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.187] | : Value: [15:29:45.187] | : Conditions captured: [15:29:45.195] | : Chunk #2 of 2 ... DONE [15:29:45.196] | : Launching 2 futures (chunks) ... DONE [15:29:45.197] | : Resolving 2 futures (chunks) ... [15:29:45.198] | : - Number of value chunks collected: 2 [15:29:45.199] | : Resolving 2 futures (chunks) ... DONE [15:29:45.199] | : Reducing values from 2 chunks ... [15:29:45.200] | : - Number of values collected after concatenation: 2 [15:29:45.200] | : - Number of values expected: 2 [15:29:45.201] | : Reducing values from 2 chunks ... DONE [15:29:45.201] | future_lapply() -> future_xapply() ... done [15:29:45.201] future_lapply() ... done *** future_lapply() - false positives ... DONE *** future_lapply() - too large ... Baseline size of globals: 1.80 KiB - true positive ... [15:29:45.205] future_lapply() ... [15:29:45.206] | Globals in FUN(): [n=2] '{', 'getOption' [15:29:45.207] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:45.207] | future_lapply() -> future_xapply() ... [15:29:45.208] | : Number of chunks: 2 [15:29:45.209] | : getGlobalsAndPackagesXApply() ... [15:29:45.210] | : . future.globals: TRUE [15:29:45.221] | : getGlobalsAndPackagesXApply() ... done [15:29:45.222] | future_lapply() -> future_xapply() ... done [15:29:45.223] future_lapply() ... done [15:29:45.224] future_lapply() ... [15:29:45.226] | Globals in FUN(): [n=2] '{', 'getOption' [15:29:45.227] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:45.228] | future_lapply() -> future_xapply() ... [15:29:45.230] | : Number of chunks: 2 [15:29:45.230] | : getGlobalsAndPackagesXApply() ... [15:29:45.231] | : . future.globals: TRUE [15:29:45.243] | : . globals found/used: [n=1] 'FUN' [15:29:45.244] | : . needed namespaces: [n=0] [15:29:45.244] | : . use_args: TRUE [15:29:45.245] | : . Getting '...' globals ... [15:29:45.246] | : . ' '...' content: [n=0] [15:29:45.247] | : . ' List of 1 [15:29:45.247] | : . ' $ ...: list() [15:29:45.247] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.247] | : . ' - attr(*, "where")=List of 1 [15:29:45.247] | : . ' ..$ ...: [15:29:45.247] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.247] | : . ' - attr(*, "resolved")= logi TRUE [15:29:45.247] | : . ' - attr(*, "total_size")= num NA [15:29:45.250] | : . Getting '...' globals ... done [15:29:45.251] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:45.252] | : . List of 2 [15:29:45.252] | : . $ ...future.FUN:function (x) [15:29:45.252] | : . $ ... : list() [15:29:45.252] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.252] | : . - attr(*, "where")=List of 2 [15:29:45.252] | : . ..$ ...future.FUN: [15:29:45.252] | : . ..$ ... : [15:29:45.252] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.252] | : . - attr(*, "resolved")= logi FALSE [15:29:45.252] | : . - attr(*, "total_size")= num 4670 [15:29:45.258] | : . Packages to be attached in all futures: [n=0] [15:29:45.259] | : getGlobalsAndPackagesXApply() ... done [15:29:45.261] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.262] | : List of 5 [15:29:45.262] | : $ ...future.FUN :function (x) [15:29:45.262] | : $ ... : list() [15:29:45.262] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.262] | : $ ...future.elements_ii : NULL [15:29:45.262] | : $ ...future.seeds_ii : NULL [15:29:45.262] | : $ ...future.globals.maxSize: NULL [15:29:45.262] | : - attr(*, "where")=List of 5 [15:29:45.262] | : ..$ ...future.FUN : [15:29:45.262] | : ..$ ... : [15:29:45.262] | : ..$ ...future.elements_ii : [15:29:45.262] | : ..$ ...future.seeds_ii : [15:29:45.262] | : ..$ ...future.globals.maxSize: [15:29:45.262] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.262] | : - attr(*, "resolved")= logi FALSE [15:29:45.262] | : - attr(*, "total_size")= num 4670 [15:29:45.272] | : Number of futures (= number of chunks): 2 [15:29:45.273] | : Launching 2 futures (chunks) ... [15:29:45.274] | : Chunk #1 of 2 ... [15:29:45.275] | : - Finding globals in 'X' for chunk #1 ... [15:29:45.277] | : + additional globals found: [n=0] [15:29:45.278] | : + additional namespaces needed: [n=0] [15:29:45.279] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:45.280] | : - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [15:29:45.281] | : - seeds: [15:29:45.282] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.287] | : Created future: [15:29:45.288] | : MultisessionFuture: [15:29:45.288] | : Label: 'future_lapply-1' [15:29:45.288] | : Expression: [15:29:45.288] | : { [15:29:45.288] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.288] | : "# expression in do.call(), because function called uses '...' " [15:29:45.288] | : "# as a global variable " [15:29:45.288] | : do.call(function(...) { [15:29:45.288] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.288] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.288] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.288] | : "# anonymous function. " [15:29:45.288] | : "# " [15:29:45.288] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.288] | : "# function environment of FUN() to the calling environment. " [15:29:45.288] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.288] | : "# global environment, which is where globals are written. " [15:29:45.288] | : penv <- env <- environment(...future.FUN) [15:29:45.288] | : repeat { [15:29:45.288] | : if (identical(env, globalenv()) || identical(env, [15:29:45.288] | : emptyenv())) [15:29:45.288] | : break [15:29:45.288] | : penv <- env [15:29:45.288] | : env <- parent.env(env) [15:29:45.288] | : } [15:29:45.288] | : if (identical(penv, globalenv())) { [15:29:45.288] | : environment(...future.FUN) <- environment() [15:29:45.288] | : } [15:29:45.288] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.288] | : !isNamespace(penv)) { [15:29:45.288] | : parent.env(penv) <- environment() [15:29:45.288] | : } [15:29:45.288] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.288] | : { [15:29:45.288] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.288] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.288] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.288] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.288] | : on.exit(options(oopts), add = TRUE) [15:29:45.288] | : } [15:29:45.288] | : { [15:29:45.288] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.288] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.288] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.288] | : { [15:29:45.288] | : ...future.FUN(...future.X_jj, ...) [15:29:45.288] | : } [15:29:45.288] | : }) [15:29:45.288] | : } [15:29:45.288] | : } [15:29:45.288] | : }, args = future.call.arguments) [15:29:45.288] | : } [15:29:45.288] | : Globals: 5 objects totaling 5.19 KiB (list '...future.elements_ii' of 445 bytes, function '...future.FUN' of 407 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:45.288] | : Packages: [15:29:45.288] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.288] | : Capture standard output: TRUE [15:29:45.288] | : Capture condition classes: 'condition' (excluding '') [15:29:45.288] | : Immediate condition classes: 'immediateCondition' [15:29:45.288] | : Lazy evaluation: FALSE [15:29:45.288] | : Local evaluation: TRUE [15:29:45.288] | : Early signaling: FALSE [15:29:45.288] | : Actions: [n=1] 'run' [15:29:45.288] | : State: 'running' ("Future is being evaluated") [15:29:45.288] | : Resolved: TRUE [15:29:45.288] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-33 [15:29:45.288] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.288] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.288] | : Value: [15:29:45.288] | : Conditions captured: [15:29:45.295] | : Chunk #1 of 2 ... DONE [15:29:45.297] | : Chunk #2 of 2 ... [15:29:45.298] | : - Finding globals in 'X' for chunk #2 ... [15:29:45.300] | : + additional globals found: [n=0] [15:29:45.302] | : + additional namespaces needed: [n=0] [15:29:45.303] | : - Finding globals in 'X' for chunk #2 ... DONE [15:29:45.304] | : - Adjusted option 'future.globals.maxSize': 524288000 -> 2 * 524288000 = 1048576000 (bytes) [15:29:45.305] | : - seeds: [15:29:45.306] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.312] | : Created future: [15:29:45.313] | : MultisessionFuture: [15:29:45.313] | : Label: 'future_lapply-2' [15:29:45.313] | : Expression: [15:29:45.313] | : { [15:29:45.313] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.313] | : "# expression in do.call(), because function called uses '...' " [15:29:45.313] | : "# as a global variable " [15:29:45.313] | : do.call(function(...) { [15:29:45.313] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.313] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.313] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.313] | : "# anonymous function. " [15:29:45.313] | : "# " [15:29:45.313] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.313] | : "# function environment of FUN() to the calling environment. " [15:29:45.313] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.313] | : "# global environment, which is where globals are written. " [15:29:45.313] | : penv <- env <- environment(...future.FUN) [15:29:45.313] | : repeat { [15:29:45.313] | : if (identical(env, globalenv()) || identical(env, [15:29:45.313] | : emptyenv())) [15:29:45.313] | : break [15:29:45.313] | : penv <- env [15:29:45.313] | : env <- parent.env(env) [15:29:45.313] | : } [15:29:45.313] | : if (identical(penv, globalenv())) { [15:29:45.313] | : environment(...future.FUN) <- environment() [15:29:45.313] | : } [15:29:45.313] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.313] | : !isNamespace(penv)) { [15:29:45.313] | : parent.env(penv) <- environment() [15:29:45.313] | : } [15:29:45.313] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.313] | : { [15:29:45.313] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.313] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.313] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.313] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.313] | : on.exit(options(oopts), add = TRUE) [15:29:45.313] | : } [15:29:45.313] | : { [15:29:45.313] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.313] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.313] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.313] | : { [15:29:45.313] | : ...future.FUN(...future.X_jj, ...) [15:29:45.313] | : } [15:29:45.313] | : }) [15:29:45.313] | : } [15:29:45.313] | : } [15:29:45.313] | : }, args = future.call.arguments) [15:29:45.313] | : } [15:29:45.313] | : Globals: 5 objects totaling 5.19 KiB (list '...future.elements_ii' of 445 bytes, function '...future.FUN' of 407 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, NULL '...future.seeds_ii' of 27 bytes, NULL '...future.globals.maxSize' of 27 bytes) [15:29:45.313] | : Packages: [15:29:45.313] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.313] | : Capture standard output: TRUE [15:29:45.313] | : Capture condition classes: 'condition' (excluding '') [15:29:45.313] | : Immediate condition classes: 'immediateCondition' [15:29:45.313] | : Lazy evaluation: FALSE [15:29:45.313] | : Local evaluation: TRUE [15:29:45.313] | : Early signaling: FALSE [15:29:45.313] | : Actions: [n=1] 'run' [15:29:45.313] | : State: 'running' ("Future is being evaluated") [15:29:45.313] | : Resolved: TRUE [15:29:45.313] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-34 [15:29:45.313] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.313] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.313] | : Value: [15:29:45.313] | : Conditions captured: [15:29:45.322] | : Chunk #2 of 2 ... DONE [15:29:45.323] | : Launching 2 futures (chunks) ... DONE [15:29:45.323] | : Resolving 2 futures (chunks) ... [15:29:45.325] | : - Number of value chunks collected: 2 [15:29:45.326] | : Resolving 2 futures (chunks) ... DONE [15:29:45.327] | : Reducing values from 2 chunks ... [15:29:45.327] | : - Number of values collected after concatenation: 10 [15:29:45.328] | : - Number of values expected: 10 [15:29:45.329] | : Reducing values from 2 chunks ... DONE [15:29:45.330] | future_lapply() -> future_xapply() ... done [15:29:45.330] future_lapply() ... done List of 10 $ : NULL $ : NULL $ : NULL $ : NULL $ : NULL $ : NULL $ : NULL $ : NULL $ : NULL $ : NULL - approximately invariant to chunk size ... [15:29:45.342] future_lapply() ... [15:29:45.343] | Globals in FUN(): [n=2] '{', 'getOption' [15:29:45.344] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:45.345] | future_lapply() -> future_xapply() ... [15:29:45.346] | : Number of chunks: 10 [15:29:45.346] | : getGlobalsAndPackagesXApply() ... [15:29:45.347] | : . future.globals: TRUE [15:29:45.354] | : . globals found/used: [n=1] 'FUN' [15:29:45.355] | : . needed namespaces: [n=0] [15:29:45.355] | : . use_args: TRUE [15:29:45.356] | : . Getting '...' globals ... [15:29:45.356] | : . ' '...' content: [n=0] [15:29:45.357] | : . ' List of 1 [15:29:45.357] | : . ' $ ...: list() [15:29:45.357] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.357] | : . ' - attr(*, "where")=List of 1 [15:29:45.357] | : . ' ..$ ...: [15:29:45.357] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.357] | : . ' - attr(*, "resolved")= logi TRUE [15:29:45.357] | : . ' - attr(*, "total_size")= num NA [15:29:45.360] | : . Getting '...' globals ... done [15:29:45.361] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:45.362] | : . List of 2 [15:29:45.362] | : . $ ...future.FUN:function (x) [15:29:45.362] | : . $ ... : list() [15:29:45.362] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.362] | : . - attr(*, "where")=List of 2 [15:29:45.362] | : . ..$ ...future.FUN: [15:29:45.362] | : . ..$ ... : [15:29:45.362] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.362] | : . - attr(*, "resolved")= logi FALSE [15:29:45.362] | : . - attr(*, "total_size")= num 4686 [15:29:45.365] | : . Packages to be attached in all futures: [n=0] [15:29:45.366] | : getGlobalsAndPackagesXApply() ... done [15:29:45.366] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.367] | : List of 5 [15:29:45.367] | : $ ...future.FUN :function (x) [15:29:45.367] | : $ ... : list() [15:29:45.367] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.367] | : $ ...future.elements_ii : NULL [15:29:45.367] | : $ ...future.seeds_ii : NULL [15:29:45.367] | : $ ...future.globals.maxSize: NULL [15:29:45.367] | : - attr(*, "where")=List of 5 [15:29:45.367] | : ..$ ...future.FUN : [15:29:45.367] | : ..$ ... : [15:29:45.367] | : ..$ ...future.elements_ii : [15:29:45.367] | : ..$ ...future.seeds_ii : [15:29:45.367] | : ..$ ...future.globals.maxSize: [15:29:45.367] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.367] | : - attr(*, "resolved")= logi FALSE [15:29:45.367] | : - attr(*, "total_size")= num 4686 [15:29:45.377] | : Number of futures (= number of chunks): 10 [15:29:45.378] | : Launching 10 futures (chunks) ... [15:29:45.379] | : Chunk #1 of 10 ... [15:29:45.379] | : - Finding globals in 'X' for chunk #1 ... [15:29:45.380] | : + additional globals found: [n=0] [15:29:45.381] | : + additional namespaces needed: [n=0] [15:29:45.382] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:45.383] | : - Adjusted option 'future.globals.maxSize': 2306 -> 10 * 2306 = 23056 (bytes) [15:29:45.384] | : - seeds: [15:29:45.385] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.388] | : Created future: [15:29:45.389] | : MultisessionFuture: [15:29:45.389] | : Label: 'future_lapply-1' [15:29:45.389] | : Expression: [15:29:45.389] | : { [15:29:45.389] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.389] | : "# expression in do.call(), because function called uses '...' " [15:29:45.389] | : "# as a global variable " [15:29:45.389] | : do.call(function(...) { [15:29:45.389] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.389] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.389] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.389] | : "# anonymous function. " [15:29:45.389] | : "# " [15:29:45.389] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.389] | : "# function environment of FUN() to the calling environment. " [15:29:45.389] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.389] | : "# global environment, which is where globals are written. " [15:29:45.389] | : penv <- env <- environment(...future.FUN) [15:29:45.389] | : repeat { [15:29:45.389] | : if (identical(env, globalenv()) || identical(env, [15:29:45.389] | : emptyenv())) [15:29:45.389] | : break [15:29:45.389] | : penv <- env [15:29:45.389] | : env <- parent.env(env) [15:29:45.389] | : } [15:29:45.389] | : if (identical(penv, globalenv())) { [15:29:45.389] | : environment(...future.FUN) <- environment() [15:29:45.389] | : } [15:29:45.389] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.389] | : !isNamespace(penv)) { [15:29:45.389] | : parent.env(penv) <- environment() [15:29:45.389] | : } [15:29:45.389] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.389] | : { [15:29:45.389] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.389] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.389] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.389] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.389] | : on.exit(options(oopts), add = TRUE) [15:29:45.389] | : } [15:29:45.389] | : { [15:29:45.389] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.389] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.389] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.389] | : { [15:29:45.389] | : ...future.FUN(...future.X_jj, ...) [15:29:45.389] | : } [15:29:45.389] | : }) [15:29:45.389] | : } [15:29:45.389] | : } [15:29:45.389] | : }, args = future.call.arguments) [15:29:45.389] | : } [15:29:45.389] | : Globals: 5 objects totaling 4.92 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 141 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.389] | : Packages: [15:29:45.389] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.389] | : Capture standard output: TRUE [15:29:45.389] | : Capture condition classes: 'condition' (excluding '') [15:29:45.389] | : Immediate condition classes: 'immediateCondition' [15:29:45.389] | : Lazy evaluation: FALSE [15:29:45.389] | : Local evaluation: TRUE [15:29:45.389] | : Early signaling: FALSE [15:29:45.389] | : Actions: [n=1] 'run' [15:29:45.389] | : State: 'running' ("Future is being evaluated") [15:29:45.389] | : Resolved: TRUE [15:29:45.389] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-35 [15:29:45.389] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.389] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.389] | : Value: [15:29:45.389] | : Conditions captured: [15:29:45.397] | : Chunk #1 of 10 ... DONE [15:29:45.398] | : Chunk #2 of 10 ... [15:29:45.398] | : - Finding globals in 'X' for chunk #2 ... [15:29:45.400] | : + additional globals found: [n=0] [15:29:45.400] | : + additional namespaces needed: [n=0] [15:29:45.401] | : - Finding globals in 'X' for chunk #2 ... DONE [15:29:45.402] | : - Adjusted option 'future.globals.maxSize': 2306 -> 10 * 2306 = 23056 (bytes) [15:29:45.403] | : - seeds: [15:29:45.403] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.407] | : Created future: [15:29:45.408] | : MultisessionFuture: [15:29:45.408] | : Label: 'future_lapply-2' [15:29:45.408] | : Expression: [15:29:45.408] | : { [15:29:45.408] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.408] | : "# expression in do.call(), because function called uses '...' " [15:29:45.408] | : "# as a global variable " [15:29:45.408] | : do.call(function(...) { [15:29:45.408] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.408] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.408] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.408] | : "# anonymous function. " [15:29:45.408] | : "# " [15:29:45.408] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.408] | : "# function environment of FUN() to the calling environment. " [15:29:45.408] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.408] | : "# global environment, which is where globals are written. " [15:29:45.408] | : penv <- env <- environment(...future.FUN) [15:29:45.408] | : repeat { [15:29:45.408] | : if (identical(env, globalenv()) || identical(env, [15:29:45.408] | : emptyenv())) [15:29:45.408] | : break [15:29:45.408] | : penv <- env [15:29:45.408] | : env <- parent.env(env) [15:29:45.408] | : } [15:29:45.408] | : if (identical(penv, globalenv())) { [15:29:45.408] | : environment(...future.FUN) <- environment() [15:29:45.408] | : } [15:29:45.408] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.408] | : !isNamespace(penv)) { [15:29:45.408] | : parent.env(penv) <- environment() [15:29:45.408] | : } [15:29:45.408] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.408] | : { [15:29:45.408] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.408] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.408] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.408] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.408] | : on.exit(options(oopts), add = TRUE) [15:29:45.408] | : } [15:29:45.408] | : { [15:29:45.408] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.408] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.408] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.408] | : { [15:29:45.408] | : ...future.FUN(...future.X_jj, ...) [15:29:45.408] | : } [15:29:45.408] | : }) [15:29:45.408] | : } [15:29:45.408] | : } [15:29:45.408] | : }, args = future.call.arguments) [15:29:45.408] | : } [15:29:45.408] | : Globals: 5 objects totaling 4.92 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 141 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.408] | : Packages: [15:29:45.408] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.408] | : Capture standard output: TRUE [15:29:45.408] | : Capture condition classes: 'condition' (excluding '') [15:29:45.408] | : Immediate condition classes: 'immediateCondition' [15:29:45.408] | : Lazy evaluation: FALSE [15:29:45.408] | : Local evaluation: TRUE [15:29:45.408] | : Early signaling: FALSE [15:29:45.408] | : Actions: [n=1] 'run' [15:29:45.408] | : State: 'running' ("Future is being evaluated") [15:29:45.408] | : Resolved: TRUE [15:29:45.408] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-36 [15:29:45.408] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.408] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.408] | : Value: [15:29:45.408] | : Conditions captured: [15:29:45.417] | : Chunk #2 of 10 ... DONE [15:29:45.418] | : Chunk #3 of 10 ... [15:29:45.418] | : - Finding globals in 'X' for chunk #3 ... [15:29:45.420] | : + additional globals found: [n=0] [15:29:45.421] | : + additional namespaces needed: [n=0] [15:29:45.421] | : - Finding globals in 'X' for chunk #3 ... DONE [15:29:45.422] | : - Adjusted option 'future.globals.maxSize': 2306 -> 10 * 2306 = 23056 (bytes) [15:29:45.423] | : - seeds: [15:29:45.424] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.428] | : Created future: [15:29:45.429] | : MultisessionFuture: [15:29:45.429] | : Label: 'future_lapply-3' [15:29:45.429] | : Expression: [15:29:45.429] | : { [15:29:45.429] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.429] | : "# expression in do.call(), because function called uses '...' " [15:29:45.429] | : "# as a global variable " [15:29:45.429] | : do.call(function(...) { [15:29:45.429] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.429] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.429] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.429] | : "# anonymous function. " [15:29:45.429] | : "# " [15:29:45.429] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.429] | : "# function environment of FUN() to the calling environment. " [15:29:45.429] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.429] | : "# global environment, which is where globals are written. " [15:29:45.429] | : penv <- env <- environment(...future.FUN) [15:29:45.429] | : repeat { [15:29:45.429] | : if (identical(env, globalenv()) || identical(env, [15:29:45.429] | : emptyenv())) [15:29:45.429] | : break [15:29:45.429] | : penv <- env [15:29:45.429] | : env <- parent.env(env) [15:29:45.429] | : } [15:29:45.429] | : if (identical(penv, globalenv())) { [15:29:45.429] | : environment(...future.FUN) <- environment() [15:29:45.429] | : } [15:29:45.429] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.429] | : !isNamespace(penv)) { [15:29:45.429] | : parent.env(penv) <- environment() [15:29:45.429] | : } [15:29:45.429] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.429] | : { [15:29:45.429] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.429] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.429] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.429] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.429] | : on.exit(options(oopts), add = TRUE) [15:29:45.429] | : } [15:29:45.429] | : { [15:29:45.429] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.429] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.429] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.429] | : { [15:29:45.429] | : ...future.FUN(...future.X_jj, ...) [15:29:45.429] | : } [15:29:45.429] | : }) [15:29:45.429] | : } [15:29:45.429] | : } [15:29:45.429] | : }, args = future.call.arguments) [15:29:45.429] | : } [15:29:45.429] | : Globals: 5 objects totaling 4.92 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 141 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.429] | : Packages: [15:29:45.429] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.429] | : Capture standard output: TRUE [15:29:45.429] | : Capture condition classes: 'condition' (excluding '') [15:29:45.429] | : Immediate condition classes: 'immediateCondition' [15:29:45.429] | : Lazy evaluation: FALSE [15:29:45.429] | : Local evaluation: TRUE [15:29:45.429] | : Early signaling: FALSE [15:29:45.429] | : Actions: [n=1] 'run' [15:29:45.429] | : State: 'running' ("Future is being evaluated") [15:29:45.429] | : Resolved: TRUE [15:29:45.429] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-37 [15:29:45.429] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.429] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.429] | : Value: [15:29:45.429] | : Conditions captured: [15:29:45.438] | : Chunk #3 of 10 ... DONE [15:29:45.439] | : Chunk #4 of 10 ... [15:29:45.440] | : - Finding globals in 'X' for chunk #4 ... [15:29:45.442] | : + additional globals found: [n=0] [15:29:45.443] | : + additional namespaces needed: [n=0] [15:29:45.444] | : - Finding globals in 'X' for chunk #4 ... DONE [15:29:45.445] | : - Adjusted option 'future.globals.maxSize': 2306 -> 10 * 2306 = 23056 (bytes) [15:29:45.446] | : - seeds: [15:29:45.447] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.452] | : Created future: [15:29:45.453] | : MultisessionFuture: [15:29:45.453] | : Label: 'future_lapply-4' [15:29:45.453] | : Expression: [15:29:45.453] | : { [15:29:45.453] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.453] | : "# expression in do.call(), because function called uses '...' " [15:29:45.453] | : "# as a global variable " [15:29:45.453] | : do.call(function(...) { [15:29:45.453] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.453] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.453] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.453] | : "# anonymous function. " [15:29:45.453] | : "# " [15:29:45.453] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.453] | : "# function environment of FUN() to the calling environment. " [15:29:45.453] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.453] | : "# global environment, which is where globals are written. " [15:29:45.453] | : penv <- env <- environment(...future.FUN) [15:29:45.453] | : repeat { [15:29:45.453] | : if (identical(env, globalenv()) || identical(env, [15:29:45.453] | : emptyenv())) [15:29:45.453] | : break [15:29:45.453] | : penv <- env [15:29:45.453] | : env <- parent.env(env) [15:29:45.453] | : } [15:29:45.453] | : if (identical(penv, globalenv())) { [15:29:45.453] | : environment(...future.FUN) <- environment() [15:29:45.453] | : } [15:29:45.453] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.453] | : !isNamespace(penv)) { [15:29:45.453] | : parent.env(penv) <- environment() [15:29:45.453] | : } [15:29:45.453] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.453] | : { [15:29:45.453] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.453] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.453] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.453] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.453] | : on.exit(options(oopts), add = TRUE) [15:29:45.453] | : } [15:29:45.453] | : { [15:29:45.453] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.453] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.453] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.453] | : { [15:29:45.453] | : ...future.FUN(...future.X_jj, ...) [15:29:45.453] | : } [15:29:45.453] | : }) [15:29:45.453] | : } [15:29:45.453] | : } [15:29:45.453] | : }, args = future.call.arguments) [15:29:45.453] | : } [15:29:45.453] | : Globals: 5 objects totaling 4.92 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 141 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.453] | : Packages: [15:29:45.453] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.453] | : Capture standard output: TRUE [15:29:45.453] | : Capture condition classes: 'condition' (excluding '') [15:29:45.453] | : Immediate condition classes: 'immediateCondition' [15:29:45.453] | : Lazy evaluation: FALSE [15:29:45.453] | : Local evaluation: TRUE [15:29:45.453] | : Early signaling: FALSE [15:29:45.453] | : Actions: [n=1] 'run' [15:29:45.453] | : State: 'running' ("Future is being evaluated") [15:29:45.453] | : Resolved: TRUE [15:29:45.453] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-38 [15:29:45.453] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.453] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.453] | : Value: [15:29:45.453] | : Conditions captured: [15:29:45.461] | : Chunk #4 of 10 ... DONE [15:29:45.462] | : Chunk #5 of 10 ... [15:29:45.463] | : - Finding globals in 'X' for chunk #5 ... [15:29:45.465] | : + additional globals found: [n=0] [15:29:45.466] | : + additional namespaces needed: [n=0] [15:29:45.467] | : - Finding globals in 'X' for chunk #5 ... DONE [15:29:45.468] | : - Adjusted option 'future.globals.maxSize': 2306 -> 10 * 2306 = 23056 (bytes) [15:29:45.468] | : - seeds: [15:29:45.469] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.474] | : Created future: [15:29:45.475] | : MultisessionFuture: [15:29:45.475] | : Label: 'future_lapply-5' [15:29:45.475] | : Expression: [15:29:45.475] | : { [15:29:45.475] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.475] | : "# expression in do.call(), because function called uses '...' " [15:29:45.475] | : "# as a global variable " [15:29:45.475] | : do.call(function(...) { [15:29:45.475] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.475] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.475] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.475] | : "# anonymous function. " [15:29:45.475] | : "# " [15:29:45.475] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.475] | : "# function environment of FUN() to the calling environment. " [15:29:45.475] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.475] | : "# global environment, which is where globals are written. " [15:29:45.475] | : penv <- env <- environment(...future.FUN) [15:29:45.475] | : repeat { [15:29:45.475] | : if (identical(env, globalenv()) || identical(env, [15:29:45.475] | : emptyenv())) [15:29:45.475] | : break [15:29:45.475] | : penv <- env [15:29:45.475] | : env <- parent.env(env) [15:29:45.475] | : } [15:29:45.475] | : if (identical(penv, globalenv())) { [15:29:45.475] | : environment(...future.FUN) <- environment() [15:29:45.475] | : } [15:29:45.475] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.475] | : !isNamespace(penv)) { [15:29:45.475] | : parent.env(penv) <- environment() [15:29:45.475] | : } [15:29:45.475] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.475] | : { [15:29:45.475] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.475] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.475] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.475] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.475] | : on.exit(options(oopts), add = TRUE) [15:29:45.475] | : } [15:29:45.475] | : { [15:29:45.475] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.475] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.475] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.475] | : { [15:29:45.475] | : ...future.FUN(...future.X_jj, ...) [15:29:45.475] | : } [15:29:45.475] | : }) [15:29:45.475] | : } [15:29:45.475] | : } [15:29:45.475] | : }, args = future.call.arguments) [15:29:45.475] | : } [15:29:45.475] | : Globals: 5 objects totaling 4.92 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 141 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.475] | : Packages: [15:29:45.475] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.475] | : Capture standard output: TRUE [15:29:45.475] | : Capture condition classes: 'condition' (excluding '') [15:29:45.475] | : Immediate condition classes: 'immediateCondition' [15:29:45.475] | : Lazy evaluation: FALSE [15:29:45.475] | : Local evaluation: TRUE [15:29:45.475] | : Early signaling: FALSE [15:29:45.475] | : Actions: [n=1] 'run' [15:29:45.475] | : State: 'running' ("Future is being evaluated") [15:29:45.475] | : Resolved: TRUE [15:29:45.475] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-39 [15:29:45.475] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.475] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.475] | : Value: [15:29:45.475] | : Conditions captured: [15:29:45.483] | : Chunk #5 of 10 ... DONE [15:29:45.484] | : Chunk #6 of 10 ... [15:29:45.485] | : - Finding globals in 'X' for chunk #6 ... [15:29:45.487] | : + additional globals found: [n=0] [15:29:45.488] | : + additional namespaces needed: [n=0] [15:29:45.489] | : - Finding globals in 'X' for chunk #6 ... DONE [15:29:45.489] | : - Adjusted option 'future.globals.maxSize': 2306 -> 10 * 2306 = 23056 (bytes) [15:29:45.490] | : - seeds: [15:29:45.491] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.495] | : Created future: [15:29:45.496] | : MultisessionFuture: [15:29:45.496] | : Label: 'future_lapply-6' [15:29:45.496] | : Expression: [15:29:45.496] | : { [15:29:45.496] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.496] | : "# expression in do.call(), because function called uses '...' " [15:29:45.496] | : "# as a global variable " [15:29:45.496] | : do.call(function(...) { [15:29:45.496] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.496] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.496] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.496] | : "# anonymous function. " [15:29:45.496] | : "# " [15:29:45.496] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.496] | : "# function environment of FUN() to the calling environment. " [15:29:45.496] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.496] | : "# global environment, which is where globals are written. " [15:29:45.496] | : penv <- env <- environment(...future.FUN) [15:29:45.496] | : repeat { [15:29:45.496] | : if (identical(env, globalenv()) || identical(env, [15:29:45.496] | : emptyenv())) [15:29:45.496] | : break [15:29:45.496] | : penv <- env [15:29:45.496] | : env <- parent.env(env) [15:29:45.496] | : } [15:29:45.496] | : if (identical(penv, globalenv())) { [15:29:45.496] | : environment(...future.FUN) <- environment() [15:29:45.496] | : } [15:29:45.496] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.496] | : !isNamespace(penv)) { [15:29:45.496] | : parent.env(penv) <- environment() [15:29:45.496] | : } [15:29:45.496] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.496] | : { [15:29:45.496] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.496] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.496] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.496] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.496] | : on.exit(options(oopts), add = TRUE) [15:29:45.496] | : } [15:29:45.496] | : { [15:29:45.496] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.496] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.496] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.496] | : { [15:29:45.496] | : ...future.FUN(...future.X_jj, ...) [15:29:45.496] | : } [15:29:45.496] | : }) [15:29:45.496] | : } [15:29:45.496] | : } [15:29:45.496] | : }, args = future.call.arguments) [15:29:45.496] | : } [15:29:45.496] | : Globals: 5 objects totaling 4.92 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 141 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.496] | : Packages: [15:29:45.496] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.496] | : Capture standard output: TRUE [15:29:45.496] | : Capture condition classes: 'condition' (excluding '') [15:29:45.496] | : Immediate condition classes: 'immediateCondition' [15:29:45.496] | : Lazy evaluation: FALSE [15:29:45.496] | : Local evaluation: TRUE [15:29:45.496] | : Early signaling: FALSE [15:29:45.496] | : Actions: [n=1] 'run' [15:29:45.496] | : State: 'running' ("Future is being evaluated") [15:29:45.496] | : Resolved: TRUE [15:29:45.496] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-40 [15:29:45.496] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.496] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.496] | : Value: [15:29:45.496] | : Conditions captured: [15:29:45.504] | : Chunk #6 of 10 ... DONE [15:29:45.505] | : Chunk #7 of 10 ... [15:29:45.505] | : - Finding globals in 'X' for chunk #7 ... [15:29:45.506] | : + additional globals found: [n=0] [15:29:45.507] | : + additional namespaces needed: [n=0] [15:29:45.507] | : - Finding globals in 'X' for chunk #7 ... DONE [15:29:45.508] | : - Adjusted option 'future.globals.maxSize': 2306 -> 10 * 2306 = 23056 (bytes) [15:29:45.508] | : - seeds: [15:29:45.509] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.513] | : Created future: [15:29:45.514] | : MultisessionFuture: [15:29:45.514] | : Label: 'future_lapply-7' [15:29:45.514] | : Expression: [15:29:45.514] | : { [15:29:45.514] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.514] | : "# expression in do.call(), because function called uses '...' " [15:29:45.514] | : "# as a global variable " [15:29:45.514] | : do.call(function(...) { [15:29:45.514] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.514] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.514] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.514] | : "# anonymous function. " [15:29:45.514] | : "# " [15:29:45.514] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.514] | : "# function environment of FUN() to the calling environment. " [15:29:45.514] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.514] | : "# global environment, which is where globals are written. " [15:29:45.514] | : penv <- env <- environment(...future.FUN) [15:29:45.514] | : repeat { [15:29:45.514] | : if (identical(env, globalenv()) || identical(env, [15:29:45.514] | : emptyenv())) [15:29:45.514] | : break [15:29:45.514] | : penv <- env [15:29:45.514] | : env <- parent.env(env) [15:29:45.514] | : } [15:29:45.514] | : if (identical(penv, globalenv())) { [15:29:45.514] | : environment(...future.FUN) <- environment() [15:29:45.514] | : } [15:29:45.514] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.514] | : !isNamespace(penv)) { [15:29:45.514] | : parent.env(penv) <- environment() [15:29:45.514] | : } [15:29:45.514] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.514] | : { [15:29:45.514] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.514] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.514] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.514] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.514] | : on.exit(options(oopts), add = TRUE) [15:29:45.514] | : } [15:29:45.514] | : { [15:29:45.514] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.514] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.514] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.514] | : { [15:29:45.514] | : ...future.FUN(...future.X_jj, ...) [15:29:45.514] | : } [15:29:45.514] | : }) [15:29:45.514] | : } [15:29:45.514] | : } [15:29:45.514] | : }, args = future.call.arguments) [15:29:45.514] | : } [15:29:45.514] | : Globals: 5 objects totaling 4.92 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 141 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.514] | : Packages: [15:29:45.514] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.514] | : Capture standard output: TRUE [15:29:45.514] | : Capture condition classes: 'condition' (excluding '') [15:29:45.514] | : Immediate condition classes: 'immediateCondition' [15:29:45.514] | : Lazy evaluation: FALSE [15:29:45.514] | : Local evaluation: TRUE [15:29:45.514] | : Early signaling: FALSE [15:29:45.514] | : Actions: [n=1] 'run' [15:29:45.514] | : State: 'running' ("Future is being evaluated") [15:29:45.514] | : Resolved: TRUE [15:29:45.514] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-41 [15:29:45.514] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.514] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.514] | : Value: [15:29:45.514] | : Conditions captured: [15:29:45.521] | : Chunk #7 of 10 ... DONE [15:29:45.523] | : Chunk #8 of 10 ... [15:29:45.523] | : - Finding globals in 'X' for chunk #8 ... [15:29:45.525] | : + additional globals found: [n=0] [15:29:45.526] | : + additional namespaces needed: [n=0] [15:29:45.526] | : - Finding globals in 'X' for chunk #8 ... DONE [15:29:45.527] | : - Adjusted option 'future.globals.maxSize': 2306 -> 10 * 2306 = 23056 (bytes) [15:29:45.528] | : - seeds: [15:29:45.529] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.533] | : Created future: [15:29:45.534] | : MultisessionFuture: [15:29:45.534] | : Label: 'future_lapply-8' [15:29:45.534] | : Expression: [15:29:45.534] | : { [15:29:45.534] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.534] | : "# expression in do.call(), because function called uses '...' " [15:29:45.534] | : "# as a global variable " [15:29:45.534] | : do.call(function(...) { [15:29:45.534] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.534] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.534] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.534] | : "# anonymous function. " [15:29:45.534] | : "# " [15:29:45.534] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.534] | : "# function environment of FUN() to the calling environment. " [15:29:45.534] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.534] | : "# global environment, which is where globals are written. " [15:29:45.534] | : penv <- env <- environment(...future.FUN) [15:29:45.534] | : repeat { [15:29:45.534] | : if (identical(env, globalenv()) || identical(env, [15:29:45.534] | : emptyenv())) [15:29:45.534] | : break [15:29:45.534] | : penv <- env [15:29:45.534] | : env <- parent.env(env) [15:29:45.534] | : } [15:29:45.534] | : if (identical(penv, globalenv())) { [15:29:45.534] | : environment(...future.FUN) <- environment() [15:29:45.534] | : } [15:29:45.534] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.534] | : !isNamespace(penv)) { [15:29:45.534] | : parent.env(penv) <- environment() [15:29:45.534] | : } [15:29:45.534] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.534] | : { [15:29:45.534] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.534] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.534] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.534] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.534] | : on.exit(options(oopts), add = TRUE) [15:29:45.534] | : } [15:29:45.534] | : { [15:29:45.534] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.534] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.534] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.534] | : { [15:29:45.534] | : ...future.FUN(...future.X_jj, ...) [15:29:45.534] | : } [15:29:45.534] | : }) [15:29:45.534] | : } [15:29:45.534] | : } [15:29:45.534] | : }, args = future.call.arguments) [15:29:45.534] | : } [15:29:45.534] | : Globals: 5 objects totaling 4.92 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 141 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.534] | : Packages: [15:29:45.534] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.534] | : Capture standard output: TRUE [15:29:45.534] | : Capture condition classes: 'condition' (excluding '') [15:29:45.534] | : Immediate condition classes: 'immediateCondition' [15:29:45.534] | : Lazy evaluation: FALSE [15:29:45.534] | : Local evaluation: TRUE [15:29:45.534] | : Early signaling: FALSE [15:29:45.534] | : Actions: [n=1] 'run' [15:29:45.534] | : State: 'running' ("Future is being evaluated") [15:29:45.534] | : Resolved: TRUE [15:29:45.534] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-42 [15:29:45.534] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.534] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.534] | : Value: [15:29:45.534] | : Conditions captured: [15:29:45.543] | : Chunk #8 of 10 ... DONE [15:29:45.544] | : Chunk #9 of 10 ... [15:29:45.545] | : - Finding globals in 'X' for chunk #9 ... [15:29:45.546] | : + additional globals found: [n=0] [15:29:45.547] | : + additional namespaces needed: [n=0] [15:29:45.548] | : - Finding globals in 'X' for chunk #9 ... DONE [15:29:45.548] | : - Adjusted option 'future.globals.maxSize': 2306 -> 10 * 2306 = 23056 (bytes) [15:29:45.549] | : - seeds: [15:29:45.550] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.554] | : Created future: [15:29:45.554] | : MultisessionFuture: [15:29:45.554] | : Label: 'future_lapply-9' [15:29:45.554] | : Expression: [15:29:45.554] | : { [15:29:45.554] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.554] | : "# expression in do.call(), because function called uses '...' " [15:29:45.554] | : "# as a global variable " [15:29:45.554] | : do.call(function(...) { [15:29:45.554] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.554] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.554] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.554] | : "# anonymous function. " [15:29:45.554] | : "# " [15:29:45.554] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.554] | : "# function environment of FUN() to the calling environment. " [15:29:45.554] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.554] | : "# global environment, which is where globals are written. " [15:29:45.554] | : penv <- env <- environment(...future.FUN) [15:29:45.554] | : repeat { [15:29:45.554] | : if (identical(env, globalenv()) || identical(env, [15:29:45.554] | : emptyenv())) [15:29:45.554] | : break [15:29:45.554] | : penv <- env [15:29:45.554] | : env <- parent.env(env) [15:29:45.554] | : } [15:29:45.554] | : if (identical(penv, globalenv())) { [15:29:45.554] | : environment(...future.FUN) <- environment() [15:29:45.554] | : } [15:29:45.554] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.554] | : !isNamespace(penv)) { [15:29:45.554] | : parent.env(penv) <- environment() [15:29:45.554] | : } [15:29:45.554] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.554] | : { [15:29:45.554] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.554] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.554] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.554] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.554] | : on.exit(options(oopts), add = TRUE) [15:29:45.554] | : } [15:29:45.554] | : { [15:29:45.554] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.554] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.554] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.554] | : { [15:29:45.554] | : ...future.FUN(...future.X_jj, ...) [15:29:45.554] | : } [15:29:45.554] | : }) [15:29:45.554] | : } [15:29:45.554] | : } [15:29:45.554] | : }, args = future.call.arguments) [15:29:45.554] | : } [15:29:45.554] | : Globals: 5 objects totaling 4.92 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 141 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.554] | : Packages: [15:29:45.554] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.554] | : Capture standard output: TRUE [15:29:45.554] | : Capture condition classes: 'condition' (excluding '') [15:29:45.554] | : Immediate condition classes: 'immediateCondition' [15:29:45.554] | : Lazy evaluation: FALSE [15:29:45.554] | : Local evaluation: TRUE [15:29:45.554] | : Early signaling: FALSE [15:29:45.554] | : Actions: [n=1] 'run' [15:29:45.554] | : State: 'running' ("Future is being evaluated") [15:29:45.554] | : Resolved: TRUE [15:29:45.554] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-43 [15:29:45.554] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.554] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.554] | : Value: [15:29:45.554] | : Conditions captured: [15:29:45.565] | : Chunk #9 of 10 ... DONE [15:29:45.566] | : Chunk #10 of 10 ... [15:29:45.567] | : - Finding globals in 'X' for chunk #10 ... [15:29:45.569] | : + additional globals found: [n=0] [15:29:45.569] | : + additional namespaces needed: [n=0] [15:29:45.570] | : - Finding globals in 'X' for chunk #10 ... DONE [15:29:45.571] | : - Adjusted option 'future.globals.maxSize': 2306 -> 10 * 2306 = 23056 (bytes) [15:29:45.572] | : - seeds: [15:29:45.573] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.577] | : Created future: [15:29:45.577] | : MultisessionFuture: [15:29:45.577] | : Label: 'future_lapply-10' [15:29:45.577] | : Expression: [15:29:45.577] | : { [15:29:45.577] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.577] | : "# expression in do.call(), because function called uses '...' " [15:29:45.577] | : "# as a global variable " [15:29:45.577] | : do.call(function(...) { [15:29:45.577] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.577] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.577] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.577] | : "# anonymous function. " [15:29:45.577] | : "# " [15:29:45.577] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.577] | : "# function environment of FUN() to the calling environment. " [15:29:45.577] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.577] | : "# global environment, which is where globals are written. " [15:29:45.577] | : penv <- env <- environment(...future.FUN) [15:29:45.577] | : repeat { [15:29:45.577] | : if (identical(env, globalenv()) || identical(env, [15:29:45.577] | : emptyenv())) [15:29:45.577] | : break [15:29:45.577] | : penv <- env [15:29:45.577] | : env <- parent.env(env) [15:29:45.577] | : } [15:29:45.577] | : if (identical(penv, globalenv())) { [15:29:45.577] | : environment(...future.FUN) <- environment() [15:29:45.577] | : } [15:29:45.577] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.577] | : !isNamespace(penv)) { [15:29:45.577] | : parent.env(penv) <- environment() [15:29:45.577] | : } [15:29:45.577] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.577] | : { [15:29:45.577] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.577] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.577] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.577] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.577] | : on.exit(options(oopts), add = TRUE) [15:29:45.577] | : } [15:29:45.577] | : { [15:29:45.577] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.577] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.577] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.577] | : { [15:29:45.577] | : ...future.FUN(...future.X_jj, ...) [15:29:45.577] | : } [15:29:45.577] | : }) [15:29:45.577] | : } [15:29:45.577] | : } [15:29:45.577] | : }, args = future.call.arguments) [15:29:45.577] | : } [15:29:45.577] | : Globals: 5 objects totaling 4.92 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 141 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.577] | : Packages: [15:29:45.577] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.577] | : Capture standard output: TRUE [15:29:45.577] | : Capture condition classes: 'condition' (excluding '') [15:29:45.577] | : Immediate condition classes: 'immediateCondition' [15:29:45.577] | : Lazy evaluation: FALSE [15:29:45.577] | : Local evaluation: TRUE [15:29:45.577] | : Early signaling: FALSE [15:29:45.577] | : Actions: [n=1] 'run' [15:29:45.577] | : State: 'running' ("Future is being evaluated") [15:29:45.577] | : Resolved: TRUE [15:29:45.577] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-44 [15:29:45.577] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.577] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.577] | : Value: [15:29:45.577] | : Conditions captured: [15:29:45.585] | : Chunk #10 of 10 ... DONE [15:29:45.586] | : Launching 10 futures (chunks) ... DONE [15:29:45.587] | : Resolving 10 futures (chunks) ... [15:29:45.592] | : - Number of value chunks collected: 10 [15:29:45.593] | : Resolving 10 futures (chunks) ... DONE [15:29:45.594] | : Reducing values from 10 chunks ... [15:29:45.594] | : - Number of values collected after concatenation: 10 [15:29:45.595] | : - Number of values expected: 10 [15:29:45.596] | : Reducing values from 10 chunks ... DONE [15:29:45.597] | future_lapply() -> future_xapply() ... done [15:29:45.597] future_lapply() ... done List of 10 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 maxSize = 2305.6 bytes future.globals.maxSize = 2305.6 bytes [15:29:45.605] future_lapply() ... [15:29:45.606] | Globals in FUN(): [n=2] '{', 'getOption' [15:29:45.607] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:45.608] | future_lapply() -> future_xapply() ... [15:29:45.609] | : Number of chunks: 5 [15:29:45.610] | : getGlobalsAndPackagesXApply() ... [15:29:45.610] | : . future.globals: TRUE [15:29:45.624] | : . globals found/used: [n=1] 'FUN' [15:29:45.625] | : . needed namespaces: [n=0] [15:29:45.626] | : . use_args: TRUE [15:29:45.627] | : . Getting '...' globals ... [15:29:45.628] | : . ' '...' content: [n=0] [15:29:45.629] | : . ' List of 1 [15:29:45.629] | : . ' $ ...: list() [15:29:45.629] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.629] | : . ' - attr(*, "where")=List of 1 [15:29:45.629] | : . ' ..$ ...: [15:29:45.629] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.629] | : . ' - attr(*, "resolved")= logi TRUE [15:29:45.629] | : . ' - attr(*, "total_size")= num NA [15:29:45.633] | : . Getting '...' globals ... done [15:29:45.634] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:45.635] | : . List of 2 [15:29:45.635] | : . $ ...future.FUN:function (x) [15:29:45.635] | : . $ ... : list() [15:29:45.635] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.635] | : . - attr(*, "where")=List of 2 [15:29:45.635] | : . ..$ ...future.FUN: [15:29:45.635] | : . ..$ ... : [15:29:45.635] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.635] | : . - attr(*, "resolved")= logi FALSE [15:29:45.635] | : . - attr(*, "total_size")= num 4686 [15:29:45.640] | : . Packages to be attached in all futures: [n=0] [15:29:45.641] | : getGlobalsAndPackagesXApply() ... done [15:29:45.641] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.642] | : List of 5 [15:29:45.642] | : $ ...future.FUN :function (x) [15:29:45.642] | : $ ... : list() [15:29:45.642] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.642] | : $ ...future.elements_ii : NULL [15:29:45.642] | : $ ...future.seeds_ii : NULL [15:29:45.642] | : $ ...future.globals.maxSize: NULL [15:29:45.642] | : - attr(*, "where")=List of 5 [15:29:45.642] | : ..$ ...future.FUN : [15:29:45.642] | : ..$ ... : [15:29:45.642] | : ..$ ...future.elements_ii : [15:29:45.642] | : ..$ ...future.seeds_ii : [15:29:45.642] | : ..$ ...future.globals.maxSize: [15:29:45.642] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.642] | : - attr(*, "resolved")= logi FALSE [15:29:45.642] | : - attr(*, "total_size")= num 4686 [15:29:45.649] | : Number of futures (= number of chunks): 5 [15:29:45.650] | : Launching 5 futures (chunks) ... [15:29:45.651] | : Chunk #1 of 5 ... [15:29:45.652] | : - Finding globals in 'X' for chunk #1 ... [15:29:45.653] | : + additional globals found: [n=0] [15:29:45.653] | : + additional namespaces needed: [n=0] [15:29:45.654] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:45.655] | : - Adjusted option 'future.globals.maxSize': 2306 -> 5 * 2306 = 11528 (bytes) [15:29:45.656] | : - seeds: [15:29:45.656] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.661] | : Created future: [15:29:45.662] | : MultisessionFuture: [15:29:45.662] | : Label: 'future_lapply-1' [15:29:45.662] | : Expression: [15:29:45.662] | : { [15:29:45.662] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.662] | : "# expression in do.call(), because function called uses '...' " [15:29:45.662] | : "# as a global variable " [15:29:45.662] | : do.call(function(...) { [15:29:45.662] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.662] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.662] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.662] | : "# anonymous function. " [15:29:45.662] | : "# " [15:29:45.662] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.662] | : "# function environment of FUN() to the calling environment. " [15:29:45.662] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.662] | : "# global environment, which is where globals are written. " [15:29:45.662] | : penv <- env <- environment(...future.FUN) [15:29:45.662] | : repeat { [15:29:45.662] | : if (identical(env, globalenv()) || identical(env, [15:29:45.662] | : emptyenv())) [15:29:45.662] | : break [15:29:45.662] | : penv <- env [15:29:45.662] | : env <- parent.env(env) [15:29:45.662] | : } [15:29:45.662] | : if (identical(penv, globalenv())) { [15:29:45.662] | : environment(...future.FUN) <- environment() [15:29:45.662] | : } [15:29:45.662] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.662] | : !isNamespace(penv)) { [15:29:45.662] | : parent.env(penv) <- environment() [15:29:45.662] | : } [15:29:45.662] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.662] | : { [15:29:45.662] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.662] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.662] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.662] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.662] | : on.exit(options(oopts), add = TRUE) [15:29:45.662] | : } [15:29:45.662] | : { [15:29:45.662] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.662] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.662] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.662] | : { [15:29:45.662] | : ...future.FUN(...future.X_jj, ...) [15:29:45.662] | : } [15:29:45.662] | : }) [15:29:45.662] | : } [15:29:45.662] | : } [15:29:45.662] | : }, args = future.call.arguments) [15:29:45.662] | : } [15:29:45.662] | : Globals: 5 objects totaling 5.00 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 217 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.662] | : Packages: [15:29:45.662] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.662] | : Capture standard output: TRUE [15:29:45.662] | : Capture condition classes: 'condition' (excluding '') [15:29:45.662] | : Immediate condition classes: 'immediateCondition' [15:29:45.662] | : Lazy evaluation: FALSE [15:29:45.662] | : Local evaluation: TRUE [15:29:45.662] | : Early signaling: FALSE [15:29:45.662] | : Actions: [n=1] 'run' [15:29:45.662] | : State: 'running' ("Future is being evaluated") [15:29:45.662] | : Resolved: TRUE [15:29:45.662] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-45 [15:29:45.662] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.662] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.662] | : Value: [15:29:45.662] | : Conditions captured: [15:29:45.670] | : Chunk #1 of 5 ... DONE [15:29:45.671] | : Chunk #2 of 5 ... [15:29:45.672] | : - Finding globals in 'X' for chunk #2 ... [15:29:45.673] | : + additional globals found: [n=0] [15:29:45.674] | : + additional namespaces needed: [n=0] [15:29:45.675] | : - Finding globals in 'X' for chunk #2 ... DONE [15:29:45.676] | : - Adjusted option 'future.globals.maxSize': 2306 -> 5 * 2306 = 11528 (bytes) [15:29:45.677] | : - seeds: [15:29:45.678] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.682] | : Created future: [15:29:45.683] | : MultisessionFuture: [15:29:45.683] | : Label: 'future_lapply-2' [15:29:45.683] | : Expression: [15:29:45.683] | : { [15:29:45.683] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.683] | : "# expression in do.call(), because function called uses '...' " [15:29:45.683] | : "# as a global variable " [15:29:45.683] | : do.call(function(...) { [15:29:45.683] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.683] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.683] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.683] | : "# anonymous function. " [15:29:45.683] | : "# " [15:29:45.683] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.683] | : "# function environment of FUN() to the calling environment. " [15:29:45.683] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.683] | : "# global environment, which is where globals are written. " [15:29:45.683] | : penv <- env <- environment(...future.FUN) [15:29:45.683] | : repeat { [15:29:45.683] | : if (identical(env, globalenv()) || identical(env, [15:29:45.683] | : emptyenv())) [15:29:45.683] | : break [15:29:45.683] | : penv <- env [15:29:45.683] | : env <- parent.env(env) [15:29:45.683] | : } [15:29:45.683] | : if (identical(penv, globalenv())) { [15:29:45.683] | : environment(...future.FUN) <- environment() [15:29:45.683] | : } [15:29:45.683] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.683] | : !isNamespace(penv)) { [15:29:45.683] | : parent.env(penv) <- environment() [15:29:45.683] | : } [15:29:45.683] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.683] | : { [15:29:45.683] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.683] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.683] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.683] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.683] | : on.exit(options(oopts), add = TRUE) [15:29:45.683] | : } [15:29:45.683] | : { [15:29:45.683] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.683] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.683] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.683] | : { [15:29:45.683] | : ...future.FUN(...future.X_jj, ...) [15:29:45.683] | : } [15:29:45.683] | : }) [15:29:45.683] | : } [15:29:45.683] | : } [15:29:45.683] | : }, args = future.call.arguments) [15:29:45.683] | : } [15:29:45.683] | : Globals: 5 objects totaling 5.00 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 217 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.683] | : Packages: [15:29:45.683] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.683] | : Capture standard output: TRUE [15:29:45.683] | : Capture condition classes: 'condition' (excluding '') [15:29:45.683] | : Immediate condition classes: 'immediateCondition' [15:29:45.683] | : Lazy evaluation: FALSE [15:29:45.683] | : Local evaluation: TRUE [15:29:45.683] | : Early signaling: FALSE [15:29:45.683] | : Actions: [n=1] 'run' [15:29:45.683] | : State: 'running' ("Future is being evaluated") [15:29:45.683] | : Resolved: TRUE [15:29:45.683] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-46 [15:29:45.683] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.683] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.683] | : Value: [15:29:45.683] | : Conditions captured: [15:29:45.689] | : Chunk #2 of 5 ... DONE [15:29:45.690] | : Chunk #3 of 5 ... [15:29:45.691] | : - Finding globals in 'X' for chunk #3 ... [15:29:45.692] | : + additional globals found: [n=0] [15:29:45.693] | : + additional namespaces needed: [n=0] [15:29:45.694] | : - Finding globals in 'X' for chunk #3 ... DONE [15:29:45.695] | : - Adjusted option 'future.globals.maxSize': 2306 -> 5 * 2306 = 11528 (bytes) [15:29:45.695] | : - seeds: [15:29:45.696] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.700] | : Created future: [15:29:45.701] | : MultisessionFuture: [15:29:45.701] | : Label: 'future_lapply-3' [15:29:45.701] | : Expression: [15:29:45.701] | : { [15:29:45.701] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.701] | : "# expression in do.call(), because function called uses '...' " [15:29:45.701] | : "# as a global variable " [15:29:45.701] | : do.call(function(...) { [15:29:45.701] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.701] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.701] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.701] | : "# anonymous function. " [15:29:45.701] | : "# " [15:29:45.701] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.701] | : "# function environment of FUN() to the calling environment. " [15:29:45.701] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.701] | : "# global environment, which is where globals are written. " [15:29:45.701] | : penv <- env <- environment(...future.FUN) [15:29:45.701] | : repeat { [15:29:45.701] | : if (identical(env, globalenv()) || identical(env, [15:29:45.701] | : emptyenv())) [15:29:45.701] | : break [15:29:45.701] | : penv <- env [15:29:45.701] | : env <- parent.env(env) [15:29:45.701] | : } [15:29:45.701] | : if (identical(penv, globalenv())) { [15:29:45.701] | : environment(...future.FUN) <- environment() [15:29:45.701] | : } [15:29:45.701] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.701] | : !isNamespace(penv)) { [15:29:45.701] | : parent.env(penv) <- environment() [15:29:45.701] | : } [15:29:45.701] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.701] | : { [15:29:45.701] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.701] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.701] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.701] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.701] | : on.exit(options(oopts), add = TRUE) [15:29:45.701] | : } [15:29:45.701] | : { [15:29:45.701] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.701] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.701] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.701] | : { [15:29:45.701] | : ...future.FUN(...future.X_jj, ...) [15:29:45.701] | : } [15:29:45.701] | : }) [15:29:45.701] | : } [15:29:45.701] | : } [15:29:45.701] | : }, args = future.call.arguments) [15:29:45.701] | : } [15:29:45.701] | : Globals: 5 objects totaling 5.00 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 217 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.701] | : Packages: [15:29:45.701] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.701] | : Capture standard output: TRUE [15:29:45.701] | : Capture condition classes: 'condition' (excluding '') [15:29:45.701] | : Immediate condition classes: 'immediateCondition' [15:29:45.701] | : Lazy evaluation: FALSE [15:29:45.701] | : Local evaluation: TRUE [15:29:45.701] | : Early signaling: FALSE [15:29:45.701] | : Actions: [n=1] 'run' [15:29:45.701] | : State: 'running' ("Future is being evaluated") [15:29:45.701] | : Resolved: TRUE [15:29:45.701] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-47 [15:29:45.701] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.701] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.701] | : Value: [15:29:45.701] | : Conditions captured: [15:29:45.710] | : Chunk #3 of 5 ... DONE [15:29:45.711] | : Chunk #4 of 5 ... [15:29:45.712] | : - Finding globals in 'X' for chunk #4 ... [15:29:45.713] | : + additional globals found: [n=0] [15:29:45.714] | : + additional namespaces needed: [n=0] [15:29:45.715] | : - Finding globals in 'X' for chunk #4 ... DONE [15:29:45.716] | : - Adjusted option 'future.globals.maxSize': 2306 -> 5 * 2306 = 11528 (bytes) [15:29:45.717] | : - seeds: [15:29:45.718] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.722] | : Created future: [15:29:45.723] | : MultisessionFuture: [15:29:45.723] | : Label: 'future_lapply-4' [15:29:45.723] | : Expression: [15:29:45.723] | : { [15:29:45.723] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.723] | : "# expression in do.call(), because function called uses '...' " [15:29:45.723] | : "# as a global variable " [15:29:45.723] | : do.call(function(...) { [15:29:45.723] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.723] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.723] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.723] | : "# anonymous function. " [15:29:45.723] | : "# " [15:29:45.723] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.723] | : "# function environment of FUN() to the calling environment. " [15:29:45.723] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.723] | : "# global environment, which is where globals are written. " [15:29:45.723] | : penv <- env <- environment(...future.FUN) [15:29:45.723] | : repeat { [15:29:45.723] | : if (identical(env, globalenv()) || identical(env, [15:29:45.723] | : emptyenv())) [15:29:45.723] | : break [15:29:45.723] | : penv <- env [15:29:45.723] | : env <- parent.env(env) [15:29:45.723] | : } [15:29:45.723] | : if (identical(penv, globalenv())) { [15:29:45.723] | : environment(...future.FUN) <- environment() [15:29:45.723] | : } [15:29:45.723] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.723] | : !isNamespace(penv)) { [15:29:45.723] | : parent.env(penv) <- environment() [15:29:45.723] | : } [15:29:45.723] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.723] | : { [15:29:45.723] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.723] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.723] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.723] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.723] | : on.exit(options(oopts), add = TRUE) [15:29:45.723] | : } [15:29:45.723] | : { [15:29:45.723] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.723] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.723] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.723] | : { [15:29:45.723] | : ...future.FUN(...future.X_jj, ...) [15:29:45.723] | : } [15:29:45.723] | : }) [15:29:45.723] | : } [15:29:45.723] | : } [15:29:45.723] | : }, args = future.call.arguments) [15:29:45.723] | : } [15:29:45.723] | : Globals: 5 objects totaling 5.00 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 217 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.723] | : Packages: [15:29:45.723] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.723] | : Capture standard output: TRUE [15:29:45.723] | : Capture condition classes: 'condition' (excluding '') [15:29:45.723] | : Immediate condition classes: 'immediateCondition' [15:29:45.723] | : Lazy evaluation: FALSE [15:29:45.723] | : Local evaluation: TRUE [15:29:45.723] | : Early signaling: FALSE [15:29:45.723] | : Actions: [n=1] 'run' [15:29:45.723] | : State: 'running' ("Future is being evaluated") [15:29:45.723] | : Resolved: TRUE [15:29:45.723] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-48 [15:29:45.723] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.723] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.723] | : Value: [15:29:45.723] | : Conditions captured: [15:29:45.730] | : Chunk #4 of 5 ... DONE [15:29:45.731] | : Chunk #5 of 5 ... [15:29:45.732] | : - Finding globals in 'X' for chunk #5 ... [15:29:45.733] | : + additional globals found: [n=0] [15:29:45.733] | : + additional namespaces needed: [n=0] [15:29:45.734] | : - Finding globals in 'X' for chunk #5 ... DONE [15:29:45.735] | : - Adjusted option 'future.globals.maxSize': 2306 -> 5 * 2306 = 11528 (bytes) [15:29:45.736] | : - seeds: [15:29:45.736] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.739] | : Created future: [15:29:45.740] | : MultisessionFuture: [15:29:45.740] | : Label: 'future_lapply-5' [15:29:45.740] | : Expression: [15:29:45.740] | : { [15:29:45.740] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.740] | : "# expression in do.call(), because function called uses '...' " [15:29:45.740] | : "# as a global variable " [15:29:45.740] | : do.call(function(...) { [15:29:45.740] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.740] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.740] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.740] | : "# anonymous function. " [15:29:45.740] | : "# " [15:29:45.740] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.740] | : "# function environment of FUN() to the calling environment. " [15:29:45.740] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.740] | : "# global environment, which is where globals are written. " [15:29:45.740] | : penv <- env <- environment(...future.FUN) [15:29:45.740] | : repeat { [15:29:45.740] | : if (identical(env, globalenv()) || identical(env, [15:29:45.740] | : emptyenv())) [15:29:45.740] | : break [15:29:45.740] | : penv <- env [15:29:45.740] | : env <- parent.env(env) [15:29:45.740] | : } [15:29:45.740] | : if (identical(penv, globalenv())) { [15:29:45.740] | : environment(...future.FUN) <- environment() [15:29:45.740] | : } [15:29:45.740] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.740] | : !isNamespace(penv)) { [15:29:45.740] | : parent.env(penv) <- environment() [15:29:45.740] | : } [15:29:45.740] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.740] | : { [15:29:45.740] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.740] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.740] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.740] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.740] | : on.exit(options(oopts), add = TRUE) [15:29:45.740] | : } [15:29:45.740] | : { [15:29:45.740] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.740] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.740] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.740] | : { [15:29:45.740] | : ...future.FUN(...future.X_jj, ...) [15:29:45.740] | : } [15:29:45.740] | : }) [15:29:45.740] | : } [15:29:45.740] | : } [15:29:45.740] | : }, args = future.call.arguments) [15:29:45.740] | : } [15:29:45.740] | : Globals: 5 objects totaling 5.00 KiB (function '...future.FUN' of 407 bytes, list '...future.elements_ii' of 217 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.740] | : Packages: [15:29:45.740] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.740] | : Capture standard output: TRUE [15:29:45.740] | : Capture condition classes: 'condition' (excluding '') [15:29:45.740] | : Immediate condition classes: 'immediateCondition' [15:29:45.740] | : Lazy evaluation: FALSE [15:29:45.740] | : Local evaluation: TRUE [15:29:45.740] | : Early signaling: FALSE [15:29:45.740] | : Actions: [n=1] 'run' [15:29:45.740] | : State: 'running' ("Future is being evaluated") [15:29:45.740] | : Resolved: TRUE [15:29:45.740] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-49 [15:29:45.740] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.740] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.740] | : Value: [15:29:45.740] | : Conditions captured: [15:29:45.751] | : Chunk #5 of 5 ... DONE [15:29:45.752] | : Launching 5 futures (chunks) ... DONE [15:29:45.752] | : Resolving 5 futures (chunks) ... [15:29:45.755] | : - Number of value chunks collected: 5 [15:29:45.756] | : Resolving 5 futures (chunks) ... DONE [15:29:45.757] | : Reducing values from 5 chunks ... [15:29:45.757] | : - Number of values collected after concatenation: 10 [15:29:45.758] | : - Number of values expected: 10 [15:29:45.759] | : Reducing values from 5 chunks ... DONE [15:29:45.759] | future_lapply() -> future_xapply() ... done [15:29:45.760] future_lapply() ... done List of 10 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 maxSize = 2305.6 bytes future.globals.maxSize = 2305.6 bytes [15:29:45.767] future_lapply() ... [15:29:45.768] | Globals in FUN(): [n=2] '{', 'getOption' [15:29:45.769] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:45.770] | future_lapply() -> future_xapply() ... [15:29:45.771] | : Number of chunks: 2 [15:29:45.772] | : getGlobalsAndPackagesXApply() ... [15:29:45.772] | : . future.globals: TRUE [15:29:45.781] | : . globals found/used: [n=1] 'FUN' [15:29:45.782] | : . needed namespaces: [n=0] [15:29:45.783] | : . use_args: TRUE [15:29:45.783] | : . Getting '...' globals ... [15:29:45.785] | : . ' '...' content: [n=0] [15:29:45.785] | : . ' List of 1 [15:29:45.785] | : . ' $ ...: list() [15:29:45.785] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.785] | : . ' - attr(*, "where")=List of 1 [15:29:45.785] | : . ' ..$ ...: [15:29:45.785] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.785] | : . ' - attr(*, "resolved")= logi TRUE [15:29:45.785] | : . ' - attr(*, "total_size")= num NA [15:29:45.790] | : . Getting '...' globals ... done [15:29:45.791] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:45.791] | : . List of 2 [15:29:45.791] | : . $ ...future.FUN:function (x) [15:29:45.791] | : . $ ... : list() [15:29:45.791] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.791] | : . - attr(*, "where")=List of 2 [15:29:45.791] | : . ..$ ...future.FUN: [15:29:45.791] | : . ..$ ... : [15:29:45.791] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.791] | : . - attr(*, "resolved")= logi FALSE [15:29:45.791] | : . - attr(*, "total_size")= num 4686 [15:29:45.796] | : . Packages to be attached in all futures: [n=0] [15:29:45.797] | : getGlobalsAndPackagesXApply() ... done [15:29:45.798] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.799] | : List of 5 [15:29:45.799] | : $ ...future.FUN :function (x) [15:29:45.799] | : $ ... : list() [15:29:45.799] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.799] | : $ ...future.elements_ii : NULL [15:29:45.799] | : $ ...future.seeds_ii : NULL [15:29:45.799] | : $ ...future.globals.maxSize: NULL [15:29:45.799] | : - attr(*, "where")=List of 5 [15:29:45.799] | : ..$ ...future.FUN : [15:29:45.799] | : ..$ ... : [15:29:45.799] | : ..$ ...future.elements_ii : [15:29:45.799] | : ..$ ...future.seeds_ii : [15:29:45.799] | : ..$ ...future.globals.maxSize: [15:29:45.799] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.799] | : - attr(*, "resolved")= logi FALSE [15:29:45.799] | : - attr(*, "total_size")= num 4686 [15:29:45.810] | : Number of futures (= number of chunks): 2 [15:29:45.811] | : Launching 2 futures (chunks) ... [15:29:45.811] | : Chunk #1 of 2 ... [15:29:45.812] | : - Finding globals in 'X' for chunk #1 ... [15:29:45.813] | : + additional globals found: [n=0] [15:29:45.814] | : + additional namespaces needed: [n=0] [15:29:45.815] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:45.816] | : - Adjusted option 'future.globals.maxSize': 2306 -> 2 * 2306 = 4611 (bytes) [15:29:45.816] | : - seeds: [15:29:45.817] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.821] | : Created future: [15:29:45.822] | : MultisessionFuture: [15:29:45.822] | : Label: 'future_lapply-1' [15:29:45.822] | : Expression: [15:29:45.822] | : { [15:29:45.822] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.822] | : "# expression in do.call(), because function called uses '...' " [15:29:45.822] | : "# as a global variable " [15:29:45.822] | : do.call(function(...) { [15:29:45.822] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.822] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.822] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.822] | : "# anonymous function. " [15:29:45.822] | : "# " [15:29:45.822] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.822] | : "# function environment of FUN() to the calling environment. " [15:29:45.822] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.822] | : "# global environment, which is where globals are written. " [15:29:45.822] | : penv <- env <- environment(...future.FUN) [15:29:45.822] | : repeat { [15:29:45.822] | : if (identical(env, globalenv()) || identical(env, [15:29:45.822] | : emptyenv())) [15:29:45.822] | : break [15:29:45.822] | : penv <- env [15:29:45.822] | : env <- parent.env(env) [15:29:45.822] | : } [15:29:45.822] | : if (identical(penv, globalenv())) { [15:29:45.822] | : environment(...future.FUN) <- environment() [15:29:45.822] | : } [15:29:45.822] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.822] | : !isNamespace(penv)) { [15:29:45.822] | : parent.env(penv) <- environment() [15:29:45.822] | : } [15:29:45.822] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.822] | : { [15:29:45.822] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.822] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.822] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.822] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.822] | : on.exit(options(oopts), add = TRUE) [15:29:45.822] | : } [15:29:45.822] | : { [15:29:45.822] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.822] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.822] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.822] | : { [15:29:45.822] | : ...future.FUN(...future.X_jj, ...) [15:29:45.822] | : } [15:29:45.822] | : }) [15:29:45.822] | : } [15:29:45.822] | : } [15:29:45.822] | : }, args = future.call.arguments) [15:29:45.822] | : } [15:29:45.822] | : Globals: 5 objects totaling 5.22 KiB (list '...future.elements_ii' of 445 bytes, function '...future.FUN' of 407 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.822] | : Packages: [15:29:45.822] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.822] | : Capture standard output: TRUE [15:29:45.822] | : Capture condition classes: 'condition' (excluding '') [15:29:45.822] | : Immediate condition classes: 'immediateCondition' [15:29:45.822] | : Lazy evaluation: FALSE [15:29:45.822] | : Local evaluation: TRUE [15:29:45.822] | : Early signaling: FALSE [15:29:45.822] | : Actions: [n=1] 'run' [15:29:45.822] | : State: 'running' ("Future is being evaluated") [15:29:45.822] | : Resolved: TRUE [15:29:45.822] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-50 [15:29:45.822] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.822] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.822] | : Value: [15:29:45.822] | : Conditions captured: [15:29:45.829] | : Chunk #1 of 2 ... DONE [15:29:45.830] | : Chunk #2 of 2 ... [15:29:45.831] | : - Finding globals in 'X' for chunk #2 ... [15:29:45.832] | : + additional globals found: [n=0] [15:29:45.832] | : + additional namespaces needed: [n=0] [15:29:45.833] | : - Finding globals in 'X' for chunk #2 ... DONE [15:29:45.834] | : - Adjusted option 'future.globals.maxSize': 2306 -> 2 * 2306 = 4611 (bytes) [15:29:45.834] | : - seeds: [15:29:45.835] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.838] | : Created future: [15:29:45.839] | : MultisessionFuture: [15:29:45.839] | : Label: 'future_lapply-2' [15:29:45.839] | : Expression: [15:29:45.839] | : { [15:29:45.839] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.839] | : "# expression in do.call(), because function called uses '...' " [15:29:45.839] | : "# as a global variable " [15:29:45.839] | : do.call(function(...) { [15:29:45.839] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.839] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.839] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.839] | : "# anonymous function. " [15:29:45.839] | : "# " [15:29:45.839] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.839] | : "# function environment of FUN() to the calling environment. " [15:29:45.839] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.839] | : "# global environment, which is where globals are written. " [15:29:45.839] | : penv <- env <- environment(...future.FUN) [15:29:45.839] | : repeat { [15:29:45.839] | : if (identical(env, globalenv()) || identical(env, [15:29:45.839] | : emptyenv())) [15:29:45.839] | : break [15:29:45.839] | : penv <- env [15:29:45.839] | : env <- parent.env(env) [15:29:45.839] | : } [15:29:45.839] | : if (identical(penv, globalenv())) { [15:29:45.839] | : environment(...future.FUN) <- environment() [15:29:45.839] | : } [15:29:45.839] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.839] | : !isNamespace(penv)) { [15:29:45.839] | : parent.env(penv) <- environment() [15:29:45.839] | : } [15:29:45.839] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.839] | : { [15:29:45.839] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.839] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.839] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.839] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.839] | : on.exit(options(oopts), add = TRUE) [15:29:45.839] | : } [15:29:45.839] | : { [15:29:45.839] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.839] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.839] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.839] | : { [15:29:45.839] | : ...future.FUN(...future.X_jj, ...) [15:29:45.839] | : } [15:29:45.839] | : }) [15:29:45.839] | : } [15:29:45.839] | : } [15:29:45.839] | : }, args = future.call.arguments) [15:29:45.839] | : } [15:29:45.839] | : Globals: 5 objects totaling 5.22 KiB (list '...future.elements_ii' of 445 bytes, function '...future.FUN' of 407 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.839] | : Packages: [15:29:45.839] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.839] | : Capture standard output: TRUE [15:29:45.839] | : Capture condition classes: 'condition' (excluding '') [15:29:45.839] | : Immediate condition classes: 'immediateCondition' [15:29:45.839] | : Lazy evaluation: FALSE [15:29:45.839] | : Local evaluation: TRUE [15:29:45.839] | : Early signaling: FALSE [15:29:45.839] | : Actions: [n=1] 'run' [15:29:45.839] | : State: 'running' ("Future is being evaluated") [15:29:45.839] | : Resolved: TRUE [15:29:45.839] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-51 [15:29:45.839] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.839] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.839] | : Value: [15:29:45.839] | : Conditions captured: [15:29:45.845] | : Chunk #2 of 2 ... DONE [15:29:45.846] | : Launching 2 futures (chunks) ... DONE [15:29:45.846] | : Resolving 2 futures (chunks) ... [15:29:45.848] | : - Number of value chunks collected: 2 [15:29:45.849] | : Resolving 2 futures (chunks) ... DONE [15:29:45.850] | : Reducing values from 2 chunks ... [15:29:45.851] | : - Number of values collected after concatenation: 10 [15:29:45.851] | : - Number of values expected: 10 [15:29:45.852] | : Reducing values from 2 chunks ... DONE [15:29:45.853] | future_lapply() -> future_xapply() ... done [15:29:45.854] future_lapply() ... done List of 10 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 maxSize = 2305.6 bytes future.globals.maxSize = 2305.6 bytes [15:29:45.861] future_lapply() ... [15:29:45.863] | Globals in FUN(): [n=2] '{', 'getOption' [15:29:45.864] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:45.865] | future_lapply() -> future_xapply() ... [15:29:45.866] | : Number of chunks: 1 [15:29:45.867] | : getGlobalsAndPackagesXApply() ... [15:29:45.867] | : . future.globals: TRUE [15:29:45.877] | : . globals found/used: [n=1] 'FUN' [15:29:45.878] | : . needed namespaces: [n=0] [15:29:45.878] | : . use_args: TRUE [15:29:45.879] | : . Getting '...' globals ... [15:29:45.880] | : . ' '...' content: [n=0] [15:29:45.880] | : . ' List of 1 [15:29:45.880] | : . ' $ ...: list() [15:29:45.880] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.880] | : . ' - attr(*, "where")=List of 1 [15:29:45.880] | : . ' ..$ ...: [15:29:45.880] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.880] | : . ' - attr(*, "resolved")= logi TRUE [15:29:45.880] | : . ' - attr(*, "total_size")= num NA [15:29:45.885] | : . Getting '...' globals ... done [15:29:45.886] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:45.887] | : . List of 2 [15:29:45.887] | : . $ ...future.FUN:function (x) [15:29:45.887] | : . $ ... : list() [15:29:45.887] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.887] | : . - attr(*, "where")=List of 2 [15:29:45.887] | : . ..$ ...future.FUN: [15:29:45.887] | : . ..$ ... : [15:29:45.887] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.887] | : . - attr(*, "resolved")= logi FALSE [15:29:45.887] | : . - attr(*, "total_size")= num 4686 [15:29:45.892] | : . Packages to be attached in all futures: [n=0] [15:29:45.893] | : getGlobalsAndPackagesXApply() ... done [15:29:45.894] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.895] | : List of 5 [15:29:45.895] | : $ ...future.FUN :function (x) [15:29:45.895] | : $ ... : list() [15:29:45.895] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.895] | : $ ...future.elements_ii : NULL [15:29:45.895] | : $ ...future.seeds_ii : NULL [15:29:45.895] | : $ ...future.globals.maxSize: NULL [15:29:45.895] | : - attr(*, "where")=List of 5 [15:29:45.895] | : ..$ ...future.FUN : [15:29:45.895] | : ..$ ... : [15:29:45.895] | : ..$ ...future.elements_ii : [15:29:45.895] | : ..$ ...future.seeds_ii : [15:29:45.895] | : ..$ ...future.globals.maxSize: [15:29:45.895] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.895] | : - attr(*, "resolved")= logi FALSE [15:29:45.895] | : - attr(*, "total_size")= num 4686 [15:29:45.902] | : Number of futures (= number of chunks): 1 [15:29:45.903] | : Launching 1 futures (chunks) ... [15:29:45.904] | : Chunk #1 of 1 ... [15:29:45.905] | : - Finding globals in 'X' for chunk #1 ... [15:29:45.906] | : + additional globals found: [n=0] [15:29:45.907] | : + additional namespaces needed: [n=0] [15:29:45.908] | : - Finding globals in 'X' for chunk #1 ... DONE [15:29:45.908] | : - seeds: [15:29:45.909] | : - All globals exported: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:45.914] | : Created future: [15:29:45.915] | : MultisessionFuture: [15:29:45.915] | : Label: 'future_lapply-1' [15:29:45.915] | : Expression: [15:29:45.915] | : { [15:29:45.915] | : "# future::getGlobalsAndPackages(): wrapping the original future" [15:29:45.915] | : "# expression in do.call(), because function called uses '...' " [15:29:45.915] | : "# as a global variable " [15:29:45.915] | : do.call(function(...) { [15:29:45.915] | : "# future::getGlobalsAndPackages(): FUN() uses '...' internally " [15:29:45.915] | : "# without having an '...' argument. This means '...' is treated" [15:29:45.915] | : "# as a global variable. This may happen when FUN() is an " [15:29:45.915] | : "# anonymous function. " [15:29:45.915] | : "# " [15:29:45.915] | : "# If an anonymous function, we will make sure to restore the " [15:29:45.915] | : "# function environment of FUN() to the calling environment. " [15:29:45.915] | : "# We assume FUN() an anonymous function if it lives in the " [15:29:45.915] | : "# global environment, which is where globals are written. " [15:29:45.915] | : penv <- env <- environment(...future.FUN) [15:29:45.915] | : repeat { [15:29:45.915] | : if (identical(env, globalenv()) || identical(env, [15:29:45.915] | : emptyenv())) [15:29:45.915] | : break [15:29:45.915] | : penv <- env [15:29:45.915] | : env <- parent.env(env) [15:29:45.915] | : } [15:29:45.915] | : if (identical(penv, globalenv())) { [15:29:45.915] | : environment(...future.FUN) <- environment() [15:29:45.915] | : } [15:29:45.915] | : else if (!identical(penv, emptyenv()) && !is.null(penv) && [15:29:45.915] | : !isNamespace(penv)) { [15:29:45.915] | : parent.env(penv) <- environment() [15:29:45.915] | : } [15:29:45.915] | : rm(list = c("env", "penv"), inherits = FALSE) [15:29:45.915] | : { [15:29:45.915] | : "# future.apply:::future_xapply(): preserve future option" [15:29:45.915] | : ...future.globals.maxSize.org <- getOption("future.globals.maxSize") [15:29:45.915] | : if (!identical(...future.globals.maxSize.org, ...future.globals.maxSize)) { [15:29:45.915] | : oopts <- options(future.globals.maxSize = ...future.globals.maxSize) [15:29:45.915] | : on.exit(options(oopts), add = TRUE) [15:29:45.915] | : } [15:29:45.915] | : { [15:29:45.915] | : "# future.apply::future_lapply(): process chunk of elements" [15:29:45.915] | : lapply(seq_along(...future.elements_ii), FUN = function(jj) { [15:29:45.915] | : ...future.X_jj <- ...future.elements_ii[[jj]] [15:29:45.915] | : { [15:29:45.915] | : ...future.FUN(...future.X_jj, ...) [15:29:45.915] | : } [15:29:45.915] | : }) [15:29:45.915] | : } [15:29:45.915] | : } [15:29:45.915] | : }, args = future.call.arguments) [15:29:45.915] | : } [15:29:45.915] | : Globals: 5 objects totaling 5.59 KiB (list '...future.elements_ii' of 825 bytes, function '...future.FUN' of 407 bytes, DotDotDotList 'future.call.arguments' of 97 bytes, numeric '...future.globals.maxSize' of 39 bytes, NULL '...future.seeds_ii' of 27 bytes) [15:29:45.915] | : Packages: [15:29:45.915] | : L'Ecuyer-CMRG RNG seed: (seed = FALSE) [15:29:45.915] | : Capture standard output: TRUE [15:29:45.915] | : Capture condition classes: 'condition' (excluding '') [15:29:45.915] | : Immediate condition classes: 'immediateCondition' [15:29:45.915] | : Lazy evaluation: FALSE [15:29:45.915] | : Local evaluation: TRUE [15:29:45.915] | : Early signaling: FALSE [15:29:45.915] | : Actions: [n=1] 'run' [15:29:45.915] | : State: 'running' ("Future is being evaluated") [15:29:45.915] | : Resolved: TRUE [15:29:45.915] | : Unique identifier: 4612744afb2c0e4849a8abcbdc79f7dc-52 [15:29:45.915] | : Owner process: 4612744afb2c0e4849a8abcbdc79f7dc [15:29:45.915] | : Class: 'MultisessionFuture', 'ClusterFuture', 'MultiprocessFuture', 'Future' [15:29:45.915] | : Value: [15:29:45.915] | : Conditions captured: [15:29:45.923] | : Chunk #1 of 1 ... DONE [15:29:45.923] | : Launching 1 futures (chunks) ... DONE [15:29:45.924] | : Resolving 1 futures (chunks) ... [15:29:45.926] | : - Number of value chunks collected: 1 [15:29:45.927] | : Resolving 1 futures (chunks) ... DONE [15:29:45.927] | : Reducing values from 1 chunks ... [15:29:45.928] | : - Number of values collected after concatenation: 10 [15:29:45.929] | : - Number of values expected: 10 [15:29:45.930] | : Reducing values from 1 chunks ... DONE [15:29:45.930] | future_lapply() -> future_xapply() ... done [15:29:45.931] future_lapply() ... done List of 10 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 $ : num 2306 maxSize = 2305.6 bytes future.globals.maxSize = 2305.6 bytes *** future_lapply() - too large ... DONE *** future_lapply() - globals exceptions ... [15:29:45.937] future_lapply() ... [15:29:45.938] | Globals in FUN(): [n=0] [15:29:45.939] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:45.939] | future_lapply() -> future_xapply() ... [15:29:45.940] | : Number of chunks: 1 [15:29:45.941] | : getGlobalsAndPackagesXApply() ... [15:29:45.942] | : getGlobalsAndPackagesXApply() ... done [15:29:45.943] | future_lapply() -> future_xapply() ... done [15:29:45.944] future_lapply() ... done [15:29:45.946] future_lapply() ... [15:29:45.947] | Globals in FUN(): [n=0] [15:29:45.948] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:45.949] | future_lapply() -> future_xapply() ... [15:29:45.950] | : Number of chunks: 1 [15:29:45.951] | : getGlobalsAndPackagesXApply() ... [15:29:45.952] | : . future.globals: with names [15:29:45.953] | : getGlobalsAndPackagesXApply() ... done [15:29:45.954] | future_lapply() -> future_xapply() ... done [15:29:45.955] future_lapply() ... done [15:29:45.956] future_lapply() ... [15:29:45.958] | Globals in FUN(): [n=0] [15:29:45.959] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:45.960] | future_lapply() -> future_xapply() ... [15:29:45.961] | : Number of chunks: 1 [15:29:45.962] | : getGlobalsAndPackagesXApply() ... [15:29:45.962] | : . future.globals: '...future.FUN' [15:29:45.963] | : . use_args: TRUE [15:29:45.964] | : getGlobalsAndPackagesXApply() ... done [15:29:45.965] | future_lapply() -> future_xapply() ... done [15:29:45.965] future_lapply() ... done [15:29:45.967] future_lapply() ... [15:29:45.968] | Globals in FUN(): [n=0] [15:29:45.968] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:45.969] | future_lapply() -> future_xapply() ... [15:29:45.970] | : Number of chunks: 1 [15:29:45.970] | : getGlobalsAndPackagesXApply() ... [15:29:45.971] | : . future.globals: '...future.FUN' [15:29:45.972] | : . use_args: TRUE [15:29:45.973] | : getGlobalsAndPackagesXApply() ... done [15:29:45.973] | future_lapply() -> future_xapply() ... done [15:29:45.974] future_lapply() ... done [15:29:45.975] future_lapply() ... [15:29:45.976] | Globals in FUN(): [n=0] [15:29:45.977] | => Will pass '...' to FUN(): '{', ' ...future.FUN(...future.X_jj, ...)', '}' [15:29:45.978] | future_lapply() -> future_xapply() ... [15:29:45.978] | : Number of chunks: 1 [15:29:45.979] | : getGlobalsAndPackagesXApply() ... [15:29:45.979] | : . future.globals: TRUE [15:29:45.989] | : . globals found/used: [n=1] 'FUN' [15:29:45.990] | : . needed namespaces: [n=0] [15:29:45.991] | : . use_args: TRUE [15:29:45.991] | : . Getting '...' globals ... [15:29:45.993] | : . ' '...' content: [n=0] [15:29:45.993] | : . ' List of 1 [15:29:45.993] | : . ' $ ...: list() [15:29:45.993] | : . ' ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:45.993] | : . ' - attr(*, "where")=List of 1 [15:29:45.993] | : . ' ..$ ...: [15:29:45.993] | : . ' - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:45.993] | : . ' - attr(*, "resolved")= logi TRUE [15:29:45.993] | : . ' - attr(*, "total_size")= num NA [15:29:45.998] | : . Getting '...' globals ... done [15:29:45.999] | : . Globals to be used in all futures (chunks): [n=2] '...future.FUN', '...' [15:29:46.000] | : . List of 2 [15:29:46.000] | : . $ ...future.FUN:function (f) [15:29:46.000] | : . $ ... : list() [15:29:46.000] | : . ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:46.000] | : . - attr(*, "where")=List of 2 [15:29:46.000] | : . ..$ ...future.FUN: [15:29:46.000] | : . ..$ ... : [15:29:46.000] | : . - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:46.000] | : . - attr(*, "resolved")= logi FALSE [15:29:46.000] | : . - attr(*, "total_size")= num 3255 [15:29:46.005] | : . Packages to be attached in all futures: [n=0] [15:29:46.006] | : getGlobalsAndPackagesXApply() ... done [15:29:46.007] | : Globals pass to each chunk: [n=5] '...future.FUN', '...', '...future.elements_ii', '...future.seeds_ii', '...future.globals.maxSize' [15:29:46.007] | : List of 5 [15:29:46.007] | : $ ...future.FUN :function (f) [15:29:46.007] | : $ ... : list() [15:29:46.007] | : ..- attr(*, "class")= chr [1:2] "DotDotDotList" "list" [15:29:46.007] | : $ ...future.elements_ii : NULL [15:29:46.007] | : $ ...future.seeds_ii : NULL [15:29:46.007] | : $ ...future.globals.maxSize: NULL [15:29:46.007] | : - attr(*, "where")=List of 5 [15:29:46.007] | : ..$ ...future.FUN : [15:29:46.007] | : ..$ ... : [15:29:46.007] | : ..$ ...future.elements_ii : [15:29:46.007] | : ..$ ...future.seeds_ii : [15:29:46.007] | : ..$ ...future.globals.maxSize: [15:29:46.007] | : - attr(*, "class")= chr [1:3] "FutureGlobals" "Globals" "list" [15:29:46.007] | : - attr(*, "resolved")= logi FALSE [15:29:46.007] | : - attr(*, "total_size")= num 3255 [15:29:46.013] | : Number of futures (= number of chunks): 1 [15:29:46.014] | : Launching 1 futures (chunks) ... [15:29:46.015] | : Chunk #1 of 1 ... [15:29:46.015] | : - Finding globals in 'X' for chunk #1 ... [15:29:46.024] | : + additional globals found: [n=1] '...future.elements_ii' [15:29:46.025] | : + additional namespaces needed: [n=0] [15:29:46.026] | : onError() ... [15:29:46.027] | : . Received Warning: Caught simpleError. Canceling all iterations ... [15:29:46.028] | : . Signaling: [15:29:46.028] | : onError() ... done [15:29:46.029] | future_lapply() -> future_xapply() ... done [15:29:46.030] future_lapply() ... done *** future_lapply() - globals exceptions ... DONE Failed to undo environment variables: - Expected environment variables: [n=218] '!ExitCode', 'ALLUSERSPROFILE', 'APPDATA', 'BIBINPUTS', 'BINDIR', 'BSTINPUTS', 'COMMONPROGRAMFILES', 'COMPUTERNAME', 'COMSPEC', 'CURL_CA_BUNDLE', 'CV_Instance001', 'CYGWIN', 'CommonProgramFiles(x86)', 'CommonProgramW6432', 'DriverData', 'HOME', 'HOMEDRIVE', 'HOMEPATH', 'JAGS_ROOT', 'JAVA_HOME', 'LANGUAGE', 'LC_COLLATE', 'LC_MONETARY', 'LC_TIME', 'LOCALAPPDATA', 'LOGONSERVER', 'LS_HOME', 'LS_LICENSE_PATH', 'MAKE', 'MAKEFLAGS', 'MAKELEVEL', 'MFLAGS', 'MSMPI_BENCHMARKS', 'MSMPI_BIN', 'MSYS2_ENV_CONV_EXCL', 'NUMBER_OF_PROCESSORS', 'OCL', 'OMP_THREAD_LIMIT', 'OS', 'PATH', 'PATHEXT', 'PROCESSOR_ARCHITECTURE', 'PROCESSOR_IDENTIFIER', 'PROCESSOR_LEVEL', 'PROCESSOR_REVISION', 'PROGRAMFILES', 'PROMPT', 'PSModulePath', 'PUBLIC', 'PWD', 'ProgramData', 'ProgramFiles(x86)', 'ProgramW6432', 'RTOOLS44_HOME', 'RTOOLS45_HOME', 'R_ARCH', 'R_BROWSER', 'R_BZIPCMD', 'R_CMD', 'R_COMPILED_BY', 'R_CRAN_WEB', 'R_CUSTOM_TOOLS_PATH', 'R_CUSTOM_TOOLS_SOFT', 'R_DOC_DIR', 'R_ENVIRON_USER', 'R_GSCMD', 'R_GZIPCMD', 'R_HOME', 'R_INCLUDE_DIR', 'R_INSTALL_TAR', 'R_LIBS', 'R_LIBS_SITE', 'R_LIBS_USER', 'R_MAX_NUM_DLLS', 'R_OSTYPE', 'R_PAPERSIZE', 'R_PAPERSIZE_USER', 'R_PARALLELLY_MAKENODEPSOCK_AUTOKILL', 'R_PARALLELLY_MAKENODEPSOCK_CONNECTTIMEOUT', 'R_PARALLELLY_MAKENODEPSOCK_RSCRIPT_LABEL', 'R_PARALLELLY_MAKENODEPSOCK_SESSIONINFO_PKGS', 'R_PARALLELLY_MAKENODEPSOCK_TIMEOUT', 'R_PARALLELLY_RANDOM_PORTS', 'R_PARALLEL_PORT', 'R_RD4PDF', 'R_RTOOLS45_PATH', 'R_SCRIPT_LEGACY', 'R_SHARE_DIR', 'R_TESTME_NAME', 'R_TESTME_PACKAGE', 'R_TESTME_PATH', 'R_TESTS', 'R_UNZIPCMD', 'R_USER', 'R_VERSION', 'R_ZIPCMD', 'SED', 'SHLVL', 'SYSTEMDRIVE', 'SYSTEMROOT', 'TAR', 'TAR_OPTIONS', 'TEMP', 'TERM', 'TETRAD_DIR', 'TEXINPUTS', 'TMP', 'TMPDIR', 'USERDOMAIN', 'USERDOMAIN_ROAMINGPROFILE', 'USERNAME', 'USERPROFILE', 'WINDIR', '_', '_R_CHECK_AUTOCONF_', '_R_CHECK_BOGUS_RETURN_', '_R_CHECK_BROWSER_NONINTERACTIVE_', '_R_CHECK_BUILD_VIGNETTES_SEPARATELY_', '_R_CHECK_CODETOOLS_PROFILE_', '_R_CHECK_CODE_ASSIGN_TO_GLOBALENV_', '_R_CHECK_CODE_ATTACH_', '_R_CHECK_CODE_CLASS_IS_STRING_', '_R_CHECK_CODE_DATA_INTO_GLOBALENV_', '_R_CHECK_CODE_USAGE_VIA_NAMESPACES_', '_R_CHECK_CODE_USAGE_WITHOUT_LOADING_', '_R_CHECK_CODE_USAGE_WITH_ONLY_BASE_ATTACHED_', '_R_CHECK_CODOC_VARIABLES_IN_USAGES_', '_R_CHECK_COMPACT_DATA2_', '_R_CHECK_COMPILATION_FLAGS_', '_R_CHECK_CONNECTIONS_LEFT_OPEN_', '_R_CHECK_CRAN_INCOMING_', '_R_CHECK_CRAN_INCOMING_ASPELL_RECHECK_MAYBE_', '_R_CHECK_CRAN_INCOMING_ASPELL_RECHECK_START_', '_R_CHECK_CRAN_INCOMING_CHECK_FILE_URIS_', '_R_CHECK_CRAN_INCOMING_CHECK_URLS_IN_PARALLEL_', '_R_CHECK_CRAN_INCOMING_NOTE_GNU_MAKE_', '_R_CHECK_CRAN_INCOMING_REMOTE_', '_R_CHECK_CRAN_INCOMING_USE_ASPELL_', '_R_CHECK_DATALIST_', '_R_CHECK_DEPRECATED_DEFUNCT_', '_R_CHECK_DOC_SIZES2_', '_R_CHECK_DOT_FIRSTLIB_', '_R_CHECK_DOT_INTERNAL_', '_R_CHECK_EXAMPLE_TIMING_THRESHOLD_', '_R_CHECK_EXECUTABLES_', '_R_CHECK_EXECUTABLES_EXCLUSIONS_', '_R_CHECK_FF_CALLS_', '_R_CHECK_FF_DUP_', '_R_CHECK_FORCE_SUGGESTS_', '_R_CHECK_FUTURE_FILE_TIMESTAMPS_', '_R_CHECK_FUTURE_FILE_TIMESTAMPS_LEEWAY_', '_R_CHECK_HAVE_MYSQL_', '_R_CHECK_HAVE_ODBC_', '_R_CHECK_HAVE_PERL_', '_R_CHECK_HAVE_POSTGRES_', '_R_CHECK_INSTALL_DEPENDS_', '_R_CHECK_INTERNALS2_', '_R_CHECK_LENGTH_1_CONDITION_', '_R_CHECK_LICENSE_', '_R_CHECK_LIMIT_CORES_', '_R_CHECK_LOG_USE_INFO_', '_R_CHECK_MATRIX_DATA_', '_R_CHECK_MBCS_CONVERSION_FAILURE_', '_R_CHECK_NATIVE_ROUTINE_REGISTRATION_', '_R_CHECK_NEWS_IN_PLAIN_TEXT_', '_R_CHECK_NO_RECOMMENDED_', '_R_CHECK_NO_STOP_ON_TEST_ERROR_', '_R_CHECK_ORPHANED_', '_R_CHECK_OVERWRITE_REGISTERED_S3_METHODS_', '_R_CHECK_PACKAGES_USED_IGNORE_UNUSED_IMPORTS_', '_R_CHECK_PACKAGES_USED_IN_TESTS_USE_SUBDIRS_', '_R_CHECK_PACKAGE_DATASETS_SUPPRESS_NOTES_', '_R_CHECK_PACKAGE_NAME_', '_R_CHECK_PKG_SIZES_', '_R_CHECK_PKG_SIZES_THRESHOLD_', '_R_CHECK_PRAGMAS_', '_R_CHECK_RCPP_NOT_NEEDED_', '_R_CHECK_RD_BIBENTRIES_CITED_NOT_SHOWN_', '_R_CHECK_RD_EXAMPLES_T_AND_F_', '_R_CHECK_RD_LINE_WIDTHS_', '_R_CHECK_RD_MATH_RENDERING_', '_R_CHECK_RD_NOTE_LOST_BRACES_', '_R_CHECK_RD_VALIDATE_RD2HTML_', '_R_CHECK_REPLACING_IMPORTS_', '_R_CHECK_R_DEPENDS_', '_R_CHECK_S3_METHODS_SHOW_POSSIBLE_ISSUES_', '_R_CHECK_SCREEN_DEVICE_', '_R_CHECK_SERIALIZATION_', '_R_CHECK_SHLIB_OPENMP_FLAGS_', '_R_CHECK_SRC_MINUS_W_IMPLICIT_', '_R_CHECK_SUBDIRS_NOCASE_', '_R_CHECK_SUGGESTS_ONLY_', '_R_CHECK_SYSTEM_CLOCK_', '_R_CHECK_TESTS_NLINES_', '_R_CHECK_TEST_TIMING_', '_R_CHECK_TIMINGS_', '_R_CHECK_TOPLEVEL_FILES_', '_R_CHECK_UNDOC_USE_ALL_NAMES_', '_R_CHECK_UNSAFE_CALLS_', '_R_CHECK_URLS_RELATIVE_PATHS_', '_R_CHECK_URLS_SHOW_301_STATUS_', '_R_CHECK_VC_DIRS_', '_R_CHECK_VIGNETTES_NLINES_', '_R_CHECK_VIGNETTES_SKIP_RUN_MAYBE_', '_R_CHECK_VIGNETTE_TIMING_', '_R_CHECK_VIGNETTE_TITLES_', '_R_CHECK_WINDOWS_DEVICE_', '_R_CHECK_XREFS_NOTE_MISSING_PACKAGE_ANCHORS_', '_R_CHECK_XREFS_USE_ALIASES_FROM_CRAN_', '_R_CLASS_MATRIX_ARRAY_', '_R_DEPRECATED_IS_R_', '_R_S3_METHOD_LOOKUP_BASEENV_AFTER_GLOBALENV_', '_R_SHLIB_BUILD_OBJECTS_SYMBOL_TABLES_', '_R_USE_STRICT_R_HEADERS_', '__R_CHECK_DOC_FILES_NOTE_IF_ALL_INTERNAL__', 'maj.version', 'nextArg--timingsnextArg--install', 'tempdirname' - Environment variables still there: [n=0] - Environment variables missing: [n=1] 'MAKEFLAGS' Differences environment variable by environment variable: Skipping, because path appears not to be an 'R CMD check' folder: 'D:/temp/2026_03_18_15_25_17_31911' Test time: user.self=4s, sys.self=0.5s, elapsed=6s, user.child=NAs, sys.child=NAs Test 'future.apply-future_lapply,globals' ... success > > proc.time() user system elapsed 4.65 0.64 7.09