R Under development (unstable) (2024-07-02 r86866 ucrt) -- "Unsuffered Consequences" Copyright (C) 2024 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. > source("incl/start.R") Loading required package: future [13:30:39.809] plan(): Setting new future strategy stack: [13:30:39.810] List of future strategies: [13:30:39.810] 1. mirai_multisession: [13:30:39.810] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:30:39.810] - tweaked: FALSE [13:30:39.810] - call: future::plan(future.mirai::mirai_multisession) [13:30:39.823] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:30:39.823] < mirai [$data] > [13:30:39.828] getGlobalsAndPackages() ... [13:30:39.828] Not searching for globals [13:30:39.828] - globals: [0] [13:30:39.828] getGlobalsAndPackages() ... DONE [13:30:39.829] getGlobalsAndPackages() ... [13:30:39.829] [13:30:39.829] - globals: [0] [13:30:39.829] getGlobalsAndPackages() ... DONE [13:30:40.082] Packages needed by the future expression (n = 0): [13:30:40.082] Packages needed by future strategies (n = 0): [13:30:40.083] { [13:30:40.083] { [13:30:40.083] { [13:30:40.083] ...future.startTime <- base::Sys.time() [13:30:40.083] { [13:30:40.083] { [13:30:40.083] { [13:30:40.083] base::local({ [13:30:40.083] has_future <- base::requireNamespace("future", [13:30:40.083] quietly = TRUE) [13:30:40.083] if (has_future) { [13:30:40.083] ns <- base::getNamespace("future") [13:30:40.083] version <- ns[[".package"]][["version"]] [13:30:40.083] if (is.null(version)) [13:30:40.083] version <- utils::packageVersion("future") [13:30:40.083] } [13:30:40.083] else { [13:30:40.083] version <- NULL [13:30:40.083] } [13:30:40.083] if (!has_future || version < "1.8.0") { [13:30:40.083] info <- base::c(r_version = base::gsub("R version ", [13:30:40.083] "", base::R.version$version.string), [13:30:40.083] platform = base::sprintf("%s (%s-bit)", [13:30:40.083] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:30:40.083] os = base::paste(base::Sys.info()[base::c("sysname", [13:30:40.083] "release", "version")], collapse = " "), [13:30:40.083] hostname = base::Sys.info()[["nodename"]]) [13:30:40.083] info <- base::sprintf("%s: %s", base::names(info), [13:30:40.083] info) [13:30:40.083] info <- base::paste(info, collapse = "; ") [13:30:40.083] if (!has_future) { [13:30:40.083] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:30:40.083] info) [13:30:40.083] } [13:30:40.083] else { [13:30:40.083] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:30:40.083] info, version) [13:30:40.083] } [13:30:40.083] base::stop(msg) [13:30:40.083] } [13:30:40.083] }) [13:30:40.083] } [13:30:40.083] ...future.strategy.old <- future::plan("list") [13:30:40.083] options(future.plan = NULL) [13:30:40.083] Sys.unsetenv("R_FUTURE_PLAN") [13:30:40.083] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:30:40.083] } [13:30:40.083] ...future.workdir <- getwd() [13:30:40.083] } [13:30:40.083] ...future.oldOptions <- base::as.list(base::.Options) [13:30:40.083] ...future.oldEnvVars <- base::Sys.getenv() [13:30:40.083] } [13:30:40.083] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:30:40.083] future.globals.maxSize = NULL, future.globals.method = NULL, [13:30:40.083] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:30:40.083] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:30:40.083] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:30:40.083] future.stdout.windows.reencode = NULL, width = 80L) [13:30:40.083] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:30:40.083] base::names(...future.oldOptions)) [13:30:40.083] } [13:30:40.083] if (FALSE) { [13:30:40.083] } [13:30:40.083] else { [13:30:40.083] if (TRUE) { [13:30:40.083] ...future.stdout <- base::rawConnection(base::raw(0L), [13:30:40.083] open = "w") [13:30:40.083] } [13:30:40.083] else { [13:30:40.083] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:30:40.083] windows = "NUL", "/dev/null"), open = "w") [13:30:40.083] } [13:30:40.083] base::sink(...future.stdout, type = "output", split = FALSE) [13:30:40.083] base::on.exit(if (!base::is.null(...future.stdout)) { [13:30:40.083] base::sink(type = "output", split = FALSE) [13:30:40.083] base::close(...future.stdout) [13:30:40.083] }, add = TRUE) [13:30:40.083] } [13:30:40.083] ...future.frame <- base::sys.nframe() [13:30:40.083] ...future.conditions <- base::list() [13:30:40.083] ...future.rng <- base::globalenv()$.Random.seed [13:30:40.083] if (FALSE) { [13:30:40.083] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:30:40.083] "...future.value", "...future.globalenv.names", ".Random.seed") [13:30:40.083] } [13:30:40.083] ...future.result <- base::tryCatch({ [13:30:40.083] base::withCallingHandlers({ [13:30:40.083] ...future.value <- base::withVisible(base::local(NA)) [13:30:40.083] future::FutureResult(value = ...future.value$value, [13:30:40.083] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:30:40.083] ...future.rng), globalenv = if (FALSE) [13:30:40.083] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:30:40.083] ...future.globalenv.names)) [13:30:40.083] else NULL, started = ...future.startTime, version = "1.8") [13:30:40.083] }, condition = base::local({ [13:30:40.083] c <- base::c [13:30:40.083] inherits <- base::inherits [13:30:40.083] invokeRestart <- base::invokeRestart [13:30:40.083] length <- base::length [13:30:40.083] list <- base::list [13:30:40.083] seq.int <- base::seq.int [13:30:40.083] signalCondition <- base::signalCondition [13:30:40.083] sys.calls <- base::sys.calls [13:30:40.083] `[[` <- base::`[[` [13:30:40.083] `+` <- base::`+` [13:30:40.083] `<<-` <- base::`<<-` [13:30:40.083] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:30:40.083] calls[seq.int(from = from + 12L, to = length(calls) - [13:30:40.083] 3L)] [13:30:40.083] } [13:30:40.083] function(cond) { [13:30:40.083] is_error <- inherits(cond, "error") [13:30:40.083] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:30:40.083] NULL) [13:30:40.083] if (is_error) { [13:30:40.083] sessionInformation <- function() { [13:30:40.083] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:30:40.083] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:30:40.083] search = base::search(), system = base::Sys.info()) [13:30:40.083] } [13:30:40.083] ...future.conditions[[length(...future.conditions) + [13:30:40.083] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:30:40.083] cond$call), session = sessionInformation(), [13:30:40.083] timestamp = base::Sys.time(), signaled = 0L) [13:30:40.083] signalCondition(cond) [13:30:40.083] } [13:30:40.083] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:30:40.083] signal <- FALSE && inherits(cond, character(0)) [13:30:40.083] ...future.conditions[[length(...future.conditions) + [13:30:40.083] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:30:40.083] if (FALSE && !signal) { [13:30:40.083] muffleCondition <- function (cond, pattern = "^muffle") [13:30:40.083] { [13:30:40.083] inherits <- base::inherits [13:30:40.083] invokeRestart <- base::invokeRestart [13:30:40.083] is.null <- base::is.null [13:30:40.083] muffled <- FALSE [13:30:40.083] if (inherits(cond, "message")) { [13:30:40.083] muffled <- grepl(pattern, "muffleMessage") [13:30:40.083] if (muffled) [13:30:40.083] invokeRestart("muffleMessage") [13:30:40.083] } [13:30:40.083] else if (inherits(cond, "warning")) { [13:30:40.083] muffled <- grepl(pattern, "muffleWarning") [13:30:40.083] if (muffled) [13:30:40.083] invokeRestart("muffleWarning") [13:30:40.083] } [13:30:40.083] else if (inherits(cond, "condition")) { [13:30:40.083] if (!is.null(pattern)) { [13:30:40.083] computeRestarts <- base::computeRestarts [13:30:40.083] grepl <- base::grepl [13:30:40.083] restarts <- computeRestarts(cond) [13:30:40.083] for (restart in restarts) { [13:30:40.083] name <- restart$name [13:30:40.083] if (is.null(name)) [13:30:40.083] next [13:30:40.083] if (!grepl(pattern, name)) [13:30:40.083] next [13:30:40.083] invokeRestart(restart) [13:30:40.083] muffled <- TRUE [13:30:40.083] break [13:30:40.083] } [13:30:40.083] } [13:30:40.083] } [13:30:40.083] invisible(muffled) [13:30:40.083] } [13:30:40.083] muffleCondition(cond, pattern = "^muffle") [13:30:40.083] } [13:30:40.083] } [13:30:40.083] else { [13:30:40.083] if (TRUE) { [13:30:40.083] muffleCondition <- function (cond, pattern = "^muffle") [13:30:40.083] { [13:30:40.083] inherits <- base::inherits [13:30:40.083] invokeRestart <- base::invokeRestart [13:30:40.083] is.null <- base::is.null [13:30:40.083] muffled <- FALSE [13:30:40.083] if (inherits(cond, "message")) { [13:30:40.083] muffled <- grepl(pattern, "muffleMessage") [13:30:40.083] if (muffled) [13:30:40.083] invokeRestart("muffleMessage") [13:30:40.083] } [13:30:40.083] else if (inherits(cond, "warning")) { [13:30:40.083] muffled <- grepl(pattern, "muffleWarning") [13:30:40.083] if (muffled) [13:30:40.083] invokeRestart("muffleWarning") [13:30:40.083] } [13:30:40.083] else if (inherits(cond, "condition")) { [13:30:40.083] if (!is.null(pattern)) { [13:30:40.083] computeRestarts <- base::computeRestarts [13:30:40.083] grepl <- base::grepl [13:30:40.083] restarts <- computeRestarts(cond) [13:30:40.083] for (restart in restarts) { [13:30:40.083] name <- restart$name [13:30:40.083] if (is.null(name)) [13:30:40.083] next [13:30:40.083] if (!grepl(pattern, name)) [13:30:40.083] next [13:30:40.083] invokeRestart(restart) [13:30:40.083] muffled <- TRUE [13:30:40.083] break [13:30:40.083] } [13:30:40.083] } [13:30:40.083] } [13:30:40.083] invisible(muffled) [13:30:40.083] } [13:30:40.083] muffleCondition(cond, pattern = "^muffle") [13:30:40.083] } [13:30:40.083] } [13:30:40.083] } [13:30:40.083] })) [13:30:40.083] }, error = function(ex) { [13:30:40.083] base::structure(base::list(value = NULL, visible = NULL, [13:30:40.083] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:30:40.083] ...future.rng), started = ...future.startTime, [13:30:40.083] finished = Sys.time(), session_uuid = NA_character_, [13:30:40.083] version = "1.8"), class = "FutureResult") [13:30:40.083] }, finally = { [13:30:40.083] if (!identical(...future.workdir, getwd())) [13:30:40.083] setwd(...future.workdir) [13:30:40.083] { [13:30:40.083] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:30:40.083] ...future.oldOptions$nwarnings <- NULL [13:30:40.083] } [13:30:40.083] base::options(...future.oldOptions) [13:30:40.083] if (.Platform$OS.type == "windows") { [13:30:40.083] old_names <- names(...future.oldEnvVars) [13:30:40.083] envs <- base::Sys.getenv() [13:30:40.083] names <- names(envs) [13:30:40.083] common <- intersect(names, old_names) [13:30:40.083] added <- setdiff(names, old_names) [13:30:40.083] removed <- setdiff(old_names, names) [13:30:40.083] changed <- common[...future.oldEnvVars[common] != [13:30:40.083] envs[common]] [13:30:40.083] NAMES <- toupper(changed) [13:30:40.083] args <- list() [13:30:40.083] for (kk in seq_along(NAMES)) { [13:30:40.083] name <- changed[[kk]] [13:30:40.083] NAME <- NAMES[[kk]] [13:30:40.083] if (name != NAME && is.element(NAME, old_names)) [13:30:40.083] next [13:30:40.083] args[[name]] <- ...future.oldEnvVars[[name]] [13:30:40.083] } [13:30:40.083] NAMES <- toupper(added) [13:30:40.083] for (kk in seq_along(NAMES)) { [13:30:40.083] name <- added[[kk]] [13:30:40.083] NAME <- NAMES[[kk]] [13:30:40.083] if (name != NAME && is.element(NAME, old_names)) [13:30:40.083] next [13:30:40.083] args[[name]] <- "" [13:30:40.083] } [13:30:40.083] NAMES <- toupper(removed) [13:30:40.083] for (kk in seq_along(NAMES)) { [13:30:40.083] name <- removed[[kk]] [13:30:40.083] NAME <- NAMES[[kk]] [13:30:40.083] if (name != NAME && is.element(NAME, old_names)) [13:30:40.083] next [13:30:40.083] args[[name]] <- ...future.oldEnvVars[[name]] [13:30:40.083] } [13:30:40.083] if (length(args) > 0) [13:30:40.083] base::do.call(base::Sys.setenv, args = args) [13:30:40.083] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:30:40.083] } [13:30:40.083] else { [13:30:40.083] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:30:40.083] } [13:30:40.083] { [13:30:40.083] if (base::length(...future.futureOptionsAdded) > [13:30:40.083] 0L) { [13:30:40.083] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:30:40.083] base::names(opts) <- ...future.futureOptionsAdded [13:30:40.083] base::options(opts) [13:30:40.083] } [13:30:40.083] { [13:30:40.083] NULL [13:30:40.083] options(future.plan = NULL) [13:30:40.083] if (is.na(NA_character_)) [13:30:40.083] Sys.unsetenv("R_FUTURE_PLAN") [13:30:40.083] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:30:40.083] future::plan(...future.strategy.old, .cleanup = FALSE, [13:30:40.083] .init = FALSE) [13:30:40.083] } [13:30:40.083] } [13:30:40.083] } [13:30:40.083] }) [13:30:40.083] if (TRUE) { [13:30:40.083] base::sink(type = "output", split = FALSE) [13:30:40.083] if (TRUE) { [13:30:40.083] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:30:40.083] } [13:30:40.083] else { [13:30:40.083] ...future.result["stdout"] <- base::list(NULL) [13:30:40.083] } [13:30:40.083] base::close(...future.stdout) [13:30:40.083] ...future.stdout <- NULL [13:30:40.083] } [13:30:40.083] ...future.result$conditions <- ...future.conditions [13:30:40.083] ...future.result$finished <- base::Sys.time() [13:30:40.083] ...future.result [13:30:40.083] } [13:30:40.205] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:30:40.205] plan(): nbrOfWorkers() = 2 > > message("*** Futures - lazy ...") *** Futures - lazy ... > > strategies <- c("mirai_cluster", "mirai_multisession") > > for (strategy in strategies) { + mprintf("- plan('%s') ...", strategy) + plan(strategy) + + a <- 42 + f <- future(2 * a, lazy = TRUE) + a <- 21 + v <- value(f) + stopifnot(v == 84) + + a <- 42 + v %<-% { 2 * a } %lazy% TRUE + a <- 21 + stopifnot(v == 84) + + mprintf("- plan('%s') ... DONE", strategy) + } ## for (strategy ...) [13:30:40.213] - plan('mirai_cluster') ...[13:30:40.214] plan(): Setting new future strategy stack: [13:30:40.214] List of future strategies: [13:30:40.214] 1. mirai_cluster: [13:30:40.214] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = "") [13:30:40.214] - tweaked: FALSE [13:30:40.214] - call: plan(strategy) [13:30:40.230] plan(): plan_init() of 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:30:40.230] < mirai [$data] > [13:30:40.230] getGlobalsAndPackages() ... [13:30:40.231] Not searching for globals [13:30:40.231] - globals: [0] [13:30:40.231] getGlobalsAndPackages() ... DONE [13:30:40.231] getGlobalsAndPackages() ... [13:30:40.231] [13:30:40.231] - globals: [0] [13:30:40.232] getGlobalsAndPackages() ... DONE [13:30:40.232] Packages needed by the future expression (n = 0): [13:30:40.232] Packages needed by future strategies (n = 0): [13:30:40.233] { [13:30:40.233] { [13:30:40.233] { [13:30:40.233] ...future.startTime <- base::Sys.time() [13:30:40.233] { [13:30:40.233] { [13:30:40.233] { [13:30:40.233] base::local({ [13:30:40.233] has_future <- base::requireNamespace("future", [13:30:40.233] quietly = TRUE) [13:30:40.233] if (has_future) { [13:30:40.233] ns <- base::getNamespace("future") [13:30:40.233] version <- ns[[".package"]][["version"]] [13:30:40.233] if (is.null(version)) [13:30:40.233] version <- utils::packageVersion("future") [13:30:40.233] } [13:30:40.233] else { [13:30:40.233] version <- NULL [13:30:40.233] } [13:30:40.233] if (!has_future || version < "1.8.0") { [13:30:40.233] info <- base::c(r_version = base::gsub("R version ", [13:30:40.233] "", base::R.version$version.string), [13:30:40.233] platform = base::sprintf("%s (%s-bit)", [13:30:40.233] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:30:40.233] os = base::paste(base::Sys.info()[base::c("sysname", [13:30:40.233] "release", "version")], collapse = " "), [13:30:40.233] hostname = base::Sys.info()[["nodename"]]) [13:30:40.233] info <- base::sprintf("%s: %s", base::names(info), [13:30:40.233] info) [13:30:40.233] info <- base::paste(info, collapse = "; ") [13:30:40.233] if (!has_future) { [13:30:40.233] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:30:40.233] info) [13:30:40.233] } [13:30:40.233] else { [13:30:40.233] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:30:40.233] info, version) [13:30:40.233] } [13:30:40.233] base::stop(msg) [13:30:40.233] } [13:30:40.233] }) [13:30:40.233] } [13:30:40.233] ...future.strategy.old <- future::plan("list") [13:30:40.233] options(future.plan = NULL) [13:30:40.233] Sys.unsetenv("R_FUTURE_PLAN") [13:30:40.233] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:30:40.233] } [13:30:40.233] ...future.workdir <- getwd() [13:30:40.233] } [13:30:40.233] ...future.oldOptions <- base::as.list(base::.Options) [13:30:40.233] ...future.oldEnvVars <- base::Sys.getenv() [13:30:40.233] } [13:30:40.233] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:30:40.233] future.globals.maxSize = NULL, future.globals.method = NULL, [13:30:40.233] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:30:40.233] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:30:40.233] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:30:40.233] future.stdout.windows.reencode = NULL, width = 80L) [13:30:40.233] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:30:40.233] base::names(...future.oldOptions)) [13:30:40.233] } [13:30:40.233] if (FALSE) { [13:30:40.233] } [13:30:40.233] else { [13:30:40.233] if (TRUE) { [13:30:40.233] ...future.stdout <- base::rawConnection(base::raw(0L), [13:30:40.233] open = "w") [13:30:40.233] } [13:30:40.233] else { [13:30:40.233] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:30:40.233] windows = "NUL", "/dev/null"), open = "w") [13:30:40.233] } [13:30:40.233] base::sink(...future.stdout, type = "output", split = FALSE) [13:30:40.233] base::on.exit(if (!base::is.null(...future.stdout)) { [13:30:40.233] base::sink(type = "output", split = FALSE) [13:30:40.233] base::close(...future.stdout) [13:30:40.233] }, add = TRUE) [13:30:40.233] } [13:30:40.233] ...future.frame <- base::sys.nframe() [13:30:40.233] ...future.conditions <- base::list() [13:30:40.233] ...future.rng <- base::globalenv()$.Random.seed [13:30:40.233] if (FALSE) { [13:30:40.233] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:30:40.233] "...future.value", "...future.globalenv.names", ".Random.seed") [13:30:40.233] } [13:30:40.233] ...future.result <- base::tryCatch({ [13:30:40.233] base::withCallingHandlers({ [13:30:40.233] ...future.value <- base::withVisible(base::local(NA)) [13:30:40.233] future::FutureResult(value = ...future.value$value, [13:30:40.233] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:30:40.233] ...future.rng), globalenv = if (FALSE) [13:30:40.233] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:30:40.233] ...future.globalenv.names)) [13:30:40.233] else NULL, started = ...future.startTime, version = "1.8") [13:30:40.233] }, condition = base::local({ [13:30:40.233] c <- base::c [13:30:40.233] inherits <- base::inherits [13:30:40.233] invokeRestart <- base::invokeRestart [13:30:40.233] length <- base::length [13:30:40.233] list <- base::list [13:30:40.233] seq.int <- base::seq.int [13:30:40.233] signalCondition <- base::signalCondition [13:30:40.233] sys.calls <- base::sys.calls [13:30:40.233] `[[` <- base::`[[` [13:30:40.233] `+` <- base::`+` [13:30:40.233] `<<-` <- base::`<<-` [13:30:40.233] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:30:40.233] calls[seq.int(from = from + 12L, to = length(calls) - [13:30:40.233] 3L)] [13:30:40.233] } [13:30:40.233] function(cond) { [13:30:40.233] is_error <- inherits(cond, "error") [13:30:40.233] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:30:40.233] NULL) [13:30:40.233] if (is_error) { [13:30:40.233] sessionInformation <- function() { [13:30:40.233] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:30:40.233] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:30:40.233] search = base::search(), system = base::Sys.info()) [13:30:40.233] } [13:30:40.233] ...future.conditions[[length(...future.conditions) + [13:30:40.233] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:30:40.233] cond$call), session = sessionInformation(), [13:30:40.233] timestamp = base::Sys.time(), signaled = 0L) [13:30:40.233] signalCondition(cond) [13:30:40.233] } [13:30:40.233] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:30:40.233] signal <- FALSE && inherits(cond, character(0)) [13:30:40.233] ...future.conditions[[length(...future.conditions) + [13:30:40.233] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:30:40.233] if (FALSE && !signal) { [13:30:40.233] muffleCondition <- function (cond, pattern = "^muffle") [13:30:40.233] { [13:30:40.233] inherits <- base::inherits [13:30:40.233] invokeRestart <- base::invokeRestart [13:30:40.233] is.null <- base::is.null [13:30:40.233] muffled <- FALSE [13:30:40.233] if (inherits(cond, "message")) { [13:30:40.233] muffled <- grepl(pattern, "muffleMessage") [13:30:40.233] if (muffled) [13:30:40.233] invokeRestart("muffleMessage") [13:30:40.233] } [13:30:40.233] else if (inherits(cond, "warning")) { [13:30:40.233] muffled <- grepl(pattern, "muffleWarning") [13:30:40.233] if (muffled) [13:30:40.233] invokeRestart("muffleWarning") [13:30:40.233] } [13:30:40.233] else if (inherits(cond, "condition")) { [13:30:40.233] if (!is.null(pattern)) { [13:30:40.233] computeRestarts <- base::computeRestarts [13:30:40.233] grepl <- base::grepl [13:30:40.233] restarts <- computeRestarts(cond) [13:30:40.233] for (restart in restarts) { [13:30:40.233] name <- restart$name [13:30:40.233] if (is.null(name)) [13:30:40.233] next [13:30:40.233] if (!grepl(pattern, name)) [13:30:40.233] next [13:30:40.233] invokeRestart(restart) [13:30:40.233] muffled <- TRUE [13:30:40.233] break [13:30:40.233] } [13:30:40.233] } [13:30:40.233] } [13:30:40.233] invisible(muffled) [13:30:40.233] } [13:30:40.233] muffleCondition(cond, pattern = "^muffle") [13:30:40.233] } [13:30:40.233] } [13:30:40.233] else { [13:30:40.233] if (TRUE) { [13:30:40.233] muffleCondition <- function (cond, pattern = "^muffle") [13:30:40.233] { [13:30:40.233] inherits <- base::inherits [13:30:40.233] invokeRestart <- base::invokeRestart [13:30:40.233] is.null <- base::is.null [13:30:40.233] muffled <- FALSE [13:30:40.233] if (inherits(cond, "message")) { [13:30:40.233] muffled <- grepl(pattern, "muffleMessage") [13:30:40.233] if (muffled) [13:30:40.233] invokeRestart("muffleMessage") [13:30:40.233] } [13:30:40.233] else if (inherits(cond, "warning")) { [13:30:40.233] muffled <- grepl(pattern, "muffleWarning") [13:30:40.233] if (muffled) [13:30:40.233] invokeRestart("muffleWarning") [13:30:40.233] } [13:30:40.233] else if (inherits(cond, "condition")) { [13:30:40.233] if (!is.null(pattern)) { [13:30:40.233] computeRestarts <- base::computeRestarts [13:30:40.233] grepl <- base::grepl [13:30:40.233] restarts <- computeRestarts(cond) [13:30:40.233] for (restart in restarts) { [13:30:40.233] name <- restart$name [13:30:40.233] if (is.null(name)) [13:30:40.233] next [13:30:40.233] if (!grepl(pattern, name)) [13:30:40.233] next [13:30:40.233] invokeRestart(restart) [13:30:40.233] muffled <- TRUE [13:30:40.233] break [13:30:40.233] } [13:30:40.233] } [13:30:40.233] } [13:30:40.233] invisible(muffled) [13:30:40.233] } [13:30:40.233] muffleCondition(cond, pattern = "^muffle") [13:30:40.233] } [13:30:40.233] } [13:30:40.233] } [13:30:40.233] })) [13:30:40.233] }, error = function(ex) { [13:30:40.233] base::structure(base::list(value = NULL, visible = NULL, [13:30:40.233] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:30:40.233] ...future.rng), started = ...future.startTime, [13:30:40.233] finished = Sys.time(), session_uuid = NA_character_, [13:30:40.233] version = "1.8"), class = "FutureResult") [13:30:40.233] }, finally = { [13:30:40.233] if (!identical(...future.workdir, getwd())) [13:30:40.233] setwd(...future.workdir) [13:30:40.233] { [13:30:40.233] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:30:40.233] ...future.oldOptions$nwarnings <- NULL [13:30:40.233] } [13:30:40.233] base::options(...future.oldOptions) [13:30:40.233] if (.Platform$OS.type == "windows") { [13:30:40.233] old_names <- names(...future.oldEnvVars) [13:30:40.233] envs <- base::Sys.getenv() [13:30:40.233] names <- names(envs) [13:30:40.233] common <- intersect(names, old_names) [13:30:40.233] added <- setdiff(names, old_names) [13:30:40.233] removed <- setdiff(old_names, names) [13:30:40.233] changed <- common[...future.oldEnvVars[common] != [13:30:40.233] envs[common]] [13:30:40.233] NAMES <- toupper(changed) [13:30:40.233] args <- list() [13:30:40.233] for (kk in seq_along(NAMES)) { [13:30:40.233] name <- changed[[kk]] [13:30:40.233] NAME <- NAMES[[kk]] [13:30:40.233] if (name != NAME && is.element(NAME, old_names)) [13:30:40.233] next [13:30:40.233] args[[name]] <- ...future.oldEnvVars[[name]] [13:30:40.233] } [13:30:40.233] NAMES <- toupper(added) [13:30:40.233] for (kk in seq_along(NAMES)) { [13:30:40.233] name <- added[[kk]] [13:30:40.233] NAME <- NAMES[[kk]] [13:30:40.233] if (name != NAME && is.element(NAME, old_names)) [13:30:40.233] next [13:30:40.233] args[[name]] <- "" [13:30:40.233] } [13:30:40.233] NAMES <- toupper(removed) [13:30:40.233] for (kk in seq_along(NAMES)) { [13:30:40.233] name <- removed[[kk]] [13:30:40.233] NAME <- NAMES[[kk]] [13:30:40.233] if (name != NAME && is.element(NAME, old_names)) [13:30:40.233] next [13:30:40.233] args[[name]] <- ...future.oldEnvVars[[name]] [13:30:40.233] } [13:30:40.233] if (length(args) > 0) [13:30:40.233] base::do.call(base::Sys.setenv, args = args) [13:30:40.233] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:30:40.233] } [13:30:40.233] else { [13:30:40.233] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:30:40.233] } [13:30:40.233] { [13:30:40.233] if (base::length(...future.futureOptionsAdded) > [13:30:40.233] 0L) { [13:30:40.233] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:30:40.233] base::names(opts) <- ...future.futureOptionsAdded [13:30:40.233] base::options(opts) [13:30:40.233] } [13:30:40.233] { [13:30:40.233] NULL [13:30:40.233] options(future.plan = NULL) [13:30:40.233] if (is.na(NA_character_)) [13:30:40.233] Sys.unsetenv("R_FUTURE_PLAN") [13:30:40.233] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:30:40.233] future::plan(...future.strategy.old, .cleanup = FALSE, [13:30:40.233] .init = FALSE) [13:30:40.233] } [13:30:40.233] } [13:30:40.233] } [13:30:40.233] }) [13:30:40.233] if (TRUE) { [13:30:40.233] base::sink(type = "output", split = FALSE) [13:30:40.233] if (TRUE) { [13:30:40.233] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:30:40.233] } [13:30:40.233] else { [13:30:40.233] ...future.result["stdout"] <- base::list(NULL) [13:30:40.233] } [13:30:40.233] base::close(...future.stdout) [13:30:40.233] ...future.stdout <- NULL [13:30:40.233] } [13:30:40.233] ...future.result$conditions <- ...future.conditions [13:30:40.233] ...future.result$finished <- base::Sys.time() [13:30:40.233] ...future.result [13:30:40.233] } [13:30:40.356] plan(): plan_init() of 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:30:40.356] plan(): nbrOfWorkers() = 2 [13:30:40.356] getGlobalsAndPackages() ... [13:30:40.356] Searching for globals... [13:30:40.361] - globals found: [2] '*', 'a' [13:30:40.361] Searching for globals ... DONE [13:30:40.361] Resolving globals: FALSE [13:30:40.362] The total size of the 1 globals is 56 bytes (56 bytes) [13:30:40.363] The total size of the 1 globals exported for future expression ('2 * a') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'a' (56 bytes of class 'numeric') [13:30:40.363] - globals: [1] 'a' [13:30:40.363] [13:30:40.364] getGlobalsAndPackages() ... DONE [13:30:40.364] run() for 'Future' ... [13:30:40.364] - state: 'created' [13:30:40.365] - Future backend: 'FutureStrategy', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' [13:30:40.365] - Future class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:30:40.365] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... [13:30:40.365] - Field: 'label' [13:30:40.366] - Field: 'local' [13:30:40.366] - Field: 'owner' [13:30:40.366] - Field: 'envir' [13:30:40.366] - Field: 'packages' [13:30:40.366] - Field: 'gc' [13:30:40.367] - Field: 'conditions' [13:30:40.367] - Field: 'expr' [13:30:40.367] - Field: 'uuid' [13:30:40.367] - Field: 'seed' [13:30:40.367] - Field: 'version' [13:30:40.367] - Field: 'result' [13:30:40.368] - Field: 'asynchronous' [13:30:40.368] - Field: 'calls' [13:30:40.368] - Field: 'globals' [13:30:40.368] - Field: 'stdout' [13:30:40.368] - Field: 'earlySignal' [13:30:40.368] - Field: 'lazy' [13:30:40.369] - Field: 'state' [13:30:40.369] - Field: '.cluster' [13:30:40.369] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... done [13:30:40.369] - Launch lazy future ... [13:30:40.369] Packages needed by the future expression (n = 0): [13:30:40.370] Packages needed by future strategies (n = 0): [13:30:40.370] { [13:30:40.370] { [13:30:40.370] { [13:30:40.370] ...future.startTime <- base::Sys.time() [13:30:40.370] { [13:30:40.370] { [13:30:40.370] { [13:30:40.370] base::local({ [13:30:40.370] has_future <- base::requireNamespace("future", [13:30:40.370] quietly = TRUE) [13:30:40.370] if (has_future) { [13:30:40.370] ns <- base::getNamespace("future") [13:30:40.370] version <- ns[[".package"]][["version"]] [13:30:40.370] if (is.null(version)) [13:30:40.370] version <- utils::packageVersion("future") [13:30:40.370] } [13:30:40.370] else { [13:30:40.370] version <- NULL [13:30:40.370] } [13:30:40.370] if (!has_future || version < "1.8.0") { [13:30:40.370] info <- base::c(r_version = base::gsub("R version ", [13:30:40.370] "", base::R.version$version.string), [13:30:40.370] platform = base::sprintf("%s (%s-bit)", [13:30:40.370] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:30:40.370] os = base::paste(base::Sys.info()[base::c("sysname", [13:30:40.370] "release", "version")], collapse = " "), [13:30:40.370] hostname = base::Sys.info()[["nodename"]]) [13:30:40.370] info <- base::sprintf("%s: %s", base::names(info), [13:30:40.370] info) [13:30:40.370] info <- base::paste(info, collapse = "; ") [13:30:40.370] if (!has_future) { [13:30:40.370] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:30:40.370] info) [13:30:40.370] } [13:30:40.370] else { [13:30:40.370] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:30:40.370] info, version) [13:30:40.370] } [13:30:40.370] base::stop(msg) [13:30:40.370] } [13:30:40.370] }) [13:30:40.370] } [13:30:40.370] ...future.strategy.old <- future::plan("list") [13:30:40.370] options(future.plan = NULL) [13:30:40.370] Sys.unsetenv("R_FUTURE_PLAN") [13:30:40.370] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:30:40.370] } [13:30:40.370] ...future.workdir <- getwd() [13:30:40.370] } [13:30:40.370] ...future.oldOptions <- base::as.list(base::.Options) [13:30:40.370] ...future.oldEnvVars <- base::Sys.getenv() [13:30:40.370] } [13:30:40.370] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:30:40.370] future.globals.maxSize = NULL, future.globals.method = NULL, [13:30:40.370] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:30:40.370] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:30:40.370] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:30:40.370] future.stdout.windows.reencode = NULL, width = 80L) [13:30:40.370] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:30:40.370] base::names(...future.oldOptions)) [13:30:40.370] } [13:30:40.370] if (FALSE) { [13:30:40.370] } [13:30:40.370] else { [13:30:40.370] if (TRUE) { [13:30:40.370] ...future.stdout <- base::rawConnection(base::raw(0L), [13:30:40.370] open = "w") [13:30:40.370] } [13:30:40.370] else { [13:30:40.370] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:30:40.370] windows = "NUL", "/dev/null"), open = "w") [13:30:40.370] } [13:30:40.370] base::sink(...future.stdout, type = "output", split = FALSE) [13:30:40.370] base::on.exit(if (!base::is.null(...future.stdout)) { [13:30:40.370] base::sink(type = "output", split = FALSE) [13:30:40.370] base::close(...future.stdout) [13:30:40.370] }, add = TRUE) [13:30:40.370] } [13:30:40.370] ...future.frame <- base::sys.nframe() [13:30:40.370] ...future.conditions <- base::list() [13:30:40.370] ...future.rng <- base::globalenv()$.Random.seed [13:30:40.370] if (FALSE) { [13:30:40.370] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:30:40.370] "...future.value", "...future.globalenv.names", ".Random.seed") [13:30:40.370] } [13:30:40.370] ...future.result <- base::tryCatch({ [13:30:40.370] base::withCallingHandlers({ [13:30:40.370] ...future.value <- base::withVisible(base::local(2 * [13:30:40.370] a)) [13:30:40.370] future::FutureResult(value = ...future.value$value, [13:30:40.370] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:30:40.370] ...future.rng), globalenv = if (FALSE) [13:30:40.370] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:30:40.370] ...future.globalenv.names)) [13:30:40.370] else NULL, started = ...future.startTime, version = "1.8") [13:30:40.370] }, condition = base::local({ [13:30:40.370] c <- base::c [13:30:40.370] inherits <- base::inherits [13:30:40.370] invokeRestart <- base::invokeRestart [13:30:40.370] length <- base::length [13:30:40.370] list <- base::list [13:30:40.370] seq.int <- base::seq.int [13:30:40.370] signalCondition <- base::signalCondition [13:30:40.370] sys.calls <- base::sys.calls [13:30:40.370] `[[` <- base::`[[` [13:30:40.370] `+` <- base::`+` [13:30:40.370] `<<-` <- base::`<<-` [13:30:40.370] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:30:40.370] calls[seq.int(from = from + 12L, to = length(calls) - [13:30:40.370] 3L)] [13:30:40.370] } [13:30:40.370] function(cond) { [13:30:40.370] is_error <- inherits(cond, "error") [13:30:40.370] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:30:40.370] NULL) [13:30:40.370] if (is_error) { [13:30:40.370] sessionInformation <- function() { [13:30:40.370] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:30:40.370] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:30:40.370] search = base::search(), system = base::Sys.info()) [13:30:40.370] } [13:30:40.370] ...future.conditions[[length(...future.conditions) + [13:30:40.370] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:30:40.370] cond$call), session = sessionInformation(), [13:30:40.370] timestamp = base::Sys.time(), signaled = 0L) [13:30:40.370] signalCondition(cond) [13:30:40.370] } [13:30:40.370] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:30:40.370] signal <- FALSE && inherits(cond, character(0)) [13:30:40.370] ...future.conditions[[length(...future.conditions) + [13:30:40.370] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:30:40.370] if (FALSE && !signal) { [13:30:40.370] muffleCondition <- function (cond, pattern = "^muffle") [13:30:40.370] { [13:30:40.370] inherits <- base::inherits [13:30:40.370] invokeRestart <- base::invokeRestart [13:30:40.370] is.null <- base::is.null [13:30:40.370] muffled <- FALSE [13:30:40.370] if (inherits(cond, "message")) { [13:30:40.370] muffled <- grepl(pattern, "muffleMessage") [13:30:40.370] if (muffled) [13:30:40.370] invokeRestart("muffleMessage") [13:30:40.370] } [13:30:40.370] else if (inherits(cond, "warning")) { [13:30:40.370] muffled <- grepl(pattern, "muffleWarning") [13:30:40.370] if (muffled) [13:30:40.370] invokeRestart("muffleWarning") [13:30:40.370] } [13:30:40.370] else if (inherits(cond, "condition")) { [13:30:40.370] if (!is.null(pattern)) { [13:30:40.370] computeRestarts <- base::computeRestarts [13:30:40.370] grepl <- base::grepl [13:30:40.370] restarts <- computeRestarts(cond) [13:30:40.370] for (restart in restarts) { [13:30:40.370] name <- restart$name [13:30:40.370] if (is.null(name)) [13:30:40.370] next [13:30:40.370] if (!grepl(pattern, name)) [13:30:40.370] next [13:30:40.370] invokeRestart(restart) [13:30:40.370] muffled <- TRUE [13:30:40.370] break [13:30:40.370] } [13:30:40.370] } [13:30:40.370] } [13:30:40.370] invisible(muffled) [13:30:40.370] } [13:30:40.370] muffleCondition(cond, pattern = "^muffle") [13:30:40.370] } [13:30:40.370] } [13:30:40.370] else { [13:30:40.370] if (TRUE) { [13:30:40.370] muffleCondition <- function (cond, pattern = "^muffle") [13:30:40.370] { [13:30:40.370] inherits <- base::inherits [13:30:40.370] invokeRestart <- base::invokeRestart [13:30:40.370] is.null <- base::is.null [13:30:40.370] muffled <- FALSE [13:30:40.370] if (inherits(cond, "message")) { [13:30:40.370] muffled <- grepl(pattern, "muffleMessage") [13:30:40.370] if (muffled) [13:30:40.370] invokeRestart("muffleMessage") [13:30:40.370] } [13:30:40.370] else if (inherits(cond, "warning")) { [13:30:40.370] muffled <- grepl(pattern, "muffleWarning") [13:30:40.370] if (muffled) [13:30:40.370] invokeRestart("muffleWarning") [13:30:40.370] } [13:30:40.370] else if (inherits(cond, "condition")) { [13:30:40.370] if (!is.null(pattern)) { [13:30:40.370] computeRestarts <- base::computeRestarts [13:30:40.370] grepl <- base::grepl [13:30:40.370] restarts <- computeRestarts(cond) [13:30:40.370] for (restart in restarts) { [13:30:40.370] name <- restart$name [13:30:40.370] if (is.null(name)) [13:30:40.370] next [13:30:40.370] if (!grepl(pattern, name)) [13:30:40.370] next [13:30:40.370] invokeRestart(restart) [13:30:40.370] muffled <- TRUE [13:30:40.370] break [13:30:40.370] } [13:30:40.370] } [13:30:40.370] } [13:30:40.370] invisible(muffled) [13:30:40.370] } [13:30:40.370] muffleCondition(cond, pattern = "^muffle") [13:30:40.370] } [13:30:40.370] } [13:30:40.370] } [13:30:40.370] })) [13:30:40.370] }, error = function(ex) { [13:30:40.370] base::structure(base::list(value = NULL, visible = NULL, [13:30:40.370] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:30:40.370] ...future.rng), started = ...future.startTime, [13:30:40.370] finished = Sys.time(), session_uuid = NA_character_, [13:30:40.370] version = "1.8"), class = "FutureResult") [13:30:40.370] }, finally = { [13:30:40.370] if (!identical(...future.workdir, getwd())) [13:30:40.370] setwd(...future.workdir) [13:30:40.370] { [13:30:40.370] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:30:40.370] ...future.oldOptions$nwarnings <- NULL [13:30:40.370] } [13:30:40.370] base::options(...future.oldOptions) [13:30:40.370] if (.Platform$OS.type == "windows") { [13:30:40.370] old_names <- names(...future.oldEnvVars) [13:30:40.370] envs <- base::Sys.getenv() [13:30:40.370] names <- names(envs) [13:30:40.370] common <- intersect(names, old_names) [13:30:40.370] added <- setdiff(names, old_names) [13:30:40.370] removed <- setdiff(old_names, names) [13:30:40.370] changed <- common[...future.oldEnvVars[common] != [13:30:40.370] envs[common]] [13:30:40.370] NAMES <- toupper(changed) [13:30:40.370] args <- list() [13:30:40.370] for (kk in seq_along(NAMES)) { [13:30:40.370] name <- changed[[kk]] [13:30:40.370] NAME <- NAMES[[kk]] [13:30:40.370] if (name != NAME && is.element(NAME, old_names)) [13:30:40.370] next [13:30:40.370] args[[name]] <- ...future.oldEnvVars[[name]] [13:30:40.370] } [13:30:40.370] NAMES <- toupper(added) [13:30:40.370] for (kk in seq_along(NAMES)) { [13:30:40.370] name <- added[[kk]] [13:30:40.370] NAME <- NAMES[[kk]] [13:30:40.370] if (name != NAME && is.element(NAME, old_names)) [13:30:40.370] next [13:30:40.370] args[[name]] <- "" [13:30:40.370] } [13:30:40.370] NAMES <- toupper(removed) [13:30:40.370] for (kk in seq_along(NAMES)) { [13:30:40.370] name <- removed[[kk]] [13:30:40.370] NAME <- NAMES[[kk]] [13:30:40.370] if (name != NAME && is.element(NAME, old_names)) [13:30:40.370] next [13:30:40.370] args[[name]] <- ...future.oldEnvVars[[name]] [13:30:40.370] } [13:30:40.370] if (length(args) > 0) [13:30:40.370] base::do.call(base::Sys.setenv, args = args) [13:30:40.370] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:30:40.370] } [13:30:40.370] else { [13:30:40.370] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:30:40.370] } [13:30:40.370] { [13:30:40.370] if (base::length(...future.futureOptionsAdded) > [13:30:40.370] 0L) { [13:30:40.370] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:30:40.370] base::names(opts) <- ...future.futureOptionsAdded [13:30:40.370] base::options(opts) [13:30:40.370] } [13:30:40.370] { [13:30:40.370] NULL [13:30:40.370] options(future.plan = NULL) [13:30:40.370] if (is.na(NA_character_)) [13:30:40.370] Sys.unsetenv("R_FUTURE_PLAN") [13:30:40.370] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:30:40.370] future::plan(...future.strategy.old, .cleanup = FALSE, [13:30:40.370] .init = FALSE) [13:30:40.370] } [13:30:40.370] } [13:30:40.370] } [13:30:40.370] }) [13:30:40.370] if (TRUE) { [13:30:40.370] base::sink(type = "output", split = FALSE) [13:30:40.370] if (TRUE) { [13:30:40.370] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:30:40.370] } [13:30:40.370] else { [13:30:40.370] ...future.result["stdout"] <- base::list(NULL) [13:30:40.370] } [13:30:40.370] base::close(...future.stdout) [13:30:40.370] ...future.stdout <- NULL [13:30:40.370] } [13:30:40.370] ...future.result$conditions <- ...future.conditions [13:30:40.370] ...future.result$finished <- base::Sys.time() [13:30:40.370] ...future.result [13:30:40.370] } [13:30:40.374] - Launch lazy future ... done [13:30:40.374] run() for 'MiraiFuture' ... done [13:30:40.377] getGlobalsAndPackages() ... [13:30:40.378] Searching for globals... [13:30:40.381] - globals found: [3] '{', '*', 'a' [13:30:40.381] Searching for globals ... DONE [13:30:40.381] Resolving globals: FALSE [13:30:40.382] The total size of the 1 globals is 56 bytes (56 bytes) [13:30:40.382] The total size of the 1 globals exported for future expression ('{; 2 * a; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'a' (56 bytes of class 'numeric') [13:30:40.383] - globals: [1] 'a' [13:30:40.383] [13:30:40.383] getGlobalsAndPackages() ... DONE [13:30:40.383] run() for 'Future' ... [13:30:40.384] - state: 'created' [13:30:40.384] - Future backend: 'FutureStrategy', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' [13:30:40.384] - Future class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:30:40.384] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... [13:30:40.385] - Field: 'label' [13:30:40.385] - Field: 'local' [13:30:40.385] - Field: 'owner' [13:30:40.385] - Field: 'envir' [13:30:40.385] - Field: 'packages' [13:30:40.385] - Field: 'gc' [13:30:40.386] - Field: 'conditions' [13:30:40.386] - Field: 'expr' [13:30:40.386] - Field: 'uuid' [13:30:40.386] - Field: 'seed' [13:30:40.386] - Field: 'version' [13:30:40.386] - Field: 'result' [13:30:40.387] - Field: 'asynchronous' [13:30:40.387] - Field: 'calls' [13:30:40.387] - Field: 'globals' [13:30:40.387] - Field: 'stdout' [13:30:40.387] - Field: 'earlySignal' [13:30:40.388] - Field: 'lazy' [13:30:40.388] - Field: 'state' [13:30:40.388] - Field: '.cluster' [13:30:40.388] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... done [13:30:40.388] - Launch lazy future ... [13:30:40.388] Packages needed by the future expression (n = 0): [13:30:40.389] Packages needed by future strategies (n = 0): [13:30:40.389] { [13:30:40.389] { [13:30:40.389] { [13:30:40.389] ...future.startTime <- base::Sys.time() [13:30:40.389] { [13:30:40.389] { [13:30:40.389] { [13:30:40.389] base::local({ [13:30:40.389] has_future <- base::requireNamespace("future", [13:30:40.389] quietly = TRUE) [13:30:40.389] if (has_future) { [13:30:40.389] ns <- base::getNamespace("future") [13:30:40.389] version <- ns[[".package"]][["version"]] [13:30:40.389] if (is.null(version)) [13:30:40.389] version <- utils::packageVersion("future") [13:30:40.389] } [13:30:40.389] else { [13:30:40.389] version <- NULL [13:30:40.389] } [13:30:40.389] if (!has_future || version < "1.8.0") { [13:30:40.389] info <- base::c(r_version = base::gsub("R version ", [13:30:40.389] "", base::R.version$version.string), [13:30:40.389] platform = base::sprintf("%s (%s-bit)", [13:30:40.389] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:30:40.389] os = base::paste(base::Sys.info()[base::c("sysname", [13:30:40.389] "release", "version")], collapse = " "), [13:30:40.389] hostname = base::Sys.info()[["nodename"]]) [13:30:40.389] info <- base::sprintf("%s: %s", base::names(info), [13:30:40.389] info) [13:30:40.389] info <- base::paste(info, collapse = "; ") [13:30:40.389] if (!has_future) { [13:30:40.389] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:30:40.389] info) [13:30:40.389] } [13:30:40.389] else { [13:30:40.389] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:30:40.389] info, version) [13:30:40.389] } [13:30:40.389] base::stop(msg) [13:30:40.389] } [13:30:40.389] }) [13:30:40.389] } [13:30:40.389] ...future.strategy.old <- future::plan("list") [13:30:40.389] options(future.plan = NULL) [13:30:40.389] Sys.unsetenv("R_FUTURE_PLAN") [13:30:40.389] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:30:40.389] } [13:30:40.389] ...future.workdir <- getwd() [13:30:40.389] } [13:30:40.389] ...future.oldOptions <- base::as.list(base::.Options) [13:30:40.389] ...future.oldEnvVars <- base::Sys.getenv() [13:30:40.389] } [13:30:40.389] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:30:40.389] future.globals.maxSize = NULL, future.globals.method = NULL, [13:30:40.389] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:30:40.389] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:30:40.389] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:30:40.389] future.stdout.windows.reencode = NULL, width = 80L) [13:30:40.389] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:30:40.389] base::names(...future.oldOptions)) [13:30:40.389] } [13:30:40.389] if (FALSE) { [13:30:40.389] } [13:30:40.389] else { [13:30:40.389] if (TRUE) { [13:30:40.389] ...future.stdout <- base::rawConnection(base::raw(0L), [13:30:40.389] open = "w") [13:30:40.389] } [13:30:40.389] else { [13:30:40.389] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:30:40.389] windows = "NUL", "/dev/null"), open = "w") [13:30:40.389] } [13:30:40.389] base::sink(...future.stdout, type = "output", split = FALSE) [13:30:40.389] base::on.exit(if (!base::is.null(...future.stdout)) { [13:30:40.389] base::sink(type = "output", split = FALSE) [13:30:40.389] base::close(...future.stdout) [13:30:40.389] }, add = TRUE) [13:30:40.389] } [13:30:40.389] ...future.frame <- base::sys.nframe() [13:30:40.389] ...future.conditions <- base::list() [13:30:40.389] ...future.rng <- base::globalenv()$.Random.seed [13:30:40.389] if (FALSE) { [13:30:40.389] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:30:40.389] "...future.value", "...future.globalenv.names", ".Random.seed") [13:30:40.389] } [13:30:40.389] ...future.result <- base::tryCatch({ [13:30:40.389] base::withCallingHandlers({ [13:30:40.389] ...future.value <- base::withVisible(base::local({ [13:30:40.389] 2 * a [13:30:40.389] })) [13:30:40.389] future::FutureResult(value = ...future.value$value, [13:30:40.389] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:30:40.389] ...future.rng), globalenv = if (FALSE) [13:30:40.389] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:30:40.389] ...future.globalenv.names)) [13:30:40.389] else NULL, started = ...future.startTime, version = "1.8") [13:30:40.389] }, condition = base::local({ [13:30:40.389] c <- base::c [13:30:40.389] inherits <- base::inherits [13:30:40.389] invokeRestart <- base::invokeRestart [13:30:40.389] length <- base::length [13:30:40.389] list <- base::list [13:30:40.389] seq.int <- base::seq.int [13:30:40.389] signalCondition <- base::signalCondition [13:30:40.389] sys.calls <- base::sys.calls [13:30:40.389] `[[` <- base::`[[` [13:30:40.389] `+` <- base::`+` [13:30:40.389] `<<-` <- base::`<<-` [13:30:40.389] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:30:40.389] calls[seq.int(from = from + 12L, to = length(calls) - [13:30:40.389] 3L)] [13:30:40.389] } [13:30:40.389] function(cond) { [13:30:40.389] is_error <- inherits(cond, "error") [13:30:40.389] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:30:40.389] NULL) [13:30:40.389] if (is_error) { [13:30:40.389] sessionInformation <- function() { [13:30:40.389] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:30:40.389] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:30:40.389] search = base::search(), system = base::Sys.info()) [13:30:40.389] } [13:30:40.389] ...future.conditions[[length(...future.conditions) + [13:30:40.389] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:30:40.389] cond$call), session = sessionInformation(), [13:30:40.389] timestamp = base::Sys.time(), signaled = 0L) [13:30:40.389] signalCondition(cond) [13:30:40.389] } [13:30:40.389] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:30:40.389] signal <- FALSE && inherits(cond, character(0)) [13:30:40.389] ...future.conditions[[length(...future.conditions) + [13:30:40.389] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:30:40.389] if (FALSE && !signal) { [13:30:40.389] muffleCondition <- function (cond, pattern = "^muffle") [13:30:40.389] { [13:30:40.389] inherits <- base::inherits [13:30:40.389] invokeRestart <- base::invokeRestart [13:30:40.389] is.null <- base::is.null [13:30:40.389] muffled <- FALSE [13:30:40.389] if (inherits(cond, "message")) { [13:30:40.389] muffled <- grepl(pattern, "muffleMessage") [13:30:40.389] if (muffled) [13:30:40.389] invokeRestart("muffleMessage") [13:30:40.389] } [13:30:40.389] else if (inherits(cond, "warning")) { [13:30:40.389] muffled <- grepl(pattern, "muffleWarning") [13:30:40.389] if (muffled) [13:30:40.389] invokeRestart("muffleWarning") [13:30:40.389] } [13:30:40.389] else if (inherits(cond, "condition")) { [13:30:40.389] if (!is.null(pattern)) { [13:30:40.389] computeRestarts <- base::computeRestarts [13:30:40.389] grepl <- base::grepl [13:30:40.389] restarts <- computeRestarts(cond) [13:30:40.389] for (restart in restarts) { [13:30:40.389] name <- restart$name [13:30:40.389] if (is.null(name)) [13:30:40.389] next [13:30:40.389] if (!grepl(pattern, name)) [13:30:40.389] next [13:30:40.389] invokeRestart(restart) [13:30:40.389] muffled <- TRUE [13:30:40.389] break [13:30:40.389] } [13:30:40.389] } [13:30:40.389] } [13:30:40.389] invisible(muffled) [13:30:40.389] } [13:30:40.389] muffleCondition(cond, pattern = "^muffle") [13:30:40.389] } [13:30:40.389] } [13:30:40.389] else { [13:30:40.389] if (TRUE) { [13:30:40.389] muffleCondition <- function (cond, pattern = "^muffle") [13:30:40.389] { [13:30:40.389] inherits <- base::inherits [13:30:40.389] invokeRestart <- base::invokeRestart [13:30:40.389] is.null <- base::is.null [13:30:40.389] muffled <- FALSE [13:30:40.389] if (inherits(cond, "message")) { [13:30:40.389] muffled <- grepl(pattern, "muffleMessage") [13:30:40.389] if (muffled) [13:30:40.389] invokeRestart("muffleMessage") [13:30:40.389] } [13:30:40.389] else if (inherits(cond, "warning")) { [13:30:40.389] muffled <- grepl(pattern, "muffleWarning") [13:30:40.389] if (muffled) [13:30:40.389] invokeRestart("muffleWarning") [13:30:40.389] } [13:30:40.389] else if (inherits(cond, "condition")) { [13:30:40.389] if (!is.null(pattern)) { [13:30:40.389] computeRestarts <- base::computeRestarts [13:30:40.389] grepl <- base::grepl [13:30:40.389] restarts <- computeRestarts(cond) [13:30:40.389] for (restart in restarts) { [13:30:40.389] name <- restart$name [13:30:40.389] if (is.null(name)) [13:30:40.389] next [13:30:40.389] if (!grepl(pattern, name)) [13:30:40.389] next [13:30:40.389] invokeRestart(restart) [13:30:40.389] muffled <- TRUE [13:30:40.389] break [13:30:40.389] } [13:30:40.389] } [13:30:40.389] } [13:30:40.389] invisible(muffled) [13:30:40.389] } [13:30:40.389] muffleCondition(cond, pattern = "^muffle") [13:30:40.389] } [13:30:40.389] } [13:30:40.389] } [13:30:40.389] })) [13:30:40.389] }, error = function(ex) { [13:30:40.389] base::structure(base::list(value = NULL, visible = NULL, [13:30:40.389] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:30:40.389] ...future.rng), started = ...future.startTime, [13:30:40.389] finished = Sys.time(), session_uuid = NA_character_, [13:30:40.389] version = "1.8"), class = "FutureResult") [13:30:40.389] }, finally = { [13:30:40.389] if (!identical(...future.workdir, getwd())) [13:30:40.389] setwd(...future.workdir) [13:30:40.389] { [13:30:40.389] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:30:40.389] ...future.oldOptions$nwarnings <- NULL [13:30:40.389] } [13:30:40.389] base::options(...future.oldOptions) [13:30:40.389] if (.Platform$OS.type == "windows") { [13:30:40.389] old_names <- names(...future.oldEnvVars) [13:30:40.389] envs <- base::Sys.getenv() [13:30:40.389] names <- names(envs) [13:30:40.389] common <- intersect(names, old_names) [13:30:40.389] added <- setdiff(names, old_names) [13:30:40.389] removed <- setdiff(old_names, names) [13:30:40.389] changed <- common[...future.oldEnvVars[common] != [13:30:40.389] envs[common]] [13:30:40.389] NAMES <- toupper(changed) [13:30:40.389] args <- list() [13:30:40.389] for (kk in seq_along(NAMES)) { [13:30:40.389] name <- changed[[kk]] [13:30:40.389] NAME <- NAMES[[kk]] [13:30:40.389] if (name != NAME && is.element(NAME, old_names)) [13:30:40.389] next [13:30:40.389] args[[name]] <- ...future.oldEnvVars[[name]] [13:30:40.389] } [13:30:40.389] NAMES <- toupper(added) [13:30:40.389] for (kk in seq_along(NAMES)) { [13:30:40.389] name <- added[[kk]] [13:30:40.389] NAME <- NAMES[[kk]] [13:30:40.389] if (name != NAME && is.element(NAME, old_names)) [13:30:40.389] next [13:30:40.389] args[[name]] <- "" [13:30:40.389] } [13:30:40.389] NAMES <- toupper(removed) [13:30:40.389] for (kk in seq_along(NAMES)) { [13:30:40.389] name <- removed[[kk]] [13:30:40.389] NAME <- NAMES[[kk]] [13:30:40.389] if (name != NAME && is.element(NAME, old_names)) [13:30:40.389] next [13:30:40.389] args[[name]] <- ...future.oldEnvVars[[name]] [13:30:40.389] } [13:30:40.389] if (length(args) > 0) [13:30:40.389] base::do.call(base::Sys.setenv, args = args) [13:30:40.389] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:30:40.389] } [13:30:40.389] else { [13:30:40.389] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:30:40.389] } [13:30:40.389] { [13:30:40.389] if (base::length(...future.futureOptionsAdded) > [13:30:40.389] 0L) { [13:30:40.389] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:30:40.389] base::names(opts) <- ...future.futureOptionsAdded [13:30:40.389] base::options(opts) [13:30:40.389] } [13:30:40.389] { [13:30:40.389] NULL [13:30:40.389] options(future.plan = NULL) [13:30:40.389] if (is.na(NA_character_)) [13:30:40.389] Sys.unsetenv("R_FUTURE_PLAN") [13:30:40.389] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:30:40.389] future::plan(...future.strategy.old, .cleanup = FALSE, [13:30:40.389] .init = FALSE) [13:30:40.389] } [13:30:40.389] } [13:30:40.389] } [13:30:40.389] }) [13:30:40.389] if (TRUE) { [13:30:40.389] base::sink(type = "output", split = FALSE) [13:30:40.389] if (TRUE) { [13:30:40.389] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:30:40.389] } [13:30:40.389] else { [13:30:40.389] ...future.result["stdout"] <- base::list(NULL) [13:30:40.389] } [13:30:40.389] base::close(...future.stdout) [13:30:40.389] ...future.stdout <- NULL [13:30:40.389] } [13:30:40.389] ...future.result$conditions <- ...future.conditions [13:30:40.389] ...future.result$finished <- base::Sys.time() [13:30:40.389] ...future.result [13:30:40.389] } [13:30:40.393] - Launch lazy future ... done [13:30:40.393] run() for 'MiraiFuture' ... done [13:30:40.395] - plan('mirai_cluster') ... DONE[13:30:40.395] - plan('mirai_multisession') ...[13:30:40.398] plan(): Setting new future strategy stack: [13:30:40.398] List of future strategies: [13:30:40.398] 1. mirai_multisession: [13:30:40.398] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:30:40.398] - tweaked: FALSE [13:30:40.398] - call: plan(strategy) [13:30:40.399] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:30:40.399] < mirai [$data] > [13:30:40.401] getGlobalsAndPackages() ... [13:30:40.401] Not searching for globals [13:30:40.401] - globals: [0] [13:30:40.402] getGlobalsAndPackages() ... DONE [13:30:40.402] getGlobalsAndPackages() ... [13:30:40.402] [13:30:40.402] - globals: [0] [13:30:40.402] getGlobalsAndPackages() ... DONE [13:30:40.403] Packages needed by the future expression (n = 0): [13:30:40.403] Packages needed by future strategies (n = 0): [13:30:40.403] { [13:30:40.403] { [13:30:40.403] { [13:30:40.403] ...future.startTime <- base::Sys.time() [13:30:40.403] { [13:30:40.403] { [13:30:40.403] { [13:30:40.403] base::local({ [13:30:40.403] has_future <- base::requireNamespace("future", [13:30:40.403] quietly = TRUE) [13:30:40.403] if (has_future) { [13:30:40.403] ns <- base::getNamespace("future") [13:30:40.403] version <- ns[[".package"]][["version"]] [13:30:40.403] if (is.null(version)) [13:30:40.403] version <- utils::packageVersion("future") [13:30:40.403] } [13:30:40.403] else { [13:30:40.403] version <- NULL [13:30:40.403] } [13:30:40.403] if (!has_future || version < "1.8.0") { [13:30:40.403] info <- base::c(r_version = base::gsub("R version ", [13:30:40.403] "", base::R.version$version.string), [13:30:40.403] platform = base::sprintf("%s (%s-bit)", [13:30:40.403] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:30:40.403] os = base::paste(base::Sys.info()[base::c("sysname", [13:30:40.403] "release", "version")], collapse = " "), [13:30:40.403] hostname = base::Sys.info()[["nodename"]]) [13:30:40.403] info <- base::sprintf("%s: %s", base::names(info), [13:30:40.403] info) [13:30:40.403] info <- base::paste(info, collapse = "; ") [13:30:40.403] if (!has_future) { [13:30:40.403] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:30:40.403] info) [13:30:40.403] } [13:30:40.403] else { [13:30:40.403] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:30:40.403] info, version) [13:30:40.403] } [13:30:40.403] base::stop(msg) [13:30:40.403] } [13:30:40.403] }) [13:30:40.403] } [13:30:40.403] ...future.strategy.old <- future::plan("list") [13:30:40.403] options(future.plan = NULL) [13:30:40.403] Sys.unsetenv("R_FUTURE_PLAN") [13:30:40.403] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:30:40.403] } [13:30:40.403] ...future.workdir <- getwd() [13:30:40.403] } [13:30:40.403] ...future.oldOptions <- base::as.list(base::.Options) [13:30:40.403] ...future.oldEnvVars <- base::Sys.getenv() [13:30:40.403] } [13:30:40.403] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:30:40.403] future.globals.maxSize = NULL, future.globals.method = NULL, [13:30:40.403] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:30:40.403] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:30:40.403] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:30:40.403] future.stdout.windows.reencode = NULL, width = 80L) [13:30:40.403] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:30:40.403] base::names(...future.oldOptions)) [13:30:40.403] } [13:30:40.403] if (FALSE) { [13:30:40.403] } [13:30:40.403] else { [13:30:40.403] if (TRUE) { [13:30:40.403] ...future.stdout <- base::rawConnection(base::raw(0L), [13:30:40.403] open = "w") [13:30:40.403] } [13:30:40.403] else { [13:30:40.403] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:30:40.403] windows = "NUL", "/dev/null"), open = "w") [13:30:40.403] } [13:30:40.403] base::sink(...future.stdout, type = "output", split = FALSE) [13:30:40.403] base::on.exit(if (!base::is.null(...future.stdout)) { [13:30:40.403] base::sink(type = "output", split = FALSE) [13:30:40.403] base::close(...future.stdout) [13:30:40.403] }, add = TRUE) [13:30:40.403] } [13:30:40.403] ...future.frame <- base::sys.nframe() [13:30:40.403] ...future.conditions <- base::list() [13:30:40.403] ...future.rng <- base::globalenv()$.Random.seed [13:30:40.403] if (FALSE) { [13:30:40.403] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:30:40.403] "...future.value", "...future.globalenv.names", ".Random.seed") [13:30:40.403] } [13:30:40.403] ...future.result <- base::tryCatch({ [13:30:40.403] base::withCallingHandlers({ [13:30:40.403] ...future.value <- base::withVisible(base::local(NA)) [13:30:40.403] future::FutureResult(value = ...future.value$value, [13:30:40.403] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:30:40.403] ...future.rng), globalenv = if (FALSE) [13:30:40.403] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:30:40.403] ...future.globalenv.names)) [13:30:40.403] else NULL, started = ...future.startTime, version = "1.8") [13:30:40.403] }, condition = base::local({ [13:30:40.403] c <- base::c [13:30:40.403] inherits <- base::inherits [13:30:40.403] invokeRestart <- base::invokeRestart [13:30:40.403] length <- base::length [13:30:40.403] list <- base::list [13:30:40.403] seq.int <- base::seq.int [13:30:40.403] signalCondition <- base::signalCondition [13:30:40.403] sys.calls <- base::sys.calls [13:30:40.403] `[[` <- base::`[[` [13:30:40.403] `+` <- base::`+` [13:30:40.403] `<<-` <- base::`<<-` [13:30:40.403] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:30:40.403] calls[seq.int(from = from + 12L, to = length(calls) - [13:30:40.403] 3L)] [13:30:40.403] } [13:30:40.403] function(cond) { [13:30:40.403] is_error <- inherits(cond, "error") [13:30:40.403] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:30:40.403] NULL) [13:30:40.403] if (is_error) { [13:30:40.403] sessionInformation <- function() { [13:30:40.403] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:30:40.403] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:30:40.403] search = base::search(), system = base::Sys.info()) [13:30:40.403] } [13:30:40.403] ...future.conditions[[length(...future.conditions) + [13:30:40.403] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:30:40.403] cond$call), session = sessionInformation(), [13:30:40.403] timestamp = base::Sys.time(), signaled = 0L) [13:30:40.403] signalCondition(cond) [13:30:40.403] } [13:30:40.403] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:30:40.403] signal <- FALSE && inherits(cond, character(0)) [13:30:40.403] ...future.conditions[[length(...future.conditions) + [13:30:40.403] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:30:40.403] if (FALSE && !signal) { [13:30:40.403] muffleCondition <- function (cond, pattern = "^muffle") [13:30:40.403] { [13:30:40.403] inherits <- base::inherits [13:30:40.403] invokeRestart <- base::invokeRestart [13:30:40.403] is.null <- base::is.null [13:30:40.403] muffled <- FALSE [13:30:40.403] if (inherits(cond, "message")) { [13:30:40.403] muffled <- grepl(pattern, "muffleMessage") [13:30:40.403] if (muffled) [13:30:40.403] invokeRestart("muffleMessage") [13:30:40.403] } [13:30:40.403] else if (inherits(cond, "warning")) { [13:30:40.403] muffled <- grepl(pattern, "muffleWarning") [13:30:40.403] if (muffled) [13:30:40.403] invokeRestart("muffleWarning") [13:30:40.403] } [13:30:40.403] else if (inherits(cond, "condition")) { [13:30:40.403] if (!is.null(pattern)) { [13:30:40.403] computeRestarts <- base::computeRestarts [13:30:40.403] grepl <- base::grepl [13:30:40.403] restarts <- computeRestarts(cond) [13:30:40.403] for (restart in restarts) { [13:30:40.403] name <- restart$name [13:30:40.403] if (is.null(name)) [13:30:40.403] next [13:30:40.403] if (!grepl(pattern, name)) [13:30:40.403] next [13:30:40.403] invokeRestart(restart) [13:30:40.403] muffled <- TRUE [13:30:40.403] break [13:30:40.403] } [13:30:40.403] } [13:30:40.403] } [13:30:40.403] invisible(muffled) [13:30:40.403] } [13:30:40.403] muffleCondition(cond, pattern = "^muffle") [13:30:40.403] } [13:30:40.403] } [13:30:40.403] else { [13:30:40.403] if (TRUE) { [13:30:40.403] muffleCondition <- function (cond, pattern = "^muffle") [13:30:40.403] { [13:30:40.403] inherits <- base::inherits [13:30:40.403] invokeRestart <- base::invokeRestart [13:30:40.403] is.null <- base::is.null [13:30:40.403] muffled <- FALSE [13:30:40.403] if (inherits(cond, "message")) { [13:30:40.403] muffled <- grepl(pattern, "muffleMessage") [13:30:40.403] if (muffled) [13:30:40.403] invokeRestart("muffleMessage") [13:30:40.403] } [13:30:40.403] else if (inherits(cond, "warning")) { [13:30:40.403] muffled <- grepl(pattern, "muffleWarning") [13:30:40.403] if (muffled) [13:30:40.403] invokeRestart("muffleWarning") [13:30:40.403] } [13:30:40.403] else if (inherits(cond, "condition")) { [13:30:40.403] if (!is.null(pattern)) { [13:30:40.403] computeRestarts <- base::computeRestarts [13:30:40.403] grepl <- base::grepl [13:30:40.403] restarts <- computeRestarts(cond) [13:30:40.403] for (restart in restarts) { [13:30:40.403] name <- restart$name [13:30:40.403] if (is.null(name)) [13:30:40.403] next [13:30:40.403] if (!grepl(pattern, name)) [13:30:40.403] next [13:30:40.403] invokeRestart(restart) [13:30:40.403] muffled <- TRUE [13:30:40.403] break [13:30:40.403] } [13:30:40.403] } [13:30:40.403] } [13:30:40.403] invisible(muffled) [13:30:40.403] } [13:30:40.403] muffleCondition(cond, pattern = "^muffle") [13:30:40.403] } [13:30:40.403] } [13:30:40.403] } [13:30:40.403] })) [13:30:40.403] }, error = function(ex) { [13:30:40.403] base::structure(base::list(value = NULL, visible = NULL, [13:30:40.403] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:30:40.403] ...future.rng), started = ...future.startTime, [13:30:40.403] finished = Sys.time(), session_uuid = NA_character_, [13:30:40.403] version = "1.8"), class = "FutureResult") [13:30:40.403] }, finally = { [13:30:40.403] if (!identical(...future.workdir, getwd())) [13:30:40.403] setwd(...future.workdir) [13:30:40.403] { [13:30:40.403] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:30:40.403] ...future.oldOptions$nwarnings <- NULL [13:30:40.403] } [13:30:40.403] base::options(...future.oldOptions) [13:30:40.403] if (.Platform$OS.type == "windows") { [13:30:40.403] old_names <- names(...future.oldEnvVars) [13:30:40.403] envs <- base::Sys.getenv() [13:30:40.403] names <- names(envs) [13:30:40.403] common <- intersect(names, old_names) [13:30:40.403] added <- setdiff(names, old_names) [13:30:40.403] removed <- setdiff(old_names, names) [13:30:40.403] changed <- common[...future.oldEnvVars[common] != [13:30:40.403] envs[common]] [13:30:40.403] NAMES <- toupper(changed) [13:30:40.403] args <- list() [13:30:40.403] for (kk in seq_along(NAMES)) { [13:30:40.403] name <- changed[[kk]] [13:30:40.403] NAME <- NAMES[[kk]] [13:30:40.403] if (name != NAME && is.element(NAME, old_names)) [13:30:40.403] next [13:30:40.403] args[[name]] <- ...future.oldEnvVars[[name]] [13:30:40.403] } [13:30:40.403] NAMES <- toupper(added) [13:30:40.403] for (kk in seq_along(NAMES)) { [13:30:40.403] name <- added[[kk]] [13:30:40.403] NAME <- NAMES[[kk]] [13:30:40.403] if (name != NAME && is.element(NAME, old_names)) [13:30:40.403] next [13:30:40.403] args[[name]] <- "" [13:30:40.403] } [13:30:40.403] NAMES <- toupper(removed) [13:30:40.403] for (kk in seq_along(NAMES)) { [13:30:40.403] name <- removed[[kk]] [13:30:40.403] NAME <- NAMES[[kk]] [13:30:40.403] if (name != NAME && is.element(NAME, old_names)) [13:30:40.403] next [13:30:40.403] args[[name]] <- ...future.oldEnvVars[[name]] [13:30:40.403] } [13:30:40.403] if (length(args) > 0) [13:30:40.403] base::do.call(base::Sys.setenv, args = args) [13:30:40.403] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:30:40.403] } [13:30:40.403] else { [13:30:40.403] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:30:40.403] } [13:30:40.403] { [13:30:40.403] if (base::length(...future.futureOptionsAdded) > [13:30:40.403] 0L) { [13:30:40.403] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:30:40.403] base::names(opts) <- ...future.futureOptionsAdded [13:30:40.403] base::options(opts) [13:30:40.403] } [13:30:40.403] { [13:30:40.403] NULL [13:30:40.403] options(future.plan = NULL) [13:30:40.403] if (is.na(NA_character_)) [13:30:40.403] Sys.unsetenv("R_FUTURE_PLAN") [13:30:40.403] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:30:40.403] future::plan(...future.strategy.old, .cleanup = FALSE, [13:30:40.403] .init = FALSE) [13:30:40.403] } [13:30:40.403] } [13:30:40.403] } [13:30:40.403] }) [13:30:40.403] if (TRUE) { [13:30:40.403] base::sink(type = "output", split = FALSE) [13:30:40.403] if (TRUE) { [13:30:40.403] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:30:40.403] } [13:30:40.403] else { [13:30:40.403] ...future.result["stdout"] <- base::list(NULL) [13:30:40.403] } [13:30:40.403] base::close(...future.stdout) [13:30:40.403] ...future.stdout <- NULL [13:30:40.403] } [13:30:40.403] ...future.result$conditions <- ...future.conditions [13:30:40.403] ...future.result$finished <- base::Sys.time() [13:30:40.403] ...future.result [13:30:40.403] } [13:30:40.409] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:30:40.409] plan(): nbrOfWorkers() = 2 [13:30:40.409] getGlobalsAndPackages() ... [13:30:40.410] Searching for globals... [13:30:40.410] - globals found: [2] '*', 'a' [13:30:40.411] Searching for globals ... DONE [13:30:40.411] Resolving globals: FALSE [13:30:40.411] The total size of the 1 globals is 56 bytes (56 bytes) [13:30:40.412] The total size of the 1 globals exported for future expression ('2 * a') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'a' (56 bytes of class 'numeric') [13:30:40.412] - globals: [1] 'a' [13:30:40.412] [13:30:40.412] getGlobalsAndPackages() ... DONE [13:30:40.412] run() for 'Future' ... [13:30:40.413] - state: 'created' [13:30:40.413] - Future backend: 'FutureStrategy', 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' [13:30:40.415] - Future class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:30:40.415] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... [13:30:40.415] - Field: 'label' [13:30:40.416] - Field: 'local' [13:30:40.416] - Field: 'owner' [13:30:40.416] - Field: 'envir' [13:30:40.416] - Field: 'packages' [13:30:40.416] - Field: 'gc' [13:30:40.416] - Field: 'conditions' [13:30:40.417] - Field: 'expr' [13:30:40.417] - Field: 'uuid' [13:30:40.417] - Field: 'seed' [13:30:40.417] - Field: 'version' [13:30:40.417] - Field: 'result' [13:30:40.417] - Field: 'asynchronous' [13:30:40.418] - Field: 'calls' [13:30:40.418] - Field: 'globals' [13:30:40.418] - Field: 'stdout' [13:30:40.418] - Field: 'earlySignal' [13:30:40.418] - Field: 'lazy' [13:30:40.418] - Field: 'state' [13:30:40.419] - Field: '.cluster' [13:30:40.419] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... done [13:30:40.419] - Launch lazy future ... [13:30:40.419] Packages needed by the future expression (n = 0): [13:30:40.419] Packages needed by future strategies (n = 0): [13:30:40.420] { [13:30:40.420] { [13:30:40.420] { [13:30:40.420] ...future.startTime <- base::Sys.time() [13:30:40.420] { [13:30:40.420] { [13:30:40.420] { [13:30:40.420] base::local({ [13:30:40.420] has_future <- base::requireNamespace("future", [13:30:40.420] quietly = TRUE) [13:30:40.420] if (has_future) { [13:30:40.420] ns <- base::getNamespace("future") [13:30:40.420] version <- ns[[".package"]][["version"]] [13:30:40.420] if (is.null(version)) [13:30:40.420] version <- utils::packageVersion("future") [13:30:40.420] } [13:30:40.420] else { [13:30:40.420] version <- NULL [13:30:40.420] } [13:30:40.420] if (!has_future || version < "1.8.0") { [13:30:40.420] info <- base::c(r_version = base::gsub("R version ", [13:30:40.420] "", base::R.version$version.string), [13:30:40.420] platform = base::sprintf("%s (%s-bit)", [13:30:40.420] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:30:40.420] os = base::paste(base::Sys.info()[base::c("sysname", [13:30:40.420] "release", "version")], collapse = " "), [13:30:40.420] hostname = base::Sys.info()[["nodename"]]) [13:30:40.420] info <- base::sprintf("%s: %s", base::names(info), [13:30:40.420] info) [13:30:40.420] info <- base::paste(info, collapse = "; ") [13:30:40.420] if (!has_future) { [13:30:40.420] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:30:40.420] info) [13:30:40.420] } [13:30:40.420] else { [13:30:40.420] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:30:40.420] info, version) [13:30:40.420] } [13:30:40.420] base::stop(msg) [13:30:40.420] } [13:30:40.420] }) [13:30:40.420] } [13:30:40.420] ...future.strategy.old <- future::plan("list") [13:30:40.420] options(future.plan = NULL) [13:30:40.420] Sys.unsetenv("R_FUTURE_PLAN") [13:30:40.420] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:30:40.420] } [13:30:40.420] ...future.workdir <- getwd() [13:30:40.420] } [13:30:40.420] ...future.oldOptions <- base::as.list(base::.Options) [13:30:40.420] ...future.oldEnvVars <- base::Sys.getenv() [13:30:40.420] } [13:30:40.420] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:30:40.420] future.globals.maxSize = NULL, future.globals.method = NULL, [13:30:40.420] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:30:40.420] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:30:40.420] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:30:40.420] future.stdout.windows.reencode = NULL, width = 80L) [13:30:40.420] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:30:40.420] base::names(...future.oldOptions)) [13:30:40.420] } [13:30:40.420] if (FALSE) { [13:30:40.420] } [13:30:40.420] else { [13:30:40.420] if (TRUE) { [13:30:40.420] ...future.stdout <- base::rawConnection(base::raw(0L), [13:30:40.420] open = "w") [13:30:40.420] } [13:30:40.420] else { [13:30:40.420] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:30:40.420] windows = "NUL", "/dev/null"), open = "w") [13:30:40.420] } [13:30:40.420] base::sink(...future.stdout, type = "output", split = FALSE) [13:30:40.420] base::on.exit(if (!base::is.null(...future.stdout)) { [13:30:40.420] base::sink(type = "output", split = FALSE) [13:30:40.420] base::close(...future.stdout) [13:30:40.420] }, add = TRUE) [13:30:40.420] } [13:30:40.420] ...future.frame <- base::sys.nframe() [13:30:40.420] ...future.conditions <- base::list() [13:30:40.420] ...future.rng <- base::globalenv()$.Random.seed [13:30:40.420] if (FALSE) { [13:30:40.420] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:30:40.420] "...future.value", "...future.globalenv.names", ".Random.seed") [13:30:40.420] } [13:30:40.420] ...future.result <- base::tryCatch({ [13:30:40.420] base::withCallingHandlers({ [13:30:40.420] ...future.value <- base::withVisible(base::local(2 * [13:30:40.420] a)) [13:30:40.420] future::FutureResult(value = ...future.value$value, [13:30:40.420] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:30:40.420] ...future.rng), globalenv = if (FALSE) [13:30:40.420] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:30:40.420] ...future.globalenv.names)) [13:30:40.420] else NULL, started = ...future.startTime, version = "1.8") [13:30:40.420] }, condition = base::local({ [13:30:40.420] c <- base::c [13:30:40.420] inherits <- base::inherits [13:30:40.420] invokeRestart <- base::invokeRestart [13:30:40.420] length <- base::length [13:30:40.420] list <- base::list [13:30:40.420] seq.int <- base::seq.int [13:30:40.420] signalCondition <- base::signalCondition [13:30:40.420] sys.calls <- base::sys.calls [13:30:40.420] `[[` <- base::`[[` [13:30:40.420] `+` <- base::`+` [13:30:40.420] `<<-` <- base::`<<-` [13:30:40.420] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:30:40.420] calls[seq.int(from = from + 12L, to = length(calls) - [13:30:40.420] 3L)] [13:30:40.420] } [13:30:40.420] function(cond) { [13:30:40.420] is_error <- inherits(cond, "error") [13:30:40.420] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:30:40.420] NULL) [13:30:40.420] if (is_error) { [13:30:40.420] sessionInformation <- function() { [13:30:40.420] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:30:40.420] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:30:40.420] search = base::search(), system = base::Sys.info()) [13:30:40.420] } [13:30:40.420] ...future.conditions[[length(...future.conditions) + [13:30:40.420] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:30:40.420] cond$call), session = sessionInformation(), [13:30:40.420] timestamp = base::Sys.time(), signaled = 0L) [13:30:40.420] signalCondition(cond) [13:30:40.420] } [13:30:40.420] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:30:40.420] signal <- FALSE && inherits(cond, character(0)) [13:30:40.420] ...future.conditions[[length(...future.conditions) + [13:30:40.420] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:30:40.420] if (FALSE && !signal) { [13:30:40.420] muffleCondition <- function (cond, pattern = "^muffle") [13:30:40.420] { [13:30:40.420] inherits <- base::inherits [13:30:40.420] invokeRestart <- base::invokeRestart [13:30:40.420] is.null <- base::is.null [13:30:40.420] muffled <- FALSE [13:30:40.420] if (inherits(cond, "message")) { [13:30:40.420] muffled <- grepl(pattern, "muffleMessage") [13:30:40.420] if (muffled) [13:30:40.420] invokeRestart("muffleMessage") [13:30:40.420] } [13:30:40.420] else if (inherits(cond, "warning")) { [13:30:40.420] muffled <- grepl(pattern, "muffleWarning") [13:30:40.420] if (muffled) [13:30:40.420] invokeRestart("muffleWarning") [13:30:40.420] } [13:30:40.420] else if (inherits(cond, "condition")) { [13:30:40.420] if (!is.null(pattern)) { [13:30:40.420] computeRestarts <- base::computeRestarts [13:30:40.420] grepl <- base::grepl [13:30:40.420] restarts <- computeRestarts(cond) [13:30:40.420] for (restart in restarts) { [13:30:40.420] name <- restart$name [13:30:40.420] if (is.null(name)) [13:30:40.420] next [13:30:40.420] if (!grepl(pattern, name)) [13:30:40.420] next [13:30:40.420] invokeRestart(restart) [13:30:40.420] muffled <- TRUE [13:30:40.420] break [13:30:40.420] } [13:30:40.420] } [13:30:40.420] } [13:30:40.420] invisible(muffled) [13:30:40.420] } [13:30:40.420] muffleCondition(cond, pattern = "^muffle") [13:30:40.420] } [13:30:40.420] } [13:30:40.420] else { [13:30:40.420] if (TRUE) { [13:30:40.420] muffleCondition <- function (cond, pattern = "^muffle") [13:30:40.420] { [13:30:40.420] inherits <- base::inherits [13:30:40.420] invokeRestart <- base::invokeRestart [13:30:40.420] is.null <- base::is.null [13:30:40.420] muffled <- FALSE [13:30:40.420] if (inherits(cond, "message")) { [13:30:40.420] muffled <- grepl(pattern, "muffleMessage") [13:30:40.420] if (muffled) [13:30:40.420] invokeRestart("muffleMessage") [13:30:40.420] } [13:30:40.420] else if (inherits(cond, "warning")) { [13:30:40.420] muffled <- grepl(pattern, "muffleWarning") [13:30:40.420] if (muffled) [13:30:40.420] invokeRestart("muffleWarning") [13:30:40.420] } [13:30:40.420] else if (inherits(cond, "condition")) { [13:30:40.420] if (!is.null(pattern)) { [13:30:40.420] computeRestarts <- base::computeRestarts [13:30:40.420] grepl <- base::grepl [13:30:40.420] restarts <- computeRestarts(cond) [13:30:40.420] for (restart in restarts) { [13:30:40.420] name <- restart$name [13:30:40.420] if (is.null(name)) [13:30:40.420] next [13:30:40.420] if (!grepl(pattern, name)) [13:30:40.420] next [13:30:40.420] invokeRestart(restart) [13:30:40.420] muffled <- TRUE [13:30:40.420] break [13:30:40.420] } [13:30:40.420] } [13:30:40.420] } [13:30:40.420] invisible(muffled) [13:30:40.420] } [13:30:40.420] muffleCondition(cond, pattern = "^muffle") [13:30:40.420] } [13:30:40.420] } [13:30:40.420] } [13:30:40.420] })) [13:30:40.420] }, error = function(ex) { [13:30:40.420] base::structure(base::list(value = NULL, visible = NULL, [13:30:40.420] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:30:40.420] ...future.rng), started = ...future.startTime, [13:30:40.420] finished = Sys.time(), session_uuid = NA_character_, [13:30:40.420] version = "1.8"), class = "FutureResult") [13:30:40.420] }, finally = { [13:30:40.420] if (!identical(...future.workdir, getwd())) [13:30:40.420] setwd(...future.workdir) [13:30:40.420] { [13:30:40.420] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:30:40.420] ...future.oldOptions$nwarnings <- NULL [13:30:40.420] } [13:30:40.420] base::options(...future.oldOptions) [13:30:40.420] if (.Platform$OS.type == "windows") { [13:30:40.420] old_names <- names(...future.oldEnvVars) [13:30:40.420] envs <- base::Sys.getenv() [13:30:40.420] names <- names(envs) [13:30:40.420] common <- intersect(names, old_names) [13:30:40.420] added <- setdiff(names, old_names) [13:30:40.420] removed <- setdiff(old_names, names) [13:30:40.420] changed <- common[...future.oldEnvVars[common] != [13:30:40.420] envs[common]] [13:30:40.420] NAMES <- toupper(changed) [13:30:40.420] args <- list() [13:30:40.420] for (kk in seq_along(NAMES)) { [13:30:40.420] name <- changed[[kk]] [13:30:40.420] NAME <- NAMES[[kk]] [13:30:40.420] if (name != NAME && is.element(NAME, old_names)) [13:30:40.420] next [13:30:40.420] args[[name]] <- ...future.oldEnvVars[[name]] [13:30:40.420] } [13:30:40.420] NAMES <- toupper(added) [13:30:40.420] for (kk in seq_along(NAMES)) { [13:30:40.420] name <- added[[kk]] [13:30:40.420] NAME <- NAMES[[kk]] [13:30:40.420] if (name != NAME && is.element(NAME, old_names)) [13:30:40.420] next [13:30:40.420] args[[name]] <- "" [13:30:40.420] } [13:30:40.420] NAMES <- toupper(removed) [13:30:40.420] for (kk in seq_along(NAMES)) { [13:30:40.420] name <- removed[[kk]] [13:30:40.420] NAME <- NAMES[[kk]] [13:30:40.420] if (name != NAME && is.element(NAME, old_names)) [13:30:40.420] next [13:30:40.420] args[[name]] <- ...future.oldEnvVars[[name]] [13:30:40.420] } [13:30:40.420] if (length(args) > 0) [13:30:40.420] base::do.call(base::Sys.setenv, args = args) [13:30:40.420] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:30:40.420] } [13:30:40.420] else { [13:30:40.420] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:30:40.420] } [13:30:40.420] { [13:30:40.420] if (base::length(...future.futureOptionsAdded) > [13:30:40.420] 0L) { [13:30:40.420] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:30:40.420] base::names(opts) <- ...future.futureOptionsAdded [13:30:40.420] base::options(opts) [13:30:40.420] } [13:30:40.420] { [13:30:40.420] NULL [13:30:40.420] options(future.plan = NULL) [13:30:40.420] if (is.na(NA_character_)) [13:30:40.420] Sys.unsetenv("R_FUTURE_PLAN") [13:30:40.420] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:30:40.420] future::plan(...future.strategy.old, .cleanup = FALSE, [13:30:40.420] .init = FALSE) [13:30:40.420] } [13:30:40.420] } [13:30:40.420] } [13:30:40.420] }) [13:30:40.420] if (TRUE) { [13:30:40.420] base::sink(type = "output", split = FALSE) [13:30:40.420] if (TRUE) { [13:30:40.420] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:30:40.420] } [13:30:40.420] else { [13:30:40.420] ...future.result["stdout"] <- base::list(NULL) [13:30:40.420] } [13:30:40.420] base::close(...future.stdout) [13:30:40.420] ...future.stdout <- NULL [13:30:40.420] } [13:30:40.420] ...future.result$conditions <- ...future.conditions [13:30:40.420] ...future.result$finished <- base::Sys.time() [13:30:40.420] ...future.result [13:30:40.420] } [13:30:40.424] - Launch lazy future ... done [13:30:40.424] run() for 'MiraiFuture' ... done [13:30:40.426] getGlobalsAndPackages() ... [13:30:40.426] Searching for globals... [13:30:40.427] - globals found: [3] '{', '*', 'a' [13:30:40.427] Searching for globals ... DONE [13:30:40.427] Resolving globals: FALSE [13:30:40.428] The total size of the 1 globals is 56 bytes (56 bytes) [13:30:40.428] The total size of the 1 globals exported for future expression ('{; 2 * a; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'a' (56 bytes of class 'numeric') [13:30:40.428] - globals: [1] 'a' [13:30:40.429] [13:30:40.429] getGlobalsAndPackages() ... DONE [13:30:40.429] run() for 'Future' ... [13:30:40.429] - state: 'created' [13:30:40.430] - Future backend: 'FutureStrategy', 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' [13:30:40.432] - Future class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:30:40.432] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... [13:30:40.432] - Field: 'label' [13:30:40.432] - Field: 'local' [13:30:40.433] - Field: 'owner' [13:30:40.433] - Field: 'envir' [13:30:40.433] - Field: 'packages' [13:30:40.433] - Field: 'gc' [13:30:40.433] - Field: 'conditions' [13:30:40.433] - Field: 'expr' [13:30:40.434] - Field: 'uuid' [13:30:40.434] - Field: 'seed' [13:30:40.434] - Field: 'version' [13:30:40.434] - Field: 'result' [13:30:40.434] - Field: 'asynchronous' [13:30:40.434] - Field: 'calls' [13:30:40.435] - Field: 'globals' [13:30:40.435] - Field: 'stdout' [13:30:40.435] - Field: 'earlySignal' [13:30:40.435] - Field: 'lazy' [13:30:40.435] - Field: 'state' [13:30:40.435] - Field: '.cluster' [13:30:40.436] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... done [13:30:40.436] - Launch lazy future ... [13:30:40.436] Packages needed by the future expression (n = 0): [13:30:40.436] Packages needed by future strategies (n = 0): [13:30:40.437] { [13:30:40.437] { [13:30:40.437] { [13:30:40.437] ...future.startTime <- base::Sys.time() [13:30:40.437] { [13:30:40.437] { [13:30:40.437] { [13:30:40.437] base::local({ [13:30:40.437] has_future <- base::requireNamespace("future", [13:30:40.437] quietly = TRUE) [13:30:40.437] if (has_future) { [13:30:40.437] ns <- base::getNamespace("future") [13:30:40.437] version <- ns[[".package"]][["version"]] [13:30:40.437] if (is.null(version)) [13:30:40.437] version <- utils::packageVersion("future") [13:30:40.437] } [13:30:40.437] else { [13:30:40.437] version <- NULL [13:30:40.437] } [13:30:40.437] if (!has_future || version < "1.8.0") { [13:30:40.437] info <- base::c(r_version = base::gsub("R version ", [13:30:40.437] "", base::R.version$version.string), [13:30:40.437] platform = base::sprintf("%s (%s-bit)", [13:30:40.437] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:30:40.437] os = base::paste(base::Sys.info()[base::c("sysname", [13:30:40.437] "release", "version")], collapse = " "), [13:30:40.437] hostname = base::Sys.info()[["nodename"]]) [13:30:40.437] info <- base::sprintf("%s: %s", base::names(info), [13:30:40.437] info) [13:30:40.437] info <- base::paste(info, collapse = "; ") [13:30:40.437] if (!has_future) { [13:30:40.437] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:30:40.437] info) [13:30:40.437] } [13:30:40.437] else { [13:30:40.437] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:30:40.437] info, version) [13:30:40.437] } [13:30:40.437] base::stop(msg) [13:30:40.437] } [13:30:40.437] }) [13:30:40.437] } [13:30:40.437] ...future.strategy.old <- future::plan("list") [13:30:40.437] options(future.plan = NULL) [13:30:40.437] Sys.unsetenv("R_FUTURE_PLAN") [13:30:40.437] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:30:40.437] } [13:30:40.437] ...future.workdir <- getwd() [13:30:40.437] } [13:30:40.437] ...future.oldOptions <- base::as.list(base::.Options) [13:30:40.437] ...future.oldEnvVars <- base::Sys.getenv() [13:30:40.437] } [13:30:40.437] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:30:40.437] future.globals.maxSize = NULL, future.globals.method = NULL, [13:30:40.437] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:30:40.437] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:30:40.437] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:30:40.437] future.stdout.windows.reencode = NULL, width = 80L) [13:30:40.437] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:30:40.437] base::names(...future.oldOptions)) [13:30:40.437] } [13:30:40.437] if (FALSE) { [13:30:40.437] } [13:30:40.437] else { [13:30:40.437] if (TRUE) { [13:30:40.437] ...future.stdout <- base::rawConnection(base::raw(0L), [13:30:40.437] open = "w") [13:30:40.437] } [13:30:40.437] else { [13:30:40.437] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:30:40.437] windows = "NUL", "/dev/null"), open = "w") [13:30:40.437] } [13:30:40.437] base::sink(...future.stdout, type = "output", split = FALSE) [13:30:40.437] base::on.exit(if (!base::is.null(...future.stdout)) { [13:30:40.437] base::sink(type = "output", split = FALSE) [13:30:40.437] base::close(...future.stdout) [13:30:40.437] }, add = TRUE) [13:30:40.437] } [13:30:40.437] ...future.frame <- base::sys.nframe() [13:30:40.437] ...future.conditions <- base::list() [13:30:40.437] ...future.rng <- base::globalenv()$.Random.seed [13:30:40.437] if (FALSE) { [13:30:40.437] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:30:40.437] "...future.value", "...future.globalenv.names", ".Random.seed") [13:30:40.437] } [13:30:40.437] ...future.result <- base::tryCatch({ [13:30:40.437] base::withCallingHandlers({ [13:30:40.437] ...future.value <- base::withVisible(base::local({ [13:30:40.437] 2 * a [13:30:40.437] })) [13:30:40.437] future::FutureResult(value = ...future.value$value, [13:30:40.437] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:30:40.437] ...future.rng), globalenv = if (FALSE) [13:30:40.437] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:30:40.437] ...future.globalenv.names)) [13:30:40.437] else NULL, started = ...future.startTime, version = "1.8") [13:30:40.437] }, condition = base::local({ [13:30:40.437] c <- base::c [13:30:40.437] inherits <- base::inherits [13:30:40.437] invokeRestart <- base::invokeRestart [13:30:40.437] length <- base::length [13:30:40.437] list <- base::list [13:30:40.437] seq.int <- base::seq.int [13:30:40.437] signalCondition <- base::signalCondition [13:30:40.437] sys.calls <- base::sys.calls [13:30:40.437] `[[` <- base::`[[` [13:30:40.437] `+` <- base::`+` [13:30:40.437] `<<-` <- base::`<<-` [13:30:40.437] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:30:40.437] calls[seq.int(from = from + 12L, to = length(calls) - [13:30:40.437] 3L)] [13:30:40.437] } [13:30:40.437] function(cond) { [13:30:40.437] is_error <- inherits(cond, "error") [13:30:40.437] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:30:40.437] NULL) [13:30:40.437] if (is_error) { [13:30:40.437] sessionInformation <- function() { [13:30:40.437] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:30:40.437] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:30:40.437] search = base::search(), system = base::Sys.info()) [13:30:40.437] } [13:30:40.437] ...future.conditions[[length(...future.conditions) + [13:30:40.437] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:30:40.437] cond$call), session = sessionInformation(), [13:30:40.437] timestamp = base::Sys.time(), signaled = 0L) [13:30:40.437] signalCondition(cond) [13:30:40.437] } [13:30:40.437] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:30:40.437] signal <- FALSE && inherits(cond, character(0)) [13:30:40.437] ...future.conditions[[length(...future.conditions) + [13:30:40.437] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:30:40.437] if (FALSE && !signal) { [13:30:40.437] muffleCondition <- function (cond, pattern = "^muffle") [13:30:40.437] { [13:30:40.437] inherits <- base::inherits [13:30:40.437] invokeRestart <- base::invokeRestart [13:30:40.437] is.null <- base::is.null [13:30:40.437] muffled <- FALSE [13:30:40.437] if (inherits(cond, "message")) { [13:30:40.437] muffled <- grepl(pattern, "muffleMessage") [13:30:40.437] if (muffled) [13:30:40.437] invokeRestart("muffleMessage") [13:30:40.437] } [13:30:40.437] else if (inherits(cond, "warning")) { [13:30:40.437] muffled <- grepl(pattern, "muffleWarning") [13:30:40.437] if (muffled) [13:30:40.437] invokeRestart("muffleWarning") [13:30:40.437] } [13:30:40.437] else if (inherits(cond, "condition")) { [13:30:40.437] if (!is.null(pattern)) { [13:30:40.437] computeRestarts <- base::computeRestarts [13:30:40.437] grepl <- base::grepl [13:30:40.437] restarts <- computeRestarts(cond) [13:30:40.437] for (restart in restarts) { [13:30:40.437] name <- restart$name [13:30:40.437] if (is.null(name)) [13:30:40.437] next [13:30:40.437] if (!grepl(pattern, name)) [13:30:40.437] next [13:30:40.437] invokeRestart(restart) [13:30:40.437] muffled <- TRUE [13:30:40.437] break [13:30:40.437] } [13:30:40.437] } [13:30:40.437] } [13:30:40.437] invisible(muffled) [13:30:40.437] } [13:30:40.437] muffleCondition(cond, pattern = "^muffle") [13:30:40.437] } [13:30:40.437] } [13:30:40.437] else { [13:30:40.437] if (TRUE) { [13:30:40.437] muffleCondition <- function (cond, pattern = "^muffle") [13:30:40.437] { [13:30:40.437] inherits <- base::inherits [13:30:40.437] invokeRestart <- base::invokeRestart [13:30:40.437] is.null <- base::is.null [13:30:40.437] muffled <- FALSE [13:30:40.437] if (inherits(cond, "message")) { [13:30:40.437] muffled <- grepl(pattern, "muffleMessage") [13:30:40.437] if (muffled) [13:30:40.437] invokeRestart("muffleMessage") [13:30:40.437] } [13:30:40.437] else if (inherits(cond, "warning")) { [13:30:40.437] muffled <- grepl(pattern, "muffleWarning") [13:30:40.437] if (muffled) [13:30:40.437] invokeRestart("muffleWarning") [13:30:40.437] } [13:30:40.437] else if (inherits(cond, "condition")) { [13:30:40.437] if (!is.null(pattern)) { [13:30:40.437] computeRestarts <- base::computeRestarts [13:30:40.437] grepl <- base::grepl [13:30:40.437] restarts <- computeRestarts(cond) [13:30:40.437] for (restart in restarts) { [13:30:40.437] name <- restart$name [13:30:40.437] if (is.null(name)) [13:30:40.437] next [13:30:40.437] if (!grepl(pattern, name)) [13:30:40.437] next [13:30:40.437] invokeRestart(restart) [13:30:40.437] muffled <- TRUE [13:30:40.437] break [13:30:40.437] } [13:30:40.437] } [13:30:40.437] } [13:30:40.437] invisible(muffled) [13:30:40.437] } [13:30:40.437] muffleCondition(cond, pattern = "^muffle") [13:30:40.437] } [13:30:40.437] } [13:30:40.437] } [13:30:40.437] })) [13:30:40.437] }, error = function(ex) { [13:30:40.437] base::structure(base::list(value = NULL, visible = NULL, [13:30:40.437] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:30:40.437] ...future.rng), started = ...future.startTime, [13:30:40.437] finished = Sys.time(), session_uuid = NA_character_, [13:30:40.437] version = "1.8"), class = "FutureResult") [13:30:40.437] }, finally = { [13:30:40.437] if (!identical(...future.workdir, getwd())) [13:30:40.437] setwd(...future.workdir) [13:30:40.437] { [13:30:40.437] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:30:40.437] ...future.oldOptions$nwarnings <- NULL [13:30:40.437] } [13:30:40.437] base::options(...future.oldOptions) [13:30:40.437] if (.Platform$OS.type == "windows") { [13:30:40.437] old_names <- names(...future.oldEnvVars) [13:30:40.437] envs <- base::Sys.getenv() [13:30:40.437] names <- names(envs) [13:30:40.437] common <- intersect(names, old_names) [13:30:40.437] added <- setdiff(names, old_names) [13:30:40.437] removed <- setdiff(old_names, names) [13:30:40.437] changed <- common[...future.oldEnvVars[common] != [13:30:40.437] envs[common]] [13:30:40.437] NAMES <- toupper(changed) [13:30:40.437] args <- list() [13:30:40.437] for (kk in seq_along(NAMES)) { [13:30:40.437] name <- changed[[kk]] [13:30:40.437] NAME <- NAMES[[kk]] [13:30:40.437] if (name != NAME && is.element(NAME, old_names)) [13:30:40.437] next [13:30:40.437] args[[name]] <- ...future.oldEnvVars[[name]] [13:30:40.437] } [13:30:40.437] NAMES <- toupper(added) [13:30:40.437] for (kk in seq_along(NAMES)) { [13:30:40.437] name <- added[[kk]] [13:30:40.437] NAME <- NAMES[[kk]] [13:30:40.437] if (name != NAME && is.element(NAME, old_names)) [13:30:40.437] next [13:30:40.437] args[[name]] <- "" [13:30:40.437] } [13:30:40.437] NAMES <- toupper(removed) [13:30:40.437] for (kk in seq_along(NAMES)) { [13:30:40.437] name <- removed[[kk]] [13:30:40.437] NAME <- NAMES[[kk]] [13:30:40.437] if (name != NAME && is.element(NAME, old_names)) [13:30:40.437] next [13:30:40.437] args[[name]] <- ...future.oldEnvVars[[name]] [13:30:40.437] } [13:30:40.437] if (length(args) > 0) [13:30:40.437] base::do.call(base::Sys.setenv, args = args) [13:30:40.437] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:30:40.437] } [13:30:40.437] else { [13:30:40.437] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:30:40.437] } [13:30:40.437] { [13:30:40.437] if (base::length(...future.futureOptionsAdded) > [13:30:40.437] 0L) { [13:30:40.437] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:30:40.437] base::names(opts) <- ...future.futureOptionsAdded [13:30:40.437] base::options(opts) [13:30:40.437] } [13:30:40.437] { [13:30:40.437] NULL [13:30:40.437] options(future.plan = NULL) [13:30:40.437] if (is.na(NA_character_)) [13:30:40.437] Sys.unsetenv("R_FUTURE_PLAN") [13:30:40.437] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:30:40.437] future::plan(...future.strategy.old, .cleanup = FALSE, [13:30:40.437] .init = FALSE) [13:30:40.437] } [13:30:40.437] } [13:30:40.437] } [13:30:40.437] }) [13:30:40.437] if (TRUE) { [13:30:40.437] base::sink(type = "output", split = FALSE) [13:30:40.437] if (TRUE) { [13:30:40.437] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:30:40.437] } [13:30:40.437] else { [13:30:40.437] ...future.result["stdout"] <- base::list(NULL) [13:30:40.437] } [13:30:40.437] base::close(...future.stdout) [13:30:40.437] ...future.stdout <- NULL [13:30:40.437] } [13:30:40.437] ...future.result$conditions <- ...future.conditions [13:30:40.437] ...future.result$finished <- base::Sys.time() [13:30:40.437] ...future.result [13:30:40.437] } [13:30:40.441] - Launch lazy future ... done [13:30:40.441] run() for 'MiraiFuture' ... done [13:30:40.442] - plan('mirai_multisession') ... DONE> > message("*** Futures - lazy ... DONE") *** Futures - lazy ... DONE > > source("incl/end.R") > > proc.time() user system elapsed 0.35 0.10 0.92