R version 4.4.0 beta (2024-04-15 r86425 ucrt) -- "Puppy Cup" 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:11:09.681] plan(): Setting new future strategy stack: [13:11:09.683] List of future strategies: [13:11:09.683] 1. mirai_multisession: [13:11:09.683] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:11:09.683] - tweaked: FALSE [13:11:09.683] - call: future::plan(future.mirai::mirai_multisession) [13:11:09.695] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:11:09.695] < mirai | $data > [13:11:09.700] getGlobalsAndPackages() ... [13:11:09.700] Not searching for globals [13:11:09.701] - globals: [0] [13:11:09.701] getGlobalsAndPackages() ... DONE [13:11:09.701] getGlobalsAndPackages() ... [13:11:09.701] [13:11:09.702] - globals: [0] [13:11:09.702] getGlobalsAndPackages() ... DONE [13:11:09.977] Packages needed by the future expression (n = 0): [13:11:09.977] Packages needed by future strategies (n = 0): [13:11:09.978] { [13:11:09.978] { [13:11:09.978] { [13:11:09.978] ...future.startTime <- base::Sys.time() [13:11:09.978] { [13:11:09.978] { [13:11:09.978] { [13:11:09.978] base::local({ [13:11:09.978] has_future <- base::requireNamespace("future", [13:11:09.978] quietly = TRUE) [13:11:09.978] if (has_future) { [13:11:09.978] ns <- base::getNamespace("future") [13:11:09.978] version <- ns[[".package"]][["version"]] [13:11:09.978] if (is.null(version)) [13:11:09.978] version <- utils::packageVersion("future") [13:11:09.978] } [13:11:09.978] else { [13:11:09.978] version <- NULL [13:11:09.978] } [13:11:09.978] if (!has_future || version < "1.8.0") { [13:11:09.978] info <- base::c(r_version = base::gsub("R version ", [13:11:09.978] "", base::R.version$version.string), [13:11:09.978] platform = base::sprintf("%s (%s-bit)", [13:11:09.978] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:09.978] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:09.978] "release", "version")], collapse = " "), [13:11:09.978] hostname = base::Sys.info()[["nodename"]]) [13:11:09.978] info <- base::sprintf("%s: %s", base::names(info), [13:11:09.978] info) [13:11:09.978] info <- base::paste(info, collapse = "; ") [13:11:09.978] if (!has_future) { [13:11:09.978] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:09.978] info) [13:11:09.978] } [13:11:09.978] else { [13:11:09.978] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:09.978] info, version) [13:11:09.978] } [13:11:09.978] base::stop(msg) [13:11:09.978] } [13:11:09.978] }) [13:11:09.978] } [13:11:09.978] ...future.strategy.old <- future::plan("list") [13:11:09.978] options(future.plan = NULL) [13:11:09.978] Sys.unsetenv("R_FUTURE_PLAN") [13:11:09.978] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:09.978] } [13:11:09.978] ...future.workdir <- getwd() [13:11:09.978] } [13:11:09.978] ...future.oldOptions <- base::as.list(base::.Options) [13:11:09.978] ...future.oldEnvVars <- base::Sys.getenv() [13:11:09.978] } [13:11:09.978] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:09.978] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:09.978] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:09.978] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:09.978] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:09.978] future.stdout.windows.reencode = NULL, width = 80L) [13:11:09.978] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:09.978] base::names(...future.oldOptions)) [13:11:09.978] } [13:11:09.978] if (FALSE) { [13:11:09.978] } [13:11:09.978] else { [13:11:09.978] if (TRUE) { [13:11:09.978] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:09.978] open = "w") [13:11:09.978] } [13:11:09.978] else { [13:11:09.978] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:09.978] windows = "NUL", "/dev/null"), open = "w") [13:11:09.978] } [13:11:09.978] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:09.978] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:09.978] base::sink(type = "output", split = FALSE) [13:11:09.978] base::close(...future.stdout) [13:11:09.978] }, add = TRUE) [13:11:09.978] } [13:11:09.978] ...future.frame <- base::sys.nframe() [13:11:09.978] ...future.conditions <- base::list() [13:11:09.978] ...future.rng <- base::globalenv()$.Random.seed [13:11:09.978] if (FALSE) { [13:11:09.978] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:09.978] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:09.978] } [13:11:09.978] ...future.result <- base::tryCatch({ [13:11:09.978] base::withCallingHandlers({ [13:11:09.978] ...future.value <- base::withVisible(base::local(NA)) [13:11:09.978] future::FutureResult(value = ...future.value$value, [13:11:09.978] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:09.978] ...future.rng), globalenv = if (FALSE) [13:11:09.978] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:09.978] ...future.globalenv.names)) [13:11:09.978] else NULL, started = ...future.startTime, version = "1.8") [13:11:09.978] }, condition = base::local({ [13:11:09.978] c <- base::c [13:11:09.978] inherits <- base::inherits [13:11:09.978] invokeRestart <- base::invokeRestart [13:11:09.978] length <- base::length [13:11:09.978] list <- base::list [13:11:09.978] seq.int <- base::seq.int [13:11:09.978] signalCondition <- base::signalCondition [13:11:09.978] sys.calls <- base::sys.calls [13:11:09.978] `[[` <- base::`[[` [13:11:09.978] `+` <- base::`+` [13:11:09.978] `<<-` <- base::`<<-` [13:11:09.978] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:09.978] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:09.978] 3L)] [13:11:09.978] } [13:11:09.978] function(cond) { [13:11:09.978] is_error <- inherits(cond, "error") [13:11:09.978] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:09.978] NULL) [13:11:09.978] if (is_error) { [13:11:09.978] sessionInformation <- function() { [13:11:09.978] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:09.978] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:09.978] search = base::search(), system = base::Sys.info()) [13:11:09.978] } [13:11:09.978] ...future.conditions[[length(...future.conditions) + [13:11:09.978] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:09.978] cond$call), session = sessionInformation(), [13:11:09.978] timestamp = base::Sys.time(), signaled = 0L) [13:11:09.978] signalCondition(cond) [13:11:09.978] } [13:11:09.978] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:09.978] signal <- FALSE && inherits(cond, character(0)) [13:11:09.978] ...future.conditions[[length(...future.conditions) + [13:11:09.978] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:09.978] if (FALSE && !signal) { [13:11:09.978] muffleCondition <- function (cond, pattern = "^muffle") [13:11:09.978] { [13:11:09.978] inherits <- base::inherits [13:11:09.978] invokeRestart <- base::invokeRestart [13:11:09.978] is.null <- base::is.null [13:11:09.978] muffled <- FALSE [13:11:09.978] if (inherits(cond, "message")) { [13:11:09.978] muffled <- grepl(pattern, "muffleMessage") [13:11:09.978] if (muffled) [13:11:09.978] invokeRestart("muffleMessage") [13:11:09.978] } [13:11:09.978] else if (inherits(cond, "warning")) { [13:11:09.978] muffled <- grepl(pattern, "muffleWarning") [13:11:09.978] if (muffled) [13:11:09.978] invokeRestart("muffleWarning") [13:11:09.978] } [13:11:09.978] else if (inherits(cond, "condition")) { [13:11:09.978] if (!is.null(pattern)) { [13:11:09.978] computeRestarts <- base::computeRestarts [13:11:09.978] grepl <- base::grepl [13:11:09.978] restarts <- computeRestarts(cond) [13:11:09.978] for (restart in restarts) { [13:11:09.978] name <- restart$name [13:11:09.978] if (is.null(name)) [13:11:09.978] next [13:11:09.978] if (!grepl(pattern, name)) [13:11:09.978] next [13:11:09.978] invokeRestart(restart) [13:11:09.978] muffled <- TRUE [13:11:09.978] break [13:11:09.978] } [13:11:09.978] } [13:11:09.978] } [13:11:09.978] invisible(muffled) [13:11:09.978] } [13:11:09.978] muffleCondition(cond, pattern = "^muffle") [13:11:09.978] } [13:11:09.978] } [13:11:09.978] else { [13:11:09.978] if (TRUE) { [13:11:09.978] muffleCondition <- function (cond, pattern = "^muffle") [13:11:09.978] { [13:11:09.978] inherits <- base::inherits [13:11:09.978] invokeRestart <- base::invokeRestart [13:11:09.978] is.null <- base::is.null [13:11:09.978] muffled <- FALSE [13:11:09.978] if (inherits(cond, "message")) { [13:11:09.978] muffled <- grepl(pattern, "muffleMessage") [13:11:09.978] if (muffled) [13:11:09.978] invokeRestart("muffleMessage") [13:11:09.978] } [13:11:09.978] else if (inherits(cond, "warning")) { [13:11:09.978] muffled <- grepl(pattern, "muffleWarning") [13:11:09.978] if (muffled) [13:11:09.978] invokeRestart("muffleWarning") [13:11:09.978] } [13:11:09.978] else if (inherits(cond, "condition")) { [13:11:09.978] if (!is.null(pattern)) { [13:11:09.978] computeRestarts <- base::computeRestarts [13:11:09.978] grepl <- base::grepl [13:11:09.978] restarts <- computeRestarts(cond) [13:11:09.978] for (restart in restarts) { [13:11:09.978] name <- restart$name [13:11:09.978] if (is.null(name)) [13:11:09.978] next [13:11:09.978] if (!grepl(pattern, name)) [13:11:09.978] next [13:11:09.978] invokeRestart(restart) [13:11:09.978] muffled <- TRUE [13:11:09.978] break [13:11:09.978] } [13:11:09.978] } [13:11:09.978] } [13:11:09.978] invisible(muffled) [13:11:09.978] } [13:11:09.978] muffleCondition(cond, pattern = "^muffle") [13:11:09.978] } [13:11:09.978] } [13:11:09.978] } [13:11:09.978] })) [13:11:09.978] }, error = function(ex) { [13:11:09.978] base::structure(base::list(value = NULL, visible = NULL, [13:11:09.978] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:09.978] ...future.rng), started = ...future.startTime, [13:11:09.978] finished = Sys.time(), session_uuid = NA_character_, [13:11:09.978] version = "1.8"), class = "FutureResult") [13:11:09.978] }, finally = { [13:11:09.978] if (!identical(...future.workdir, getwd())) [13:11:09.978] setwd(...future.workdir) [13:11:09.978] { [13:11:09.978] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:09.978] ...future.oldOptions$nwarnings <- NULL [13:11:09.978] } [13:11:09.978] base::options(...future.oldOptions) [13:11:09.978] if (.Platform$OS.type == "windows") { [13:11:09.978] old_names <- names(...future.oldEnvVars) [13:11:09.978] envs <- base::Sys.getenv() [13:11:09.978] names <- names(envs) [13:11:09.978] common <- intersect(names, old_names) [13:11:09.978] added <- setdiff(names, old_names) [13:11:09.978] removed <- setdiff(old_names, names) [13:11:09.978] changed <- common[...future.oldEnvVars[common] != [13:11:09.978] envs[common]] [13:11:09.978] NAMES <- toupper(changed) [13:11:09.978] args <- list() [13:11:09.978] for (kk in seq_along(NAMES)) { [13:11:09.978] name <- changed[[kk]] [13:11:09.978] NAME <- NAMES[[kk]] [13:11:09.978] if (name != NAME && is.element(NAME, old_names)) [13:11:09.978] next [13:11:09.978] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:09.978] } [13:11:09.978] NAMES <- toupper(added) [13:11:09.978] for (kk in seq_along(NAMES)) { [13:11:09.978] name <- added[[kk]] [13:11:09.978] NAME <- NAMES[[kk]] [13:11:09.978] if (name != NAME && is.element(NAME, old_names)) [13:11:09.978] next [13:11:09.978] args[[name]] <- "" [13:11:09.978] } [13:11:09.978] NAMES <- toupper(removed) [13:11:09.978] for (kk in seq_along(NAMES)) { [13:11:09.978] name <- removed[[kk]] [13:11:09.978] NAME <- NAMES[[kk]] [13:11:09.978] if (name != NAME && is.element(NAME, old_names)) [13:11:09.978] next [13:11:09.978] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:09.978] } [13:11:09.978] if (length(args) > 0) [13:11:09.978] base::do.call(base::Sys.setenv, args = args) [13:11:09.978] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:09.978] } [13:11:09.978] else { [13:11:09.978] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:09.978] } [13:11:09.978] { [13:11:09.978] if (base::length(...future.futureOptionsAdded) > [13:11:09.978] 0L) { [13:11:09.978] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:09.978] base::names(opts) <- ...future.futureOptionsAdded [13:11:09.978] base::options(opts) [13:11:09.978] } [13:11:09.978] { [13:11:09.978] NULL [13:11:09.978] options(future.plan = NULL) [13:11:09.978] if (is.na(NA_character_)) [13:11:09.978] Sys.unsetenv("R_FUTURE_PLAN") [13:11:09.978] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:09.978] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:09.978] .init = FALSE) [13:11:09.978] } [13:11:09.978] } [13:11:09.978] } [13:11:09.978] }) [13:11:09.978] if (TRUE) { [13:11:09.978] base::sink(type = "output", split = FALSE) [13:11:09.978] if (TRUE) { [13:11:09.978] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:09.978] } [13:11:09.978] else { [13:11:09.978] ...future.result["stdout"] <- base::list(NULL) [13:11:09.978] } [13:11:09.978] base::close(...future.stdout) [13:11:09.978] ...future.stdout <- NULL [13:11:09.978] } [13:11:09.978] ...future.result$conditions <- ...future.conditions [13:11:09.978] ...future.result$finished <- base::Sys.time() [13:11:09.978] ...future.result [13:11:09.978] } [13:11:10.077] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:11:10.077] plan(): nbrOfWorkers() = 2 > library("listenv") > > message("*** mirai_multisession() ...") *** mirai_multisession() ... > > for (cores in 1:min(2L, availableCores())) { + ## FIXME: + if (!fullTest && cores > 1) next + + mprintf("Testing with %d cores ...", cores) + options(mc.cores = cores - 1L) + + for (globals in c(FALSE, TRUE)) { + mprintf("*** mirai_multisession(..., globals = %s) without globals", + globals) + + f <- mirai_multisession({ + 42L + }, globals = globals) + stopifnot(inherits(f, "MiraiFuture")) + + print(resolved(f)) + y <- value(f) + print(y) + stopifnot(y == 42L) + + mprintf("*** mirai_multisession(..., globals = %s) with globals", globals) + ## A global variable + a <- 0 + f <- mirai_multisession({ + b <- 3 + c <- 2 + a * b * c + }, globals = globals) + print(f) + + + ## A mirai_multisession future is evaluated in a separated + ## process. Changing the value of a global + ## variable should not affect the result of the + ## future. + a <- 7 ## Make sure globals are frozen + if (globals) { + v <- value(f) + print(v) + stopifnot(v == 0) + } else { + res <- tryCatch({ value(f) }, error = identity) + print(res) + stopifnot(inherits(res, "error")) + } + + + mprintf("*** mirai_multisession(..., globals = %s) with globals and blocking", globals) #nolint + x <- listenv() + for (ii in 1:3) { + mprintf(" - Creating mirai_multisession future #%d ...", ii) + x[[ii]] <- mirai_multisession({ ii }, globals = globals) + } + mprintf(" - Resolving %d mirai_multisession futures", length(x)) + if (globals) { + v <- sapply(x, FUN = value) + stopifnot(all(v == 1:3)) + } else { + v <- lapply(x, FUN = function(f) tryCatch(value(f), error = identity)) + stopifnot(all(sapply(v, FUN = inherits, "error"))) + } + + mprintf("*** mirai_multisession(..., globals = %s) and errors", globals) + f <- mirai_multisession({ + stop("Whoops!") + 1 + }, globals = globals) + print(f) + v <- value(f, signal = FALSE) + print(v) + stopifnot(inherits(v, "error")) + + res <- tryCatch({ + v <- value(f) + }, error = identity) + print(res) + stopifnot(inherits(res, "error")) + + ## Error is repeated + res <- tryCatch({ + v <- value(f) + }, error = identity) + print(res) + stopifnot(inherits(res, "error")) + + } # for (globals ...) + + + message("*** mirai_multisession(..., workers = 1L) ...") + + a <- 2 + b <- 3 + y_truth <- a * b + + f <- mirai_multisession({ a * b }, workers = 1L) + rm(list = c("a", "b")) + + v <- value(f) + print(v) + stopifnot(v == y_truth) + + message("*** mirai_multisession(..., workers = 1L) ... DONE") + + mprintf("Testing with %d cores ... DONE", cores) + } ## for (cores ...) [13:11:10.137] Testing with 1 cores ...[13:11:10.137] *** mirai_multisession(..., globals = FALSE) without globals[13:11:10.139] getGlobalsAndPackages() ... [13:11:10.139] Not searching for globals [13:11:10.139] - globals: [0] [13:11:10.139] getGlobalsAndPackages() ... DONE [13:11:10.139] getGlobalsAndPackages() ... [13:11:10.140] [13:11:10.140] - globals: [0] [13:11:10.140] getGlobalsAndPackages() ... DONE [13:11:10.275] Packages needed by the future expression (n = 0): [13:11:10.275] Packages needed by future strategies (n = 0): [13:11:10.276] { [13:11:10.276] { [13:11:10.276] { [13:11:10.276] ...future.startTime <- base::Sys.time() [13:11:10.276] { [13:11:10.276] { [13:11:10.276] { [13:11:10.276] base::local({ [13:11:10.276] has_future <- base::requireNamespace("future", [13:11:10.276] quietly = TRUE) [13:11:10.276] if (has_future) { [13:11:10.276] ns <- base::getNamespace("future") [13:11:10.276] version <- ns[[".package"]][["version"]] [13:11:10.276] if (is.null(version)) [13:11:10.276] version <- utils::packageVersion("future") [13:11:10.276] } [13:11:10.276] else { [13:11:10.276] version <- NULL [13:11:10.276] } [13:11:10.276] if (!has_future || version < "1.8.0") { [13:11:10.276] info <- base::c(r_version = base::gsub("R version ", [13:11:10.276] "", base::R.version$version.string), [13:11:10.276] platform = base::sprintf("%s (%s-bit)", [13:11:10.276] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:10.276] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:10.276] "release", "version")], collapse = " "), [13:11:10.276] hostname = base::Sys.info()[["nodename"]]) [13:11:10.276] info <- base::sprintf("%s: %s", base::names(info), [13:11:10.276] info) [13:11:10.276] info <- base::paste(info, collapse = "; ") [13:11:10.276] if (!has_future) { [13:11:10.276] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:10.276] info) [13:11:10.276] } [13:11:10.276] else { [13:11:10.276] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:10.276] info, version) [13:11:10.276] } [13:11:10.276] base::stop(msg) [13:11:10.276] } [13:11:10.276] }) [13:11:10.276] } [13:11:10.276] ...future.strategy.old <- future::plan("list") [13:11:10.276] options(future.plan = NULL) [13:11:10.276] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.276] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:10.276] } [13:11:10.276] ...future.workdir <- getwd() [13:11:10.276] } [13:11:10.276] ...future.oldOptions <- base::as.list(base::.Options) [13:11:10.276] ...future.oldEnvVars <- base::Sys.getenv() [13:11:10.276] } [13:11:10.276] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:10.276] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:10.276] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:10.276] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:10.276] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:10.276] future.stdout.windows.reencode = NULL, width = 80L) [13:11:10.276] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:10.276] base::names(...future.oldOptions)) [13:11:10.276] } [13:11:10.276] if (FALSE) { [13:11:10.276] } [13:11:10.276] else { [13:11:10.276] if (TRUE) { [13:11:10.276] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:10.276] open = "w") [13:11:10.276] } [13:11:10.276] else { [13:11:10.276] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:10.276] windows = "NUL", "/dev/null"), open = "w") [13:11:10.276] } [13:11:10.276] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:10.276] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:10.276] base::sink(type = "output", split = FALSE) [13:11:10.276] base::close(...future.stdout) [13:11:10.276] }, add = TRUE) [13:11:10.276] } [13:11:10.276] ...future.frame <- base::sys.nframe() [13:11:10.276] ...future.conditions <- base::list() [13:11:10.276] ...future.rng <- base::globalenv()$.Random.seed [13:11:10.276] if (FALSE) { [13:11:10.276] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:10.276] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:10.276] } [13:11:10.276] ...future.result <- base::tryCatch({ [13:11:10.276] base::withCallingHandlers({ [13:11:10.276] ...future.value <- base::withVisible(base::local({ [13:11:10.276] 42L [13:11:10.276] })) [13:11:10.276] future::FutureResult(value = ...future.value$value, [13:11:10.276] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.276] ...future.rng), globalenv = if (FALSE) [13:11:10.276] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:10.276] ...future.globalenv.names)) [13:11:10.276] else NULL, started = ...future.startTime, version = "1.8") [13:11:10.276] }, condition = base::local({ [13:11:10.276] c <- base::c [13:11:10.276] inherits <- base::inherits [13:11:10.276] invokeRestart <- base::invokeRestart [13:11:10.276] length <- base::length [13:11:10.276] list <- base::list [13:11:10.276] seq.int <- base::seq.int [13:11:10.276] signalCondition <- base::signalCondition [13:11:10.276] sys.calls <- base::sys.calls [13:11:10.276] `[[` <- base::`[[` [13:11:10.276] `+` <- base::`+` [13:11:10.276] `<<-` <- base::`<<-` [13:11:10.276] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:10.276] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:10.276] 3L)] [13:11:10.276] } [13:11:10.276] function(cond) { [13:11:10.276] is_error <- inherits(cond, "error") [13:11:10.276] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:10.276] NULL) [13:11:10.276] if (is_error) { [13:11:10.276] sessionInformation <- function() { [13:11:10.276] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:10.276] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:10.276] search = base::search(), system = base::Sys.info()) [13:11:10.276] } [13:11:10.276] ...future.conditions[[length(...future.conditions) + [13:11:10.276] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:10.276] cond$call), session = sessionInformation(), [13:11:10.276] timestamp = base::Sys.time(), signaled = 0L) [13:11:10.276] signalCondition(cond) [13:11:10.276] } [13:11:10.276] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:10.276] signal <- FALSE && inherits(cond, character(0)) [13:11:10.276] ...future.conditions[[length(...future.conditions) + [13:11:10.276] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:10.276] if (FALSE && !signal) { [13:11:10.276] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.276] { [13:11:10.276] inherits <- base::inherits [13:11:10.276] invokeRestart <- base::invokeRestart [13:11:10.276] is.null <- base::is.null [13:11:10.276] muffled <- FALSE [13:11:10.276] if (inherits(cond, "message")) { [13:11:10.276] muffled <- grepl(pattern, "muffleMessage") [13:11:10.276] if (muffled) [13:11:10.276] invokeRestart("muffleMessage") [13:11:10.276] } [13:11:10.276] else if (inherits(cond, "warning")) { [13:11:10.276] muffled <- grepl(pattern, "muffleWarning") [13:11:10.276] if (muffled) [13:11:10.276] invokeRestart("muffleWarning") [13:11:10.276] } [13:11:10.276] else if (inherits(cond, "condition")) { [13:11:10.276] if (!is.null(pattern)) { [13:11:10.276] computeRestarts <- base::computeRestarts [13:11:10.276] grepl <- base::grepl [13:11:10.276] restarts <- computeRestarts(cond) [13:11:10.276] for (restart in restarts) { [13:11:10.276] name <- restart$name [13:11:10.276] if (is.null(name)) [13:11:10.276] next [13:11:10.276] if (!grepl(pattern, name)) [13:11:10.276] next [13:11:10.276] invokeRestart(restart) [13:11:10.276] muffled <- TRUE [13:11:10.276] break [13:11:10.276] } [13:11:10.276] } [13:11:10.276] } [13:11:10.276] invisible(muffled) [13:11:10.276] } [13:11:10.276] muffleCondition(cond, pattern = "^muffle") [13:11:10.276] } [13:11:10.276] } [13:11:10.276] else { [13:11:10.276] if (TRUE) { [13:11:10.276] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.276] { [13:11:10.276] inherits <- base::inherits [13:11:10.276] invokeRestart <- base::invokeRestart [13:11:10.276] is.null <- base::is.null [13:11:10.276] muffled <- FALSE [13:11:10.276] if (inherits(cond, "message")) { [13:11:10.276] muffled <- grepl(pattern, "muffleMessage") [13:11:10.276] if (muffled) [13:11:10.276] invokeRestart("muffleMessage") [13:11:10.276] } [13:11:10.276] else if (inherits(cond, "warning")) { [13:11:10.276] muffled <- grepl(pattern, "muffleWarning") [13:11:10.276] if (muffled) [13:11:10.276] invokeRestart("muffleWarning") [13:11:10.276] } [13:11:10.276] else if (inherits(cond, "condition")) { [13:11:10.276] if (!is.null(pattern)) { [13:11:10.276] computeRestarts <- base::computeRestarts [13:11:10.276] grepl <- base::grepl [13:11:10.276] restarts <- computeRestarts(cond) [13:11:10.276] for (restart in restarts) { [13:11:10.276] name <- restart$name [13:11:10.276] if (is.null(name)) [13:11:10.276] next [13:11:10.276] if (!grepl(pattern, name)) [13:11:10.276] next [13:11:10.276] invokeRestart(restart) [13:11:10.276] muffled <- TRUE [13:11:10.276] break [13:11:10.276] } [13:11:10.276] } [13:11:10.276] } [13:11:10.276] invisible(muffled) [13:11:10.276] } [13:11:10.276] muffleCondition(cond, pattern = "^muffle") [13:11:10.276] } [13:11:10.276] } [13:11:10.276] } [13:11:10.276] })) [13:11:10.276] }, error = function(ex) { [13:11:10.276] base::structure(base::list(value = NULL, visible = NULL, [13:11:10.276] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.276] ...future.rng), started = ...future.startTime, [13:11:10.276] finished = Sys.time(), session_uuid = NA_character_, [13:11:10.276] version = "1.8"), class = "FutureResult") [13:11:10.276] }, finally = { [13:11:10.276] if (!identical(...future.workdir, getwd())) [13:11:10.276] setwd(...future.workdir) [13:11:10.276] { [13:11:10.276] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:10.276] ...future.oldOptions$nwarnings <- NULL [13:11:10.276] } [13:11:10.276] base::options(...future.oldOptions) [13:11:10.276] if (.Platform$OS.type == "windows") { [13:11:10.276] old_names <- names(...future.oldEnvVars) [13:11:10.276] envs <- base::Sys.getenv() [13:11:10.276] names <- names(envs) [13:11:10.276] common <- intersect(names, old_names) [13:11:10.276] added <- setdiff(names, old_names) [13:11:10.276] removed <- setdiff(old_names, names) [13:11:10.276] changed <- common[...future.oldEnvVars[common] != [13:11:10.276] envs[common]] [13:11:10.276] NAMES <- toupper(changed) [13:11:10.276] args <- list() [13:11:10.276] for (kk in seq_along(NAMES)) { [13:11:10.276] name <- changed[[kk]] [13:11:10.276] NAME <- NAMES[[kk]] [13:11:10.276] if (name != NAME && is.element(NAME, old_names)) [13:11:10.276] next [13:11:10.276] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.276] } [13:11:10.276] NAMES <- toupper(added) [13:11:10.276] for (kk in seq_along(NAMES)) { [13:11:10.276] name <- added[[kk]] [13:11:10.276] NAME <- NAMES[[kk]] [13:11:10.276] if (name != NAME && is.element(NAME, old_names)) [13:11:10.276] next [13:11:10.276] args[[name]] <- "" [13:11:10.276] } [13:11:10.276] NAMES <- toupper(removed) [13:11:10.276] for (kk in seq_along(NAMES)) { [13:11:10.276] name <- removed[[kk]] [13:11:10.276] NAME <- NAMES[[kk]] [13:11:10.276] if (name != NAME && is.element(NAME, old_names)) [13:11:10.276] next [13:11:10.276] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.276] } [13:11:10.276] if (length(args) > 0) [13:11:10.276] base::do.call(base::Sys.setenv, args = args) [13:11:10.276] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:10.276] } [13:11:10.276] else { [13:11:10.276] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:10.276] } [13:11:10.276] { [13:11:10.276] if (base::length(...future.futureOptionsAdded) > [13:11:10.276] 0L) { [13:11:10.276] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:10.276] base::names(opts) <- ...future.futureOptionsAdded [13:11:10.276] base::options(opts) [13:11:10.276] } [13:11:10.276] { [13:11:10.276] NULL [13:11:10.276] options(future.plan = NULL) [13:11:10.276] if (is.na(NA_character_)) [13:11:10.276] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.276] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:10.276] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:10.276] .init = FALSE) [13:11:10.276] } [13:11:10.276] } [13:11:10.276] } [13:11:10.276] }) [13:11:10.276] if (TRUE) { [13:11:10.276] base::sink(type = "output", split = FALSE) [13:11:10.276] if (TRUE) { [13:11:10.276] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:10.276] } [13:11:10.276] else { [13:11:10.276] ...future.result["stdout"] <- base::list(NULL) [13:11:10.276] } [13:11:10.276] base::close(...future.stdout) [13:11:10.276] ...future.stdout <- NULL [13:11:10.276] } [13:11:10.276] ...future.result$conditions <- ...future.conditions [13:11:10.276] ...future.result$finished <- base::Sys.time() [13:11:10.276] ...future.result [13:11:10.276] } [13:11:10.281] resolved() for 'MiraiFuture' ... [13:11:10.281] - state: 'running' [13:11:10.281] - run: TRUE [13:11:10.281] - result: 'NULL' [13:11:10.282] - resolved: FALSE [13:11:10.282] resolved() for 'MiraiFuture' ... done [1] FALSE [1] 42 [13:11:10.378] *** mirai_multisession(..., globals = FALSE) with globals[13:11:10.380] getGlobalsAndPackages() ... [13:11:10.380] Not searching for globals [13:11:10.380] - globals: [0] [13:11:10.381] getGlobalsAndPackages() ... DONE [13:11:10.381] getGlobalsAndPackages() ... [13:11:10.381] [13:11:10.381] - globals: [0] [13:11:10.381] getGlobalsAndPackages() ... DONE [13:11:10.382] Packages needed by the future expression (n = 0): [13:11:10.382] Packages needed by future strategies (n = 0): [13:11:10.383] { [13:11:10.383] { [13:11:10.383] { [13:11:10.383] ...future.startTime <- base::Sys.time() [13:11:10.383] { [13:11:10.383] { [13:11:10.383] { [13:11:10.383] base::local({ [13:11:10.383] has_future <- base::requireNamespace("future", [13:11:10.383] quietly = TRUE) [13:11:10.383] if (has_future) { [13:11:10.383] ns <- base::getNamespace("future") [13:11:10.383] version <- ns[[".package"]][["version"]] [13:11:10.383] if (is.null(version)) [13:11:10.383] version <- utils::packageVersion("future") [13:11:10.383] } [13:11:10.383] else { [13:11:10.383] version <- NULL [13:11:10.383] } [13:11:10.383] if (!has_future || version < "1.8.0") { [13:11:10.383] info <- base::c(r_version = base::gsub("R version ", [13:11:10.383] "", base::R.version$version.string), [13:11:10.383] platform = base::sprintf("%s (%s-bit)", [13:11:10.383] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:10.383] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:10.383] "release", "version")], collapse = " "), [13:11:10.383] hostname = base::Sys.info()[["nodename"]]) [13:11:10.383] info <- base::sprintf("%s: %s", base::names(info), [13:11:10.383] info) [13:11:10.383] info <- base::paste(info, collapse = "; ") [13:11:10.383] if (!has_future) { [13:11:10.383] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:10.383] info) [13:11:10.383] } [13:11:10.383] else { [13:11:10.383] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:10.383] info, version) [13:11:10.383] } [13:11:10.383] base::stop(msg) [13:11:10.383] } [13:11:10.383] }) [13:11:10.383] } [13:11:10.383] ...future.strategy.old <- future::plan("list") [13:11:10.383] options(future.plan = NULL) [13:11:10.383] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.383] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:10.383] } [13:11:10.383] ...future.workdir <- getwd() [13:11:10.383] } [13:11:10.383] ...future.oldOptions <- base::as.list(base::.Options) [13:11:10.383] ...future.oldEnvVars <- base::Sys.getenv() [13:11:10.383] } [13:11:10.383] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:10.383] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:10.383] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:10.383] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:10.383] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:10.383] future.stdout.windows.reencode = NULL, width = 80L) [13:11:10.383] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:10.383] base::names(...future.oldOptions)) [13:11:10.383] } [13:11:10.383] if (FALSE) { [13:11:10.383] } [13:11:10.383] else { [13:11:10.383] if (TRUE) { [13:11:10.383] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:10.383] open = "w") [13:11:10.383] } [13:11:10.383] else { [13:11:10.383] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:10.383] windows = "NUL", "/dev/null"), open = "w") [13:11:10.383] } [13:11:10.383] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:10.383] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:10.383] base::sink(type = "output", split = FALSE) [13:11:10.383] base::close(...future.stdout) [13:11:10.383] }, add = TRUE) [13:11:10.383] } [13:11:10.383] ...future.frame <- base::sys.nframe() [13:11:10.383] ...future.conditions <- base::list() [13:11:10.383] ...future.rng <- base::globalenv()$.Random.seed [13:11:10.383] if (FALSE) { [13:11:10.383] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:10.383] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:10.383] } [13:11:10.383] ...future.result <- base::tryCatch({ [13:11:10.383] base::withCallingHandlers({ [13:11:10.383] ...future.value <- base::withVisible(base::local({ [13:11:10.383] b <- 3 [13:11:10.383] c <- 2 [13:11:10.383] a * b * c [13:11:10.383] })) [13:11:10.383] future::FutureResult(value = ...future.value$value, [13:11:10.383] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.383] ...future.rng), globalenv = if (FALSE) [13:11:10.383] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:10.383] ...future.globalenv.names)) [13:11:10.383] else NULL, started = ...future.startTime, version = "1.8") [13:11:10.383] }, condition = base::local({ [13:11:10.383] c <- base::c [13:11:10.383] inherits <- base::inherits [13:11:10.383] invokeRestart <- base::invokeRestart [13:11:10.383] length <- base::length [13:11:10.383] list <- base::list [13:11:10.383] seq.int <- base::seq.int [13:11:10.383] signalCondition <- base::signalCondition [13:11:10.383] sys.calls <- base::sys.calls [13:11:10.383] `[[` <- base::`[[` [13:11:10.383] `+` <- base::`+` [13:11:10.383] `<<-` <- base::`<<-` [13:11:10.383] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:10.383] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:10.383] 3L)] [13:11:10.383] } [13:11:10.383] function(cond) { [13:11:10.383] is_error <- inherits(cond, "error") [13:11:10.383] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:10.383] NULL) [13:11:10.383] if (is_error) { [13:11:10.383] sessionInformation <- function() { [13:11:10.383] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:10.383] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:10.383] search = base::search(), system = base::Sys.info()) [13:11:10.383] } [13:11:10.383] ...future.conditions[[length(...future.conditions) + [13:11:10.383] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:10.383] cond$call), session = sessionInformation(), [13:11:10.383] timestamp = base::Sys.time(), signaled = 0L) [13:11:10.383] signalCondition(cond) [13:11:10.383] } [13:11:10.383] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:10.383] signal <- FALSE && inherits(cond, character(0)) [13:11:10.383] ...future.conditions[[length(...future.conditions) + [13:11:10.383] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:10.383] if (FALSE && !signal) { [13:11:10.383] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.383] { [13:11:10.383] inherits <- base::inherits [13:11:10.383] invokeRestart <- base::invokeRestart [13:11:10.383] is.null <- base::is.null [13:11:10.383] muffled <- FALSE [13:11:10.383] if (inherits(cond, "message")) { [13:11:10.383] muffled <- grepl(pattern, "muffleMessage") [13:11:10.383] if (muffled) [13:11:10.383] invokeRestart("muffleMessage") [13:11:10.383] } [13:11:10.383] else if (inherits(cond, "warning")) { [13:11:10.383] muffled <- grepl(pattern, "muffleWarning") [13:11:10.383] if (muffled) [13:11:10.383] invokeRestart("muffleWarning") [13:11:10.383] } [13:11:10.383] else if (inherits(cond, "condition")) { [13:11:10.383] if (!is.null(pattern)) { [13:11:10.383] computeRestarts <- base::computeRestarts [13:11:10.383] grepl <- base::grepl [13:11:10.383] restarts <- computeRestarts(cond) [13:11:10.383] for (restart in restarts) { [13:11:10.383] name <- restart$name [13:11:10.383] if (is.null(name)) [13:11:10.383] next [13:11:10.383] if (!grepl(pattern, name)) [13:11:10.383] next [13:11:10.383] invokeRestart(restart) [13:11:10.383] muffled <- TRUE [13:11:10.383] break [13:11:10.383] } [13:11:10.383] } [13:11:10.383] } [13:11:10.383] invisible(muffled) [13:11:10.383] } [13:11:10.383] muffleCondition(cond, pattern = "^muffle") [13:11:10.383] } [13:11:10.383] } [13:11:10.383] else { [13:11:10.383] if (TRUE) { [13:11:10.383] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.383] { [13:11:10.383] inherits <- base::inherits [13:11:10.383] invokeRestart <- base::invokeRestart [13:11:10.383] is.null <- base::is.null [13:11:10.383] muffled <- FALSE [13:11:10.383] if (inherits(cond, "message")) { [13:11:10.383] muffled <- grepl(pattern, "muffleMessage") [13:11:10.383] if (muffled) [13:11:10.383] invokeRestart("muffleMessage") [13:11:10.383] } [13:11:10.383] else if (inherits(cond, "warning")) { [13:11:10.383] muffled <- grepl(pattern, "muffleWarning") [13:11:10.383] if (muffled) [13:11:10.383] invokeRestart("muffleWarning") [13:11:10.383] } [13:11:10.383] else if (inherits(cond, "condition")) { [13:11:10.383] if (!is.null(pattern)) { [13:11:10.383] computeRestarts <- base::computeRestarts [13:11:10.383] grepl <- base::grepl [13:11:10.383] restarts <- computeRestarts(cond) [13:11:10.383] for (restart in restarts) { [13:11:10.383] name <- restart$name [13:11:10.383] if (is.null(name)) [13:11:10.383] next [13:11:10.383] if (!grepl(pattern, name)) [13:11:10.383] next [13:11:10.383] invokeRestart(restart) [13:11:10.383] muffled <- TRUE [13:11:10.383] break [13:11:10.383] } [13:11:10.383] } [13:11:10.383] } [13:11:10.383] invisible(muffled) [13:11:10.383] } [13:11:10.383] muffleCondition(cond, pattern = "^muffle") [13:11:10.383] } [13:11:10.383] } [13:11:10.383] } [13:11:10.383] })) [13:11:10.383] }, error = function(ex) { [13:11:10.383] base::structure(base::list(value = NULL, visible = NULL, [13:11:10.383] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.383] ...future.rng), started = ...future.startTime, [13:11:10.383] finished = Sys.time(), session_uuid = NA_character_, [13:11:10.383] version = "1.8"), class = "FutureResult") [13:11:10.383] }, finally = { [13:11:10.383] if (!identical(...future.workdir, getwd())) [13:11:10.383] setwd(...future.workdir) [13:11:10.383] { [13:11:10.383] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:10.383] ...future.oldOptions$nwarnings <- NULL [13:11:10.383] } [13:11:10.383] base::options(...future.oldOptions) [13:11:10.383] if (.Platform$OS.type == "windows") { [13:11:10.383] old_names <- names(...future.oldEnvVars) [13:11:10.383] envs <- base::Sys.getenv() [13:11:10.383] names <- names(envs) [13:11:10.383] common <- intersect(names, old_names) [13:11:10.383] added <- setdiff(names, old_names) [13:11:10.383] removed <- setdiff(old_names, names) [13:11:10.383] changed <- common[...future.oldEnvVars[common] != [13:11:10.383] envs[common]] [13:11:10.383] NAMES <- toupper(changed) [13:11:10.383] args <- list() [13:11:10.383] for (kk in seq_along(NAMES)) { [13:11:10.383] name <- changed[[kk]] [13:11:10.383] NAME <- NAMES[[kk]] [13:11:10.383] if (name != NAME && is.element(NAME, old_names)) [13:11:10.383] next [13:11:10.383] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.383] } [13:11:10.383] NAMES <- toupper(added) [13:11:10.383] for (kk in seq_along(NAMES)) { [13:11:10.383] name <- added[[kk]] [13:11:10.383] NAME <- NAMES[[kk]] [13:11:10.383] if (name != NAME && is.element(NAME, old_names)) [13:11:10.383] next [13:11:10.383] args[[name]] <- "" [13:11:10.383] } [13:11:10.383] NAMES <- toupper(removed) [13:11:10.383] for (kk in seq_along(NAMES)) { [13:11:10.383] name <- removed[[kk]] [13:11:10.383] NAME <- NAMES[[kk]] [13:11:10.383] if (name != NAME && is.element(NAME, old_names)) [13:11:10.383] next [13:11:10.383] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.383] } [13:11:10.383] if (length(args) > 0) [13:11:10.383] base::do.call(base::Sys.setenv, args = args) [13:11:10.383] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:10.383] } [13:11:10.383] else { [13:11:10.383] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:10.383] } [13:11:10.383] { [13:11:10.383] if (base::length(...future.futureOptionsAdded) > [13:11:10.383] 0L) { [13:11:10.383] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:10.383] base::names(opts) <- ...future.futureOptionsAdded [13:11:10.383] base::options(opts) [13:11:10.383] } [13:11:10.383] { [13:11:10.383] NULL [13:11:10.383] options(future.plan = NULL) [13:11:10.383] if (is.na(NA_character_)) [13:11:10.383] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.383] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:10.383] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:10.383] .init = FALSE) [13:11:10.383] } [13:11:10.383] } [13:11:10.383] } [13:11:10.383] }) [13:11:10.383] if (TRUE) { [13:11:10.383] base::sink(type = "output", split = FALSE) [13:11:10.383] if (TRUE) { [13:11:10.383] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:10.383] } [13:11:10.383] else { [13:11:10.383] ...future.result["stdout"] <- base::list(NULL) [13:11:10.383] } [13:11:10.383] base::close(...future.stdout) [13:11:10.383] ...future.stdout <- NULL [13:11:10.383] } [13:11:10.383] ...future.result$conditions <- ...future.conditions [13:11:10.383] ...future.result$finished <- base::Sys.time() [13:11:10.383] ...future.result [13:11:10.383] } MiraiFuture: Label: '' Expression: { b <- 3 c <- 2 a * b * c } Lazy evaluation: FALSE Asynchronous evaluation: TRUE Local evaluation: TRUE Environment: R_GlobalEnv Capture standard output: TRUE Capture condition classes: 'condition' (excluding 'nothing') Globals: Packages: L'Ecuyer-CMRG RNG seed: (seed = FALSE) [13:11:10.387] resolved() for 'MiraiFuture' ... [13:11:10.388] - state: 'running' [13:11:10.388] - run: TRUE [13:11:10.388] - result: 'NULL' [13:11:10.388] - resolved: FALSE [13:11:10.388] resolved() for 'MiraiFuture' ... done Resolved: FALSE Value: Conditions captured: Early signaling: FALSE Owner process: 00305072-cb3e-607d-66ad-ae248e29708e Class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:11:10.389] signalConditions() ... [13:11:10.389] - include = 'immediateCondition' [13:11:10.389] - exclude = [13:11:10.389] - resignal = FALSE [13:11:10.390] - Number of conditions: 1 [13:11:10.390] signalConditions() ... done [13:11:10.390] Future state: 'finished' [13:11:10.390] signalConditions() ... [13:11:10.390] - include = 'condition' [13:11:10.390] - exclude = 'immediateCondition' [13:11:10.391] - resignal = TRUE [13:11:10.391] - Number of conditions: 1 [13:11:10.391] - Condition #1: 'simpleError', 'error', 'condition' [13:11:10.391] signalConditions() ... done [13:11:10.392] *** mirai_multisession(..., globals = FALSE) with globals and blocking[13:11:10.392] - Creating mirai_multisession future #1 ...[13:11:10.394] getGlobalsAndPackages() ... [13:11:10.394] Not searching for globals [13:11:10.394] - globals: [0] [13:11:10.394] getGlobalsAndPackages() ... DONE [13:11:10.395] getGlobalsAndPackages() ... [13:11:10.395] [13:11:10.395] - globals: [0] [13:11:10.395] getGlobalsAndPackages() ... DONE [13:11:10.395] Packages needed by the future expression (n = 0): [13:11:10.396] Packages needed by future strategies (n = 0): [13:11:10.396] { [13:11:10.396] { [13:11:10.396] { [13:11:10.396] ...future.startTime <- base::Sys.time() [13:11:10.396] { [13:11:10.396] { [13:11:10.396] { [13:11:10.396] base::local({ [13:11:10.396] has_future <- base::requireNamespace("future", [13:11:10.396] quietly = TRUE) [13:11:10.396] if (has_future) { [13:11:10.396] ns <- base::getNamespace("future") [13:11:10.396] version <- ns[[".package"]][["version"]] [13:11:10.396] if (is.null(version)) [13:11:10.396] version <- utils::packageVersion("future") [13:11:10.396] } [13:11:10.396] else { [13:11:10.396] version <- NULL [13:11:10.396] } [13:11:10.396] if (!has_future || version < "1.8.0") { [13:11:10.396] info <- base::c(r_version = base::gsub("R version ", [13:11:10.396] "", base::R.version$version.string), [13:11:10.396] platform = base::sprintf("%s (%s-bit)", [13:11:10.396] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:10.396] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:10.396] "release", "version")], collapse = " "), [13:11:10.396] hostname = base::Sys.info()[["nodename"]]) [13:11:10.396] info <- base::sprintf("%s: %s", base::names(info), [13:11:10.396] info) [13:11:10.396] info <- base::paste(info, collapse = "; ") [13:11:10.396] if (!has_future) { [13:11:10.396] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:10.396] info) [13:11:10.396] } [13:11:10.396] else { [13:11:10.396] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:10.396] info, version) [13:11:10.396] } [13:11:10.396] base::stop(msg) [13:11:10.396] } [13:11:10.396] }) [13:11:10.396] } [13:11:10.396] ...future.strategy.old <- future::plan("list") [13:11:10.396] options(future.plan = NULL) [13:11:10.396] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.396] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:10.396] } [13:11:10.396] ...future.workdir <- getwd() [13:11:10.396] } [13:11:10.396] ...future.oldOptions <- base::as.list(base::.Options) [13:11:10.396] ...future.oldEnvVars <- base::Sys.getenv() [13:11:10.396] } [13:11:10.396] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:10.396] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:10.396] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:10.396] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:10.396] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:10.396] future.stdout.windows.reencode = NULL, width = 80L) [13:11:10.396] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:10.396] base::names(...future.oldOptions)) [13:11:10.396] } [13:11:10.396] if (FALSE) { [13:11:10.396] } [13:11:10.396] else { [13:11:10.396] if (TRUE) { [13:11:10.396] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:10.396] open = "w") [13:11:10.396] } [13:11:10.396] else { [13:11:10.396] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:10.396] windows = "NUL", "/dev/null"), open = "w") [13:11:10.396] } [13:11:10.396] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:10.396] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:10.396] base::sink(type = "output", split = FALSE) [13:11:10.396] base::close(...future.stdout) [13:11:10.396] }, add = TRUE) [13:11:10.396] } [13:11:10.396] ...future.frame <- base::sys.nframe() [13:11:10.396] ...future.conditions <- base::list() [13:11:10.396] ...future.rng <- base::globalenv()$.Random.seed [13:11:10.396] if (FALSE) { [13:11:10.396] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:10.396] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:10.396] } [13:11:10.396] ...future.result <- base::tryCatch({ [13:11:10.396] base::withCallingHandlers({ [13:11:10.396] ...future.value <- base::withVisible(base::local({ [13:11:10.396] ii [13:11:10.396] })) [13:11:10.396] future::FutureResult(value = ...future.value$value, [13:11:10.396] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.396] ...future.rng), globalenv = if (FALSE) [13:11:10.396] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:10.396] ...future.globalenv.names)) [13:11:10.396] else NULL, started = ...future.startTime, version = "1.8") [13:11:10.396] }, condition = base::local({ [13:11:10.396] c <- base::c [13:11:10.396] inherits <- base::inherits [13:11:10.396] invokeRestart <- base::invokeRestart [13:11:10.396] length <- base::length [13:11:10.396] list <- base::list [13:11:10.396] seq.int <- base::seq.int [13:11:10.396] signalCondition <- base::signalCondition [13:11:10.396] sys.calls <- base::sys.calls [13:11:10.396] `[[` <- base::`[[` [13:11:10.396] `+` <- base::`+` [13:11:10.396] `<<-` <- base::`<<-` [13:11:10.396] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:10.396] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:10.396] 3L)] [13:11:10.396] } [13:11:10.396] function(cond) { [13:11:10.396] is_error <- inherits(cond, "error") [13:11:10.396] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:10.396] NULL) [13:11:10.396] if (is_error) { [13:11:10.396] sessionInformation <- function() { [13:11:10.396] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:10.396] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:10.396] search = base::search(), system = base::Sys.info()) [13:11:10.396] } [13:11:10.396] ...future.conditions[[length(...future.conditions) + [13:11:10.396] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:10.396] cond$call), session = sessionInformation(), [13:11:10.396] timestamp = base::Sys.time(), signaled = 0L) [13:11:10.396] signalCondition(cond) [13:11:10.396] } [13:11:10.396] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:10.396] signal <- FALSE && inherits(cond, character(0)) [13:11:10.396] ...future.conditions[[length(...future.conditions) + [13:11:10.396] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:10.396] if (FALSE && !signal) { [13:11:10.396] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.396] { [13:11:10.396] inherits <- base::inherits [13:11:10.396] invokeRestart <- base::invokeRestart [13:11:10.396] is.null <- base::is.null [13:11:10.396] muffled <- FALSE [13:11:10.396] if (inherits(cond, "message")) { [13:11:10.396] muffled <- grepl(pattern, "muffleMessage") [13:11:10.396] if (muffled) [13:11:10.396] invokeRestart("muffleMessage") [13:11:10.396] } [13:11:10.396] else if (inherits(cond, "warning")) { [13:11:10.396] muffled <- grepl(pattern, "muffleWarning") [13:11:10.396] if (muffled) [13:11:10.396] invokeRestart("muffleWarning") [13:11:10.396] } [13:11:10.396] else if (inherits(cond, "condition")) { [13:11:10.396] if (!is.null(pattern)) { [13:11:10.396] computeRestarts <- base::computeRestarts [13:11:10.396] grepl <- base::grepl [13:11:10.396] restarts <- computeRestarts(cond) [13:11:10.396] for (restart in restarts) { [13:11:10.396] name <- restart$name [13:11:10.396] if (is.null(name)) [13:11:10.396] next [13:11:10.396] if (!grepl(pattern, name)) [13:11:10.396] next [13:11:10.396] invokeRestart(restart) [13:11:10.396] muffled <- TRUE [13:11:10.396] break [13:11:10.396] } [13:11:10.396] } [13:11:10.396] } [13:11:10.396] invisible(muffled) [13:11:10.396] } [13:11:10.396] muffleCondition(cond, pattern = "^muffle") [13:11:10.396] } [13:11:10.396] } [13:11:10.396] else { [13:11:10.396] if (TRUE) { [13:11:10.396] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.396] { [13:11:10.396] inherits <- base::inherits [13:11:10.396] invokeRestart <- base::invokeRestart [13:11:10.396] is.null <- base::is.null [13:11:10.396] muffled <- FALSE [13:11:10.396] if (inherits(cond, "message")) { [13:11:10.396] muffled <- grepl(pattern, "muffleMessage") [13:11:10.396] if (muffled) [13:11:10.396] invokeRestart("muffleMessage") [13:11:10.396] } [13:11:10.396] else if (inherits(cond, "warning")) { [13:11:10.396] muffled <- grepl(pattern, "muffleWarning") [13:11:10.396] if (muffled) [13:11:10.396] invokeRestart("muffleWarning") [13:11:10.396] } [13:11:10.396] else if (inherits(cond, "condition")) { [13:11:10.396] if (!is.null(pattern)) { [13:11:10.396] computeRestarts <- base::computeRestarts [13:11:10.396] grepl <- base::grepl [13:11:10.396] restarts <- computeRestarts(cond) [13:11:10.396] for (restart in restarts) { [13:11:10.396] name <- restart$name [13:11:10.396] if (is.null(name)) [13:11:10.396] next [13:11:10.396] if (!grepl(pattern, name)) [13:11:10.396] next [13:11:10.396] invokeRestart(restart) [13:11:10.396] muffled <- TRUE [13:11:10.396] break [13:11:10.396] } [13:11:10.396] } [13:11:10.396] } [13:11:10.396] invisible(muffled) [13:11:10.396] } [13:11:10.396] muffleCondition(cond, pattern = "^muffle") [13:11:10.396] } [13:11:10.396] } [13:11:10.396] } [13:11:10.396] })) [13:11:10.396] }, error = function(ex) { [13:11:10.396] base::structure(base::list(value = NULL, visible = NULL, [13:11:10.396] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.396] ...future.rng), started = ...future.startTime, [13:11:10.396] finished = Sys.time(), session_uuid = NA_character_, [13:11:10.396] version = "1.8"), class = "FutureResult") [13:11:10.396] }, finally = { [13:11:10.396] if (!identical(...future.workdir, getwd())) [13:11:10.396] setwd(...future.workdir) [13:11:10.396] { [13:11:10.396] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:10.396] ...future.oldOptions$nwarnings <- NULL [13:11:10.396] } [13:11:10.396] base::options(...future.oldOptions) [13:11:10.396] if (.Platform$OS.type == "windows") { [13:11:10.396] old_names <- names(...future.oldEnvVars) [13:11:10.396] envs <- base::Sys.getenv() [13:11:10.396] names <- names(envs) [13:11:10.396] common <- intersect(names, old_names) [13:11:10.396] added <- setdiff(names, old_names) [13:11:10.396] removed <- setdiff(old_names, names) [13:11:10.396] changed <- common[...future.oldEnvVars[common] != [13:11:10.396] envs[common]] [13:11:10.396] NAMES <- toupper(changed) [13:11:10.396] args <- list() [13:11:10.396] for (kk in seq_along(NAMES)) { [13:11:10.396] name <- changed[[kk]] [13:11:10.396] NAME <- NAMES[[kk]] [13:11:10.396] if (name != NAME && is.element(NAME, old_names)) [13:11:10.396] next [13:11:10.396] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.396] } [13:11:10.396] NAMES <- toupper(added) [13:11:10.396] for (kk in seq_along(NAMES)) { [13:11:10.396] name <- added[[kk]] [13:11:10.396] NAME <- NAMES[[kk]] [13:11:10.396] if (name != NAME && is.element(NAME, old_names)) [13:11:10.396] next [13:11:10.396] args[[name]] <- "" [13:11:10.396] } [13:11:10.396] NAMES <- toupper(removed) [13:11:10.396] for (kk in seq_along(NAMES)) { [13:11:10.396] name <- removed[[kk]] [13:11:10.396] NAME <- NAMES[[kk]] [13:11:10.396] if (name != NAME && is.element(NAME, old_names)) [13:11:10.396] next [13:11:10.396] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.396] } [13:11:10.396] if (length(args) > 0) [13:11:10.396] base::do.call(base::Sys.setenv, args = args) [13:11:10.396] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:10.396] } [13:11:10.396] else { [13:11:10.396] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:10.396] } [13:11:10.396] { [13:11:10.396] if (base::length(...future.futureOptionsAdded) > [13:11:10.396] 0L) { [13:11:10.396] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:10.396] base::names(opts) <- ...future.futureOptionsAdded [13:11:10.396] base::options(opts) [13:11:10.396] } [13:11:10.396] { [13:11:10.396] NULL [13:11:10.396] options(future.plan = NULL) [13:11:10.396] if (is.na(NA_character_)) [13:11:10.396] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.396] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:10.396] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:10.396] .init = FALSE) [13:11:10.396] } [13:11:10.396] } [13:11:10.396] } [13:11:10.396] }) [13:11:10.396] if (TRUE) { [13:11:10.396] base::sink(type = "output", split = FALSE) [13:11:10.396] if (TRUE) { [13:11:10.396] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:10.396] } [13:11:10.396] else { [13:11:10.396] ...future.result["stdout"] <- base::list(NULL) [13:11:10.396] } [13:11:10.396] base::close(...future.stdout) [13:11:10.396] ...future.stdout <- NULL [13:11:10.396] } [13:11:10.396] ...future.result$conditions <- ...future.conditions [13:11:10.396] ...future.result$finished <- base::Sys.time() [13:11:10.396] ...future.result [13:11:10.396] } [13:11:10.401] - Creating mirai_multisession future #2 ...[13:11:10.403] getGlobalsAndPackages() ... [13:11:10.403] Not searching for globals [13:11:10.403] - globals: [0] [13:11:10.403] getGlobalsAndPackages() ... DONE [13:11:10.404] getGlobalsAndPackages() ... [13:11:10.404] [13:11:10.404] - globals: [0] [13:11:10.404] getGlobalsAndPackages() ... DONE [13:11:10.404] Packages needed by the future expression (n = 0): [13:11:10.405] Packages needed by future strategies (n = 0): [13:11:10.405] { [13:11:10.405] { [13:11:10.405] { [13:11:10.405] ...future.startTime <- base::Sys.time() [13:11:10.405] { [13:11:10.405] { [13:11:10.405] { [13:11:10.405] base::local({ [13:11:10.405] has_future <- base::requireNamespace("future", [13:11:10.405] quietly = TRUE) [13:11:10.405] if (has_future) { [13:11:10.405] ns <- base::getNamespace("future") [13:11:10.405] version <- ns[[".package"]][["version"]] [13:11:10.405] if (is.null(version)) [13:11:10.405] version <- utils::packageVersion("future") [13:11:10.405] } [13:11:10.405] else { [13:11:10.405] version <- NULL [13:11:10.405] } [13:11:10.405] if (!has_future || version < "1.8.0") { [13:11:10.405] info <- base::c(r_version = base::gsub("R version ", [13:11:10.405] "", base::R.version$version.string), [13:11:10.405] platform = base::sprintf("%s (%s-bit)", [13:11:10.405] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:10.405] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:10.405] "release", "version")], collapse = " "), [13:11:10.405] hostname = base::Sys.info()[["nodename"]]) [13:11:10.405] info <- base::sprintf("%s: %s", base::names(info), [13:11:10.405] info) [13:11:10.405] info <- base::paste(info, collapse = "; ") [13:11:10.405] if (!has_future) { [13:11:10.405] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:10.405] info) [13:11:10.405] } [13:11:10.405] else { [13:11:10.405] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:10.405] info, version) [13:11:10.405] } [13:11:10.405] base::stop(msg) [13:11:10.405] } [13:11:10.405] }) [13:11:10.405] } [13:11:10.405] ...future.strategy.old <- future::plan("list") [13:11:10.405] options(future.plan = NULL) [13:11:10.405] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.405] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:10.405] } [13:11:10.405] ...future.workdir <- getwd() [13:11:10.405] } [13:11:10.405] ...future.oldOptions <- base::as.list(base::.Options) [13:11:10.405] ...future.oldEnvVars <- base::Sys.getenv() [13:11:10.405] } [13:11:10.405] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:10.405] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:10.405] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:10.405] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:10.405] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:10.405] future.stdout.windows.reencode = NULL, width = 80L) [13:11:10.405] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:10.405] base::names(...future.oldOptions)) [13:11:10.405] } [13:11:10.405] if (FALSE) { [13:11:10.405] } [13:11:10.405] else { [13:11:10.405] if (TRUE) { [13:11:10.405] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:10.405] open = "w") [13:11:10.405] } [13:11:10.405] else { [13:11:10.405] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:10.405] windows = "NUL", "/dev/null"), open = "w") [13:11:10.405] } [13:11:10.405] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:10.405] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:10.405] base::sink(type = "output", split = FALSE) [13:11:10.405] base::close(...future.stdout) [13:11:10.405] }, add = TRUE) [13:11:10.405] } [13:11:10.405] ...future.frame <- base::sys.nframe() [13:11:10.405] ...future.conditions <- base::list() [13:11:10.405] ...future.rng <- base::globalenv()$.Random.seed [13:11:10.405] if (FALSE) { [13:11:10.405] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:10.405] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:10.405] } [13:11:10.405] ...future.result <- base::tryCatch({ [13:11:10.405] base::withCallingHandlers({ [13:11:10.405] ...future.value <- base::withVisible(base::local({ [13:11:10.405] ii [13:11:10.405] })) [13:11:10.405] future::FutureResult(value = ...future.value$value, [13:11:10.405] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.405] ...future.rng), globalenv = if (FALSE) [13:11:10.405] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:10.405] ...future.globalenv.names)) [13:11:10.405] else NULL, started = ...future.startTime, version = "1.8") [13:11:10.405] }, condition = base::local({ [13:11:10.405] c <- base::c [13:11:10.405] inherits <- base::inherits [13:11:10.405] invokeRestart <- base::invokeRestart [13:11:10.405] length <- base::length [13:11:10.405] list <- base::list [13:11:10.405] seq.int <- base::seq.int [13:11:10.405] signalCondition <- base::signalCondition [13:11:10.405] sys.calls <- base::sys.calls [13:11:10.405] `[[` <- base::`[[` [13:11:10.405] `+` <- base::`+` [13:11:10.405] `<<-` <- base::`<<-` [13:11:10.405] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:10.405] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:10.405] 3L)] [13:11:10.405] } [13:11:10.405] function(cond) { [13:11:10.405] is_error <- inherits(cond, "error") [13:11:10.405] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:10.405] NULL) [13:11:10.405] if (is_error) { [13:11:10.405] sessionInformation <- function() { [13:11:10.405] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:10.405] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:10.405] search = base::search(), system = base::Sys.info()) [13:11:10.405] } [13:11:10.405] ...future.conditions[[length(...future.conditions) + [13:11:10.405] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:10.405] cond$call), session = sessionInformation(), [13:11:10.405] timestamp = base::Sys.time(), signaled = 0L) [13:11:10.405] signalCondition(cond) [13:11:10.405] } [13:11:10.405] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:10.405] signal <- FALSE && inherits(cond, character(0)) [13:11:10.405] ...future.conditions[[length(...future.conditions) + [13:11:10.405] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:10.405] if (FALSE && !signal) { [13:11:10.405] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.405] { [13:11:10.405] inherits <- base::inherits [13:11:10.405] invokeRestart <- base::invokeRestart [13:11:10.405] is.null <- base::is.null [13:11:10.405] muffled <- FALSE [13:11:10.405] if (inherits(cond, "message")) { [13:11:10.405] muffled <- grepl(pattern, "muffleMessage") [13:11:10.405] if (muffled) [13:11:10.405] invokeRestart("muffleMessage") [13:11:10.405] } [13:11:10.405] else if (inherits(cond, "warning")) { [13:11:10.405] muffled <- grepl(pattern, "muffleWarning") [13:11:10.405] if (muffled) [13:11:10.405] invokeRestart("muffleWarning") [13:11:10.405] } [13:11:10.405] else if (inherits(cond, "condition")) { [13:11:10.405] if (!is.null(pattern)) { [13:11:10.405] computeRestarts <- base::computeRestarts [13:11:10.405] grepl <- base::grepl [13:11:10.405] restarts <- computeRestarts(cond) [13:11:10.405] for (restart in restarts) { [13:11:10.405] name <- restart$name [13:11:10.405] if (is.null(name)) [13:11:10.405] next [13:11:10.405] if (!grepl(pattern, name)) [13:11:10.405] next [13:11:10.405] invokeRestart(restart) [13:11:10.405] muffled <- TRUE [13:11:10.405] break [13:11:10.405] } [13:11:10.405] } [13:11:10.405] } [13:11:10.405] invisible(muffled) [13:11:10.405] } [13:11:10.405] muffleCondition(cond, pattern = "^muffle") [13:11:10.405] } [13:11:10.405] } [13:11:10.405] else { [13:11:10.405] if (TRUE) { [13:11:10.405] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.405] { [13:11:10.405] inherits <- base::inherits [13:11:10.405] invokeRestart <- base::invokeRestart [13:11:10.405] is.null <- base::is.null [13:11:10.405] muffled <- FALSE [13:11:10.405] if (inherits(cond, "message")) { [13:11:10.405] muffled <- grepl(pattern, "muffleMessage") [13:11:10.405] if (muffled) [13:11:10.405] invokeRestart("muffleMessage") [13:11:10.405] } [13:11:10.405] else if (inherits(cond, "warning")) { [13:11:10.405] muffled <- grepl(pattern, "muffleWarning") [13:11:10.405] if (muffled) [13:11:10.405] invokeRestart("muffleWarning") [13:11:10.405] } [13:11:10.405] else if (inherits(cond, "condition")) { [13:11:10.405] if (!is.null(pattern)) { [13:11:10.405] computeRestarts <- base::computeRestarts [13:11:10.405] grepl <- base::grepl [13:11:10.405] restarts <- computeRestarts(cond) [13:11:10.405] for (restart in restarts) { [13:11:10.405] name <- restart$name [13:11:10.405] if (is.null(name)) [13:11:10.405] next [13:11:10.405] if (!grepl(pattern, name)) [13:11:10.405] next [13:11:10.405] invokeRestart(restart) [13:11:10.405] muffled <- TRUE [13:11:10.405] break [13:11:10.405] } [13:11:10.405] } [13:11:10.405] } [13:11:10.405] invisible(muffled) [13:11:10.405] } [13:11:10.405] muffleCondition(cond, pattern = "^muffle") [13:11:10.405] } [13:11:10.405] } [13:11:10.405] } [13:11:10.405] })) [13:11:10.405] }, error = function(ex) { [13:11:10.405] base::structure(base::list(value = NULL, visible = NULL, [13:11:10.405] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.405] ...future.rng), started = ...future.startTime, [13:11:10.405] finished = Sys.time(), session_uuid = NA_character_, [13:11:10.405] version = "1.8"), class = "FutureResult") [13:11:10.405] }, finally = { [13:11:10.405] if (!identical(...future.workdir, getwd())) [13:11:10.405] setwd(...future.workdir) [13:11:10.405] { [13:11:10.405] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:10.405] ...future.oldOptions$nwarnings <- NULL [13:11:10.405] } [13:11:10.405] base::options(...future.oldOptions) [13:11:10.405] if (.Platform$OS.type == "windows") { [13:11:10.405] old_names <- names(...future.oldEnvVars) [13:11:10.405] envs <- base::Sys.getenv() [13:11:10.405] names <- names(envs) [13:11:10.405] common <- intersect(names, old_names) [13:11:10.405] added <- setdiff(names, old_names) [13:11:10.405] removed <- setdiff(old_names, names) [13:11:10.405] changed <- common[...future.oldEnvVars[common] != [13:11:10.405] envs[common]] [13:11:10.405] NAMES <- toupper(changed) [13:11:10.405] args <- list() [13:11:10.405] for (kk in seq_along(NAMES)) { [13:11:10.405] name <- changed[[kk]] [13:11:10.405] NAME <- NAMES[[kk]] [13:11:10.405] if (name != NAME && is.element(NAME, old_names)) [13:11:10.405] next [13:11:10.405] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.405] } [13:11:10.405] NAMES <- toupper(added) [13:11:10.405] for (kk in seq_along(NAMES)) { [13:11:10.405] name <- added[[kk]] [13:11:10.405] NAME <- NAMES[[kk]] [13:11:10.405] if (name != NAME && is.element(NAME, old_names)) [13:11:10.405] next [13:11:10.405] args[[name]] <- "" [13:11:10.405] } [13:11:10.405] NAMES <- toupper(removed) [13:11:10.405] for (kk in seq_along(NAMES)) { [13:11:10.405] name <- removed[[kk]] [13:11:10.405] NAME <- NAMES[[kk]] [13:11:10.405] if (name != NAME && is.element(NAME, old_names)) [13:11:10.405] next [13:11:10.405] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.405] } [13:11:10.405] if (length(args) > 0) [13:11:10.405] base::do.call(base::Sys.setenv, args = args) [13:11:10.405] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:10.405] } [13:11:10.405] else { [13:11:10.405] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:10.405] } [13:11:10.405] { [13:11:10.405] if (base::length(...future.futureOptionsAdded) > [13:11:10.405] 0L) { [13:11:10.405] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:10.405] base::names(opts) <- ...future.futureOptionsAdded [13:11:10.405] base::options(opts) [13:11:10.405] } [13:11:10.405] { [13:11:10.405] NULL [13:11:10.405] options(future.plan = NULL) [13:11:10.405] if (is.na(NA_character_)) [13:11:10.405] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.405] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:10.405] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:10.405] .init = FALSE) [13:11:10.405] } [13:11:10.405] } [13:11:10.405] } [13:11:10.405] }) [13:11:10.405] if (TRUE) { [13:11:10.405] base::sink(type = "output", split = FALSE) [13:11:10.405] if (TRUE) { [13:11:10.405] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:10.405] } [13:11:10.405] else { [13:11:10.405] ...future.result["stdout"] <- base::list(NULL) [13:11:10.405] } [13:11:10.405] base::close(...future.stdout) [13:11:10.405] ...future.stdout <- NULL [13:11:10.405] } [13:11:10.405] ...future.result$conditions <- ...future.conditions [13:11:10.405] ...future.result$finished <- base::Sys.time() [13:11:10.405] ...future.result [13:11:10.405] } [13:11:10.409] - Creating mirai_multisession future #3 ...[13:11:10.411] getGlobalsAndPackages() ... [13:11:10.411] Not searching for globals [13:11:10.412] - globals: [0] [13:11:10.412] getGlobalsAndPackages() ... DONE [13:11:10.412] getGlobalsAndPackages() ... [13:11:10.412] [13:11:10.412] - globals: [0] [13:11:10.413] getGlobalsAndPackages() ... DONE [13:11:10.413] Packages needed by the future expression (n = 0): [13:11:10.413] Packages needed by future strategies (n = 0): [13:11:10.414] { [13:11:10.414] { [13:11:10.414] { [13:11:10.414] ...future.startTime <- base::Sys.time() [13:11:10.414] { [13:11:10.414] { [13:11:10.414] { [13:11:10.414] base::local({ [13:11:10.414] has_future <- base::requireNamespace("future", [13:11:10.414] quietly = TRUE) [13:11:10.414] if (has_future) { [13:11:10.414] ns <- base::getNamespace("future") [13:11:10.414] version <- ns[[".package"]][["version"]] [13:11:10.414] if (is.null(version)) [13:11:10.414] version <- utils::packageVersion("future") [13:11:10.414] } [13:11:10.414] else { [13:11:10.414] version <- NULL [13:11:10.414] } [13:11:10.414] if (!has_future || version < "1.8.0") { [13:11:10.414] info <- base::c(r_version = base::gsub("R version ", [13:11:10.414] "", base::R.version$version.string), [13:11:10.414] platform = base::sprintf("%s (%s-bit)", [13:11:10.414] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:10.414] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:10.414] "release", "version")], collapse = " "), [13:11:10.414] hostname = base::Sys.info()[["nodename"]]) [13:11:10.414] info <- base::sprintf("%s: %s", base::names(info), [13:11:10.414] info) [13:11:10.414] info <- base::paste(info, collapse = "; ") [13:11:10.414] if (!has_future) { [13:11:10.414] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:10.414] info) [13:11:10.414] } [13:11:10.414] else { [13:11:10.414] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:10.414] info, version) [13:11:10.414] } [13:11:10.414] base::stop(msg) [13:11:10.414] } [13:11:10.414] }) [13:11:10.414] } [13:11:10.414] ...future.strategy.old <- future::plan("list") [13:11:10.414] options(future.plan = NULL) [13:11:10.414] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.414] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:10.414] } [13:11:10.414] ...future.workdir <- getwd() [13:11:10.414] } [13:11:10.414] ...future.oldOptions <- base::as.list(base::.Options) [13:11:10.414] ...future.oldEnvVars <- base::Sys.getenv() [13:11:10.414] } [13:11:10.414] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:10.414] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:10.414] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:10.414] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:10.414] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:10.414] future.stdout.windows.reencode = NULL, width = 80L) [13:11:10.414] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:10.414] base::names(...future.oldOptions)) [13:11:10.414] } [13:11:10.414] if (FALSE) { [13:11:10.414] } [13:11:10.414] else { [13:11:10.414] if (TRUE) { [13:11:10.414] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:10.414] open = "w") [13:11:10.414] } [13:11:10.414] else { [13:11:10.414] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:10.414] windows = "NUL", "/dev/null"), open = "w") [13:11:10.414] } [13:11:10.414] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:10.414] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:10.414] base::sink(type = "output", split = FALSE) [13:11:10.414] base::close(...future.stdout) [13:11:10.414] }, add = TRUE) [13:11:10.414] } [13:11:10.414] ...future.frame <- base::sys.nframe() [13:11:10.414] ...future.conditions <- base::list() [13:11:10.414] ...future.rng <- base::globalenv()$.Random.seed [13:11:10.414] if (FALSE) { [13:11:10.414] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:10.414] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:10.414] } [13:11:10.414] ...future.result <- base::tryCatch({ [13:11:10.414] base::withCallingHandlers({ [13:11:10.414] ...future.value <- base::withVisible(base::local({ [13:11:10.414] ii [13:11:10.414] })) [13:11:10.414] future::FutureResult(value = ...future.value$value, [13:11:10.414] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.414] ...future.rng), globalenv = if (FALSE) [13:11:10.414] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:10.414] ...future.globalenv.names)) [13:11:10.414] else NULL, started = ...future.startTime, version = "1.8") [13:11:10.414] }, condition = base::local({ [13:11:10.414] c <- base::c [13:11:10.414] inherits <- base::inherits [13:11:10.414] invokeRestart <- base::invokeRestart [13:11:10.414] length <- base::length [13:11:10.414] list <- base::list [13:11:10.414] seq.int <- base::seq.int [13:11:10.414] signalCondition <- base::signalCondition [13:11:10.414] sys.calls <- base::sys.calls [13:11:10.414] `[[` <- base::`[[` [13:11:10.414] `+` <- base::`+` [13:11:10.414] `<<-` <- base::`<<-` [13:11:10.414] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:10.414] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:10.414] 3L)] [13:11:10.414] } [13:11:10.414] function(cond) { [13:11:10.414] is_error <- inherits(cond, "error") [13:11:10.414] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:10.414] NULL) [13:11:10.414] if (is_error) { [13:11:10.414] sessionInformation <- function() { [13:11:10.414] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:10.414] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:10.414] search = base::search(), system = base::Sys.info()) [13:11:10.414] } [13:11:10.414] ...future.conditions[[length(...future.conditions) + [13:11:10.414] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:10.414] cond$call), session = sessionInformation(), [13:11:10.414] timestamp = base::Sys.time(), signaled = 0L) [13:11:10.414] signalCondition(cond) [13:11:10.414] } [13:11:10.414] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:10.414] signal <- FALSE && inherits(cond, character(0)) [13:11:10.414] ...future.conditions[[length(...future.conditions) + [13:11:10.414] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:10.414] if (FALSE && !signal) { [13:11:10.414] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.414] { [13:11:10.414] inherits <- base::inherits [13:11:10.414] invokeRestart <- base::invokeRestart [13:11:10.414] is.null <- base::is.null [13:11:10.414] muffled <- FALSE [13:11:10.414] if (inherits(cond, "message")) { [13:11:10.414] muffled <- grepl(pattern, "muffleMessage") [13:11:10.414] if (muffled) [13:11:10.414] invokeRestart("muffleMessage") [13:11:10.414] } [13:11:10.414] else if (inherits(cond, "warning")) { [13:11:10.414] muffled <- grepl(pattern, "muffleWarning") [13:11:10.414] if (muffled) [13:11:10.414] invokeRestart("muffleWarning") [13:11:10.414] } [13:11:10.414] else if (inherits(cond, "condition")) { [13:11:10.414] if (!is.null(pattern)) { [13:11:10.414] computeRestarts <- base::computeRestarts [13:11:10.414] grepl <- base::grepl [13:11:10.414] restarts <- computeRestarts(cond) [13:11:10.414] for (restart in restarts) { [13:11:10.414] name <- restart$name [13:11:10.414] if (is.null(name)) [13:11:10.414] next [13:11:10.414] if (!grepl(pattern, name)) [13:11:10.414] next [13:11:10.414] invokeRestart(restart) [13:11:10.414] muffled <- TRUE [13:11:10.414] break [13:11:10.414] } [13:11:10.414] } [13:11:10.414] } [13:11:10.414] invisible(muffled) [13:11:10.414] } [13:11:10.414] muffleCondition(cond, pattern = "^muffle") [13:11:10.414] } [13:11:10.414] } [13:11:10.414] else { [13:11:10.414] if (TRUE) { [13:11:10.414] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.414] { [13:11:10.414] inherits <- base::inherits [13:11:10.414] invokeRestart <- base::invokeRestart [13:11:10.414] is.null <- base::is.null [13:11:10.414] muffled <- FALSE [13:11:10.414] if (inherits(cond, "message")) { [13:11:10.414] muffled <- grepl(pattern, "muffleMessage") [13:11:10.414] if (muffled) [13:11:10.414] invokeRestart("muffleMessage") [13:11:10.414] } [13:11:10.414] else if (inherits(cond, "warning")) { [13:11:10.414] muffled <- grepl(pattern, "muffleWarning") [13:11:10.414] if (muffled) [13:11:10.414] invokeRestart("muffleWarning") [13:11:10.414] } [13:11:10.414] else if (inherits(cond, "condition")) { [13:11:10.414] if (!is.null(pattern)) { [13:11:10.414] computeRestarts <- base::computeRestarts [13:11:10.414] grepl <- base::grepl [13:11:10.414] restarts <- computeRestarts(cond) [13:11:10.414] for (restart in restarts) { [13:11:10.414] name <- restart$name [13:11:10.414] if (is.null(name)) [13:11:10.414] next [13:11:10.414] if (!grepl(pattern, name)) [13:11:10.414] next [13:11:10.414] invokeRestart(restart) [13:11:10.414] muffled <- TRUE [13:11:10.414] break [13:11:10.414] } [13:11:10.414] } [13:11:10.414] } [13:11:10.414] invisible(muffled) [13:11:10.414] } [13:11:10.414] muffleCondition(cond, pattern = "^muffle") [13:11:10.414] } [13:11:10.414] } [13:11:10.414] } [13:11:10.414] })) [13:11:10.414] }, error = function(ex) { [13:11:10.414] base::structure(base::list(value = NULL, visible = NULL, [13:11:10.414] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.414] ...future.rng), started = ...future.startTime, [13:11:10.414] finished = Sys.time(), session_uuid = NA_character_, [13:11:10.414] version = "1.8"), class = "FutureResult") [13:11:10.414] }, finally = { [13:11:10.414] if (!identical(...future.workdir, getwd())) [13:11:10.414] setwd(...future.workdir) [13:11:10.414] { [13:11:10.414] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:10.414] ...future.oldOptions$nwarnings <- NULL [13:11:10.414] } [13:11:10.414] base::options(...future.oldOptions) [13:11:10.414] if (.Platform$OS.type == "windows") { [13:11:10.414] old_names <- names(...future.oldEnvVars) [13:11:10.414] envs <- base::Sys.getenv() [13:11:10.414] names <- names(envs) [13:11:10.414] common <- intersect(names, old_names) [13:11:10.414] added <- setdiff(names, old_names) [13:11:10.414] removed <- setdiff(old_names, names) [13:11:10.414] changed <- common[...future.oldEnvVars[common] != [13:11:10.414] envs[common]] [13:11:10.414] NAMES <- toupper(changed) [13:11:10.414] args <- list() [13:11:10.414] for (kk in seq_along(NAMES)) { [13:11:10.414] name <- changed[[kk]] [13:11:10.414] NAME <- NAMES[[kk]] [13:11:10.414] if (name != NAME && is.element(NAME, old_names)) [13:11:10.414] next [13:11:10.414] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.414] } [13:11:10.414] NAMES <- toupper(added) [13:11:10.414] for (kk in seq_along(NAMES)) { [13:11:10.414] name <- added[[kk]] [13:11:10.414] NAME <- NAMES[[kk]] [13:11:10.414] if (name != NAME && is.element(NAME, old_names)) [13:11:10.414] next [13:11:10.414] args[[name]] <- "" [13:11:10.414] } [13:11:10.414] NAMES <- toupper(removed) [13:11:10.414] for (kk in seq_along(NAMES)) { [13:11:10.414] name <- removed[[kk]] [13:11:10.414] NAME <- NAMES[[kk]] [13:11:10.414] if (name != NAME && is.element(NAME, old_names)) [13:11:10.414] next [13:11:10.414] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.414] } [13:11:10.414] if (length(args) > 0) [13:11:10.414] base::do.call(base::Sys.setenv, args = args) [13:11:10.414] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:10.414] } [13:11:10.414] else { [13:11:10.414] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:10.414] } [13:11:10.414] { [13:11:10.414] if (base::length(...future.futureOptionsAdded) > [13:11:10.414] 0L) { [13:11:10.414] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:10.414] base::names(opts) <- ...future.futureOptionsAdded [13:11:10.414] base::options(opts) [13:11:10.414] } [13:11:10.414] { [13:11:10.414] NULL [13:11:10.414] options(future.plan = NULL) [13:11:10.414] if (is.na(NA_character_)) [13:11:10.414] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.414] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:10.414] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:10.414] .init = FALSE) [13:11:10.414] } [13:11:10.414] } [13:11:10.414] } [13:11:10.414] }) [13:11:10.414] if (TRUE) { [13:11:10.414] base::sink(type = "output", split = FALSE) [13:11:10.414] if (TRUE) { [13:11:10.414] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:10.414] } [13:11:10.414] else { [13:11:10.414] ...future.result["stdout"] <- base::list(NULL) [13:11:10.414] } [13:11:10.414] base::close(...future.stdout) [13:11:10.414] ...future.stdout <- NULL [13:11:10.414] } [13:11:10.414] ...future.result$conditions <- ...future.conditions [13:11:10.414] ...future.result$finished <- base::Sys.time() [13:11:10.414] ...future.result [13:11:10.414] } [13:11:10.418] - Resolving 3 mirai_multisession futures[13:11:10.418] signalConditions() ... [13:11:10.418] - include = 'immediateCondition' [13:11:10.419] - exclude = [13:11:10.419] - resignal = FALSE [13:11:10.419] - Number of conditions: 1 [13:11:10.419] signalConditions() ... done [13:11:10.419] Future state: 'finished' [13:11:10.420] signalConditions() ... [13:11:10.420] - include = 'condition' [13:11:10.420] - exclude = 'immediateCondition' [13:11:10.420] - resignal = TRUE [13:11:10.420] - Number of conditions: 1 [13:11:10.420] - Condition #1: 'simpleError', 'error', 'condition' [13:11:10.421] signalConditions() ... done [13:11:10.421] signalConditions() ... [13:11:10.421] - include = 'immediateCondition' [13:11:10.421] - exclude = [13:11:10.421] - resignal = FALSE [13:11:10.422] - Number of conditions: 1 [13:11:10.422] signalConditions() ... done [13:11:10.422] Future state: 'finished' [13:11:10.422] signalConditions() ... [13:11:10.422] - include = 'condition' [13:11:10.423] - exclude = 'immediateCondition' [13:11:10.423] - resignal = TRUE [13:11:10.423] - Number of conditions: 1 [13:11:10.423] - Condition #1: 'simpleError', 'error', 'condition' [13:11:10.423] signalConditions() ... done [13:11:10.424] signalConditions() ... [13:11:10.426] - include = 'immediateCondition' [13:11:10.426] - exclude = [13:11:10.426] - resignal = FALSE [13:11:10.426] - Number of conditions: 1 [13:11:10.426] signalConditions() ... done [13:11:10.426] Future state: 'finished' [13:11:10.427] signalConditions() ... [13:11:10.427] - include = 'condition' [13:11:10.427] - exclude = 'immediateCondition' [13:11:10.427] - resignal = TRUE [13:11:10.427] - Number of conditions: 1 [13:11:10.427] - Condition #1: 'simpleError', 'error', 'condition' [13:11:10.428] signalConditions() ... done [13:11:10.428] *** mirai_multisession(..., globals = FALSE) and errors[13:11:10.430] getGlobalsAndPackages() ... [13:11:10.430] Not searching for globals [13:11:10.430] - globals: [0] [13:11:10.430] getGlobalsAndPackages() ... DONE [13:11:10.431] getGlobalsAndPackages() ... [13:11:10.431] [13:11:10.431] - globals: [0] [13:11:10.431] getGlobalsAndPackages() ... DONE [13:11:10.431] Packages needed by the future expression (n = 0): [13:11:10.432] Packages needed by future strategies (n = 0): [13:11:10.432] { [13:11:10.432] { [13:11:10.432] { [13:11:10.432] ...future.startTime <- base::Sys.time() [13:11:10.432] { [13:11:10.432] { [13:11:10.432] { [13:11:10.432] base::local({ [13:11:10.432] has_future <- base::requireNamespace("future", [13:11:10.432] quietly = TRUE) [13:11:10.432] if (has_future) { [13:11:10.432] ns <- base::getNamespace("future") [13:11:10.432] version <- ns[[".package"]][["version"]] [13:11:10.432] if (is.null(version)) [13:11:10.432] version <- utils::packageVersion("future") [13:11:10.432] } [13:11:10.432] else { [13:11:10.432] version <- NULL [13:11:10.432] } [13:11:10.432] if (!has_future || version < "1.8.0") { [13:11:10.432] info <- base::c(r_version = base::gsub("R version ", [13:11:10.432] "", base::R.version$version.string), [13:11:10.432] platform = base::sprintf("%s (%s-bit)", [13:11:10.432] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:10.432] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:10.432] "release", "version")], collapse = " "), [13:11:10.432] hostname = base::Sys.info()[["nodename"]]) [13:11:10.432] info <- base::sprintf("%s: %s", base::names(info), [13:11:10.432] info) [13:11:10.432] info <- base::paste(info, collapse = "; ") [13:11:10.432] if (!has_future) { [13:11:10.432] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:10.432] info) [13:11:10.432] } [13:11:10.432] else { [13:11:10.432] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:10.432] info, version) [13:11:10.432] } [13:11:10.432] base::stop(msg) [13:11:10.432] } [13:11:10.432] }) [13:11:10.432] } [13:11:10.432] ...future.strategy.old <- future::plan("list") [13:11:10.432] options(future.plan = NULL) [13:11:10.432] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.432] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:10.432] } [13:11:10.432] ...future.workdir <- getwd() [13:11:10.432] } [13:11:10.432] ...future.oldOptions <- base::as.list(base::.Options) [13:11:10.432] ...future.oldEnvVars <- base::Sys.getenv() [13:11:10.432] } [13:11:10.432] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:10.432] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:10.432] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:10.432] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:10.432] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:10.432] future.stdout.windows.reencode = NULL, width = 80L) [13:11:10.432] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:10.432] base::names(...future.oldOptions)) [13:11:10.432] } [13:11:10.432] if (FALSE) { [13:11:10.432] } [13:11:10.432] else { [13:11:10.432] if (TRUE) { [13:11:10.432] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:10.432] open = "w") [13:11:10.432] } [13:11:10.432] else { [13:11:10.432] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:10.432] windows = "NUL", "/dev/null"), open = "w") [13:11:10.432] } [13:11:10.432] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:10.432] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:10.432] base::sink(type = "output", split = FALSE) [13:11:10.432] base::close(...future.stdout) [13:11:10.432] }, add = TRUE) [13:11:10.432] } [13:11:10.432] ...future.frame <- base::sys.nframe() [13:11:10.432] ...future.conditions <- base::list() [13:11:10.432] ...future.rng <- base::globalenv()$.Random.seed [13:11:10.432] if (FALSE) { [13:11:10.432] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:10.432] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:10.432] } [13:11:10.432] ...future.result <- base::tryCatch({ [13:11:10.432] base::withCallingHandlers({ [13:11:10.432] ...future.value <- base::withVisible(base::local({ [13:11:10.432] stop("Whoops!") [13:11:10.432] 1 [13:11:10.432] })) [13:11:10.432] future::FutureResult(value = ...future.value$value, [13:11:10.432] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.432] ...future.rng), globalenv = if (FALSE) [13:11:10.432] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:10.432] ...future.globalenv.names)) [13:11:10.432] else NULL, started = ...future.startTime, version = "1.8") [13:11:10.432] }, condition = base::local({ [13:11:10.432] c <- base::c [13:11:10.432] inherits <- base::inherits [13:11:10.432] invokeRestart <- base::invokeRestart [13:11:10.432] length <- base::length [13:11:10.432] list <- base::list [13:11:10.432] seq.int <- base::seq.int [13:11:10.432] signalCondition <- base::signalCondition [13:11:10.432] sys.calls <- base::sys.calls [13:11:10.432] `[[` <- base::`[[` [13:11:10.432] `+` <- base::`+` [13:11:10.432] `<<-` <- base::`<<-` [13:11:10.432] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:10.432] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:10.432] 3L)] [13:11:10.432] } [13:11:10.432] function(cond) { [13:11:10.432] is_error <- inherits(cond, "error") [13:11:10.432] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:10.432] NULL) [13:11:10.432] if (is_error) { [13:11:10.432] sessionInformation <- function() { [13:11:10.432] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:10.432] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:10.432] search = base::search(), system = base::Sys.info()) [13:11:10.432] } [13:11:10.432] ...future.conditions[[length(...future.conditions) + [13:11:10.432] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:10.432] cond$call), session = sessionInformation(), [13:11:10.432] timestamp = base::Sys.time(), signaled = 0L) [13:11:10.432] signalCondition(cond) [13:11:10.432] } [13:11:10.432] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:10.432] signal <- FALSE && inherits(cond, character(0)) [13:11:10.432] ...future.conditions[[length(...future.conditions) + [13:11:10.432] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:10.432] if (FALSE && !signal) { [13:11:10.432] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.432] { [13:11:10.432] inherits <- base::inherits [13:11:10.432] invokeRestart <- base::invokeRestart [13:11:10.432] is.null <- base::is.null [13:11:10.432] muffled <- FALSE [13:11:10.432] if (inherits(cond, "message")) { [13:11:10.432] muffled <- grepl(pattern, "muffleMessage") [13:11:10.432] if (muffled) [13:11:10.432] invokeRestart("muffleMessage") [13:11:10.432] } [13:11:10.432] else if (inherits(cond, "warning")) { [13:11:10.432] muffled <- grepl(pattern, "muffleWarning") [13:11:10.432] if (muffled) [13:11:10.432] invokeRestart("muffleWarning") [13:11:10.432] } [13:11:10.432] else if (inherits(cond, "condition")) { [13:11:10.432] if (!is.null(pattern)) { [13:11:10.432] computeRestarts <- base::computeRestarts [13:11:10.432] grepl <- base::grepl [13:11:10.432] restarts <- computeRestarts(cond) [13:11:10.432] for (restart in restarts) { [13:11:10.432] name <- restart$name [13:11:10.432] if (is.null(name)) [13:11:10.432] next [13:11:10.432] if (!grepl(pattern, name)) [13:11:10.432] next [13:11:10.432] invokeRestart(restart) [13:11:10.432] muffled <- TRUE [13:11:10.432] break [13:11:10.432] } [13:11:10.432] } [13:11:10.432] } [13:11:10.432] invisible(muffled) [13:11:10.432] } [13:11:10.432] muffleCondition(cond, pattern = "^muffle") [13:11:10.432] } [13:11:10.432] } [13:11:10.432] else { [13:11:10.432] if (TRUE) { [13:11:10.432] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.432] { [13:11:10.432] inherits <- base::inherits [13:11:10.432] invokeRestart <- base::invokeRestart [13:11:10.432] is.null <- base::is.null [13:11:10.432] muffled <- FALSE [13:11:10.432] if (inherits(cond, "message")) { [13:11:10.432] muffled <- grepl(pattern, "muffleMessage") [13:11:10.432] if (muffled) [13:11:10.432] invokeRestart("muffleMessage") [13:11:10.432] } [13:11:10.432] else if (inherits(cond, "warning")) { [13:11:10.432] muffled <- grepl(pattern, "muffleWarning") [13:11:10.432] if (muffled) [13:11:10.432] invokeRestart("muffleWarning") [13:11:10.432] } [13:11:10.432] else if (inherits(cond, "condition")) { [13:11:10.432] if (!is.null(pattern)) { [13:11:10.432] computeRestarts <- base::computeRestarts [13:11:10.432] grepl <- base::grepl [13:11:10.432] restarts <- computeRestarts(cond) [13:11:10.432] for (restart in restarts) { [13:11:10.432] name <- restart$name [13:11:10.432] if (is.null(name)) [13:11:10.432] next [13:11:10.432] if (!grepl(pattern, name)) [13:11:10.432] next [13:11:10.432] invokeRestart(restart) [13:11:10.432] muffled <- TRUE [13:11:10.432] break [13:11:10.432] } [13:11:10.432] } [13:11:10.432] } [13:11:10.432] invisible(muffled) [13:11:10.432] } [13:11:10.432] muffleCondition(cond, pattern = "^muffle") [13:11:10.432] } [13:11:10.432] } [13:11:10.432] } [13:11:10.432] })) [13:11:10.432] }, error = function(ex) { [13:11:10.432] base::structure(base::list(value = NULL, visible = NULL, [13:11:10.432] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.432] ...future.rng), started = ...future.startTime, [13:11:10.432] finished = Sys.time(), session_uuid = NA_character_, [13:11:10.432] version = "1.8"), class = "FutureResult") [13:11:10.432] }, finally = { [13:11:10.432] if (!identical(...future.workdir, getwd())) [13:11:10.432] setwd(...future.workdir) [13:11:10.432] { [13:11:10.432] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:10.432] ...future.oldOptions$nwarnings <- NULL [13:11:10.432] } [13:11:10.432] base::options(...future.oldOptions) [13:11:10.432] if (.Platform$OS.type == "windows") { [13:11:10.432] old_names <- names(...future.oldEnvVars) [13:11:10.432] envs <- base::Sys.getenv() [13:11:10.432] names <- names(envs) [13:11:10.432] common <- intersect(names, old_names) [13:11:10.432] added <- setdiff(names, old_names) [13:11:10.432] removed <- setdiff(old_names, names) [13:11:10.432] changed <- common[...future.oldEnvVars[common] != [13:11:10.432] envs[common]] [13:11:10.432] NAMES <- toupper(changed) [13:11:10.432] args <- list() [13:11:10.432] for (kk in seq_along(NAMES)) { [13:11:10.432] name <- changed[[kk]] [13:11:10.432] NAME <- NAMES[[kk]] [13:11:10.432] if (name != NAME && is.element(NAME, old_names)) [13:11:10.432] next [13:11:10.432] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.432] } [13:11:10.432] NAMES <- toupper(added) [13:11:10.432] for (kk in seq_along(NAMES)) { [13:11:10.432] name <- added[[kk]] [13:11:10.432] NAME <- NAMES[[kk]] [13:11:10.432] if (name != NAME && is.element(NAME, old_names)) [13:11:10.432] next [13:11:10.432] args[[name]] <- "" [13:11:10.432] } [13:11:10.432] NAMES <- toupper(removed) [13:11:10.432] for (kk in seq_along(NAMES)) { [13:11:10.432] name <- removed[[kk]] [13:11:10.432] NAME <- NAMES[[kk]] [13:11:10.432] if (name != NAME && is.element(NAME, old_names)) [13:11:10.432] next [13:11:10.432] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.432] } [13:11:10.432] if (length(args) > 0) [13:11:10.432] base::do.call(base::Sys.setenv, args = args) [13:11:10.432] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:10.432] } [13:11:10.432] else { [13:11:10.432] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:10.432] } [13:11:10.432] { [13:11:10.432] if (base::length(...future.futureOptionsAdded) > [13:11:10.432] 0L) { [13:11:10.432] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:10.432] base::names(opts) <- ...future.futureOptionsAdded [13:11:10.432] base::options(opts) [13:11:10.432] } [13:11:10.432] { [13:11:10.432] NULL [13:11:10.432] options(future.plan = NULL) [13:11:10.432] if (is.na(NA_character_)) [13:11:10.432] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.432] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:10.432] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:10.432] .init = FALSE) [13:11:10.432] } [13:11:10.432] } [13:11:10.432] } [13:11:10.432] }) [13:11:10.432] if (TRUE) { [13:11:10.432] base::sink(type = "output", split = FALSE) [13:11:10.432] if (TRUE) { [13:11:10.432] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:10.432] } [13:11:10.432] else { [13:11:10.432] ...future.result["stdout"] <- base::list(NULL) [13:11:10.432] } [13:11:10.432] base::close(...future.stdout) [13:11:10.432] ...future.stdout <- NULL [13:11:10.432] } [13:11:10.432] ...future.result$conditions <- ...future.conditions [13:11:10.432] ...future.result$finished <- base::Sys.time() [13:11:10.432] ...future.result [13:11:10.432] } MiraiFuture: Label: '' Expression: { stop("Whoops!") 1 } Lazy evaluation: FALSE Asynchronous evaluation: TRUE Local evaluation: TRUE Environment: R_GlobalEnv Capture standard output: TRUE Capture condition classes: 'condition' (excluding 'nothing') Globals: Packages: L'Ecuyer-CMRG RNG seed: (seed = FALSE) [13:11:10.436] resolved() for 'MiraiFuture' ... [13:11:10.437] - state: 'running' [13:11:10.437] - run: TRUE [13:11:10.437] - result: 'NULL' [13:11:10.437] - resolved: FALSE [13:11:10.437] resolved() for 'MiraiFuture' ... done Resolved: FALSE Value: Conditions captured: Early signaling: FALSE Owner process: 00305072-cb3e-607d-66ad-ae248e29708e Class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:11:10.438] signalConditions() ... [13:11:10.438] - include = 'immediateCondition' [13:11:10.438] - exclude = [13:11:10.439] - resignal = FALSE [13:11:10.439] - Number of conditions: 1 [13:11:10.439] signalConditions() ... done [13:11:10.439] signalConditions() ... [13:11:10.439] - include = 'immediateCondition' [13:11:10.440] - exclude = [13:11:10.440] - resignal = FALSE [13:11:10.440] - Number of conditions: 1 [13:11:10.440] signalConditions() ... done [13:11:10.440] Future state: 'finished' [13:11:10.441] signalConditions() ... [13:11:10.441] - include = 'condition' [13:11:10.441] - exclude = 'immediateCondition' [13:11:10.441] - resignal = TRUE [13:11:10.441] - Number of conditions: 1 [13:11:10.441] - Condition #1: 'simpleError', 'error', 'condition' [13:11:10.442] signalConditions() ... done [13:11:10.442] signalConditions() ... [13:11:10.442] - include = 'immediateCondition' [13:11:10.442] - exclude = [13:11:10.442] - resignal = FALSE [13:11:10.443] - Number of conditions: 1 [13:11:10.443] signalConditions() ... done [13:11:10.443] Future state: 'finished' [13:11:10.443] signalConditions() ... [13:11:10.443] - include = 'condition' [13:11:10.443] - exclude = 'immediateCondition' [13:11:10.444] - resignal = TRUE [13:11:10.444] - Number of conditions: 1 [13:11:10.444] - Condition #1: 'simpleError', 'error', 'condition' [13:11:10.444] signalConditions() ... done [13:11:10.444] *** mirai_multisession(..., globals = TRUE) without globals[13:11:10.446] getGlobalsAndPackages() ... [13:11:10.447] Searching for globals... [13:11:10.450] - globals found: [1] '{' [13:11:10.450] Searching for globals ... DONE [13:11:10.450] Resolving globals: FALSE [13:11:10.451] [13:11:10.451] [13:11:10.451] getGlobalsAndPackages() ... DONE [13:11:10.451] getGlobalsAndPackages() ... [13:11:10.452] [13:11:10.452] - globals: [0] [13:11:10.452] getGlobalsAndPackages() ... DONE [13:11:10.452] Packages needed by the future expression (n = 0): [13:11:10.452] Packages needed by future strategies (n = 0): [13:11:10.453] { [13:11:10.453] { [13:11:10.453] { [13:11:10.453] ...future.startTime <- base::Sys.time() [13:11:10.453] { [13:11:10.453] { [13:11:10.453] { [13:11:10.453] base::local({ [13:11:10.453] has_future <- base::requireNamespace("future", [13:11:10.453] quietly = TRUE) [13:11:10.453] if (has_future) { [13:11:10.453] ns <- base::getNamespace("future") [13:11:10.453] version <- ns[[".package"]][["version"]] [13:11:10.453] if (is.null(version)) [13:11:10.453] version <- utils::packageVersion("future") [13:11:10.453] } [13:11:10.453] else { [13:11:10.453] version <- NULL [13:11:10.453] } [13:11:10.453] if (!has_future || version < "1.8.0") { [13:11:10.453] info <- base::c(r_version = base::gsub("R version ", [13:11:10.453] "", base::R.version$version.string), [13:11:10.453] platform = base::sprintf("%s (%s-bit)", [13:11:10.453] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:10.453] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:10.453] "release", "version")], collapse = " "), [13:11:10.453] hostname = base::Sys.info()[["nodename"]]) [13:11:10.453] info <- base::sprintf("%s: %s", base::names(info), [13:11:10.453] info) [13:11:10.453] info <- base::paste(info, collapse = "; ") [13:11:10.453] if (!has_future) { [13:11:10.453] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:10.453] info) [13:11:10.453] } [13:11:10.453] else { [13:11:10.453] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:10.453] info, version) [13:11:10.453] } [13:11:10.453] base::stop(msg) [13:11:10.453] } [13:11:10.453] }) [13:11:10.453] } [13:11:10.453] ...future.strategy.old <- future::plan("list") [13:11:10.453] options(future.plan = NULL) [13:11:10.453] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.453] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:10.453] } [13:11:10.453] ...future.workdir <- getwd() [13:11:10.453] } [13:11:10.453] ...future.oldOptions <- base::as.list(base::.Options) [13:11:10.453] ...future.oldEnvVars <- base::Sys.getenv() [13:11:10.453] } [13:11:10.453] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:10.453] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:10.453] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:10.453] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:10.453] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:10.453] future.stdout.windows.reencode = NULL, width = 80L) [13:11:10.453] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:10.453] base::names(...future.oldOptions)) [13:11:10.453] } [13:11:10.453] if (FALSE) { [13:11:10.453] } [13:11:10.453] else { [13:11:10.453] if (TRUE) { [13:11:10.453] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:10.453] open = "w") [13:11:10.453] } [13:11:10.453] else { [13:11:10.453] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:10.453] windows = "NUL", "/dev/null"), open = "w") [13:11:10.453] } [13:11:10.453] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:10.453] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:10.453] base::sink(type = "output", split = FALSE) [13:11:10.453] base::close(...future.stdout) [13:11:10.453] }, add = TRUE) [13:11:10.453] } [13:11:10.453] ...future.frame <- base::sys.nframe() [13:11:10.453] ...future.conditions <- base::list() [13:11:10.453] ...future.rng <- base::globalenv()$.Random.seed [13:11:10.453] if (FALSE) { [13:11:10.453] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:10.453] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:10.453] } [13:11:10.453] ...future.result <- base::tryCatch({ [13:11:10.453] base::withCallingHandlers({ [13:11:10.453] ...future.value <- base::withVisible(base::local({ [13:11:10.453] 42L [13:11:10.453] })) [13:11:10.453] future::FutureResult(value = ...future.value$value, [13:11:10.453] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.453] ...future.rng), globalenv = if (FALSE) [13:11:10.453] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:10.453] ...future.globalenv.names)) [13:11:10.453] else NULL, started = ...future.startTime, version = "1.8") [13:11:10.453] }, condition = base::local({ [13:11:10.453] c <- base::c [13:11:10.453] inherits <- base::inherits [13:11:10.453] invokeRestart <- base::invokeRestart [13:11:10.453] length <- base::length [13:11:10.453] list <- base::list [13:11:10.453] seq.int <- base::seq.int [13:11:10.453] signalCondition <- base::signalCondition [13:11:10.453] sys.calls <- base::sys.calls [13:11:10.453] `[[` <- base::`[[` [13:11:10.453] `+` <- base::`+` [13:11:10.453] `<<-` <- base::`<<-` [13:11:10.453] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:10.453] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:10.453] 3L)] [13:11:10.453] } [13:11:10.453] function(cond) { [13:11:10.453] is_error <- inherits(cond, "error") [13:11:10.453] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:10.453] NULL) [13:11:10.453] if (is_error) { [13:11:10.453] sessionInformation <- function() { [13:11:10.453] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:10.453] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:10.453] search = base::search(), system = base::Sys.info()) [13:11:10.453] } [13:11:10.453] ...future.conditions[[length(...future.conditions) + [13:11:10.453] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:10.453] cond$call), session = sessionInformation(), [13:11:10.453] timestamp = base::Sys.time(), signaled = 0L) [13:11:10.453] signalCondition(cond) [13:11:10.453] } [13:11:10.453] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:10.453] signal <- FALSE && inherits(cond, character(0)) [13:11:10.453] ...future.conditions[[length(...future.conditions) + [13:11:10.453] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:10.453] if (FALSE && !signal) { [13:11:10.453] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.453] { [13:11:10.453] inherits <- base::inherits [13:11:10.453] invokeRestart <- base::invokeRestart [13:11:10.453] is.null <- base::is.null [13:11:10.453] muffled <- FALSE [13:11:10.453] if (inherits(cond, "message")) { [13:11:10.453] muffled <- grepl(pattern, "muffleMessage") [13:11:10.453] if (muffled) [13:11:10.453] invokeRestart("muffleMessage") [13:11:10.453] } [13:11:10.453] else if (inherits(cond, "warning")) { [13:11:10.453] muffled <- grepl(pattern, "muffleWarning") [13:11:10.453] if (muffled) [13:11:10.453] invokeRestart("muffleWarning") [13:11:10.453] } [13:11:10.453] else if (inherits(cond, "condition")) { [13:11:10.453] if (!is.null(pattern)) { [13:11:10.453] computeRestarts <- base::computeRestarts [13:11:10.453] grepl <- base::grepl [13:11:10.453] restarts <- computeRestarts(cond) [13:11:10.453] for (restart in restarts) { [13:11:10.453] name <- restart$name [13:11:10.453] if (is.null(name)) [13:11:10.453] next [13:11:10.453] if (!grepl(pattern, name)) [13:11:10.453] next [13:11:10.453] invokeRestart(restart) [13:11:10.453] muffled <- TRUE [13:11:10.453] break [13:11:10.453] } [13:11:10.453] } [13:11:10.453] } [13:11:10.453] invisible(muffled) [13:11:10.453] } [13:11:10.453] muffleCondition(cond, pattern = "^muffle") [13:11:10.453] } [13:11:10.453] } [13:11:10.453] else { [13:11:10.453] if (TRUE) { [13:11:10.453] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.453] { [13:11:10.453] inherits <- base::inherits [13:11:10.453] invokeRestart <- base::invokeRestart [13:11:10.453] is.null <- base::is.null [13:11:10.453] muffled <- FALSE [13:11:10.453] if (inherits(cond, "message")) { [13:11:10.453] muffled <- grepl(pattern, "muffleMessage") [13:11:10.453] if (muffled) [13:11:10.453] invokeRestart("muffleMessage") [13:11:10.453] } [13:11:10.453] else if (inherits(cond, "warning")) { [13:11:10.453] muffled <- grepl(pattern, "muffleWarning") [13:11:10.453] if (muffled) [13:11:10.453] invokeRestart("muffleWarning") [13:11:10.453] } [13:11:10.453] else if (inherits(cond, "condition")) { [13:11:10.453] if (!is.null(pattern)) { [13:11:10.453] computeRestarts <- base::computeRestarts [13:11:10.453] grepl <- base::grepl [13:11:10.453] restarts <- computeRestarts(cond) [13:11:10.453] for (restart in restarts) { [13:11:10.453] name <- restart$name [13:11:10.453] if (is.null(name)) [13:11:10.453] next [13:11:10.453] if (!grepl(pattern, name)) [13:11:10.453] next [13:11:10.453] invokeRestart(restart) [13:11:10.453] muffled <- TRUE [13:11:10.453] break [13:11:10.453] } [13:11:10.453] } [13:11:10.453] } [13:11:10.453] invisible(muffled) [13:11:10.453] } [13:11:10.453] muffleCondition(cond, pattern = "^muffle") [13:11:10.453] } [13:11:10.453] } [13:11:10.453] } [13:11:10.453] })) [13:11:10.453] }, error = function(ex) { [13:11:10.453] base::structure(base::list(value = NULL, visible = NULL, [13:11:10.453] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.453] ...future.rng), started = ...future.startTime, [13:11:10.453] finished = Sys.time(), session_uuid = NA_character_, [13:11:10.453] version = "1.8"), class = "FutureResult") [13:11:10.453] }, finally = { [13:11:10.453] if (!identical(...future.workdir, getwd())) [13:11:10.453] setwd(...future.workdir) [13:11:10.453] { [13:11:10.453] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:10.453] ...future.oldOptions$nwarnings <- NULL [13:11:10.453] } [13:11:10.453] base::options(...future.oldOptions) [13:11:10.453] if (.Platform$OS.type == "windows") { [13:11:10.453] old_names <- names(...future.oldEnvVars) [13:11:10.453] envs <- base::Sys.getenv() [13:11:10.453] names <- names(envs) [13:11:10.453] common <- intersect(names, old_names) [13:11:10.453] added <- setdiff(names, old_names) [13:11:10.453] removed <- setdiff(old_names, names) [13:11:10.453] changed <- common[...future.oldEnvVars[common] != [13:11:10.453] envs[common]] [13:11:10.453] NAMES <- toupper(changed) [13:11:10.453] args <- list() [13:11:10.453] for (kk in seq_along(NAMES)) { [13:11:10.453] name <- changed[[kk]] [13:11:10.453] NAME <- NAMES[[kk]] [13:11:10.453] if (name != NAME && is.element(NAME, old_names)) [13:11:10.453] next [13:11:10.453] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.453] } [13:11:10.453] NAMES <- toupper(added) [13:11:10.453] for (kk in seq_along(NAMES)) { [13:11:10.453] name <- added[[kk]] [13:11:10.453] NAME <- NAMES[[kk]] [13:11:10.453] if (name != NAME && is.element(NAME, old_names)) [13:11:10.453] next [13:11:10.453] args[[name]] <- "" [13:11:10.453] } [13:11:10.453] NAMES <- toupper(removed) [13:11:10.453] for (kk in seq_along(NAMES)) { [13:11:10.453] name <- removed[[kk]] [13:11:10.453] NAME <- NAMES[[kk]] [13:11:10.453] if (name != NAME && is.element(NAME, old_names)) [13:11:10.453] next [13:11:10.453] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.453] } [13:11:10.453] if (length(args) > 0) [13:11:10.453] base::do.call(base::Sys.setenv, args = args) [13:11:10.453] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:10.453] } [13:11:10.453] else { [13:11:10.453] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:10.453] } [13:11:10.453] { [13:11:10.453] if (base::length(...future.futureOptionsAdded) > [13:11:10.453] 0L) { [13:11:10.453] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:10.453] base::names(opts) <- ...future.futureOptionsAdded [13:11:10.453] base::options(opts) [13:11:10.453] } [13:11:10.453] { [13:11:10.453] NULL [13:11:10.453] options(future.plan = NULL) [13:11:10.453] if (is.na(NA_character_)) [13:11:10.453] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.453] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:10.453] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:10.453] .init = FALSE) [13:11:10.453] } [13:11:10.453] } [13:11:10.453] } [13:11:10.453] }) [13:11:10.453] if (TRUE) { [13:11:10.453] base::sink(type = "output", split = FALSE) [13:11:10.453] if (TRUE) { [13:11:10.453] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:10.453] } [13:11:10.453] else { [13:11:10.453] ...future.result["stdout"] <- base::list(NULL) [13:11:10.453] } [13:11:10.453] base::close(...future.stdout) [13:11:10.453] ...future.stdout <- NULL [13:11:10.453] } [13:11:10.453] ...future.result$conditions <- ...future.conditions [13:11:10.453] ...future.result$finished <- base::Sys.time() [13:11:10.453] ...future.result [13:11:10.453] } [13:11:10.457] resolved() for 'MiraiFuture' ... [13:11:10.457] - state: 'running' [13:11:10.457] - run: TRUE [13:11:10.457] - result: 'NULL' [13:11:10.458] - resolved: FALSE [13:11:10.458] resolved() for 'MiraiFuture' ... done [1] FALSE [1] 42 [13:11:10.459] *** mirai_multisession(..., globals = TRUE) with globals[13:11:10.461] getGlobalsAndPackages() ... [13:11:10.461] Searching for globals... [13:11:10.467] - globals found: [4] '{', '<-', '*', 'a' [13:11:10.467] Searching for globals ... DONE [13:11:10.467] Resolving globals: FALSE [13:11:10.469] The total size of the 1 globals is 56 bytes (56 bytes) [13:11:10.470] The total size of the 1 globals exported for future expression ('{; b <- 3; c <- 2; a * b * c; }') 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:11:10.470] - globals: [1] 'a' [13:11:10.470] [13:11:10.470] getGlobalsAndPackages() ... DONE [13:11:10.471] getGlobalsAndPackages() ... [13:11:10.471] - globals passed as-is: [1] 'a' [13:11:10.471] Resolving globals: FALSE [13:11:10.471] - globals: [1] 'a' [13:11:10.472] [13:11:10.472] getGlobalsAndPackages() ... DONE [13:11:10.472] Packages needed by the future expression (n = 0): [13:11:10.472] Packages needed by future strategies (n = 0): [13:11:10.473] { [13:11:10.473] { [13:11:10.473] { [13:11:10.473] ...future.startTime <- base::Sys.time() [13:11:10.473] { [13:11:10.473] { [13:11:10.473] { [13:11:10.473] base::local({ [13:11:10.473] has_future <- base::requireNamespace("future", [13:11:10.473] quietly = TRUE) [13:11:10.473] if (has_future) { [13:11:10.473] ns <- base::getNamespace("future") [13:11:10.473] version <- ns[[".package"]][["version"]] [13:11:10.473] if (is.null(version)) [13:11:10.473] version <- utils::packageVersion("future") [13:11:10.473] } [13:11:10.473] else { [13:11:10.473] version <- NULL [13:11:10.473] } [13:11:10.473] if (!has_future || version < "1.8.0") { [13:11:10.473] info <- base::c(r_version = base::gsub("R version ", [13:11:10.473] "", base::R.version$version.string), [13:11:10.473] platform = base::sprintf("%s (%s-bit)", [13:11:10.473] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:10.473] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:10.473] "release", "version")], collapse = " "), [13:11:10.473] hostname = base::Sys.info()[["nodename"]]) [13:11:10.473] info <- base::sprintf("%s: %s", base::names(info), [13:11:10.473] info) [13:11:10.473] info <- base::paste(info, collapse = "; ") [13:11:10.473] if (!has_future) { [13:11:10.473] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:10.473] info) [13:11:10.473] } [13:11:10.473] else { [13:11:10.473] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:10.473] info, version) [13:11:10.473] } [13:11:10.473] base::stop(msg) [13:11:10.473] } [13:11:10.473] }) [13:11:10.473] } [13:11:10.473] ...future.strategy.old <- future::plan("list") [13:11:10.473] options(future.plan = NULL) [13:11:10.473] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.473] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:10.473] } [13:11:10.473] ...future.workdir <- getwd() [13:11:10.473] } [13:11:10.473] ...future.oldOptions <- base::as.list(base::.Options) [13:11:10.473] ...future.oldEnvVars <- base::Sys.getenv() [13:11:10.473] } [13:11:10.473] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:10.473] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:10.473] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:10.473] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:10.473] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:10.473] future.stdout.windows.reencode = NULL, width = 80L) [13:11:10.473] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:10.473] base::names(...future.oldOptions)) [13:11:10.473] } [13:11:10.473] if (FALSE) { [13:11:10.473] } [13:11:10.473] else { [13:11:10.473] if (TRUE) { [13:11:10.473] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:10.473] open = "w") [13:11:10.473] } [13:11:10.473] else { [13:11:10.473] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:10.473] windows = "NUL", "/dev/null"), open = "w") [13:11:10.473] } [13:11:10.473] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:10.473] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:10.473] base::sink(type = "output", split = FALSE) [13:11:10.473] base::close(...future.stdout) [13:11:10.473] }, add = TRUE) [13:11:10.473] } [13:11:10.473] ...future.frame <- base::sys.nframe() [13:11:10.473] ...future.conditions <- base::list() [13:11:10.473] ...future.rng <- base::globalenv()$.Random.seed [13:11:10.473] if (FALSE) { [13:11:10.473] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:10.473] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:10.473] } [13:11:10.473] ...future.result <- base::tryCatch({ [13:11:10.473] base::withCallingHandlers({ [13:11:10.473] ...future.value <- base::withVisible(base::local({ [13:11:10.473] b <- 3 [13:11:10.473] c <- 2 [13:11:10.473] a * b * c [13:11:10.473] })) [13:11:10.473] future::FutureResult(value = ...future.value$value, [13:11:10.473] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.473] ...future.rng), globalenv = if (FALSE) [13:11:10.473] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:10.473] ...future.globalenv.names)) [13:11:10.473] else NULL, started = ...future.startTime, version = "1.8") [13:11:10.473] }, condition = base::local({ [13:11:10.473] c <- base::c [13:11:10.473] inherits <- base::inherits [13:11:10.473] invokeRestart <- base::invokeRestart [13:11:10.473] length <- base::length [13:11:10.473] list <- base::list [13:11:10.473] seq.int <- base::seq.int [13:11:10.473] signalCondition <- base::signalCondition [13:11:10.473] sys.calls <- base::sys.calls [13:11:10.473] `[[` <- base::`[[` [13:11:10.473] `+` <- base::`+` [13:11:10.473] `<<-` <- base::`<<-` [13:11:10.473] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:10.473] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:10.473] 3L)] [13:11:10.473] } [13:11:10.473] function(cond) { [13:11:10.473] is_error <- inherits(cond, "error") [13:11:10.473] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:10.473] NULL) [13:11:10.473] if (is_error) { [13:11:10.473] sessionInformation <- function() { [13:11:10.473] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:10.473] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:10.473] search = base::search(), system = base::Sys.info()) [13:11:10.473] } [13:11:10.473] ...future.conditions[[length(...future.conditions) + [13:11:10.473] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:10.473] cond$call), session = sessionInformation(), [13:11:10.473] timestamp = base::Sys.time(), signaled = 0L) [13:11:10.473] signalCondition(cond) [13:11:10.473] } [13:11:10.473] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:10.473] signal <- FALSE && inherits(cond, character(0)) [13:11:10.473] ...future.conditions[[length(...future.conditions) + [13:11:10.473] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:10.473] if (FALSE && !signal) { [13:11:10.473] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.473] { [13:11:10.473] inherits <- base::inherits [13:11:10.473] invokeRestart <- base::invokeRestart [13:11:10.473] is.null <- base::is.null [13:11:10.473] muffled <- FALSE [13:11:10.473] if (inherits(cond, "message")) { [13:11:10.473] muffled <- grepl(pattern, "muffleMessage") [13:11:10.473] if (muffled) [13:11:10.473] invokeRestart("muffleMessage") [13:11:10.473] } [13:11:10.473] else if (inherits(cond, "warning")) { [13:11:10.473] muffled <- grepl(pattern, "muffleWarning") [13:11:10.473] if (muffled) [13:11:10.473] invokeRestart("muffleWarning") [13:11:10.473] } [13:11:10.473] else if (inherits(cond, "condition")) { [13:11:10.473] if (!is.null(pattern)) { [13:11:10.473] computeRestarts <- base::computeRestarts [13:11:10.473] grepl <- base::grepl [13:11:10.473] restarts <- computeRestarts(cond) [13:11:10.473] for (restart in restarts) { [13:11:10.473] name <- restart$name [13:11:10.473] if (is.null(name)) [13:11:10.473] next [13:11:10.473] if (!grepl(pattern, name)) [13:11:10.473] next [13:11:10.473] invokeRestart(restart) [13:11:10.473] muffled <- TRUE [13:11:10.473] break [13:11:10.473] } [13:11:10.473] } [13:11:10.473] } [13:11:10.473] invisible(muffled) [13:11:10.473] } [13:11:10.473] muffleCondition(cond, pattern = "^muffle") [13:11:10.473] } [13:11:10.473] } [13:11:10.473] else { [13:11:10.473] if (TRUE) { [13:11:10.473] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.473] { [13:11:10.473] inherits <- base::inherits [13:11:10.473] invokeRestart <- base::invokeRestart [13:11:10.473] is.null <- base::is.null [13:11:10.473] muffled <- FALSE [13:11:10.473] if (inherits(cond, "message")) { [13:11:10.473] muffled <- grepl(pattern, "muffleMessage") [13:11:10.473] if (muffled) [13:11:10.473] invokeRestart("muffleMessage") [13:11:10.473] } [13:11:10.473] else if (inherits(cond, "warning")) { [13:11:10.473] muffled <- grepl(pattern, "muffleWarning") [13:11:10.473] if (muffled) [13:11:10.473] invokeRestart("muffleWarning") [13:11:10.473] } [13:11:10.473] else if (inherits(cond, "condition")) { [13:11:10.473] if (!is.null(pattern)) { [13:11:10.473] computeRestarts <- base::computeRestarts [13:11:10.473] grepl <- base::grepl [13:11:10.473] restarts <- computeRestarts(cond) [13:11:10.473] for (restart in restarts) { [13:11:10.473] name <- restart$name [13:11:10.473] if (is.null(name)) [13:11:10.473] next [13:11:10.473] if (!grepl(pattern, name)) [13:11:10.473] next [13:11:10.473] invokeRestart(restart) [13:11:10.473] muffled <- TRUE [13:11:10.473] break [13:11:10.473] } [13:11:10.473] } [13:11:10.473] } [13:11:10.473] invisible(muffled) [13:11:10.473] } [13:11:10.473] muffleCondition(cond, pattern = "^muffle") [13:11:10.473] } [13:11:10.473] } [13:11:10.473] } [13:11:10.473] })) [13:11:10.473] }, error = function(ex) { [13:11:10.473] base::structure(base::list(value = NULL, visible = NULL, [13:11:10.473] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.473] ...future.rng), started = ...future.startTime, [13:11:10.473] finished = Sys.time(), session_uuid = NA_character_, [13:11:10.473] version = "1.8"), class = "FutureResult") [13:11:10.473] }, finally = { [13:11:10.473] if (!identical(...future.workdir, getwd())) [13:11:10.473] setwd(...future.workdir) [13:11:10.473] { [13:11:10.473] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:10.473] ...future.oldOptions$nwarnings <- NULL [13:11:10.473] } [13:11:10.473] base::options(...future.oldOptions) [13:11:10.473] if (.Platform$OS.type == "windows") { [13:11:10.473] old_names <- names(...future.oldEnvVars) [13:11:10.473] envs <- base::Sys.getenv() [13:11:10.473] names <- names(envs) [13:11:10.473] common <- intersect(names, old_names) [13:11:10.473] added <- setdiff(names, old_names) [13:11:10.473] removed <- setdiff(old_names, names) [13:11:10.473] changed <- common[...future.oldEnvVars[common] != [13:11:10.473] envs[common]] [13:11:10.473] NAMES <- toupper(changed) [13:11:10.473] args <- list() [13:11:10.473] for (kk in seq_along(NAMES)) { [13:11:10.473] name <- changed[[kk]] [13:11:10.473] NAME <- NAMES[[kk]] [13:11:10.473] if (name != NAME && is.element(NAME, old_names)) [13:11:10.473] next [13:11:10.473] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.473] } [13:11:10.473] NAMES <- toupper(added) [13:11:10.473] for (kk in seq_along(NAMES)) { [13:11:10.473] name <- added[[kk]] [13:11:10.473] NAME <- NAMES[[kk]] [13:11:10.473] if (name != NAME && is.element(NAME, old_names)) [13:11:10.473] next [13:11:10.473] args[[name]] <- "" [13:11:10.473] } [13:11:10.473] NAMES <- toupper(removed) [13:11:10.473] for (kk in seq_along(NAMES)) { [13:11:10.473] name <- removed[[kk]] [13:11:10.473] NAME <- NAMES[[kk]] [13:11:10.473] if (name != NAME && is.element(NAME, old_names)) [13:11:10.473] next [13:11:10.473] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.473] } [13:11:10.473] if (length(args) > 0) [13:11:10.473] base::do.call(base::Sys.setenv, args = args) [13:11:10.473] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:10.473] } [13:11:10.473] else { [13:11:10.473] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:10.473] } [13:11:10.473] { [13:11:10.473] if (base::length(...future.futureOptionsAdded) > [13:11:10.473] 0L) { [13:11:10.473] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:10.473] base::names(opts) <- ...future.futureOptionsAdded [13:11:10.473] base::options(opts) [13:11:10.473] } [13:11:10.473] { [13:11:10.473] NULL [13:11:10.473] options(future.plan = NULL) [13:11:10.473] if (is.na(NA_character_)) [13:11:10.473] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.473] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:10.473] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:10.473] .init = FALSE) [13:11:10.473] } [13:11:10.473] } [13:11:10.473] } [13:11:10.473] }) [13:11:10.473] if (TRUE) { [13:11:10.473] base::sink(type = "output", split = FALSE) [13:11:10.473] if (TRUE) { [13:11:10.473] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:10.473] } [13:11:10.473] else { [13:11:10.473] ...future.result["stdout"] <- base::list(NULL) [13:11:10.473] } [13:11:10.473] base::close(...future.stdout) [13:11:10.473] ...future.stdout <- NULL [13:11:10.473] } [13:11:10.473] ...future.result$conditions <- ...future.conditions [13:11:10.473] ...future.result$finished <- base::Sys.time() [13:11:10.473] ...future.result [13:11:10.473] } MiraiFuture: Label: '' Expression: { b <- 3 c <- 2 a * b * c } Lazy evaluation: FALSE Asynchronous evaluation: TRUE Local evaluation: TRUE Environment: R_GlobalEnv Capture standard output: TRUE Capture condition classes: 'condition' (excluding 'nothing') Globals: 1 objects totaling 56 bytes (numeric 'a' of 56 bytes) Packages: L'Ecuyer-CMRG RNG seed: (seed = FALSE) [13:11:10.477] resolved() for 'MiraiFuture' ... [13:11:10.477] - state: 'running' [13:11:10.478] - run: TRUE [13:11:10.478] - result: 'NULL' [13:11:10.478] - resolved: FALSE [13:11:10.478] resolved() for 'MiraiFuture' ... done Resolved: TRUE Value: Conditions captured: Early signaling: FALSE Owner process: 00305072-cb3e-607d-66ad-ae248e29708e Class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [1] 0 [13:11:10.479] *** mirai_multisession(..., globals = TRUE) with globals and blocking[13:11:10.479] - Creating mirai_multisession future #1 ...[13:11:10.481] getGlobalsAndPackages() ... [13:11:10.481] Searching for globals... [13:11:10.482] - globals found: [2] '{', 'ii' [13:11:10.482] Searching for globals ... DONE [13:11:10.482] Resolving globals: FALSE [13:11:10.483] The total size of the 1 globals is 56 bytes (56 bytes) [13:11:10.483] The total size of the 1 globals exported for future expression ('{; ii; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'ii' (56 bytes of class 'numeric') [13:11:10.483] - globals: [1] 'ii' [13:11:10.483] [13:11:10.483] getGlobalsAndPackages() ... DONE [13:11:10.484] getGlobalsAndPackages() ... [13:11:10.484] - globals passed as-is: [1] 'ii' [13:11:10.484] Resolving globals: FALSE [13:11:10.484] - globals: [1] 'ii' [13:11:10.484] [13:11:10.485] getGlobalsAndPackages() ... DONE [13:11:10.485] Packages needed by the future expression (n = 0): [13:11:10.485] Packages needed by future strategies (n = 0): [13:11:10.486] { [13:11:10.486] { [13:11:10.486] { [13:11:10.486] ...future.startTime <- base::Sys.time() [13:11:10.486] { [13:11:10.486] { [13:11:10.486] { [13:11:10.486] base::local({ [13:11:10.486] has_future <- base::requireNamespace("future", [13:11:10.486] quietly = TRUE) [13:11:10.486] if (has_future) { [13:11:10.486] ns <- base::getNamespace("future") [13:11:10.486] version <- ns[[".package"]][["version"]] [13:11:10.486] if (is.null(version)) [13:11:10.486] version <- utils::packageVersion("future") [13:11:10.486] } [13:11:10.486] else { [13:11:10.486] version <- NULL [13:11:10.486] } [13:11:10.486] if (!has_future || version < "1.8.0") { [13:11:10.486] info <- base::c(r_version = base::gsub("R version ", [13:11:10.486] "", base::R.version$version.string), [13:11:10.486] platform = base::sprintf("%s (%s-bit)", [13:11:10.486] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:10.486] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:10.486] "release", "version")], collapse = " "), [13:11:10.486] hostname = base::Sys.info()[["nodename"]]) [13:11:10.486] info <- base::sprintf("%s: %s", base::names(info), [13:11:10.486] info) [13:11:10.486] info <- base::paste(info, collapse = "; ") [13:11:10.486] if (!has_future) { [13:11:10.486] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:10.486] info) [13:11:10.486] } [13:11:10.486] else { [13:11:10.486] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:10.486] info, version) [13:11:10.486] } [13:11:10.486] base::stop(msg) [13:11:10.486] } [13:11:10.486] }) [13:11:10.486] } [13:11:10.486] ...future.strategy.old <- future::plan("list") [13:11:10.486] options(future.plan = NULL) [13:11:10.486] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.486] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:10.486] } [13:11:10.486] ...future.workdir <- getwd() [13:11:10.486] } [13:11:10.486] ...future.oldOptions <- base::as.list(base::.Options) [13:11:10.486] ...future.oldEnvVars <- base::Sys.getenv() [13:11:10.486] } [13:11:10.486] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:10.486] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:10.486] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:10.486] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:10.486] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:10.486] future.stdout.windows.reencode = NULL, width = 80L) [13:11:10.486] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:10.486] base::names(...future.oldOptions)) [13:11:10.486] } [13:11:10.486] if (FALSE) { [13:11:10.486] } [13:11:10.486] else { [13:11:10.486] if (TRUE) { [13:11:10.486] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:10.486] open = "w") [13:11:10.486] } [13:11:10.486] else { [13:11:10.486] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:10.486] windows = "NUL", "/dev/null"), open = "w") [13:11:10.486] } [13:11:10.486] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:10.486] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:10.486] base::sink(type = "output", split = FALSE) [13:11:10.486] base::close(...future.stdout) [13:11:10.486] }, add = TRUE) [13:11:10.486] } [13:11:10.486] ...future.frame <- base::sys.nframe() [13:11:10.486] ...future.conditions <- base::list() [13:11:10.486] ...future.rng <- base::globalenv()$.Random.seed [13:11:10.486] if (FALSE) { [13:11:10.486] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:10.486] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:10.486] } [13:11:10.486] ...future.result <- base::tryCatch({ [13:11:10.486] base::withCallingHandlers({ [13:11:10.486] ...future.value <- base::withVisible(base::local({ [13:11:10.486] ii [13:11:10.486] })) [13:11:10.486] future::FutureResult(value = ...future.value$value, [13:11:10.486] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.486] ...future.rng), globalenv = if (FALSE) [13:11:10.486] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:10.486] ...future.globalenv.names)) [13:11:10.486] else NULL, started = ...future.startTime, version = "1.8") [13:11:10.486] }, condition = base::local({ [13:11:10.486] c <- base::c [13:11:10.486] inherits <- base::inherits [13:11:10.486] invokeRestart <- base::invokeRestart [13:11:10.486] length <- base::length [13:11:10.486] list <- base::list [13:11:10.486] seq.int <- base::seq.int [13:11:10.486] signalCondition <- base::signalCondition [13:11:10.486] sys.calls <- base::sys.calls [13:11:10.486] `[[` <- base::`[[` [13:11:10.486] `+` <- base::`+` [13:11:10.486] `<<-` <- base::`<<-` [13:11:10.486] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:10.486] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:10.486] 3L)] [13:11:10.486] } [13:11:10.486] function(cond) { [13:11:10.486] is_error <- inherits(cond, "error") [13:11:10.486] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:10.486] NULL) [13:11:10.486] if (is_error) { [13:11:10.486] sessionInformation <- function() { [13:11:10.486] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:10.486] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:10.486] search = base::search(), system = base::Sys.info()) [13:11:10.486] } [13:11:10.486] ...future.conditions[[length(...future.conditions) + [13:11:10.486] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:10.486] cond$call), session = sessionInformation(), [13:11:10.486] timestamp = base::Sys.time(), signaled = 0L) [13:11:10.486] signalCondition(cond) [13:11:10.486] } [13:11:10.486] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:10.486] signal <- FALSE && inherits(cond, character(0)) [13:11:10.486] ...future.conditions[[length(...future.conditions) + [13:11:10.486] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:10.486] if (FALSE && !signal) { [13:11:10.486] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.486] { [13:11:10.486] inherits <- base::inherits [13:11:10.486] invokeRestart <- base::invokeRestart [13:11:10.486] is.null <- base::is.null [13:11:10.486] muffled <- FALSE [13:11:10.486] if (inherits(cond, "message")) { [13:11:10.486] muffled <- grepl(pattern, "muffleMessage") [13:11:10.486] if (muffled) [13:11:10.486] invokeRestart("muffleMessage") [13:11:10.486] } [13:11:10.486] else if (inherits(cond, "warning")) { [13:11:10.486] muffled <- grepl(pattern, "muffleWarning") [13:11:10.486] if (muffled) [13:11:10.486] invokeRestart("muffleWarning") [13:11:10.486] } [13:11:10.486] else if (inherits(cond, "condition")) { [13:11:10.486] if (!is.null(pattern)) { [13:11:10.486] computeRestarts <- base::computeRestarts [13:11:10.486] grepl <- base::grepl [13:11:10.486] restarts <- computeRestarts(cond) [13:11:10.486] for (restart in restarts) { [13:11:10.486] name <- restart$name [13:11:10.486] if (is.null(name)) [13:11:10.486] next [13:11:10.486] if (!grepl(pattern, name)) [13:11:10.486] next [13:11:10.486] invokeRestart(restart) [13:11:10.486] muffled <- TRUE [13:11:10.486] break [13:11:10.486] } [13:11:10.486] } [13:11:10.486] } [13:11:10.486] invisible(muffled) [13:11:10.486] } [13:11:10.486] muffleCondition(cond, pattern = "^muffle") [13:11:10.486] } [13:11:10.486] } [13:11:10.486] else { [13:11:10.486] if (TRUE) { [13:11:10.486] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.486] { [13:11:10.486] inherits <- base::inherits [13:11:10.486] invokeRestart <- base::invokeRestart [13:11:10.486] is.null <- base::is.null [13:11:10.486] muffled <- FALSE [13:11:10.486] if (inherits(cond, "message")) { [13:11:10.486] muffled <- grepl(pattern, "muffleMessage") [13:11:10.486] if (muffled) [13:11:10.486] invokeRestart("muffleMessage") [13:11:10.486] } [13:11:10.486] else if (inherits(cond, "warning")) { [13:11:10.486] muffled <- grepl(pattern, "muffleWarning") [13:11:10.486] if (muffled) [13:11:10.486] invokeRestart("muffleWarning") [13:11:10.486] } [13:11:10.486] else if (inherits(cond, "condition")) { [13:11:10.486] if (!is.null(pattern)) { [13:11:10.486] computeRestarts <- base::computeRestarts [13:11:10.486] grepl <- base::grepl [13:11:10.486] restarts <- computeRestarts(cond) [13:11:10.486] for (restart in restarts) { [13:11:10.486] name <- restart$name [13:11:10.486] if (is.null(name)) [13:11:10.486] next [13:11:10.486] if (!grepl(pattern, name)) [13:11:10.486] next [13:11:10.486] invokeRestart(restart) [13:11:10.486] muffled <- TRUE [13:11:10.486] break [13:11:10.486] } [13:11:10.486] } [13:11:10.486] } [13:11:10.486] invisible(muffled) [13:11:10.486] } [13:11:10.486] muffleCondition(cond, pattern = "^muffle") [13:11:10.486] } [13:11:10.486] } [13:11:10.486] } [13:11:10.486] })) [13:11:10.486] }, error = function(ex) { [13:11:10.486] base::structure(base::list(value = NULL, visible = NULL, [13:11:10.486] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.486] ...future.rng), started = ...future.startTime, [13:11:10.486] finished = Sys.time(), session_uuid = NA_character_, [13:11:10.486] version = "1.8"), class = "FutureResult") [13:11:10.486] }, finally = { [13:11:10.486] if (!identical(...future.workdir, getwd())) [13:11:10.486] setwd(...future.workdir) [13:11:10.486] { [13:11:10.486] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:10.486] ...future.oldOptions$nwarnings <- NULL [13:11:10.486] } [13:11:10.486] base::options(...future.oldOptions) [13:11:10.486] if (.Platform$OS.type == "windows") { [13:11:10.486] old_names <- names(...future.oldEnvVars) [13:11:10.486] envs <- base::Sys.getenv() [13:11:10.486] names <- names(envs) [13:11:10.486] common <- intersect(names, old_names) [13:11:10.486] added <- setdiff(names, old_names) [13:11:10.486] removed <- setdiff(old_names, names) [13:11:10.486] changed <- common[...future.oldEnvVars[common] != [13:11:10.486] envs[common]] [13:11:10.486] NAMES <- toupper(changed) [13:11:10.486] args <- list() [13:11:10.486] for (kk in seq_along(NAMES)) { [13:11:10.486] name <- changed[[kk]] [13:11:10.486] NAME <- NAMES[[kk]] [13:11:10.486] if (name != NAME && is.element(NAME, old_names)) [13:11:10.486] next [13:11:10.486] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.486] } [13:11:10.486] NAMES <- toupper(added) [13:11:10.486] for (kk in seq_along(NAMES)) { [13:11:10.486] name <- added[[kk]] [13:11:10.486] NAME <- NAMES[[kk]] [13:11:10.486] if (name != NAME && is.element(NAME, old_names)) [13:11:10.486] next [13:11:10.486] args[[name]] <- "" [13:11:10.486] } [13:11:10.486] NAMES <- toupper(removed) [13:11:10.486] for (kk in seq_along(NAMES)) { [13:11:10.486] name <- removed[[kk]] [13:11:10.486] NAME <- NAMES[[kk]] [13:11:10.486] if (name != NAME && is.element(NAME, old_names)) [13:11:10.486] next [13:11:10.486] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.486] } [13:11:10.486] if (length(args) > 0) [13:11:10.486] base::do.call(base::Sys.setenv, args = args) [13:11:10.486] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:10.486] } [13:11:10.486] else { [13:11:10.486] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:10.486] } [13:11:10.486] { [13:11:10.486] if (base::length(...future.futureOptionsAdded) > [13:11:10.486] 0L) { [13:11:10.486] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:10.486] base::names(opts) <- ...future.futureOptionsAdded [13:11:10.486] base::options(opts) [13:11:10.486] } [13:11:10.486] { [13:11:10.486] NULL [13:11:10.486] options(future.plan = NULL) [13:11:10.486] if (is.na(NA_character_)) [13:11:10.486] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.486] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:10.486] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:10.486] .init = FALSE) [13:11:10.486] } [13:11:10.486] } [13:11:10.486] } [13:11:10.486] }) [13:11:10.486] if (TRUE) { [13:11:10.486] base::sink(type = "output", split = FALSE) [13:11:10.486] if (TRUE) { [13:11:10.486] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:10.486] } [13:11:10.486] else { [13:11:10.486] ...future.result["stdout"] <- base::list(NULL) [13:11:10.486] } [13:11:10.486] base::close(...future.stdout) [13:11:10.486] ...future.stdout <- NULL [13:11:10.486] } [13:11:10.486] ...future.result$conditions <- ...future.conditions [13:11:10.486] ...future.result$finished <- base::Sys.time() [13:11:10.486] ...future.result [13:11:10.486] } [13:11:10.489] - Creating mirai_multisession future #2 ...[13:11:10.491] getGlobalsAndPackages() ... [13:11:10.492] Searching for globals... [13:11:10.492] - globals found: [2] '{', 'ii' [13:11:10.493] Searching for globals ... DONE [13:11:10.493] Resolving globals: FALSE [13:11:10.493] The total size of the 1 globals is 56 bytes (56 bytes) [13:11:10.494] The total size of the 1 globals exported for future expression ('{; ii; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'ii' (56 bytes of class 'numeric') [13:11:10.494] - globals: [1] 'ii' [13:11:10.494] [13:11:10.494] getGlobalsAndPackages() ... DONE [13:11:10.494] getGlobalsAndPackages() ... [13:11:10.495] - globals passed as-is: [1] 'ii' [13:11:10.495] Resolving globals: FALSE [13:11:10.495] - globals: [1] 'ii' [13:11:10.495] [13:11:10.495] getGlobalsAndPackages() ... DONE [13:11:10.496] Packages needed by the future expression (n = 0): [13:11:10.496] Packages needed by future strategies (n = 0): [13:11:10.496] { [13:11:10.496] { [13:11:10.496] { [13:11:10.496] ...future.startTime <- base::Sys.time() [13:11:10.496] { [13:11:10.496] { [13:11:10.496] { [13:11:10.496] base::local({ [13:11:10.496] has_future <- base::requireNamespace("future", [13:11:10.496] quietly = TRUE) [13:11:10.496] if (has_future) { [13:11:10.496] ns <- base::getNamespace("future") [13:11:10.496] version <- ns[[".package"]][["version"]] [13:11:10.496] if (is.null(version)) [13:11:10.496] version <- utils::packageVersion("future") [13:11:10.496] } [13:11:10.496] else { [13:11:10.496] version <- NULL [13:11:10.496] } [13:11:10.496] if (!has_future || version < "1.8.0") { [13:11:10.496] info <- base::c(r_version = base::gsub("R version ", [13:11:10.496] "", base::R.version$version.string), [13:11:10.496] platform = base::sprintf("%s (%s-bit)", [13:11:10.496] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:10.496] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:10.496] "release", "version")], collapse = " "), [13:11:10.496] hostname = base::Sys.info()[["nodename"]]) [13:11:10.496] info <- base::sprintf("%s: %s", base::names(info), [13:11:10.496] info) [13:11:10.496] info <- base::paste(info, collapse = "; ") [13:11:10.496] if (!has_future) { [13:11:10.496] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:10.496] info) [13:11:10.496] } [13:11:10.496] else { [13:11:10.496] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:10.496] info, version) [13:11:10.496] } [13:11:10.496] base::stop(msg) [13:11:10.496] } [13:11:10.496] }) [13:11:10.496] } [13:11:10.496] ...future.strategy.old <- future::plan("list") [13:11:10.496] options(future.plan = NULL) [13:11:10.496] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.496] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:10.496] } [13:11:10.496] ...future.workdir <- getwd() [13:11:10.496] } [13:11:10.496] ...future.oldOptions <- base::as.list(base::.Options) [13:11:10.496] ...future.oldEnvVars <- base::Sys.getenv() [13:11:10.496] } [13:11:10.496] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:10.496] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:10.496] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:10.496] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:10.496] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:10.496] future.stdout.windows.reencode = NULL, width = 80L) [13:11:10.496] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:10.496] base::names(...future.oldOptions)) [13:11:10.496] } [13:11:10.496] if (FALSE) { [13:11:10.496] } [13:11:10.496] else { [13:11:10.496] if (TRUE) { [13:11:10.496] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:10.496] open = "w") [13:11:10.496] } [13:11:10.496] else { [13:11:10.496] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:10.496] windows = "NUL", "/dev/null"), open = "w") [13:11:10.496] } [13:11:10.496] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:10.496] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:10.496] base::sink(type = "output", split = FALSE) [13:11:10.496] base::close(...future.stdout) [13:11:10.496] }, add = TRUE) [13:11:10.496] } [13:11:10.496] ...future.frame <- base::sys.nframe() [13:11:10.496] ...future.conditions <- base::list() [13:11:10.496] ...future.rng <- base::globalenv()$.Random.seed [13:11:10.496] if (FALSE) { [13:11:10.496] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:10.496] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:10.496] } [13:11:10.496] ...future.result <- base::tryCatch({ [13:11:10.496] base::withCallingHandlers({ [13:11:10.496] ...future.value <- base::withVisible(base::local({ [13:11:10.496] ii [13:11:10.496] })) [13:11:10.496] future::FutureResult(value = ...future.value$value, [13:11:10.496] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.496] ...future.rng), globalenv = if (FALSE) [13:11:10.496] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:10.496] ...future.globalenv.names)) [13:11:10.496] else NULL, started = ...future.startTime, version = "1.8") [13:11:10.496] }, condition = base::local({ [13:11:10.496] c <- base::c [13:11:10.496] inherits <- base::inherits [13:11:10.496] invokeRestart <- base::invokeRestart [13:11:10.496] length <- base::length [13:11:10.496] list <- base::list [13:11:10.496] seq.int <- base::seq.int [13:11:10.496] signalCondition <- base::signalCondition [13:11:10.496] sys.calls <- base::sys.calls [13:11:10.496] `[[` <- base::`[[` [13:11:10.496] `+` <- base::`+` [13:11:10.496] `<<-` <- base::`<<-` [13:11:10.496] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:10.496] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:10.496] 3L)] [13:11:10.496] } [13:11:10.496] function(cond) { [13:11:10.496] is_error <- inherits(cond, "error") [13:11:10.496] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:10.496] NULL) [13:11:10.496] if (is_error) { [13:11:10.496] sessionInformation <- function() { [13:11:10.496] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:10.496] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:10.496] search = base::search(), system = base::Sys.info()) [13:11:10.496] } [13:11:10.496] ...future.conditions[[length(...future.conditions) + [13:11:10.496] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:10.496] cond$call), session = sessionInformation(), [13:11:10.496] timestamp = base::Sys.time(), signaled = 0L) [13:11:10.496] signalCondition(cond) [13:11:10.496] } [13:11:10.496] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:10.496] signal <- FALSE && inherits(cond, character(0)) [13:11:10.496] ...future.conditions[[length(...future.conditions) + [13:11:10.496] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:10.496] if (FALSE && !signal) { [13:11:10.496] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.496] { [13:11:10.496] inherits <- base::inherits [13:11:10.496] invokeRestart <- base::invokeRestart [13:11:10.496] is.null <- base::is.null [13:11:10.496] muffled <- FALSE [13:11:10.496] if (inherits(cond, "message")) { [13:11:10.496] muffled <- grepl(pattern, "muffleMessage") [13:11:10.496] if (muffled) [13:11:10.496] invokeRestart("muffleMessage") [13:11:10.496] } [13:11:10.496] else if (inherits(cond, "warning")) { [13:11:10.496] muffled <- grepl(pattern, "muffleWarning") [13:11:10.496] if (muffled) [13:11:10.496] invokeRestart("muffleWarning") [13:11:10.496] } [13:11:10.496] else if (inherits(cond, "condition")) { [13:11:10.496] if (!is.null(pattern)) { [13:11:10.496] computeRestarts <- base::computeRestarts [13:11:10.496] grepl <- base::grepl [13:11:10.496] restarts <- computeRestarts(cond) [13:11:10.496] for (restart in restarts) { [13:11:10.496] name <- restart$name [13:11:10.496] if (is.null(name)) [13:11:10.496] next [13:11:10.496] if (!grepl(pattern, name)) [13:11:10.496] next [13:11:10.496] invokeRestart(restart) [13:11:10.496] muffled <- TRUE [13:11:10.496] break [13:11:10.496] } [13:11:10.496] } [13:11:10.496] } [13:11:10.496] invisible(muffled) [13:11:10.496] } [13:11:10.496] muffleCondition(cond, pattern = "^muffle") [13:11:10.496] } [13:11:10.496] } [13:11:10.496] else { [13:11:10.496] if (TRUE) { [13:11:10.496] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.496] { [13:11:10.496] inherits <- base::inherits [13:11:10.496] invokeRestart <- base::invokeRestart [13:11:10.496] is.null <- base::is.null [13:11:10.496] muffled <- FALSE [13:11:10.496] if (inherits(cond, "message")) { [13:11:10.496] muffled <- grepl(pattern, "muffleMessage") [13:11:10.496] if (muffled) [13:11:10.496] invokeRestart("muffleMessage") [13:11:10.496] } [13:11:10.496] else if (inherits(cond, "warning")) { [13:11:10.496] muffled <- grepl(pattern, "muffleWarning") [13:11:10.496] if (muffled) [13:11:10.496] invokeRestart("muffleWarning") [13:11:10.496] } [13:11:10.496] else if (inherits(cond, "condition")) { [13:11:10.496] if (!is.null(pattern)) { [13:11:10.496] computeRestarts <- base::computeRestarts [13:11:10.496] grepl <- base::grepl [13:11:10.496] restarts <- computeRestarts(cond) [13:11:10.496] for (restart in restarts) { [13:11:10.496] name <- restart$name [13:11:10.496] if (is.null(name)) [13:11:10.496] next [13:11:10.496] if (!grepl(pattern, name)) [13:11:10.496] next [13:11:10.496] invokeRestart(restart) [13:11:10.496] muffled <- TRUE [13:11:10.496] break [13:11:10.496] } [13:11:10.496] } [13:11:10.496] } [13:11:10.496] invisible(muffled) [13:11:10.496] } [13:11:10.496] muffleCondition(cond, pattern = "^muffle") [13:11:10.496] } [13:11:10.496] } [13:11:10.496] } [13:11:10.496] })) [13:11:10.496] }, error = function(ex) { [13:11:10.496] base::structure(base::list(value = NULL, visible = NULL, [13:11:10.496] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.496] ...future.rng), started = ...future.startTime, [13:11:10.496] finished = Sys.time(), session_uuid = NA_character_, [13:11:10.496] version = "1.8"), class = "FutureResult") [13:11:10.496] }, finally = { [13:11:10.496] if (!identical(...future.workdir, getwd())) [13:11:10.496] setwd(...future.workdir) [13:11:10.496] { [13:11:10.496] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:10.496] ...future.oldOptions$nwarnings <- NULL [13:11:10.496] } [13:11:10.496] base::options(...future.oldOptions) [13:11:10.496] if (.Platform$OS.type == "windows") { [13:11:10.496] old_names <- names(...future.oldEnvVars) [13:11:10.496] envs <- base::Sys.getenv() [13:11:10.496] names <- names(envs) [13:11:10.496] common <- intersect(names, old_names) [13:11:10.496] added <- setdiff(names, old_names) [13:11:10.496] removed <- setdiff(old_names, names) [13:11:10.496] changed <- common[...future.oldEnvVars[common] != [13:11:10.496] envs[common]] [13:11:10.496] NAMES <- toupper(changed) [13:11:10.496] args <- list() [13:11:10.496] for (kk in seq_along(NAMES)) { [13:11:10.496] name <- changed[[kk]] [13:11:10.496] NAME <- NAMES[[kk]] [13:11:10.496] if (name != NAME && is.element(NAME, old_names)) [13:11:10.496] next [13:11:10.496] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.496] } [13:11:10.496] NAMES <- toupper(added) [13:11:10.496] for (kk in seq_along(NAMES)) { [13:11:10.496] name <- added[[kk]] [13:11:10.496] NAME <- NAMES[[kk]] [13:11:10.496] if (name != NAME && is.element(NAME, old_names)) [13:11:10.496] next [13:11:10.496] args[[name]] <- "" [13:11:10.496] } [13:11:10.496] NAMES <- toupper(removed) [13:11:10.496] for (kk in seq_along(NAMES)) { [13:11:10.496] name <- removed[[kk]] [13:11:10.496] NAME <- NAMES[[kk]] [13:11:10.496] if (name != NAME && is.element(NAME, old_names)) [13:11:10.496] next [13:11:10.496] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.496] } [13:11:10.496] if (length(args) > 0) [13:11:10.496] base::do.call(base::Sys.setenv, args = args) [13:11:10.496] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:10.496] } [13:11:10.496] else { [13:11:10.496] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:10.496] } [13:11:10.496] { [13:11:10.496] if (base::length(...future.futureOptionsAdded) > [13:11:10.496] 0L) { [13:11:10.496] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:10.496] base::names(opts) <- ...future.futureOptionsAdded [13:11:10.496] base::options(opts) [13:11:10.496] } [13:11:10.496] { [13:11:10.496] NULL [13:11:10.496] options(future.plan = NULL) [13:11:10.496] if (is.na(NA_character_)) [13:11:10.496] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.496] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:10.496] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:10.496] .init = FALSE) [13:11:10.496] } [13:11:10.496] } [13:11:10.496] } [13:11:10.496] }) [13:11:10.496] if (TRUE) { [13:11:10.496] base::sink(type = "output", split = FALSE) [13:11:10.496] if (TRUE) { [13:11:10.496] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:10.496] } [13:11:10.496] else { [13:11:10.496] ...future.result["stdout"] <- base::list(NULL) [13:11:10.496] } [13:11:10.496] base::close(...future.stdout) [13:11:10.496] ...future.stdout <- NULL [13:11:10.496] } [13:11:10.496] ...future.result$conditions <- ...future.conditions [13:11:10.496] ...future.result$finished <- base::Sys.time() [13:11:10.496] ...future.result [13:11:10.496] } [13:11:10.500] - Creating mirai_multisession future #3 ...[13:11:10.502] getGlobalsAndPackages() ... [13:11:10.502] Searching for globals... [13:11:10.503] - globals found: [2] '{', 'ii' [13:11:10.503] Searching for globals ... DONE [13:11:10.504] Resolving globals: FALSE [13:11:10.504] The total size of the 1 globals is 56 bytes (56 bytes) [13:11:10.504] The total size of the 1 globals exported for future expression ('{; ii; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'ii' (56 bytes of class 'numeric') [13:11:10.505] - globals: [1] 'ii' [13:11:10.505] [13:11:10.505] getGlobalsAndPackages() ... DONE [13:11:10.505] getGlobalsAndPackages() ... [13:11:10.505] - globals passed as-is: [1] 'ii' [13:11:10.505] Resolving globals: FALSE [13:11:10.506] - globals: [1] 'ii' [13:11:10.506] [13:11:10.506] getGlobalsAndPackages() ... DONE [13:11:10.507] Packages needed by the future expression (n = 0): [13:11:10.507] Packages needed by future strategies (n = 0): [13:11:10.507] { [13:11:10.507] { [13:11:10.507] { [13:11:10.507] ...future.startTime <- base::Sys.time() [13:11:10.507] { [13:11:10.507] { [13:11:10.507] { [13:11:10.507] base::local({ [13:11:10.507] has_future <- base::requireNamespace("future", [13:11:10.507] quietly = TRUE) [13:11:10.507] if (has_future) { [13:11:10.507] ns <- base::getNamespace("future") [13:11:10.507] version <- ns[[".package"]][["version"]] [13:11:10.507] if (is.null(version)) [13:11:10.507] version <- utils::packageVersion("future") [13:11:10.507] } [13:11:10.507] else { [13:11:10.507] version <- NULL [13:11:10.507] } [13:11:10.507] if (!has_future || version < "1.8.0") { [13:11:10.507] info <- base::c(r_version = base::gsub("R version ", [13:11:10.507] "", base::R.version$version.string), [13:11:10.507] platform = base::sprintf("%s (%s-bit)", [13:11:10.507] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:10.507] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:10.507] "release", "version")], collapse = " "), [13:11:10.507] hostname = base::Sys.info()[["nodename"]]) [13:11:10.507] info <- base::sprintf("%s: %s", base::names(info), [13:11:10.507] info) [13:11:10.507] info <- base::paste(info, collapse = "; ") [13:11:10.507] if (!has_future) { [13:11:10.507] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:10.507] info) [13:11:10.507] } [13:11:10.507] else { [13:11:10.507] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:10.507] info, version) [13:11:10.507] } [13:11:10.507] base::stop(msg) [13:11:10.507] } [13:11:10.507] }) [13:11:10.507] } [13:11:10.507] ...future.strategy.old <- future::plan("list") [13:11:10.507] options(future.plan = NULL) [13:11:10.507] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.507] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:10.507] } [13:11:10.507] ...future.workdir <- getwd() [13:11:10.507] } [13:11:10.507] ...future.oldOptions <- base::as.list(base::.Options) [13:11:10.507] ...future.oldEnvVars <- base::Sys.getenv() [13:11:10.507] } [13:11:10.507] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:10.507] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:10.507] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:10.507] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:10.507] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:10.507] future.stdout.windows.reencode = NULL, width = 80L) [13:11:10.507] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:10.507] base::names(...future.oldOptions)) [13:11:10.507] } [13:11:10.507] if (FALSE) { [13:11:10.507] } [13:11:10.507] else { [13:11:10.507] if (TRUE) { [13:11:10.507] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:10.507] open = "w") [13:11:10.507] } [13:11:10.507] else { [13:11:10.507] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:10.507] windows = "NUL", "/dev/null"), open = "w") [13:11:10.507] } [13:11:10.507] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:10.507] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:10.507] base::sink(type = "output", split = FALSE) [13:11:10.507] base::close(...future.stdout) [13:11:10.507] }, add = TRUE) [13:11:10.507] } [13:11:10.507] ...future.frame <- base::sys.nframe() [13:11:10.507] ...future.conditions <- base::list() [13:11:10.507] ...future.rng <- base::globalenv()$.Random.seed [13:11:10.507] if (FALSE) { [13:11:10.507] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:10.507] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:10.507] } [13:11:10.507] ...future.result <- base::tryCatch({ [13:11:10.507] base::withCallingHandlers({ [13:11:10.507] ...future.value <- base::withVisible(base::local({ [13:11:10.507] ii [13:11:10.507] })) [13:11:10.507] future::FutureResult(value = ...future.value$value, [13:11:10.507] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.507] ...future.rng), globalenv = if (FALSE) [13:11:10.507] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:10.507] ...future.globalenv.names)) [13:11:10.507] else NULL, started = ...future.startTime, version = "1.8") [13:11:10.507] }, condition = base::local({ [13:11:10.507] c <- base::c [13:11:10.507] inherits <- base::inherits [13:11:10.507] invokeRestart <- base::invokeRestart [13:11:10.507] length <- base::length [13:11:10.507] list <- base::list [13:11:10.507] seq.int <- base::seq.int [13:11:10.507] signalCondition <- base::signalCondition [13:11:10.507] sys.calls <- base::sys.calls [13:11:10.507] `[[` <- base::`[[` [13:11:10.507] `+` <- base::`+` [13:11:10.507] `<<-` <- base::`<<-` [13:11:10.507] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:10.507] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:10.507] 3L)] [13:11:10.507] } [13:11:10.507] function(cond) { [13:11:10.507] is_error <- inherits(cond, "error") [13:11:10.507] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:10.507] NULL) [13:11:10.507] if (is_error) { [13:11:10.507] sessionInformation <- function() { [13:11:10.507] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:10.507] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:10.507] search = base::search(), system = base::Sys.info()) [13:11:10.507] } [13:11:10.507] ...future.conditions[[length(...future.conditions) + [13:11:10.507] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:10.507] cond$call), session = sessionInformation(), [13:11:10.507] timestamp = base::Sys.time(), signaled = 0L) [13:11:10.507] signalCondition(cond) [13:11:10.507] } [13:11:10.507] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:10.507] signal <- FALSE && inherits(cond, character(0)) [13:11:10.507] ...future.conditions[[length(...future.conditions) + [13:11:10.507] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:10.507] if (FALSE && !signal) { [13:11:10.507] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.507] { [13:11:10.507] inherits <- base::inherits [13:11:10.507] invokeRestart <- base::invokeRestart [13:11:10.507] is.null <- base::is.null [13:11:10.507] muffled <- FALSE [13:11:10.507] if (inherits(cond, "message")) { [13:11:10.507] muffled <- grepl(pattern, "muffleMessage") [13:11:10.507] if (muffled) [13:11:10.507] invokeRestart("muffleMessage") [13:11:10.507] } [13:11:10.507] else if (inherits(cond, "warning")) { [13:11:10.507] muffled <- grepl(pattern, "muffleWarning") [13:11:10.507] if (muffled) [13:11:10.507] invokeRestart("muffleWarning") [13:11:10.507] } [13:11:10.507] else if (inherits(cond, "condition")) { [13:11:10.507] if (!is.null(pattern)) { [13:11:10.507] computeRestarts <- base::computeRestarts [13:11:10.507] grepl <- base::grepl [13:11:10.507] restarts <- computeRestarts(cond) [13:11:10.507] for (restart in restarts) { [13:11:10.507] name <- restart$name [13:11:10.507] if (is.null(name)) [13:11:10.507] next [13:11:10.507] if (!grepl(pattern, name)) [13:11:10.507] next [13:11:10.507] invokeRestart(restart) [13:11:10.507] muffled <- TRUE [13:11:10.507] break [13:11:10.507] } [13:11:10.507] } [13:11:10.507] } [13:11:10.507] invisible(muffled) [13:11:10.507] } [13:11:10.507] muffleCondition(cond, pattern = "^muffle") [13:11:10.507] } [13:11:10.507] } [13:11:10.507] else { [13:11:10.507] if (TRUE) { [13:11:10.507] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.507] { [13:11:10.507] inherits <- base::inherits [13:11:10.507] invokeRestart <- base::invokeRestart [13:11:10.507] is.null <- base::is.null [13:11:10.507] muffled <- FALSE [13:11:10.507] if (inherits(cond, "message")) { [13:11:10.507] muffled <- grepl(pattern, "muffleMessage") [13:11:10.507] if (muffled) [13:11:10.507] invokeRestart("muffleMessage") [13:11:10.507] } [13:11:10.507] else if (inherits(cond, "warning")) { [13:11:10.507] muffled <- grepl(pattern, "muffleWarning") [13:11:10.507] if (muffled) [13:11:10.507] invokeRestart("muffleWarning") [13:11:10.507] } [13:11:10.507] else if (inherits(cond, "condition")) { [13:11:10.507] if (!is.null(pattern)) { [13:11:10.507] computeRestarts <- base::computeRestarts [13:11:10.507] grepl <- base::grepl [13:11:10.507] restarts <- computeRestarts(cond) [13:11:10.507] for (restart in restarts) { [13:11:10.507] name <- restart$name [13:11:10.507] if (is.null(name)) [13:11:10.507] next [13:11:10.507] if (!grepl(pattern, name)) [13:11:10.507] next [13:11:10.507] invokeRestart(restart) [13:11:10.507] muffled <- TRUE [13:11:10.507] break [13:11:10.507] } [13:11:10.507] } [13:11:10.507] } [13:11:10.507] invisible(muffled) [13:11:10.507] } [13:11:10.507] muffleCondition(cond, pattern = "^muffle") [13:11:10.507] } [13:11:10.507] } [13:11:10.507] } [13:11:10.507] })) [13:11:10.507] }, error = function(ex) { [13:11:10.507] base::structure(base::list(value = NULL, visible = NULL, [13:11:10.507] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.507] ...future.rng), started = ...future.startTime, [13:11:10.507] finished = Sys.time(), session_uuid = NA_character_, [13:11:10.507] version = "1.8"), class = "FutureResult") [13:11:10.507] }, finally = { [13:11:10.507] if (!identical(...future.workdir, getwd())) [13:11:10.507] setwd(...future.workdir) [13:11:10.507] { [13:11:10.507] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:10.507] ...future.oldOptions$nwarnings <- NULL [13:11:10.507] } [13:11:10.507] base::options(...future.oldOptions) [13:11:10.507] if (.Platform$OS.type == "windows") { [13:11:10.507] old_names <- names(...future.oldEnvVars) [13:11:10.507] envs <- base::Sys.getenv() [13:11:10.507] names <- names(envs) [13:11:10.507] common <- intersect(names, old_names) [13:11:10.507] added <- setdiff(names, old_names) [13:11:10.507] removed <- setdiff(old_names, names) [13:11:10.507] changed <- common[...future.oldEnvVars[common] != [13:11:10.507] envs[common]] [13:11:10.507] NAMES <- toupper(changed) [13:11:10.507] args <- list() [13:11:10.507] for (kk in seq_along(NAMES)) { [13:11:10.507] name <- changed[[kk]] [13:11:10.507] NAME <- NAMES[[kk]] [13:11:10.507] if (name != NAME && is.element(NAME, old_names)) [13:11:10.507] next [13:11:10.507] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.507] } [13:11:10.507] NAMES <- toupper(added) [13:11:10.507] for (kk in seq_along(NAMES)) { [13:11:10.507] name <- added[[kk]] [13:11:10.507] NAME <- NAMES[[kk]] [13:11:10.507] if (name != NAME && is.element(NAME, old_names)) [13:11:10.507] next [13:11:10.507] args[[name]] <- "" [13:11:10.507] } [13:11:10.507] NAMES <- toupper(removed) [13:11:10.507] for (kk in seq_along(NAMES)) { [13:11:10.507] name <- removed[[kk]] [13:11:10.507] NAME <- NAMES[[kk]] [13:11:10.507] if (name != NAME && is.element(NAME, old_names)) [13:11:10.507] next [13:11:10.507] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.507] } [13:11:10.507] if (length(args) > 0) [13:11:10.507] base::do.call(base::Sys.setenv, args = args) [13:11:10.507] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:10.507] } [13:11:10.507] else { [13:11:10.507] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:10.507] } [13:11:10.507] { [13:11:10.507] if (base::length(...future.futureOptionsAdded) > [13:11:10.507] 0L) { [13:11:10.507] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:10.507] base::names(opts) <- ...future.futureOptionsAdded [13:11:10.507] base::options(opts) [13:11:10.507] } [13:11:10.507] { [13:11:10.507] NULL [13:11:10.507] options(future.plan = NULL) [13:11:10.507] if (is.na(NA_character_)) [13:11:10.507] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.507] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:10.507] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:10.507] .init = FALSE) [13:11:10.507] } [13:11:10.507] } [13:11:10.507] } [13:11:10.507] }) [13:11:10.507] if (TRUE) { [13:11:10.507] base::sink(type = "output", split = FALSE) [13:11:10.507] if (TRUE) { [13:11:10.507] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:10.507] } [13:11:10.507] else { [13:11:10.507] ...future.result["stdout"] <- base::list(NULL) [13:11:10.507] } [13:11:10.507] base::close(...future.stdout) [13:11:10.507] ...future.stdout <- NULL [13:11:10.507] } [13:11:10.507] ...future.result$conditions <- ...future.conditions [13:11:10.507] ...future.result$finished <- base::Sys.time() [13:11:10.507] ...future.result [13:11:10.507] } [13:11:10.513] - Resolving 3 mirai_multisession futures[13:11:10.515] *** mirai_multisession(..., globals = TRUE) and errors[13:11:10.518] getGlobalsAndPackages() ... [13:11:10.518] Searching for globals... [13:11:10.520] - globals found: [2] '{', 'stop' [13:11:10.520] Searching for globals ... DONE [13:11:10.521] Resolving globals: FALSE [13:11:10.521] [13:11:10.521] [13:11:10.521] getGlobalsAndPackages() ... DONE [13:11:10.522] getGlobalsAndPackages() ... [13:11:10.522] [13:11:10.522] - globals: [0] [13:11:10.522] getGlobalsAndPackages() ... DONE [13:11:10.522] Packages needed by the future expression (n = 0): [13:11:10.523] Packages needed by future strategies (n = 0): [13:11:10.523] { [13:11:10.523] { [13:11:10.523] { [13:11:10.523] ...future.startTime <- base::Sys.time() [13:11:10.523] { [13:11:10.523] { [13:11:10.523] { [13:11:10.523] base::local({ [13:11:10.523] has_future <- base::requireNamespace("future", [13:11:10.523] quietly = TRUE) [13:11:10.523] if (has_future) { [13:11:10.523] ns <- base::getNamespace("future") [13:11:10.523] version <- ns[[".package"]][["version"]] [13:11:10.523] if (is.null(version)) [13:11:10.523] version <- utils::packageVersion("future") [13:11:10.523] } [13:11:10.523] else { [13:11:10.523] version <- NULL [13:11:10.523] } [13:11:10.523] if (!has_future || version < "1.8.0") { [13:11:10.523] info <- base::c(r_version = base::gsub("R version ", [13:11:10.523] "", base::R.version$version.string), [13:11:10.523] platform = base::sprintf("%s (%s-bit)", [13:11:10.523] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:10.523] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:10.523] "release", "version")], collapse = " "), [13:11:10.523] hostname = base::Sys.info()[["nodename"]]) [13:11:10.523] info <- base::sprintf("%s: %s", base::names(info), [13:11:10.523] info) [13:11:10.523] info <- base::paste(info, collapse = "; ") [13:11:10.523] if (!has_future) { [13:11:10.523] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:10.523] info) [13:11:10.523] } [13:11:10.523] else { [13:11:10.523] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:10.523] info, version) [13:11:10.523] } [13:11:10.523] base::stop(msg) [13:11:10.523] } [13:11:10.523] }) [13:11:10.523] } [13:11:10.523] ...future.strategy.old <- future::plan("list") [13:11:10.523] options(future.plan = NULL) [13:11:10.523] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.523] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:10.523] } [13:11:10.523] ...future.workdir <- getwd() [13:11:10.523] } [13:11:10.523] ...future.oldOptions <- base::as.list(base::.Options) [13:11:10.523] ...future.oldEnvVars <- base::Sys.getenv() [13:11:10.523] } [13:11:10.523] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:10.523] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:10.523] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:10.523] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:10.523] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:10.523] future.stdout.windows.reencode = NULL, width = 80L) [13:11:10.523] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:10.523] base::names(...future.oldOptions)) [13:11:10.523] } [13:11:10.523] if (FALSE) { [13:11:10.523] } [13:11:10.523] else { [13:11:10.523] if (TRUE) { [13:11:10.523] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:10.523] open = "w") [13:11:10.523] } [13:11:10.523] else { [13:11:10.523] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:10.523] windows = "NUL", "/dev/null"), open = "w") [13:11:10.523] } [13:11:10.523] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:10.523] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:10.523] base::sink(type = "output", split = FALSE) [13:11:10.523] base::close(...future.stdout) [13:11:10.523] }, add = TRUE) [13:11:10.523] } [13:11:10.523] ...future.frame <- base::sys.nframe() [13:11:10.523] ...future.conditions <- base::list() [13:11:10.523] ...future.rng <- base::globalenv()$.Random.seed [13:11:10.523] if (FALSE) { [13:11:10.523] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:10.523] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:10.523] } [13:11:10.523] ...future.result <- base::tryCatch({ [13:11:10.523] base::withCallingHandlers({ [13:11:10.523] ...future.value <- base::withVisible(base::local({ [13:11:10.523] stop("Whoops!") [13:11:10.523] 1 [13:11:10.523] })) [13:11:10.523] future::FutureResult(value = ...future.value$value, [13:11:10.523] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.523] ...future.rng), globalenv = if (FALSE) [13:11:10.523] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:10.523] ...future.globalenv.names)) [13:11:10.523] else NULL, started = ...future.startTime, version = "1.8") [13:11:10.523] }, condition = base::local({ [13:11:10.523] c <- base::c [13:11:10.523] inherits <- base::inherits [13:11:10.523] invokeRestart <- base::invokeRestart [13:11:10.523] length <- base::length [13:11:10.523] list <- base::list [13:11:10.523] seq.int <- base::seq.int [13:11:10.523] signalCondition <- base::signalCondition [13:11:10.523] sys.calls <- base::sys.calls [13:11:10.523] `[[` <- base::`[[` [13:11:10.523] `+` <- base::`+` [13:11:10.523] `<<-` <- base::`<<-` [13:11:10.523] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:10.523] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:10.523] 3L)] [13:11:10.523] } [13:11:10.523] function(cond) { [13:11:10.523] is_error <- inherits(cond, "error") [13:11:10.523] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:10.523] NULL) [13:11:10.523] if (is_error) { [13:11:10.523] sessionInformation <- function() { [13:11:10.523] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:10.523] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:10.523] search = base::search(), system = base::Sys.info()) [13:11:10.523] } [13:11:10.523] ...future.conditions[[length(...future.conditions) + [13:11:10.523] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:10.523] cond$call), session = sessionInformation(), [13:11:10.523] timestamp = base::Sys.time(), signaled = 0L) [13:11:10.523] signalCondition(cond) [13:11:10.523] } [13:11:10.523] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:10.523] signal <- FALSE && inherits(cond, character(0)) [13:11:10.523] ...future.conditions[[length(...future.conditions) + [13:11:10.523] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:10.523] if (FALSE && !signal) { [13:11:10.523] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.523] { [13:11:10.523] inherits <- base::inherits [13:11:10.523] invokeRestart <- base::invokeRestart [13:11:10.523] is.null <- base::is.null [13:11:10.523] muffled <- FALSE [13:11:10.523] if (inherits(cond, "message")) { [13:11:10.523] muffled <- grepl(pattern, "muffleMessage") [13:11:10.523] if (muffled) [13:11:10.523] invokeRestart("muffleMessage") [13:11:10.523] } [13:11:10.523] else if (inherits(cond, "warning")) { [13:11:10.523] muffled <- grepl(pattern, "muffleWarning") [13:11:10.523] if (muffled) [13:11:10.523] invokeRestart("muffleWarning") [13:11:10.523] } [13:11:10.523] else if (inherits(cond, "condition")) { [13:11:10.523] if (!is.null(pattern)) { [13:11:10.523] computeRestarts <- base::computeRestarts [13:11:10.523] grepl <- base::grepl [13:11:10.523] restarts <- computeRestarts(cond) [13:11:10.523] for (restart in restarts) { [13:11:10.523] name <- restart$name [13:11:10.523] if (is.null(name)) [13:11:10.523] next [13:11:10.523] if (!grepl(pattern, name)) [13:11:10.523] next [13:11:10.523] invokeRestart(restart) [13:11:10.523] muffled <- TRUE [13:11:10.523] break [13:11:10.523] } [13:11:10.523] } [13:11:10.523] } [13:11:10.523] invisible(muffled) [13:11:10.523] } [13:11:10.523] muffleCondition(cond, pattern = "^muffle") [13:11:10.523] } [13:11:10.523] } [13:11:10.523] else { [13:11:10.523] if (TRUE) { [13:11:10.523] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.523] { [13:11:10.523] inherits <- base::inherits [13:11:10.523] invokeRestart <- base::invokeRestart [13:11:10.523] is.null <- base::is.null [13:11:10.523] muffled <- FALSE [13:11:10.523] if (inherits(cond, "message")) { [13:11:10.523] muffled <- grepl(pattern, "muffleMessage") [13:11:10.523] if (muffled) [13:11:10.523] invokeRestart("muffleMessage") [13:11:10.523] } [13:11:10.523] else if (inherits(cond, "warning")) { [13:11:10.523] muffled <- grepl(pattern, "muffleWarning") [13:11:10.523] if (muffled) [13:11:10.523] invokeRestart("muffleWarning") [13:11:10.523] } [13:11:10.523] else if (inherits(cond, "condition")) { [13:11:10.523] if (!is.null(pattern)) { [13:11:10.523] computeRestarts <- base::computeRestarts [13:11:10.523] grepl <- base::grepl [13:11:10.523] restarts <- computeRestarts(cond) [13:11:10.523] for (restart in restarts) { [13:11:10.523] name <- restart$name [13:11:10.523] if (is.null(name)) [13:11:10.523] next [13:11:10.523] if (!grepl(pattern, name)) [13:11:10.523] next [13:11:10.523] invokeRestart(restart) [13:11:10.523] muffled <- TRUE [13:11:10.523] break [13:11:10.523] } [13:11:10.523] } [13:11:10.523] } [13:11:10.523] invisible(muffled) [13:11:10.523] } [13:11:10.523] muffleCondition(cond, pattern = "^muffle") [13:11:10.523] } [13:11:10.523] } [13:11:10.523] } [13:11:10.523] })) [13:11:10.523] }, error = function(ex) { [13:11:10.523] base::structure(base::list(value = NULL, visible = NULL, [13:11:10.523] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.523] ...future.rng), started = ...future.startTime, [13:11:10.523] finished = Sys.time(), session_uuid = NA_character_, [13:11:10.523] version = "1.8"), class = "FutureResult") [13:11:10.523] }, finally = { [13:11:10.523] if (!identical(...future.workdir, getwd())) [13:11:10.523] setwd(...future.workdir) [13:11:10.523] { [13:11:10.523] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:10.523] ...future.oldOptions$nwarnings <- NULL [13:11:10.523] } [13:11:10.523] base::options(...future.oldOptions) [13:11:10.523] if (.Platform$OS.type == "windows") { [13:11:10.523] old_names <- names(...future.oldEnvVars) [13:11:10.523] envs <- base::Sys.getenv() [13:11:10.523] names <- names(envs) [13:11:10.523] common <- intersect(names, old_names) [13:11:10.523] added <- setdiff(names, old_names) [13:11:10.523] removed <- setdiff(old_names, names) [13:11:10.523] changed <- common[...future.oldEnvVars[common] != [13:11:10.523] envs[common]] [13:11:10.523] NAMES <- toupper(changed) [13:11:10.523] args <- list() [13:11:10.523] for (kk in seq_along(NAMES)) { [13:11:10.523] name <- changed[[kk]] [13:11:10.523] NAME <- NAMES[[kk]] [13:11:10.523] if (name != NAME && is.element(NAME, old_names)) [13:11:10.523] next [13:11:10.523] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.523] } [13:11:10.523] NAMES <- toupper(added) [13:11:10.523] for (kk in seq_along(NAMES)) { [13:11:10.523] name <- added[[kk]] [13:11:10.523] NAME <- NAMES[[kk]] [13:11:10.523] if (name != NAME && is.element(NAME, old_names)) [13:11:10.523] next [13:11:10.523] args[[name]] <- "" [13:11:10.523] } [13:11:10.523] NAMES <- toupper(removed) [13:11:10.523] for (kk in seq_along(NAMES)) { [13:11:10.523] name <- removed[[kk]] [13:11:10.523] NAME <- NAMES[[kk]] [13:11:10.523] if (name != NAME && is.element(NAME, old_names)) [13:11:10.523] next [13:11:10.523] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.523] } [13:11:10.523] if (length(args) > 0) [13:11:10.523] base::do.call(base::Sys.setenv, args = args) [13:11:10.523] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:10.523] } [13:11:10.523] else { [13:11:10.523] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:10.523] } [13:11:10.523] { [13:11:10.523] if (base::length(...future.futureOptionsAdded) > [13:11:10.523] 0L) { [13:11:10.523] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:10.523] base::names(opts) <- ...future.futureOptionsAdded [13:11:10.523] base::options(opts) [13:11:10.523] } [13:11:10.523] { [13:11:10.523] NULL [13:11:10.523] options(future.plan = NULL) [13:11:10.523] if (is.na(NA_character_)) [13:11:10.523] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.523] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:10.523] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:10.523] .init = FALSE) [13:11:10.523] } [13:11:10.523] } [13:11:10.523] } [13:11:10.523] }) [13:11:10.523] if (TRUE) { [13:11:10.523] base::sink(type = "output", split = FALSE) [13:11:10.523] if (TRUE) { [13:11:10.523] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:10.523] } [13:11:10.523] else { [13:11:10.523] ...future.result["stdout"] <- base::list(NULL) [13:11:10.523] } [13:11:10.523] base::close(...future.stdout) [13:11:10.523] ...future.stdout <- NULL [13:11:10.523] } [13:11:10.523] ...future.result$conditions <- ...future.conditions [13:11:10.523] ...future.result$finished <- base::Sys.time() [13:11:10.523] ...future.result [13:11:10.523] } MiraiFuture: Label: '' Expression: { stop("Whoops!") 1 } Lazy evaluation: FALSE Asynchronous evaluation: TRUE Local evaluation: TRUE Environment: R_GlobalEnv Capture standard output: TRUE Capture condition classes: 'condition' (excluding 'nothing') Globals: Packages: L'Ecuyer-CMRG RNG seed: (seed = FALSE) [13:11:10.528] resolved() for 'MiraiFuture' ... [13:11:10.528] - state: 'running' [13:11:10.528] - run: TRUE [13:11:10.528] - result: 'NULL' [13:11:10.528] - resolved: FALSE [13:11:10.528] resolved() for 'MiraiFuture' ... done Resolved: FALSE Value: Conditions captured: Early signaling: FALSE Owner process: 00305072-cb3e-607d-66ad-ae248e29708e Class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:11:10.529] signalConditions() ... [13:11:10.529] - include = 'immediateCondition' [13:11:10.530] - exclude = [13:11:10.530] - resignal = FALSE [13:11:10.530] - Number of conditions: 1 [13:11:10.530] signalConditions() ... done [13:11:10.531] signalConditions() ... [13:11:10.531] - include = 'immediateCondition' [13:11:10.531] - exclude = [13:11:10.531] - resignal = FALSE [13:11:10.531] - Number of conditions: 1 [13:11:10.531] signalConditions() ... done [13:11:10.532] Future state: 'finished' [13:11:10.532] signalConditions() ... [13:11:10.532] - include = 'condition' [13:11:10.532] - exclude = 'immediateCondition' [13:11:10.532] - resignal = TRUE [13:11:10.532] - Number of conditions: 1 [13:11:10.532] - Condition #1: 'simpleError', 'error', 'condition' [13:11:10.533] signalConditions() ... done [13:11:10.533] signalConditions() ... [13:11:10.533] - include = 'immediateCondition' [13:11:10.534] - exclude = [13:11:10.534] - resignal = FALSE [13:11:10.534] - Number of conditions: 1 [13:11:10.534] signalConditions() ... done [13:11:10.534] Future state: 'finished' [13:11:10.534] signalConditions() ... [13:11:10.535] - include = 'condition' [13:11:10.535] - exclude = 'immediateCondition' [13:11:10.535] - resignal = TRUE [13:11:10.535] - Number of conditions: 1 [13:11:10.535] - Condition #1: 'simpleError', 'error', 'condition' [13:11:10.535] signalConditions() ... done *** mirai_multisession(..., workers = 1L) ... [13:11:10.536] getGlobalsAndPackages() ... [13:11:10.536] Searching for globals... [13:11:10.537] - globals found: [4] '{', '*', 'a', 'b' [13:11:10.537] Searching for globals ... DONE [13:11:10.537] Resolving globals: FALSE [13:11:10.538] The total size of the 2 globals is 112 bytes (112 bytes) [13:11:10.538] The total size of the 2 globals exported for future expression ('{; a * b; }') is 112 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There are two globals: 'a' (56 bytes of class 'numeric') and 'b' (56 bytes of class 'numeric') [13:11:10.539] - globals: [2] 'a', 'b' [13:11:10.539] [13:11:10.539] getGlobalsAndPackages() ... DONE [13:11:10.539] getGlobalsAndPackages() ... [13:11:10.539] - globals passed as-is: [2] 'a', 'b' [13:11:10.539] Resolving globals: FALSE [13:11:10.540] - globals: [2] 'a', 'b' [13:11:10.540] [13:11:10.540] getGlobalsAndPackages() ... DONE [13:11:10.540] Packages needed by the future expression (n = 0): [13:11:10.541] Packages needed by future strategies (n = 0): [13:11:10.541] { [13:11:10.541] { [13:11:10.541] { [13:11:10.541] ...future.startTime <- base::Sys.time() [13:11:10.541] { [13:11:10.541] { [13:11:10.541] { [13:11:10.541] base::local({ [13:11:10.541] has_future <- base::requireNamespace("future", [13:11:10.541] quietly = TRUE) [13:11:10.541] if (has_future) { [13:11:10.541] ns <- base::getNamespace("future") [13:11:10.541] version <- ns[[".package"]][["version"]] [13:11:10.541] if (is.null(version)) [13:11:10.541] version <- utils::packageVersion("future") [13:11:10.541] } [13:11:10.541] else { [13:11:10.541] version <- NULL [13:11:10.541] } [13:11:10.541] if (!has_future || version < "1.8.0") { [13:11:10.541] info <- base::c(r_version = base::gsub("R version ", [13:11:10.541] "", base::R.version$version.string), [13:11:10.541] platform = base::sprintf("%s (%s-bit)", [13:11:10.541] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:10.541] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:10.541] "release", "version")], collapse = " "), [13:11:10.541] hostname = base::Sys.info()[["nodename"]]) [13:11:10.541] info <- base::sprintf("%s: %s", base::names(info), [13:11:10.541] info) [13:11:10.541] info <- base::paste(info, collapse = "; ") [13:11:10.541] if (!has_future) { [13:11:10.541] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:10.541] info) [13:11:10.541] } [13:11:10.541] else { [13:11:10.541] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:10.541] info, version) [13:11:10.541] } [13:11:10.541] base::stop(msg) [13:11:10.541] } [13:11:10.541] }) [13:11:10.541] } [13:11:10.541] ...future.strategy.old <- future::plan("list") [13:11:10.541] options(future.plan = NULL) [13:11:10.541] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.541] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:10.541] } [13:11:10.541] ...future.workdir <- getwd() [13:11:10.541] } [13:11:10.541] ...future.oldOptions <- base::as.list(base::.Options) [13:11:10.541] ...future.oldEnvVars <- base::Sys.getenv() [13:11:10.541] } [13:11:10.541] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:10.541] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:10.541] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:10.541] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:10.541] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:10.541] future.stdout.windows.reencode = NULL, width = 80L) [13:11:10.541] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:10.541] base::names(...future.oldOptions)) [13:11:10.541] } [13:11:10.541] if (FALSE) { [13:11:10.541] } [13:11:10.541] else { [13:11:10.541] if (TRUE) { [13:11:10.541] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:10.541] open = "w") [13:11:10.541] } [13:11:10.541] else { [13:11:10.541] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:10.541] windows = "NUL", "/dev/null"), open = "w") [13:11:10.541] } [13:11:10.541] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:10.541] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:10.541] base::sink(type = "output", split = FALSE) [13:11:10.541] base::close(...future.stdout) [13:11:10.541] }, add = TRUE) [13:11:10.541] } [13:11:10.541] ...future.frame <- base::sys.nframe() [13:11:10.541] ...future.conditions <- base::list() [13:11:10.541] ...future.rng <- base::globalenv()$.Random.seed [13:11:10.541] if (FALSE) { [13:11:10.541] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:10.541] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:10.541] } [13:11:10.541] ...future.result <- base::tryCatch({ [13:11:10.541] base::withCallingHandlers({ [13:11:10.541] ...future.value <- base::withVisible(base::local({ [13:11:10.541] a * b [13:11:10.541] })) [13:11:10.541] future::FutureResult(value = ...future.value$value, [13:11:10.541] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.541] ...future.rng), globalenv = if (FALSE) [13:11:10.541] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:10.541] ...future.globalenv.names)) [13:11:10.541] else NULL, started = ...future.startTime, version = "1.8") [13:11:10.541] }, condition = base::local({ [13:11:10.541] c <- base::c [13:11:10.541] inherits <- base::inherits [13:11:10.541] invokeRestart <- base::invokeRestart [13:11:10.541] length <- base::length [13:11:10.541] list <- base::list [13:11:10.541] seq.int <- base::seq.int [13:11:10.541] signalCondition <- base::signalCondition [13:11:10.541] sys.calls <- base::sys.calls [13:11:10.541] `[[` <- base::`[[` [13:11:10.541] `+` <- base::`+` [13:11:10.541] `<<-` <- base::`<<-` [13:11:10.541] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:10.541] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:10.541] 3L)] [13:11:10.541] } [13:11:10.541] function(cond) { [13:11:10.541] is_error <- inherits(cond, "error") [13:11:10.541] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:10.541] NULL) [13:11:10.541] if (is_error) { [13:11:10.541] sessionInformation <- function() { [13:11:10.541] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:10.541] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:10.541] search = base::search(), system = base::Sys.info()) [13:11:10.541] } [13:11:10.541] ...future.conditions[[length(...future.conditions) + [13:11:10.541] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:10.541] cond$call), session = sessionInformation(), [13:11:10.541] timestamp = base::Sys.time(), signaled = 0L) [13:11:10.541] signalCondition(cond) [13:11:10.541] } [13:11:10.541] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:10.541] signal <- FALSE && inherits(cond, character(0)) [13:11:10.541] ...future.conditions[[length(...future.conditions) + [13:11:10.541] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:10.541] if (FALSE && !signal) { [13:11:10.541] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.541] { [13:11:10.541] inherits <- base::inherits [13:11:10.541] invokeRestart <- base::invokeRestart [13:11:10.541] is.null <- base::is.null [13:11:10.541] muffled <- FALSE [13:11:10.541] if (inherits(cond, "message")) { [13:11:10.541] muffled <- grepl(pattern, "muffleMessage") [13:11:10.541] if (muffled) [13:11:10.541] invokeRestart("muffleMessage") [13:11:10.541] } [13:11:10.541] else if (inherits(cond, "warning")) { [13:11:10.541] muffled <- grepl(pattern, "muffleWarning") [13:11:10.541] if (muffled) [13:11:10.541] invokeRestart("muffleWarning") [13:11:10.541] } [13:11:10.541] else if (inherits(cond, "condition")) { [13:11:10.541] if (!is.null(pattern)) { [13:11:10.541] computeRestarts <- base::computeRestarts [13:11:10.541] grepl <- base::grepl [13:11:10.541] restarts <- computeRestarts(cond) [13:11:10.541] for (restart in restarts) { [13:11:10.541] name <- restart$name [13:11:10.541] if (is.null(name)) [13:11:10.541] next [13:11:10.541] if (!grepl(pattern, name)) [13:11:10.541] next [13:11:10.541] invokeRestart(restart) [13:11:10.541] muffled <- TRUE [13:11:10.541] break [13:11:10.541] } [13:11:10.541] } [13:11:10.541] } [13:11:10.541] invisible(muffled) [13:11:10.541] } [13:11:10.541] muffleCondition(cond, pattern = "^muffle") [13:11:10.541] } [13:11:10.541] } [13:11:10.541] else { [13:11:10.541] if (TRUE) { [13:11:10.541] muffleCondition <- function (cond, pattern = "^muffle") [13:11:10.541] { [13:11:10.541] inherits <- base::inherits [13:11:10.541] invokeRestart <- base::invokeRestart [13:11:10.541] is.null <- base::is.null [13:11:10.541] muffled <- FALSE [13:11:10.541] if (inherits(cond, "message")) { [13:11:10.541] muffled <- grepl(pattern, "muffleMessage") [13:11:10.541] if (muffled) [13:11:10.541] invokeRestart("muffleMessage") [13:11:10.541] } [13:11:10.541] else if (inherits(cond, "warning")) { [13:11:10.541] muffled <- grepl(pattern, "muffleWarning") [13:11:10.541] if (muffled) [13:11:10.541] invokeRestart("muffleWarning") [13:11:10.541] } [13:11:10.541] else if (inherits(cond, "condition")) { [13:11:10.541] if (!is.null(pattern)) { [13:11:10.541] computeRestarts <- base::computeRestarts [13:11:10.541] grepl <- base::grepl [13:11:10.541] restarts <- computeRestarts(cond) [13:11:10.541] for (restart in restarts) { [13:11:10.541] name <- restart$name [13:11:10.541] if (is.null(name)) [13:11:10.541] next [13:11:10.541] if (!grepl(pattern, name)) [13:11:10.541] next [13:11:10.541] invokeRestart(restart) [13:11:10.541] muffled <- TRUE [13:11:10.541] break [13:11:10.541] } [13:11:10.541] } [13:11:10.541] } [13:11:10.541] invisible(muffled) [13:11:10.541] } [13:11:10.541] muffleCondition(cond, pattern = "^muffle") [13:11:10.541] } [13:11:10.541] } [13:11:10.541] } [13:11:10.541] })) [13:11:10.541] }, error = function(ex) { [13:11:10.541] base::structure(base::list(value = NULL, visible = NULL, [13:11:10.541] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:10.541] ...future.rng), started = ...future.startTime, [13:11:10.541] finished = Sys.time(), session_uuid = NA_character_, [13:11:10.541] version = "1.8"), class = "FutureResult") [13:11:10.541] }, finally = { [13:11:10.541] if (!identical(...future.workdir, getwd())) [13:11:10.541] setwd(...future.workdir) [13:11:10.541] { [13:11:10.541] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:10.541] ...future.oldOptions$nwarnings <- NULL [13:11:10.541] } [13:11:10.541] base::options(...future.oldOptions) [13:11:10.541] if (.Platform$OS.type == "windows") { [13:11:10.541] old_names <- names(...future.oldEnvVars) [13:11:10.541] envs <- base::Sys.getenv() [13:11:10.541] names <- names(envs) [13:11:10.541] common <- intersect(names, old_names) [13:11:10.541] added <- setdiff(names, old_names) [13:11:10.541] removed <- setdiff(old_names, names) [13:11:10.541] changed <- common[...future.oldEnvVars[common] != [13:11:10.541] envs[common]] [13:11:10.541] NAMES <- toupper(changed) [13:11:10.541] args <- list() [13:11:10.541] for (kk in seq_along(NAMES)) { [13:11:10.541] name <- changed[[kk]] [13:11:10.541] NAME <- NAMES[[kk]] [13:11:10.541] if (name != NAME && is.element(NAME, old_names)) [13:11:10.541] next [13:11:10.541] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.541] } [13:11:10.541] NAMES <- toupper(added) [13:11:10.541] for (kk in seq_along(NAMES)) { [13:11:10.541] name <- added[[kk]] [13:11:10.541] NAME <- NAMES[[kk]] [13:11:10.541] if (name != NAME && is.element(NAME, old_names)) [13:11:10.541] next [13:11:10.541] args[[name]] <- "" [13:11:10.541] } [13:11:10.541] NAMES <- toupper(removed) [13:11:10.541] for (kk in seq_along(NAMES)) { [13:11:10.541] name <- removed[[kk]] [13:11:10.541] NAME <- NAMES[[kk]] [13:11:10.541] if (name != NAME && is.element(NAME, old_names)) [13:11:10.541] next [13:11:10.541] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:10.541] } [13:11:10.541] if (length(args) > 0) [13:11:10.541] base::do.call(base::Sys.setenv, args = args) [13:11:10.541] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:10.541] } [13:11:10.541] else { [13:11:10.541] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:10.541] } [13:11:10.541] { [13:11:10.541] if (base::length(...future.futureOptionsAdded) > [13:11:10.541] 0L) { [13:11:10.541] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:10.541] base::names(opts) <- ...future.futureOptionsAdded [13:11:10.541] base::options(opts) [13:11:10.541] } [13:11:10.541] { [13:11:10.541] NULL [13:11:10.541] options(future.plan = NULL) [13:11:10.541] if (is.na(NA_character_)) [13:11:10.541] Sys.unsetenv("R_FUTURE_PLAN") [13:11:10.541] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:10.541] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:10.541] .init = FALSE) [13:11:10.541] } [13:11:10.541] } [13:11:10.541] } [13:11:10.541] }) [13:11:10.541] if (TRUE) { [13:11:10.541] base::sink(type = "output", split = FALSE) [13:11:10.541] if (TRUE) { [13:11:10.541] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:10.541] } [13:11:10.541] else { [13:11:10.541] ...future.result["stdout"] <- base::list(NULL) [13:11:10.541] } [13:11:10.541] base::close(...future.stdout) [13:11:10.541] ...future.stdout <- NULL [13:11:10.541] } [13:11:10.541] ...future.result$conditions <- ...future.conditions [13:11:10.541] ...future.result$finished <- base::Sys.time() [13:11:10.541] ...future.result [13:11:10.541] } [1] 6 *** mirai_multisession(..., workers = 1L) ... DONE [13:11:10.547] Testing with 1 cores ... DONE> > message("*** mirai_multisession() ... DONE") *** mirai_multisession() ... DONE > > source("incl/end.R") > > proc.time() user system elapsed 0.53 0.06 1.17