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:31:10.766] plan(): Setting new future strategy stack: [13:31:10.767] List of future strategies: [13:31:10.767] 1. mirai_multisession: [13:31:10.767] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:31:10.767] - tweaked: FALSE [13:31:10.767] - call: future::plan(future.mirai::mirai_multisession) [13:31:10.779] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:31:10.780] < mirai | $data > [13:31:10.784] getGlobalsAndPackages() ... [13:31:10.785] Not searching for globals [13:31:10.785] - globals: [0] [13:31:10.785] getGlobalsAndPackages() ... DONE [13:31:10.786] getGlobalsAndPackages() ... [13:31:10.786] [13:31:10.786] - globals: [0] [13:31:10.786] getGlobalsAndPackages() ... DONE [13:31:11.065] Packages needed by the future expression (n = 0): [13:31:11.065] Packages needed by future strategies (n = 0): [13:31:11.066] { [13:31:11.066] { [13:31:11.066] { [13:31:11.066] ...future.startTime <- base::Sys.time() [13:31:11.066] { [13:31:11.066] { [13:31:11.066] { [13:31:11.066] base::local({ [13:31:11.066] has_future <- base::requireNamespace("future", [13:31:11.066] quietly = TRUE) [13:31:11.066] if (has_future) { [13:31:11.066] ns <- base::getNamespace("future") [13:31:11.066] version <- ns[[".package"]][["version"]] [13:31:11.066] if (is.null(version)) [13:31:11.066] version <- utils::packageVersion("future") [13:31:11.066] } [13:31:11.066] else { [13:31:11.066] version <- NULL [13:31:11.066] } [13:31:11.066] if (!has_future || version < "1.8.0") { [13:31:11.066] info <- base::c(r_version = base::gsub("R version ", [13:31:11.066] "", base::R.version$version.string), [13:31:11.066] platform = base::sprintf("%s (%s-bit)", [13:31:11.066] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:11.066] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:11.066] "release", "version")], collapse = " "), [13:31:11.066] hostname = base::Sys.info()[["nodename"]]) [13:31:11.066] info <- base::sprintf("%s: %s", base::names(info), [13:31:11.066] info) [13:31:11.066] info <- base::paste(info, collapse = "; ") [13:31:11.066] if (!has_future) { [13:31:11.066] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:11.066] info) [13:31:11.066] } [13:31:11.066] else { [13:31:11.066] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:11.066] info, version) [13:31:11.066] } [13:31:11.066] base::stop(msg) [13:31:11.066] } [13:31:11.066] }) [13:31:11.066] } [13:31:11.066] ...future.strategy.old <- future::plan("list") [13:31:11.066] options(future.plan = NULL) [13:31:11.066] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.066] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:11.066] } [13:31:11.066] ...future.workdir <- getwd() [13:31:11.066] } [13:31:11.066] ...future.oldOptions <- base::as.list(base::.Options) [13:31:11.066] ...future.oldEnvVars <- base::Sys.getenv() [13:31:11.066] } [13:31:11.066] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:11.066] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:11.066] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:11.066] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:11.066] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:11.066] future.stdout.windows.reencode = NULL, width = 80L) [13:31:11.066] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:11.066] base::names(...future.oldOptions)) [13:31:11.066] } [13:31:11.066] if (FALSE) { [13:31:11.066] } [13:31:11.066] else { [13:31:11.066] if (TRUE) { [13:31:11.066] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:11.066] open = "w") [13:31:11.066] } [13:31:11.066] else { [13:31:11.066] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:11.066] windows = "NUL", "/dev/null"), open = "w") [13:31:11.066] } [13:31:11.066] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:11.066] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:11.066] base::sink(type = "output", split = FALSE) [13:31:11.066] base::close(...future.stdout) [13:31:11.066] }, add = TRUE) [13:31:11.066] } [13:31:11.066] ...future.frame <- base::sys.nframe() [13:31:11.066] ...future.conditions <- base::list() [13:31:11.066] ...future.rng <- base::globalenv()$.Random.seed [13:31:11.066] if (FALSE) { [13:31:11.066] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:11.066] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:11.066] } [13:31:11.066] ...future.result <- base::tryCatch({ [13:31:11.066] base::withCallingHandlers({ [13:31:11.066] ...future.value <- base::withVisible(base::local(NA)) [13:31:11.066] future::FutureResult(value = ...future.value$value, [13:31:11.066] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.066] ...future.rng), globalenv = if (FALSE) [13:31:11.066] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:11.066] ...future.globalenv.names)) [13:31:11.066] else NULL, started = ...future.startTime, version = "1.8") [13:31:11.066] }, condition = base::local({ [13:31:11.066] c <- base::c [13:31:11.066] inherits <- base::inherits [13:31:11.066] invokeRestart <- base::invokeRestart [13:31:11.066] length <- base::length [13:31:11.066] list <- base::list [13:31:11.066] seq.int <- base::seq.int [13:31:11.066] signalCondition <- base::signalCondition [13:31:11.066] sys.calls <- base::sys.calls [13:31:11.066] `[[` <- base::`[[` [13:31:11.066] `+` <- base::`+` [13:31:11.066] `<<-` <- base::`<<-` [13:31:11.066] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:11.066] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:11.066] 3L)] [13:31:11.066] } [13:31:11.066] function(cond) { [13:31:11.066] is_error <- inherits(cond, "error") [13:31:11.066] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:11.066] NULL) [13:31:11.066] if (is_error) { [13:31:11.066] sessionInformation <- function() { [13:31:11.066] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:11.066] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:11.066] search = base::search(), system = base::Sys.info()) [13:31:11.066] } [13:31:11.066] ...future.conditions[[length(...future.conditions) + [13:31:11.066] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:11.066] cond$call), session = sessionInformation(), [13:31:11.066] timestamp = base::Sys.time(), signaled = 0L) [13:31:11.066] signalCondition(cond) [13:31:11.066] } [13:31:11.066] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:11.066] signal <- FALSE && inherits(cond, character(0)) [13:31:11.066] ...future.conditions[[length(...future.conditions) + [13:31:11.066] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:11.066] if (FALSE && !signal) { [13:31:11.066] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.066] { [13:31:11.066] inherits <- base::inherits [13:31:11.066] invokeRestart <- base::invokeRestart [13:31:11.066] is.null <- base::is.null [13:31:11.066] muffled <- FALSE [13:31:11.066] if (inherits(cond, "message")) { [13:31:11.066] muffled <- grepl(pattern, "muffleMessage") [13:31:11.066] if (muffled) [13:31:11.066] invokeRestart("muffleMessage") [13:31:11.066] } [13:31:11.066] else if (inherits(cond, "warning")) { [13:31:11.066] muffled <- grepl(pattern, "muffleWarning") [13:31:11.066] if (muffled) [13:31:11.066] invokeRestart("muffleWarning") [13:31:11.066] } [13:31:11.066] else if (inherits(cond, "condition")) { [13:31:11.066] if (!is.null(pattern)) { [13:31:11.066] computeRestarts <- base::computeRestarts [13:31:11.066] grepl <- base::grepl [13:31:11.066] restarts <- computeRestarts(cond) [13:31:11.066] for (restart in restarts) { [13:31:11.066] name <- restart$name [13:31:11.066] if (is.null(name)) [13:31:11.066] next [13:31:11.066] if (!grepl(pattern, name)) [13:31:11.066] next [13:31:11.066] invokeRestart(restart) [13:31:11.066] muffled <- TRUE [13:31:11.066] break [13:31:11.066] } [13:31:11.066] } [13:31:11.066] } [13:31:11.066] invisible(muffled) [13:31:11.066] } [13:31:11.066] muffleCondition(cond, pattern = "^muffle") [13:31:11.066] } [13:31:11.066] } [13:31:11.066] else { [13:31:11.066] if (TRUE) { [13:31:11.066] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.066] { [13:31:11.066] inherits <- base::inherits [13:31:11.066] invokeRestart <- base::invokeRestart [13:31:11.066] is.null <- base::is.null [13:31:11.066] muffled <- FALSE [13:31:11.066] if (inherits(cond, "message")) { [13:31:11.066] muffled <- grepl(pattern, "muffleMessage") [13:31:11.066] if (muffled) [13:31:11.066] invokeRestart("muffleMessage") [13:31:11.066] } [13:31:11.066] else if (inherits(cond, "warning")) { [13:31:11.066] muffled <- grepl(pattern, "muffleWarning") [13:31:11.066] if (muffled) [13:31:11.066] invokeRestart("muffleWarning") [13:31:11.066] } [13:31:11.066] else if (inherits(cond, "condition")) { [13:31:11.066] if (!is.null(pattern)) { [13:31:11.066] computeRestarts <- base::computeRestarts [13:31:11.066] grepl <- base::grepl [13:31:11.066] restarts <- computeRestarts(cond) [13:31:11.066] for (restart in restarts) { [13:31:11.066] name <- restart$name [13:31:11.066] if (is.null(name)) [13:31:11.066] next [13:31:11.066] if (!grepl(pattern, name)) [13:31:11.066] next [13:31:11.066] invokeRestart(restart) [13:31:11.066] muffled <- TRUE [13:31:11.066] break [13:31:11.066] } [13:31:11.066] } [13:31:11.066] } [13:31:11.066] invisible(muffled) [13:31:11.066] } [13:31:11.066] muffleCondition(cond, pattern = "^muffle") [13:31:11.066] } [13:31:11.066] } [13:31:11.066] } [13:31:11.066] })) [13:31:11.066] }, error = function(ex) { [13:31:11.066] base::structure(base::list(value = NULL, visible = NULL, [13:31:11.066] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.066] ...future.rng), started = ...future.startTime, [13:31:11.066] finished = Sys.time(), session_uuid = NA_character_, [13:31:11.066] version = "1.8"), class = "FutureResult") [13:31:11.066] }, finally = { [13:31:11.066] if (!identical(...future.workdir, getwd())) [13:31:11.066] setwd(...future.workdir) [13:31:11.066] { [13:31:11.066] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:11.066] ...future.oldOptions$nwarnings <- NULL [13:31:11.066] } [13:31:11.066] base::options(...future.oldOptions) [13:31:11.066] if (.Platform$OS.type == "windows") { [13:31:11.066] old_names <- names(...future.oldEnvVars) [13:31:11.066] envs <- base::Sys.getenv() [13:31:11.066] names <- names(envs) [13:31:11.066] common <- intersect(names, old_names) [13:31:11.066] added <- setdiff(names, old_names) [13:31:11.066] removed <- setdiff(old_names, names) [13:31:11.066] changed <- common[...future.oldEnvVars[common] != [13:31:11.066] envs[common]] [13:31:11.066] NAMES <- toupper(changed) [13:31:11.066] args <- list() [13:31:11.066] for (kk in seq_along(NAMES)) { [13:31:11.066] name <- changed[[kk]] [13:31:11.066] NAME <- NAMES[[kk]] [13:31:11.066] if (name != NAME && is.element(NAME, old_names)) [13:31:11.066] next [13:31:11.066] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.066] } [13:31:11.066] NAMES <- toupper(added) [13:31:11.066] for (kk in seq_along(NAMES)) { [13:31:11.066] name <- added[[kk]] [13:31:11.066] NAME <- NAMES[[kk]] [13:31:11.066] if (name != NAME && is.element(NAME, old_names)) [13:31:11.066] next [13:31:11.066] args[[name]] <- "" [13:31:11.066] } [13:31:11.066] NAMES <- toupper(removed) [13:31:11.066] for (kk in seq_along(NAMES)) { [13:31:11.066] name <- removed[[kk]] [13:31:11.066] NAME <- NAMES[[kk]] [13:31:11.066] if (name != NAME && is.element(NAME, old_names)) [13:31:11.066] next [13:31:11.066] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.066] } [13:31:11.066] if (length(args) > 0) [13:31:11.066] base::do.call(base::Sys.setenv, args = args) [13:31:11.066] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:11.066] } [13:31:11.066] else { [13:31:11.066] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:11.066] } [13:31:11.066] { [13:31:11.066] if (base::length(...future.futureOptionsAdded) > [13:31:11.066] 0L) { [13:31:11.066] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:11.066] base::names(opts) <- ...future.futureOptionsAdded [13:31:11.066] base::options(opts) [13:31:11.066] } [13:31:11.066] { [13:31:11.066] NULL [13:31:11.066] options(future.plan = NULL) [13:31:11.066] if (is.na(NA_character_)) [13:31:11.066] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.066] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:11.066] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:11.066] .init = FALSE) [13:31:11.066] } [13:31:11.066] } [13:31:11.066] } [13:31:11.066] }) [13:31:11.066] if (TRUE) { [13:31:11.066] base::sink(type = "output", split = FALSE) [13:31:11.066] if (TRUE) { [13:31:11.066] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:11.066] } [13:31:11.066] else { [13:31:11.066] ...future.result["stdout"] <- base::list(NULL) [13:31:11.066] } [13:31:11.066] base::close(...future.stdout) [13:31:11.066] ...future.stdout <- NULL [13:31:11.066] } [13:31:11.066] ...future.result$conditions <- ...future.conditions [13:31:11.066] ...future.result$finished <- base::Sys.time() [13:31:11.066] ...future.result [13:31:11.066] } [13:31:11.167] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:31:11.168] 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:31:11.239] Testing with 1 cores ...[13:31:11.239] *** mirai_multisession(..., globals = FALSE) without globals[13:31:11.241] getGlobalsAndPackages() ... [13:31:11.241] Not searching for globals [13:31:11.242] - globals: [0] [13:31:11.242] getGlobalsAndPackages() ... DONE [13:31:11.242] getGlobalsAndPackages() ... [13:31:11.242] [13:31:11.242] - globals: [0] [13:31:11.242] getGlobalsAndPackages() ... DONE [13:31:11.382] Packages needed by the future expression (n = 0): [13:31:11.382] Packages needed by future strategies (n = 0): [13:31:11.383] { [13:31:11.383] { [13:31:11.383] { [13:31:11.383] ...future.startTime <- base::Sys.time() [13:31:11.383] { [13:31:11.383] { [13:31:11.383] { [13:31:11.383] base::local({ [13:31:11.383] has_future <- base::requireNamespace("future", [13:31:11.383] quietly = TRUE) [13:31:11.383] if (has_future) { [13:31:11.383] ns <- base::getNamespace("future") [13:31:11.383] version <- ns[[".package"]][["version"]] [13:31:11.383] if (is.null(version)) [13:31:11.383] version <- utils::packageVersion("future") [13:31:11.383] } [13:31:11.383] else { [13:31:11.383] version <- NULL [13:31:11.383] } [13:31:11.383] if (!has_future || version < "1.8.0") { [13:31:11.383] info <- base::c(r_version = base::gsub("R version ", [13:31:11.383] "", base::R.version$version.string), [13:31:11.383] platform = base::sprintf("%s (%s-bit)", [13:31:11.383] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:11.383] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:11.383] "release", "version")], collapse = " "), [13:31:11.383] hostname = base::Sys.info()[["nodename"]]) [13:31:11.383] info <- base::sprintf("%s: %s", base::names(info), [13:31:11.383] info) [13:31:11.383] info <- base::paste(info, collapse = "; ") [13:31:11.383] if (!has_future) { [13:31:11.383] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:11.383] info) [13:31:11.383] } [13:31:11.383] else { [13:31:11.383] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:11.383] info, version) [13:31:11.383] } [13:31:11.383] base::stop(msg) [13:31:11.383] } [13:31:11.383] }) [13:31:11.383] } [13:31:11.383] ...future.strategy.old <- future::plan("list") [13:31:11.383] options(future.plan = NULL) [13:31:11.383] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.383] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:11.383] } [13:31:11.383] ...future.workdir <- getwd() [13:31:11.383] } [13:31:11.383] ...future.oldOptions <- base::as.list(base::.Options) [13:31:11.383] ...future.oldEnvVars <- base::Sys.getenv() [13:31:11.383] } [13:31:11.383] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:11.383] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:11.383] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:11.383] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:11.383] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:11.383] future.stdout.windows.reencode = NULL, width = 80L) [13:31:11.383] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:11.383] base::names(...future.oldOptions)) [13:31:11.383] } [13:31:11.383] if (FALSE) { [13:31:11.383] } [13:31:11.383] else { [13:31:11.383] if (TRUE) { [13:31:11.383] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:11.383] open = "w") [13:31:11.383] } [13:31:11.383] else { [13:31:11.383] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:11.383] windows = "NUL", "/dev/null"), open = "w") [13:31:11.383] } [13:31:11.383] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:11.383] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:11.383] base::sink(type = "output", split = FALSE) [13:31:11.383] base::close(...future.stdout) [13:31:11.383] }, add = TRUE) [13:31:11.383] } [13:31:11.383] ...future.frame <- base::sys.nframe() [13:31:11.383] ...future.conditions <- base::list() [13:31:11.383] ...future.rng <- base::globalenv()$.Random.seed [13:31:11.383] if (FALSE) { [13:31:11.383] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:11.383] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:11.383] } [13:31:11.383] ...future.result <- base::tryCatch({ [13:31:11.383] base::withCallingHandlers({ [13:31:11.383] ...future.value <- base::withVisible(base::local({ [13:31:11.383] 42L [13:31:11.383] })) [13:31:11.383] future::FutureResult(value = ...future.value$value, [13:31:11.383] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.383] ...future.rng), globalenv = if (FALSE) [13:31:11.383] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:11.383] ...future.globalenv.names)) [13:31:11.383] else NULL, started = ...future.startTime, version = "1.8") [13:31:11.383] }, condition = base::local({ [13:31:11.383] c <- base::c [13:31:11.383] inherits <- base::inherits [13:31:11.383] invokeRestart <- base::invokeRestart [13:31:11.383] length <- base::length [13:31:11.383] list <- base::list [13:31:11.383] seq.int <- base::seq.int [13:31:11.383] signalCondition <- base::signalCondition [13:31:11.383] sys.calls <- base::sys.calls [13:31:11.383] `[[` <- base::`[[` [13:31:11.383] `+` <- base::`+` [13:31:11.383] `<<-` <- base::`<<-` [13:31:11.383] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:11.383] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:11.383] 3L)] [13:31:11.383] } [13:31:11.383] function(cond) { [13:31:11.383] is_error <- inherits(cond, "error") [13:31:11.383] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:11.383] NULL) [13:31:11.383] if (is_error) { [13:31:11.383] sessionInformation <- function() { [13:31:11.383] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:11.383] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:11.383] search = base::search(), system = base::Sys.info()) [13:31:11.383] } [13:31:11.383] ...future.conditions[[length(...future.conditions) + [13:31:11.383] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:11.383] cond$call), session = sessionInformation(), [13:31:11.383] timestamp = base::Sys.time(), signaled = 0L) [13:31:11.383] signalCondition(cond) [13:31:11.383] } [13:31:11.383] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:11.383] signal <- FALSE && inherits(cond, character(0)) [13:31:11.383] ...future.conditions[[length(...future.conditions) + [13:31:11.383] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:11.383] if (FALSE && !signal) { [13:31:11.383] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.383] { [13:31:11.383] inherits <- base::inherits [13:31:11.383] invokeRestart <- base::invokeRestart [13:31:11.383] is.null <- base::is.null [13:31:11.383] muffled <- FALSE [13:31:11.383] if (inherits(cond, "message")) { [13:31:11.383] muffled <- grepl(pattern, "muffleMessage") [13:31:11.383] if (muffled) [13:31:11.383] invokeRestart("muffleMessage") [13:31:11.383] } [13:31:11.383] else if (inherits(cond, "warning")) { [13:31:11.383] muffled <- grepl(pattern, "muffleWarning") [13:31:11.383] if (muffled) [13:31:11.383] invokeRestart("muffleWarning") [13:31:11.383] } [13:31:11.383] else if (inherits(cond, "condition")) { [13:31:11.383] if (!is.null(pattern)) { [13:31:11.383] computeRestarts <- base::computeRestarts [13:31:11.383] grepl <- base::grepl [13:31:11.383] restarts <- computeRestarts(cond) [13:31:11.383] for (restart in restarts) { [13:31:11.383] name <- restart$name [13:31:11.383] if (is.null(name)) [13:31:11.383] next [13:31:11.383] if (!grepl(pattern, name)) [13:31:11.383] next [13:31:11.383] invokeRestart(restart) [13:31:11.383] muffled <- TRUE [13:31:11.383] break [13:31:11.383] } [13:31:11.383] } [13:31:11.383] } [13:31:11.383] invisible(muffled) [13:31:11.383] } [13:31:11.383] muffleCondition(cond, pattern = "^muffle") [13:31:11.383] } [13:31:11.383] } [13:31:11.383] else { [13:31:11.383] if (TRUE) { [13:31:11.383] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.383] { [13:31:11.383] inherits <- base::inherits [13:31:11.383] invokeRestart <- base::invokeRestart [13:31:11.383] is.null <- base::is.null [13:31:11.383] muffled <- FALSE [13:31:11.383] if (inherits(cond, "message")) { [13:31:11.383] muffled <- grepl(pattern, "muffleMessage") [13:31:11.383] if (muffled) [13:31:11.383] invokeRestart("muffleMessage") [13:31:11.383] } [13:31:11.383] else if (inherits(cond, "warning")) { [13:31:11.383] muffled <- grepl(pattern, "muffleWarning") [13:31:11.383] if (muffled) [13:31:11.383] invokeRestart("muffleWarning") [13:31:11.383] } [13:31:11.383] else if (inherits(cond, "condition")) { [13:31:11.383] if (!is.null(pattern)) { [13:31:11.383] computeRestarts <- base::computeRestarts [13:31:11.383] grepl <- base::grepl [13:31:11.383] restarts <- computeRestarts(cond) [13:31:11.383] for (restart in restarts) { [13:31:11.383] name <- restart$name [13:31:11.383] if (is.null(name)) [13:31:11.383] next [13:31:11.383] if (!grepl(pattern, name)) [13:31:11.383] next [13:31:11.383] invokeRestart(restart) [13:31:11.383] muffled <- TRUE [13:31:11.383] break [13:31:11.383] } [13:31:11.383] } [13:31:11.383] } [13:31:11.383] invisible(muffled) [13:31:11.383] } [13:31:11.383] muffleCondition(cond, pattern = "^muffle") [13:31:11.383] } [13:31:11.383] } [13:31:11.383] } [13:31:11.383] })) [13:31:11.383] }, error = function(ex) { [13:31:11.383] base::structure(base::list(value = NULL, visible = NULL, [13:31:11.383] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.383] ...future.rng), started = ...future.startTime, [13:31:11.383] finished = Sys.time(), session_uuid = NA_character_, [13:31:11.383] version = "1.8"), class = "FutureResult") [13:31:11.383] }, finally = { [13:31:11.383] if (!identical(...future.workdir, getwd())) [13:31:11.383] setwd(...future.workdir) [13:31:11.383] { [13:31:11.383] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:11.383] ...future.oldOptions$nwarnings <- NULL [13:31:11.383] } [13:31:11.383] base::options(...future.oldOptions) [13:31:11.383] if (.Platform$OS.type == "windows") { [13:31:11.383] old_names <- names(...future.oldEnvVars) [13:31:11.383] envs <- base::Sys.getenv() [13:31:11.383] names <- names(envs) [13:31:11.383] common <- intersect(names, old_names) [13:31:11.383] added <- setdiff(names, old_names) [13:31:11.383] removed <- setdiff(old_names, names) [13:31:11.383] changed <- common[...future.oldEnvVars[common] != [13:31:11.383] envs[common]] [13:31:11.383] NAMES <- toupper(changed) [13:31:11.383] args <- list() [13:31:11.383] for (kk in seq_along(NAMES)) { [13:31:11.383] name <- changed[[kk]] [13:31:11.383] NAME <- NAMES[[kk]] [13:31:11.383] if (name != NAME && is.element(NAME, old_names)) [13:31:11.383] next [13:31:11.383] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.383] } [13:31:11.383] NAMES <- toupper(added) [13:31:11.383] for (kk in seq_along(NAMES)) { [13:31:11.383] name <- added[[kk]] [13:31:11.383] NAME <- NAMES[[kk]] [13:31:11.383] if (name != NAME && is.element(NAME, old_names)) [13:31:11.383] next [13:31:11.383] args[[name]] <- "" [13:31:11.383] } [13:31:11.383] NAMES <- toupper(removed) [13:31:11.383] for (kk in seq_along(NAMES)) { [13:31:11.383] name <- removed[[kk]] [13:31:11.383] NAME <- NAMES[[kk]] [13:31:11.383] if (name != NAME && is.element(NAME, old_names)) [13:31:11.383] next [13:31:11.383] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.383] } [13:31:11.383] if (length(args) > 0) [13:31:11.383] base::do.call(base::Sys.setenv, args = args) [13:31:11.383] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:11.383] } [13:31:11.383] else { [13:31:11.383] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:11.383] } [13:31:11.383] { [13:31:11.383] if (base::length(...future.futureOptionsAdded) > [13:31:11.383] 0L) { [13:31:11.383] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:11.383] base::names(opts) <- ...future.futureOptionsAdded [13:31:11.383] base::options(opts) [13:31:11.383] } [13:31:11.383] { [13:31:11.383] NULL [13:31:11.383] options(future.plan = NULL) [13:31:11.383] if (is.na(NA_character_)) [13:31:11.383] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.383] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:11.383] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:11.383] .init = FALSE) [13:31:11.383] } [13:31:11.383] } [13:31:11.383] } [13:31:11.383] }) [13:31:11.383] if (TRUE) { [13:31:11.383] base::sink(type = "output", split = FALSE) [13:31:11.383] if (TRUE) { [13:31:11.383] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:11.383] } [13:31:11.383] else { [13:31:11.383] ...future.result["stdout"] <- base::list(NULL) [13:31:11.383] } [13:31:11.383] base::close(...future.stdout) [13:31:11.383] ...future.stdout <- NULL [13:31:11.383] } [13:31:11.383] ...future.result$conditions <- ...future.conditions [13:31:11.383] ...future.result$finished <- base::Sys.time() [13:31:11.383] ...future.result [13:31:11.383] } [13:31:11.387] resolved() for 'MiraiFuture' ... [13:31:11.388] - state: 'running' [13:31:11.388] - run: TRUE [13:31:11.388] - result: 'NULL' [13:31:11.388] - resolved: FALSE [13:31:11.389] resolved() for 'MiraiFuture' ... done [1] FALSE [1] 42 [13:31:11.483] *** mirai_multisession(..., globals = FALSE) with globals[13:31:11.486] getGlobalsAndPackages() ... [13:31:11.486] Not searching for globals [13:31:11.486] - globals: [0] [13:31:11.486] getGlobalsAndPackages() ... DONE [13:31:11.486] getGlobalsAndPackages() ... [13:31:11.487] [13:31:11.487] - globals: [0] [13:31:11.487] getGlobalsAndPackages() ... DONE [13:31:11.487] Packages needed by the future expression (n = 0): [13:31:11.488] Packages needed by future strategies (n = 0): [13:31:11.488] { [13:31:11.488] { [13:31:11.488] { [13:31:11.488] ...future.startTime <- base::Sys.time() [13:31:11.488] { [13:31:11.488] { [13:31:11.488] { [13:31:11.488] base::local({ [13:31:11.488] has_future <- base::requireNamespace("future", [13:31:11.488] quietly = TRUE) [13:31:11.488] if (has_future) { [13:31:11.488] ns <- base::getNamespace("future") [13:31:11.488] version <- ns[[".package"]][["version"]] [13:31:11.488] if (is.null(version)) [13:31:11.488] version <- utils::packageVersion("future") [13:31:11.488] } [13:31:11.488] else { [13:31:11.488] version <- NULL [13:31:11.488] } [13:31:11.488] if (!has_future || version < "1.8.0") { [13:31:11.488] info <- base::c(r_version = base::gsub("R version ", [13:31:11.488] "", base::R.version$version.string), [13:31:11.488] platform = base::sprintf("%s (%s-bit)", [13:31:11.488] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:11.488] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:11.488] "release", "version")], collapse = " "), [13:31:11.488] hostname = base::Sys.info()[["nodename"]]) [13:31:11.488] info <- base::sprintf("%s: %s", base::names(info), [13:31:11.488] info) [13:31:11.488] info <- base::paste(info, collapse = "; ") [13:31:11.488] if (!has_future) { [13:31:11.488] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:11.488] info) [13:31:11.488] } [13:31:11.488] else { [13:31:11.488] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:11.488] info, version) [13:31:11.488] } [13:31:11.488] base::stop(msg) [13:31:11.488] } [13:31:11.488] }) [13:31:11.488] } [13:31:11.488] ...future.strategy.old <- future::plan("list") [13:31:11.488] options(future.plan = NULL) [13:31:11.488] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.488] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:11.488] } [13:31:11.488] ...future.workdir <- getwd() [13:31:11.488] } [13:31:11.488] ...future.oldOptions <- base::as.list(base::.Options) [13:31:11.488] ...future.oldEnvVars <- base::Sys.getenv() [13:31:11.488] } [13:31:11.488] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:11.488] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:11.488] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:11.488] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:11.488] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:11.488] future.stdout.windows.reencode = NULL, width = 80L) [13:31:11.488] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:11.488] base::names(...future.oldOptions)) [13:31:11.488] } [13:31:11.488] if (FALSE) { [13:31:11.488] } [13:31:11.488] else { [13:31:11.488] if (TRUE) { [13:31:11.488] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:11.488] open = "w") [13:31:11.488] } [13:31:11.488] else { [13:31:11.488] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:11.488] windows = "NUL", "/dev/null"), open = "w") [13:31:11.488] } [13:31:11.488] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:11.488] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:11.488] base::sink(type = "output", split = FALSE) [13:31:11.488] base::close(...future.stdout) [13:31:11.488] }, add = TRUE) [13:31:11.488] } [13:31:11.488] ...future.frame <- base::sys.nframe() [13:31:11.488] ...future.conditions <- base::list() [13:31:11.488] ...future.rng <- base::globalenv()$.Random.seed [13:31:11.488] if (FALSE) { [13:31:11.488] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:11.488] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:11.488] } [13:31:11.488] ...future.result <- base::tryCatch({ [13:31:11.488] base::withCallingHandlers({ [13:31:11.488] ...future.value <- base::withVisible(base::local({ [13:31:11.488] b <- 3 [13:31:11.488] c <- 2 [13:31:11.488] a * b * c [13:31:11.488] })) [13:31:11.488] future::FutureResult(value = ...future.value$value, [13:31:11.488] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.488] ...future.rng), globalenv = if (FALSE) [13:31:11.488] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:11.488] ...future.globalenv.names)) [13:31:11.488] else NULL, started = ...future.startTime, version = "1.8") [13:31:11.488] }, condition = base::local({ [13:31:11.488] c <- base::c [13:31:11.488] inherits <- base::inherits [13:31:11.488] invokeRestart <- base::invokeRestart [13:31:11.488] length <- base::length [13:31:11.488] list <- base::list [13:31:11.488] seq.int <- base::seq.int [13:31:11.488] signalCondition <- base::signalCondition [13:31:11.488] sys.calls <- base::sys.calls [13:31:11.488] `[[` <- base::`[[` [13:31:11.488] `+` <- base::`+` [13:31:11.488] `<<-` <- base::`<<-` [13:31:11.488] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:11.488] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:11.488] 3L)] [13:31:11.488] } [13:31:11.488] function(cond) { [13:31:11.488] is_error <- inherits(cond, "error") [13:31:11.488] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:11.488] NULL) [13:31:11.488] if (is_error) { [13:31:11.488] sessionInformation <- function() { [13:31:11.488] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:11.488] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:11.488] search = base::search(), system = base::Sys.info()) [13:31:11.488] } [13:31:11.488] ...future.conditions[[length(...future.conditions) + [13:31:11.488] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:11.488] cond$call), session = sessionInformation(), [13:31:11.488] timestamp = base::Sys.time(), signaled = 0L) [13:31:11.488] signalCondition(cond) [13:31:11.488] } [13:31:11.488] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:11.488] signal <- FALSE && inherits(cond, character(0)) [13:31:11.488] ...future.conditions[[length(...future.conditions) + [13:31:11.488] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:11.488] if (FALSE && !signal) { [13:31:11.488] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.488] { [13:31:11.488] inherits <- base::inherits [13:31:11.488] invokeRestart <- base::invokeRestart [13:31:11.488] is.null <- base::is.null [13:31:11.488] muffled <- FALSE [13:31:11.488] if (inherits(cond, "message")) { [13:31:11.488] muffled <- grepl(pattern, "muffleMessage") [13:31:11.488] if (muffled) [13:31:11.488] invokeRestart("muffleMessage") [13:31:11.488] } [13:31:11.488] else if (inherits(cond, "warning")) { [13:31:11.488] muffled <- grepl(pattern, "muffleWarning") [13:31:11.488] if (muffled) [13:31:11.488] invokeRestart("muffleWarning") [13:31:11.488] } [13:31:11.488] else if (inherits(cond, "condition")) { [13:31:11.488] if (!is.null(pattern)) { [13:31:11.488] computeRestarts <- base::computeRestarts [13:31:11.488] grepl <- base::grepl [13:31:11.488] restarts <- computeRestarts(cond) [13:31:11.488] for (restart in restarts) { [13:31:11.488] name <- restart$name [13:31:11.488] if (is.null(name)) [13:31:11.488] next [13:31:11.488] if (!grepl(pattern, name)) [13:31:11.488] next [13:31:11.488] invokeRestart(restart) [13:31:11.488] muffled <- TRUE [13:31:11.488] break [13:31:11.488] } [13:31:11.488] } [13:31:11.488] } [13:31:11.488] invisible(muffled) [13:31:11.488] } [13:31:11.488] muffleCondition(cond, pattern = "^muffle") [13:31:11.488] } [13:31:11.488] } [13:31:11.488] else { [13:31:11.488] if (TRUE) { [13:31:11.488] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.488] { [13:31:11.488] inherits <- base::inherits [13:31:11.488] invokeRestart <- base::invokeRestart [13:31:11.488] is.null <- base::is.null [13:31:11.488] muffled <- FALSE [13:31:11.488] if (inherits(cond, "message")) { [13:31:11.488] muffled <- grepl(pattern, "muffleMessage") [13:31:11.488] if (muffled) [13:31:11.488] invokeRestart("muffleMessage") [13:31:11.488] } [13:31:11.488] else if (inherits(cond, "warning")) { [13:31:11.488] muffled <- grepl(pattern, "muffleWarning") [13:31:11.488] if (muffled) [13:31:11.488] invokeRestart("muffleWarning") [13:31:11.488] } [13:31:11.488] else if (inherits(cond, "condition")) { [13:31:11.488] if (!is.null(pattern)) { [13:31:11.488] computeRestarts <- base::computeRestarts [13:31:11.488] grepl <- base::grepl [13:31:11.488] restarts <- computeRestarts(cond) [13:31:11.488] for (restart in restarts) { [13:31:11.488] name <- restart$name [13:31:11.488] if (is.null(name)) [13:31:11.488] next [13:31:11.488] if (!grepl(pattern, name)) [13:31:11.488] next [13:31:11.488] invokeRestart(restart) [13:31:11.488] muffled <- TRUE [13:31:11.488] break [13:31:11.488] } [13:31:11.488] } [13:31:11.488] } [13:31:11.488] invisible(muffled) [13:31:11.488] } [13:31:11.488] muffleCondition(cond, pattern = "^muffle") [13:31:11.488] } [13:31:11.488] } [13:31:11.488] } [13:31:11.488] })) [13:31:11.488] }, error = function(ex) { [13:31:11.488] base::structure(base::list(value = NULL, visible = NULL, [13:31:11.488] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.488] ...future.rng), started = ...future.startTime, [13:31:11.488] finished = Sys.time(), session_uuid = NA_character_, [13:31:11.488] version = "1.8"), class = "FutureResult") [13:31:11.488] }, finally = { [13:31:11.488] if (!identical(...future.workdir, getwd())) [13:31:11.488] setwd(...future.workdir) [13:31:11.488] { [13:31:11.488] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:11.488] ...future.oldOptions$nwarnings <- NULL [13:31:11.488] } [13:31:11.488] base::options(...future.oldOptions) [13:31:11.488] if (.Platform$OS.type == "windows") { [13:31:11.488] old_names <- names(...future.oldEnvVars) [13:31:11.488] envs <- base::Sys.getenv() [13:31:11.488] names <- names(envs) [13:31:11.488] common <- intersect(names, old_names) [13:31:11.488] added <- setdiff(names, old_names) [13:31:11.488] removed <- setdiff(old_names, names) [13:31:11.488] changed <- common[...future.oldEnvVars[common] != [13:31:11.488] envs[common]] [13:31:11.488] NAMES <- toupper(changed) [13:31:11.488] args <- list() [13:31:11.488] for (kk in seq_along(NAMES)) { [13:31:11.488] name <- changed[[kk]] [13:31:11.488] NAME <- NAMES[[kk]] [13:31:11.488] if (name != NAME && is.element(NAME, old_names)) [13:31:11.488] next [13:31:11.488] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.488] } [13:31:11.488] NAMES <- toupper(added) [13:31:11.488] for (kk in seq_along(NAMES)) { [13:31:11.488] name <- added[[kk]] [13:31:11.488] NAME <- NAMES[[kk]] [13:31:11.488] if (name != NAME && is.element(NAME, old_names)) [13:31:11.488] next [13:31:11.488] args[[name]] <- "" [13:31:11.488] } [13:31:11.488] NAMES <- toupper(removed) [13:31:11.488] for (kk in seq_along(NAMES)) { [13:31:11.488] name <- removed[[kk]] [13:31:11.488] NAME <- NAMES[[kk]] [13:31:11.488] if (name != NAME && is.element(NAME, old_names)) [13:31:11.488] next [13:31:11.488] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.488] } [13:31:11.488] if (length(args) > 0) [13:31:11.488] base::do.call(base::Sys.setenv, args = args) [13:31:11.488] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:11.488] } [13:31:11.488] else { [13:31:11.488] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:11.488] } [13:31:11.488] { [13:31:11.488] if (base::length(...future.futureOptionsAdded) > [13:31:11.488] 0L) { [13:31:11.488] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:11.488] base::names(opts) <- ...future.futureOptionsAdded [13:31:11.488] base::options(opts) [13:31:11.488] } [13:31:11.488] { [13:31:11.488] NULL [13:31:11.488] options(future.plan = NULL) [13:31:11.488] if (is.na(NA_character_)) [13:31:11.488] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.488] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:11.488] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:11.488] .init = FALSE) [13:31:11.488] } [13:31:11.488] } [13:31:11.488] } [13:31:11.488] }) [13:31:11.488] if (TRUE) { [13:31:11.488] base::sink(type = "output", split = FALSE) [13:31:11.488] if (TRUE) { [13:31:11.488] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:11.488] } [13:31:11.488] else { [13:31:11.488] ...future.result["stdout"] <- base::list(NULL) [13:31:11.488] } [13:31:11.488] base::close(...future.stdout) [13:31:11.488] ...future.stdout <- NULL [13:31:11.488] } [13:31:11.488] ...future.result$conditions <- ...future.conditions [13:31:11.488] ...future.result$finished <- base::Sys.time() [13:31:11.488] ...future.result [13:31:11.488] } 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:31:11.493] resolved() for 'MiraiFuture' ... [13:31:11.493] - state: 'running' [13:31:11.494] - run: TRUE [13:31:11.494] - result: 'NULL' [13:31:11.494] - resolved: FALSE [13:31:11.494] resolved() for 'MiraiFuture' ... done Resolved: FALSE Value: Conditions captured: Early signaling: FALSE Owner process: 34a50e50-df8b-1a25-bcea-c6e422c658f2 Class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:31:11.495] signalConditions() ... [13:31:11.495] - include = 'immediateCondition' [13:31:11.495] - exclude = [13:31:11.495] - resignal = FALSE [13:31:11.496] - Number of conditions: 1 [13:31:11.496] signalConditions() ... done [13:31:11.496] Future state: 'finished' [13:31:11.496] signalConditions() ... [13:31:11.496] - include = 'condition' [13:31:11.497] - exclude = 'immediateCondition' [13:31:11.497] - resignal = TRUE [13:31:11.497] - Number of conditions: 1 [13:31:11.497] - Condition #1: 'simpleError', 'error', 'condition' [13:31:11.497] signalConditions() ... done [13:31:11.498] *** mirai_multisession(..., globals = FALSE) with globals and blocking[13:31:11.498] - Creating mirai_multisession future #1 ...[13:31:11.500] getGlobalsAndPackages() ... [13:31:11.500] Not searching for globals [13:31:11.500] - globals: [0] [13:31:11.501] getGlobalsAndPackages() ... DONE [13:31:11.501] getGlobalsAndPackages() ... [13:31:11.501] [13:31:11.501] - globals: [0] [13:31:11.501] getGlobalsAndPackages() ... DONE [13:31:11.502] Packages needed by the future expression (n = 0): [13:31:11.502] Packages needed by future strategies (n = 0): [13:31:11.503] { [13:31:11.503] { [13:31:11.503] { [13:31:11.503] ...future.startTime <- base::Sys.time() [13:31:11.503] { [13:31:11.503] { [13:31:11.503] { [13:31:11.503] base::local({ [13:31:11.503] has_future <- base::requireNamespace("future", [13:31:11.503] quietly = TRUE) [13:31:11.503] if (has_future) { [13:31:11.503] ns <- base::getNamespace("future") [13:31:11.503] version <- ns[[".package"]][["version"]] [13:31:11.503] if (is.null(version)) [13:31:11.503] version <- utils::packageVersion("future") [13:31:11.503] } [13:31:11.503] else { [13:31:11.503] version <- NULL [13:31:11.503] } [13:31:11.503] if (!has_future || version < "1.8.0") { [13:31:11.503] info <- base::c(r_version = base::gsub("R version ", [13:31:11.503] "", base::R.version$version.string), [13:31:11.503] platform = base::sprintf("%s (%s-bit)", [13:31:11.503] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:11.503] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:11.503] "release", "version")], collapse = " "), [13:31:11.503] hostname = base::Sys.info()[["nodename"]]) [13:31:11.503] info <- base::sprintf("%s: %s", base::names(info), [13:31:11.503] info) [13:31:11.503] info <- base::paste(info, collapse = "; ") [13:31:11.503] if (!has_future) { [13:31:11.503] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:11.503] info) [13:31:11.503] } [13:31:11.503] else { [13:31:11.503] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:11.503] info, version) [13:31:11.503] } [13:31:11.503] base::stop(msg) [13:31:11.503] } [13:31:11.503] }) [13:31:11.503] } [13:31:11.503] ...future.strategy.old <- future::plan("list") [13:31:11.503] options(future.plan = NULL) [13:31:11.503] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.503] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:11.503] } [13:31:11.503] ...future.workdir <- getwd() [13:31:11.503] } [13:31:11.503] ...future.oldOptions <- base::as.list(base::.Options) [13:31:11.503] ...future.oldEnvVars <- base::Sys.getenv() [13:31:11.503] } [13:31:11.503] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:11.503] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:11.503] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:11.503] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:11.503] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:11.503] future.stdout.windows.reencode = NULL, width = 80L) [13:31:11.503] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:11.503] base::names(...future.oldOptions)) [13:31:11.503] } [13:31:11.503] if (FALSE) { [13:31:11.503] } [13:31:11.503] else { [13:31:11.503] if (TRUE) { [13:31:11.503] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:11.503] open = "w") [13:31:11.503] } [13:31:11.503] else { [13:31:11.503] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:11.503] windows = "NUL", "/dev/null"), open = "w") [13:31:11.503] } [13:31:11.503] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:11.503] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:11.503] base::sink(type = "output", split = FALSE) [13:31:11.503] base::close(...future.stdout) [13:31:11.503] }, add = TRUE) [13:31:11.503] } [13:31:11.503] ...future.frame <- base::sys.nframe() [13:31:11.503] ...future.conditions <- base::list() [13:31:11.503] ...future.rng <- base::globalenv()$.Random.seed [13:31:11.503] if (FALSE) { [13:31:11.503] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:11.503] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:11.503] } [13:31:11.503] ...future.result <- base::tryCatch({ [13:31:11.503] base::withCallingHandlers({ [13:31:11.503] ...future.value <- base::withVisible(base::local({ [13:31:11.503] ii [13:31:11.503] })) [13:31:11.503] future::FutureResult(value = ...future.value$value, [13:31:11.503] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.503] ...future.rng), globalenv = if (FALSE) [13:31:11.503] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:11.503] ...future.globalenv.names)) [13:31:11.503] else NULL, started = ...future.startTime, version = "1.8") [13:31:11.503] }, condition = base::local({ [13:31:11.503] c <- base::c [13:31:11.503] inherits <- base::inherits [13:31:11.503] invokeRestart <- base::invokeRestart [13:31:11.503] length <- base::length [13:31:11.503] list <- base::list [13:31:11.503] seq.int <- base::seq.int [13:31:11.503] signalCondition <- base::signalCondition [13:31:11.503] sys.calls <- base::sys.calls [13:31:11.503] `[[` <- base::`[[` [13:31:11.503] `+` <- base::`+` [13:31:11.503] `<<-` <- base::`<<-` [13:31:11.503] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:11.503] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:11.503] 3L)] [13:31:11.503] } [13:31:11.503] function(cond) { [13:31:11.503] is_error <- inherits(cond, "error") [13:31:11.503] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:11.503] NULL) [13:31:11.503] if (is_error) { [13:31:11.503] sessionInformation <- function() { [13:31:11.503] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:11.503] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:11.503] search = base::search(), system = base::Sys.info()) [13:31:11.503] } [13:31:11.503] ...future.conditions[[length(...future.conditions) + [13:31:11.503] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:11.503] cond$call), session = sessionInformation(), [13:31:11.503] timestamp = base::Sys.time(), signaled = 0L) [13:31:11.503] signalCondition(cond) [13:31:11.503] } [13:31:11.503] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:11.503] signal <- FALSE && inherits(cond, character(0)) [13:31:11.503] ...future.conditions[[length(...future.conditions) + [13:31:11.503] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:11.503] if (FALSE && !signal) { [13:31:11.503] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.503] { [13:31:11.503] inherits <- base::inherits [13:31:11.503] invokeRestart <- base::invokeRestart [13:31:11.503] is.null <- base::is.null [13:31:11.503] muffled <- FALSE [13:31:11.503] if (inherits(cond, "message")) { [13:31:11.503] muffled <- grepl(pattern, "muffleMessage") [13:31:11.503] if (muffled) [13:31:11.503] invokeRestart("muffleMessage") [13:31:11.503] } [13:31:11.503] else if (inherits(cond, "warning")) { [13:31:11.503] muffled <- grepl(pattern, "muffleWarning") [13:31:11.503] if (muffled) [13:31:11.503] invokeRestart("muffleWarning") [13:31:11.503] } [13:31:11.503] else if (inherits(cond, "condition")) { [13:31:11.503] if (!is.null(pattern)) { [13:31:11.503] computeRestarts <- base::computeRestarts [13:31:11.503] grepl <- base::grepl [13:31:11.503] restarts <- computeRestarts(cond) [13:31:11.503] for (restart in restarts) { [13:31:11.503] name <- restart$name [13:31:11.503] if (is.null(name)) [13:31:11.503] next [13:31:11.503] if (!grepl(pattern, name)) [13:31:11.503] next [13:31:11.503] invokeRestart(restart) [13:31:11.503] muffled <- TRUE [13:31:11.503] break [13:31:11.503] } [13:31:11.503] } [13:31:11.503] } [13:31:11.503] invisible(muffled) [13:31:11.503] } [13:31:11.503] muffleCondition(cond, pattern = "^muffle") [13:31:11.503] } [13:31:11.503] } [13:31:11.503] else { [13:31:11.503] if (TRUE) { [13:31:11.503] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.503] { [13:31:11.503] inherits <- base::inherits [13:31:11.503] invokeRestart <- base::invokeRestart [13:31:11.503] is.null <- base::is.null [13:31:11.503] muffled <- FALSE [13:31:11.503] if (inherits(cond, "message")) { [13:31:11.503] muffled <- grepl(pattern, "muffleMessage") [13:31:11.503] if (muffled) [13:31:11.503] invokeRestart("muffleMessage") [13:31:11.503] } [13:31:11.503] else if (inherits(cond, "warning")) { [13:31:11.503] muffled <- grepl(pattern, "muffleWarning") [13:31:11.503] if (muffled) [13:31:11.503] invokeRestart("muffleWarning") [13:31:11.503] } [13:31:11.503] else if (inherits(cond, "condition")) { [13:31:11.503] if (!is.null(pattern)) { [13:31:11.503] computeRestarts <- base::computeRestarts [13:31:11.503] grepl <- base::grepl [13:31:11.503] restarts <- computeRestarts(cond) [13:31:11.503] for (restart in restarts) { [13:31:11.503] name <- restart$name [13:31:11.503] if (is.null(name)) [13:31:11.503] next [13:31:11.503] if (!grepl(pattern, name)) [13:31:11.503] next [13:31:11.503] invokeRestart(restart) [13:31:11.503] muffled <- TRUE [13:31:11.503] break [13:31:11.503] } [13:31:11.503] } [13:31:11.503] } [13:31:11.503] invisible(muffled) [13:31:11.503] } [13:31:11.503] muffleCondition(cond, pattern = "^muffle") [13:31:11.503] } [13:31:11.503] } [13:31:11.503] } [13:31:11.503] })) [13:31:11.503] }, error = function(ex) { [13:31:11.503] base::structure(base::list(value = NULL, visible = NULL, [13:31:11.503] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.503] ...future.rng), started = ...future.startTime, [13:31:11.503] finished = Sys.time(), session_uuid = NA_character_, [13:31:11.503] version = "1.8"), class = "FutureResult") [13:31:11.503] }, finally = { [13:31:11.503] if (!identical(...future.workdir, getwd())) [13:31:11.503] setwd(...future.workdir) [13:31:11.503] { [13:31:11.503] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:11.503] ...future.oldOptions$nwarnings <- NULL [13:31:11.503] } [13:31:11.503] base::options(...future.oldOptions) [13:31:11.503] if (.Platform$OS.type == "windows") { [13:31:11.503] old_names <- names(...future.oldEnvVars) [13:31:11.503] envs <- base::Sys.getenv() [13:31:11.503] names <- names(envs) [13:31:11.503] common <- intersect(names, old_names) [13:31:11.503] added <- setdiff(names, old_names) [13:31:11.503] removed <- setdiff(old_names, names) [13:31:11.503] changed <- common[...future.oldEnvVars[common] != [13:31:11.503] envs[common]] [13:31:11.503] NAMES <- toupper(changed) [13:31:11.503] args <- list() [13:31:11.503] for (kk in seq_along(NAMES)) { [13:31:11.503] name <- changed[[kk]] [13:31:11.503] NAME <- NAMES[[kk]] [13:31:11.503] if (name != NAME && is.element(NAME, old_names)) [13:31:11.503] next [13:31:11.503] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.503] } [13:31:11.503] NAMES <- toupper(added) [13:31:11.503] for (kk in seq_along(NAMES)) { [13:31:11.503] name <- added[[kk]] [13:31:11.503] NAME <- NAMES[[kk]] [13:31:11.503] if (name != NAME && is.element(NAME, old_names)) [13:31:11.503] next [13:31:11.503] args[[name]] <- "" [13:31:11.503] } [13:31:11.503] NAMES <- toupper(removed) [13:31:11.503] for (kk in seq_along(NAMES)) { [13:31:11.503] name <- removed[[kk]] [13:31:11.503] NAME <- NAMES[[kk]] [13:31:11.503] if (name != NAME && is.element(NAME, old_names)) [13:31:11.503] next [13:31:11.503] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.503] } [13:31:11.503] if (length(args) > 0) [13:31:11.503] base::do.call(base::Sys.setenv, args = args) [13:31:11.503] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:11.503] } [13:31:11.503] else { [13:31:11.503] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:11.503] } [13:31:11.503] { [13:31:11.503] if (base::length(...future.futureOptionsAdded) > [13:31:11.503] 0L) { [13:31:11.503] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:11.503] base::names(opts) <- ...future.futureOptionsAdded [13:31:11.503] base::options(opts) [13:31:11.503] } [13:31:11.503] { [13:31:11.503] NULL [13:31:11.503] options(future.plan = NULL) [13:31:11.503] if (is.na(NA_character_)) [13:31:11.503] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.503] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:11.503] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:11.503] .init = FALSE) [13:31:11.503] } [13:31:11.503] } [13:31:11.503] } [13:31:11.503] }) [13:31:11.503] if (TRUE) { [13:31:11.503] base::sink(type = "output", split = FALSE) [13:31:11.503] if (TRUE) { [13:31:11.503] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:11.503] } [13:31:11.503] else { [13:31:11.503] ...future.result["stdout"] <- base::list(NULL) [13:31:11.503] } [13:31:11.503] base::close(...future.stdout) [13:31:11.503] ...future.stdout <- NULL [13:31:11.503] } [13:31:11.503] ...future.result$conditions <- ...future.conditions [13:31:11.503] ...future.result$finished <- base::Sys.time() [13:31:11.503] ...future.result [13:31:11.503] } [13:31:11.507] - Creating mirai_multisession future #2 ...[13:31:11.509] getGlobalsAndPackages() ... [13:31:11.510] Not searching for globals [13:31:11.510] - globals: [0] [13:31:11.510] getGlobalsAndPackages() ... DONE [13:31:11.510] getGlobalsAndPackages() ... [13:31:11.510] [13:31:11.510] - globals: [0] [13:31:11.511] getGlobalsAndPackages() ... DONE [13:31:11.511] Packages needed by the future expression (n = 0): [13:31:11.511] Packages needed by future strategies (n = 0): [13:31:11.512] { [13:31:11.512] { [13:31:11.512] { [13:31:11.512] ...future.startTime <- base::Sys.time() [13:31:11.512] { [13:31:11.512] { [13:31:11.512] { [13:31:11.512] base::local({ [13:31:11.512] has_future <- base::requireNamespace("future", [13:31:11.512] quietly = TRUE) [13:31:11.512] if (has_future) { [13:31:11.512] ns <- base::getNamespace("future") [13:31:11.512] version <- ns[[".package"]][["version"]] [13:31:11.512] if (is.null(version)) [13:31:11.512] version <- utils::packageVersion("future") [13:31:11.512] } [13:31:11.512] else { [13:31:11.512] version <- NULL [13:31:11.512] } [13:31:11.512] if (!has_future || version < "1.8.0") { [13:31:11.512] info <- base::c(r_version = base::gsub("R version ", [13:31:11.512] "", base::R.version$version.string), [13:31:11.512] platform = base::sprintf("%s (%s-bit)", [13:31:11.512] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:11.512] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:11.512] "release", "version")], collapse = " "), [13:31:11.512] hostname = base::Sys.info()[["nodename"]]) [13:31:11.512] info <- base::sprintf("%s: %s", base::names(info), [13:31:11.512] info) [13:31:11.512] info <- base::paste(info, collapse = "; ") [13:31:11.512] if (!has_future) { [13:31:11.512] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:11.512] info) [13:31:11.512] } [13:31:11.512] else { [13:31:11.512] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:11.512] info, version) [13:31:11.512] } [13:31:11.512] base::stop(msg) [13:31:11.512] } [13:31:11.512] }) [13:31:11.512] } [13:31:11.512] ...future.strategy.old <- future::plan("list") [13:31:11.512] options(future.plan = NULL) [13:31:11.512] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.512] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:11.512] } [13:31:11.512] ...future.workdir <- getwd() [13:31:11.512] } [13:31:11.512] ...future.oldOptions <- base::as.list(base::.Options) [13:31:11.512] ...future.oldEnvVars <- base::Sys.getenv() [13:31:11.512] } [13:31:11.512] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:11.512] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:11.512] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:11.512] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:11.512] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:11.512] future.stdout.windows.reencode = NULL, width = 80L) [13:31:11.512] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:11.512] base::names(...future.oldOptions)) [13:31:11.512] } [13:31:11.512] if (FALSE) { [13:31:11.512] } [13:31:11.512] else { [13:31:11.512] if (TRUE) { [13:31:11.512] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:11.512] open = "w") [13:31:11.512] } [13:31:11.512] else { [13:31:11.512] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:11.512] windows = "NUL", "/dev/null"), open = "w") [13:31:11.512] } [13:31:11.512] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:11.512] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:11.512] base::sink(type = "output", split = FALSE) [13:31:11.512] base::close(...future.stdout) [13:31:11.512] }, add = TRUE) [13:31:11.512] } [13:31:11.512] ...future.frame <- base::sys.nframe() [13:31:11.512] ...future.conditions <- base::list() [13:31:11.512] ...future.rng <- base::globalenv()$.Random.seed [13:31:11.512] if (FALSE) { [13:31:11.512] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:11.512] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:11.512] } [13:31:11.512] ...future.result <- base::tryCatch({ [13:31:11.512] base::withCallingHandlers({ [13:31:11.512] ...future.value <- base::withVisible(base::local({ [13:31:11.512] ii [13:31:11.512] })) [13:31:11.512] future::FutureResult(value = ...future.value$value, [13:31:11.512] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.512] ...future.rng), globalenv = if (FALSE) [13:31:11.512] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:11.512] ...future.globalenv.names)) [13:31:11.512] else NULL, started = ...future.startTime, version = "1.8") [13:31:11.512] }, condition = base::local({ [13:31:11.512] c <- base::c [13:31:11.512] inherits <- base::inherits [13:31:11.512] invokeRestart <- base::invokeRestart [13:31:11.512] length <- base::length [13:31:11.512] list <- base::list [13:31:11.512] seq.int <- base::seq.int [13:31:11.512] signalCondition <- base::signalCondition [13:31:11.512] sys.calls <- base::sys.calls [13:31:11.512] `[[` <- base::`[[` [13:31:11.512] `+` <- base::`+` [13:31:11.512] `<<-` <- base::`<<-` [13:31:11.512] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:11.512] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:11.512] 3L)] [13:31:11.512] } [13:31:11.512] function(cond) { [13:31:11.512] is_error <- inherits(cond, "error") [13:31:11.512] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:11.512] NULL) [13:31:11.512] if (is_error) { [13:31:11.512] sessionInformation <- function() { [13:31:11.512] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:11.512] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:11.512] search = base::search(), system = base::Sys.info()) [13:31:11.512] } [13:31:11.512] ...future.conditions[[length(...future.conditions) + [13:31:11.512] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:11.512] cond$call), session = sessionInformation(), [13:31:11.512] timestamp = base::Sys.time(), signaled = 0L) [13:31:11.512] signalCondition(cond) [13:31:11.512] } [13:31:11.512] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:11.512] signal <- FALSE && inherits(cond, character(0)) [13:31:11.512] ...future.conditions[[length(...future.conditions) + [13:31:11.512] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:11.512] if (FALSE && !signal) { [13:31:11.512] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.512] { [13:31:11.512] inherits <- base::inherits [13:31:11.512] invokeRestart <- base::invokeRestart [13:31:11.512] is.null <- base::is.null [13:31:11.512] muffled <- FALSE [13:31:11.512] if (inherits(cond, "message")) { [13:31:11.512] muffled <- grepl(pattern, "muffleMessage") [13:31:11.512] if (muffled) [13:31:11.512] invokeRestart("muffleMessage") [13:31:11.512] } [13:31:11.512] else if (inherits(cond, "warning")) { [13:31:11.512] muffled <- grepl(pattern, "muffleWarning") [13:31:11.512] if (muffled) [13:31:11.512] invokeRestart("muffleWarning") [13:31:11.512] } [13:31:11.512] else if (inherits(cond, "condition")) { [13:31:11.512] if (!is.null(pattern)) { [13:31:11.512] computeRestarts <- base::computeRestarts [13:31:11.512] grepl <- base::grepl [13:31:11.512] restarts <- computeRestarts(cond) [13:31:11.512] for (restart in restarts) { [13:31:11.512] name <- restart$name [13:31:11.512] if (is.null(name)) [13:31:11.512] next [13:31:11.512] if (!grepl(pattern, name)) [13:31:11.512] next [13:31:11.512] invokeRestart(restart) [13:31:11.512] muffled <- TRUE [13:31:11.512] break [13:31:11.512] } [13:31:11.512] } [13:31:11.512] } [13:31:11.512] invisible(muffled) [13:31:11.512] } [13:31:11.512] muffleCondition(cond, pattern = "^muffle") [13:31:11.512] } [13:31:11.512] } [13:31:11.512] else { [13:31:11.512] if (TRUE) { [13:31:11.512] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.512] { [13:31:11.512] inherits <- base::inherits [13:31:11.512] invokeRestart <- base::invokeRestart [13:31:11.512] is.null <- base::is.null [13:31:11.512] muffled <- FALSE [13:31:11.512] if (inherits(cond, "message")) { [13:31:11.512] muffled <- grepl(pattern, "muffleMessage") [13:31:11.512] if (muffled) [13:31:11.512] invokeRestart("muffleMessage") [13:31:11.512] } [13:31:11.512] else if (inherits(cond, "warning")) { [13:31:11.512] muffled <- grepl(pattern, "muffleWarning") [13:31:11.512] if (muffled) [13:31:11.512] invokeRestart("muffleWarning") [13:31:11.512] } [13:31:11.512] else if (inherits(cond, "condition")) { [13:31:11.512] if (!is.null(pattern)) { [13:31:11.512] computeRestarts <- base::computeRestarts [13:31:11.512] grepl <- base::grepl [13:31:11.512] restarts <- computeRestarts(cond) [13:31:11.512] for (restart in restarts) { [13:31:11.512] name <- restart$name [13:31:11.512] if (is.null(name)) [13:31:11.512] next [13:31:11.512] if (!grepl(pattern, name)) [13:31:11.512] next [13:31:11.512] invokeRestart(restart) [13:31:11.512] muffled <- TRUE [13:31:11.512] break [13:31:11.512] } [13:31:11.512] } [13:31:11.512] } [13:31:11.512] invisible(muffled) [13:31:11.512] } [13:31:11.512] muffleCondition(cond, pattern = "^muffle") [13:31:11.512] } [13:31:11.512] } [13:31:11.512] } [13:31:11.512] })) [13:31:11.512] }, error = function(ex) { [13:31:11.512] base::structure(base::list(value = NULL, visible = NULL, [13:31:11.512] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.512] ...future.rng), started = ...future.startTime, [13:31:11.512] finished = Sys.time(), session_uuid = NA_character_, [13:31:11.512] version = "1.8"), class = "FutureResult") [13:31:11.512] }, finally = { [13:31:11.512] if (!identical(...future.workdir, getwd())) [13:31:11.512] setwd(...future.workdir) [13:31:11.512] { [13:31:11.512] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:11.512] ...future.oldOptions$nwarnings <- NULL [13:31:11.512] } [13:31:11.512] base::options(...future.oldOptions) [13:31:11.512] if (.Platform$OS.type == "windows") { [13:31:11.512] old_names <- names(...future.oldEnvVars) [13:31:11.512] envs <- base::Sys.getenv() [13:31:11.512] names <- names(envs) [13:31:11.512] common <- intersect(names, old_names) [13:31:11.512] added <- setdiff(names, old_names) [13:31:11.512] removed <- setdiff(old_names, names) [13:31:11.512] changed <- common[...future.oldEnvVars[common] != [13:31:11.512] envs[common]] [13:31:11.512] NAMES <- toupper(changed) [13:31:11.512] args <- list() [13:31:11.512] for (kk in seq_along(NAMES)) { [13:31:11.512] name <- changed[[kk]] [13:31:11.512] NAME <- NAMES[[kk]] [13:31:11.512] if (name != NAME && is.element(NAME, old_names)) [13:31:11.512] next [13:31:11.512] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.512] } [13:31:11.512] NAMES <- toupper(added) [13:31:11.512] for (kk in seq_along(NAMES)) { [13:31:11.512] name <- added[[kk]] [13:31:11.512] NAME <- NAMES[[kk]] [13:31:11.512] if (name != NAME && is.element(NAME, old_names)) [13:31:11.512] next [13:31:11.512] args[[name]] <- "" [13:31:11.512] } [13:31:11.512] NAMES <- toupper(removed) [13:31:11.512] for (kk in seq_along(NAMES)) { [13:31:11.512] name <- removed[[kk]] [13:31:11.512] NAME <- NAMES[[kk]] [13:31:11.512] if (name != NAME && is.element(NAME, old_names)) [13:31:11.512] next [13:31:11.512] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.512] } [13:31:11.512] if (length(args) > 0) [13:31:11.512] base::do.call(base::Sys.setenv, args = args) [13:31:11.512] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:11.512] } [13:31:11.512] else { [13:31:11.512] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:11.512] } [13:31:11.512] { [13:31:11.512] if (base::length(...future.futureOptionsAdded) > [13:31:11.512] 0L) { [13:31:11.512] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:11.512] base::names(opts) <- ...future.futureOptionsAdded [13:31:11.512] base::options(opts) [13:31:11.512] } [13:31:11.512] { [13:31:11.512] NULL [13:31:11.512] options(future.plan = NULL) [13:31:11.512] if (is.na(NA_character_)) [13:31:11.512] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.512] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:11.512] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:11.512] .init = FALSE) [13:31:11.512] } [13:31:11.512] } [13:31:11.512] } [13:31:11.512] }) [13:31:11.512] if (TRUE) { [13:31:11.512] base::sink(type = "output", split = FALSE) [13:31:11.512] if (TRUE) { [13:31:11.512] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:11.512] } [13:31:11.512] else { [13:31:11.512] ...future.result["stdout"] <- base::list(NULL) [13:31:11.512] } [13:31:11.512] base::close(...future.stdout) [13:31:11.512] ...future.stdout <- NULL [13:31:11.512] } [13:31:11.512] ...future.result$conditions <- ...future.conditions [13:31:11.512] ...future.result$finished <- base::Sys.time() [13:31:11.512] ...future.result [13:31:11.512] } [13:31:11.516] - Creating mirai_multisession future #3 ...[13:31:11.518] getGlobalsAndPackages() ... [13:31:11.518] Not searching for globals [13:31:11.518] - globals: [0] [13:31:11.519] getGlobalsAndPackages() ... DONE [13:31:11.519] getGlobalsAndPackages() ... [13:31:11.519] [13:31:11.519] - globals: [0] [13:31:11.519] getGlobalsAndPackages() ... DONE [13:31:11.520] Packages needed by the future expression (n = 0): [13:31:11.520] Packages needed by future strategies (n = 0): [13:31:11.520] { [13:31:11.520] { [13:31:11.520] { [13:31:11.520] ...future.startTime <- base::Sys.time() [13:31:11.520] { [13:31:11.520] { [13:31:11.520] { [13:31:11.520] base::local({ [13:31:11.520] has_future <- base::requireNamespace("future", [13:31:11.520] quietly = TRUE) [13:31:11.520] if (has_future) { [13:31:11.520] ns <- base::getNamespace("future") [13:31:11.520] version <- ns[[".package"]][["version"]] [13:31:11.520] if (is.null(version)) [13:31:11.520] version <- utils::packageVersion("future") [13:31:11.520] } [13:31:11.520] else { [13:31:11.520] version <- NULL [13:31:11.520] } [13:31:11.520] if (!has_future || version < "1.8.0") { [13:31:11.520] info <- base::c(r_version = base::gsub("R version ", [13:31:11.520] "", base::R.version$version.string), [13:31:11.520] platform = base::sprintf("%s (%s-bit)", [13:31:11.520] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:11.520] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:11.520] "release", "version")], collapse = " "), [13:31:11.520] hostname = base::Sys.info()[["nodename"]]) [13:31:11.520] info <- base::sprintf("%s: %s", base::names(info), [13:31:11.520] info) [13:31:11.520] info <- base::paste(info, collapse = "; ") [13:31:11.520] if (!has_future) { [13:31:11.520] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:11.520] info) [13:31:11.520] } [13:31:11.520] else { [13:31:11.520] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:11.520] info, version) [13:31:11.520] } [13:31:11.520] base::stop(msg) [13:31:11.520] } [13:31:11.520] }) [13:31:11.520] } [13:31:11.520] ...future.strategy.old <- future::plan("list") [13:31:11.520] options(future.plan = NULL) [13:31:11.520] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.520] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:11.520] } [13:31:11.520] ...future.workdir <- getwd() [13:31:11.520] } [13:31:11.520] ...future.oldOptions <- base::as.list(base::.Options) [13:31:11.520] ...future.oldEnvVars <- base::Sys.getenv() [13:31:11.520] } [13:31:11.520] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:11.520] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:11.520] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:11.520] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:11.520] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:11.520] future.stdout.windows.reencode = NULL, width = 80L) [13:31:11.520] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:11.520] base::names(...future.oldOptions)) [13:31:11.520] } [13:31:11.520] if (FALSE) { [13:31:11.520] } [13:31:11.520] else { [13:31:11.520] if (TRUE) { [13:31:11.520] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:11.520] open = "w") [13:31:11.520] } [13:31:11.520] else { [13:31:11.520] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:11.520] windows = "NUL", "/dev/null"), open = "w") [13:31:11.520] } [13:31:11.520] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:11.520] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:11.520] base::sink(type = "output", split = FALSE) [13:31:11.520] base::close(...future.stdout) [13:31:11.520] }, add = TRUE) [13:31:11.520] } [13:31:11.520] ...future.frame <- base::sys.nframe() [13:31:11.520] ...future.conditions <- base::list() [13:31:11.520] ...future.rng <- base::globalenv()$.Random.seed [13:31:11.520] if (FALSE) { [13:31:11.520] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:11.520] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:11.520] } [13:31:11.520] ...future.result <- base::tryCatch({ [13:31:11.520] base::withCallingHandlers({ [13:31:11.520] ...future.value <- base::withVisible(base::local({ [13:31:11.520] ii [13:31:11.520] })) [13:31:11.520] future::FutureResult(value = ...future.value$value, [13:31:11.520] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.520] ...future.rng), globalenv = if (FALSE) [13:31:11.520] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:11.520] ...future.globalenv.names)) [13:31:11.520] else NULL, started = ...future.startTime, version = "1.8") [13:31:11.520] }, condition = base::local({ [13:31:11.520] c <- base::c [13:31:11.520] inherits <- base::inherits [13:31:11.520] invokeRestart <- base::invokeRestart [13:31:11.520] length <- base::length [13:31:11.520] list <- base::list [13:31:11.520] seq.int <- base::seq.int [13:31:11.520] signalCondition <- base::signalCondition [13:31:11.520] sys.calls <- base::sys.calls [13:31:11.520] `[[` <- base::`[[` [13:31:11.520] `+` <- base::`+` [13:31:11.520] `<<-` <- base::`<<-` [13:31:11.520] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:11.520] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:11.520] 3L)] [13:31:11.520] } [13:31:11.520] function(cond) { [13:31:11.520] is_error <- inherits(cond, "error") [13:31:11.520] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:11.520] NULL) [13:31:11.520] if (is_error) { [13:31:11.520] sessionInformation <- function() { [13:31:11.520] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:11.520] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:11.520] search = base::search(), system = base::Sys.info()) [13:31:11.520] } [13:31:11.520] ...future.conditions[[length(...future.conditions) + [13:31:11.520] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:11.520] cond$call), session = sessionInformation(), [13:31:11.520] timestamp = base::Sys.time(), signaled = 0L) [13:31:11.520] signalCondition(cond) [13:31:11.520] } [13:31:11.520] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:11.520] signal <- FALSE && inherits(cond, character(0)) [13:31:11.520] ...future.conditions[[length(...future.conditions) + [13:31:11.520] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:11.520] if (FALSE && !signal) { [13:31:11.520] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.520] { [13:31:11.520] inherits <- base::inherits [13:31:11.520] invokeRestart <- base::invokeRestart [13:31:11.520] is.null <- base::is.null [13:31:11.520] muffled <- FALSE [13:31:11.520] if (inherits(cond, "message")) { [13:31:11.520] muffled <- grepl(pattern, "muffleMessage") [13:31:11.520] if (muffled) [13:31:11.520] invokeRestart("muffleMessage") [13:31:11.520] } [13:31:11.520] else if (inherits(cond, "warning")) { [13:31:11.520] muffled <- grepl(pattern, "muffleWarning") [13:31:11.520] if (muffled) [13:31:11.520] invokeRestart("muffleWarning") [13:31:11.520] } [13:31:11.520] else if (inherits(cond, "condition")) { [13:31:11.520] if (!is.null(pattern)) { [13:31:11.520] computeRestarts <- base::computeRestarts [13:31:11.520] grepl <- base::grepl [13:31:11.520] restarts <- computeRestarts(cond) [13:31:11.520] for (restart in restarts) { [13:31:11.520] name <- restart$name [13:31:11.520] if (is.null(name)) [13:31:11.520] next [13:31:11.520] if (!grepl(pattern, name)) [13:31:11.520] next [13:31:11.520] invokeRestart(restart) [13:31:11.520] muffled <- TRUE [13:31:11.520] break [13:31:11.520] } [13:31:11.520] } [13:31:11.520] } [13:31:11.520] invisible(muffled) [13:31:11.520] } [13:31:11.520] muffleCondition(cond, pattern = "^muffle") [13:31:11.520] } [13:31:11.520] } [13:31:11.520] else { [13:31:11.520] if (TRUE) { [13:31:11.520] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.520] { [13:31:11.520] inherits <- base::inherits [13:31:11.520] invokeRestart <- base::invokeRestart [13:31:11.520] is.null <- base::is.null [13:31:11.520] muffled <- FALSE [13:31:11.520] if (inherits(cond, "message")) { [13:31:11.520] muffled <- grepl(pattern, "muffleMessage") [13:31:11.520] if (muffled) [13:31:11.520] invokeRestart("muffleMessage") [13:31:11.520] } [13:31:11.520] else if (inherits(cond, "warning")) { [13:31:11.520] muffled <- grepl(pattern, "muffleWarning") [13:31:11.520] if (muffled) [13:31:11.520] invokeRestart("muffleWarning") [13:31:11.520] } [13:31:11.520] else if (inherits(cond, "condition")) { [13:31:11.520] if (!is.null(pattern)) { [13:31:11.520] computeRestarts <- base::computeRestarts [13:31:11.520] grepl <- base::grepl [13:31:11.520] restarts <- computeRestarts(cond) [13:31:11.520] for (restart in restarts) { [13:31:11.520] name <- restart$name [13:31:11.520] if (is.null(name)) [13:31:11.520] next [13:31:11.520] if (!grepl(pattern, name)) [13:31:11.520] next [13:31:11.520] invokeRestart(restart) [13:31:11.520] muffled <- TRUE [13:31:11.520] break [13:31:11.520] } [13:31:11.520] } [13:31:11.520] } [13:31:11.520] invisible(muffled) [13:31:11.520] } [13:31:11.520] muffleCondition(cond, pattern = "^muffle") [13:31:11.520] } [13:31:11.520] } [13:31:11.520] } [13:31:11.520] })) [13:31:11.520] }, error = function(ex) { [13:31:11.520] base::structure(base::list(value = NULL, visible = NULL, [13:31:11.520] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.520] ...future.rng), started = ...future.startTime, [13:31:11.520] finished = Sys.time(), session_uuid = NA_character_, [13:31:11.520] version = "1.8"), class = "FutureResult") [13:31:11.520] }, finally = { [13:31:11.520] if (!identical(...future.workdir, getwd())) [13:31:11.520] setwd(...future.workdir) [13:31:11.520] { [13:31:11.520] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:11.520] ...future.oldOptions$nwarnings <- NULL [13:31:11.520] } [13:31:11.520] base::options(...future.oldOptions) [13:31:11.520] if (.Platform$OS.type == "windows") { [13:31:11.520] old_names <- names(...future.oldEnvVars) [13:31:11.520] envs <- base::Sys.getenv() [13:31:11.520] names <- names(envs) [13:31:11.520] common <- intersect(names, old_names) [13:31:11.520] added <- setdiff(names, old_names) [13:31:11.520] removed <- setdiff(old_names, names) [13:31:11.520] changed <- common[...future.oldEnvVars[common] != [13:31:11.520] envs[common]] [13:31:11.520] NAMES <- toupper(changed) [13:31:11.520] args <- list() [13:31:11.520] for (kk in seq_along(NAMES)) { [13:31:11.520] name <- changed[[kk]] [13:31:11.520] NAME <- NAMES[[kk]] [13:31:11.520] if (name != NAME && is.element(NAME, old_names)) [13:31:11.520] next [13:31:11.520] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.520] } [13:31:11.520] NAMES <- toupper(added) [13:31:11.520] for (kk in seq_along(NAMES)) { [13:31:11.520] name <- added[[kk]] [13:31:11.520] NAME <- NAMES[[kk]] [13:31:11.520] if (name != NAME && is.element(NAME, old_names)) [13:31:11.520] next [13:31:11.520] args[[name]] <- "" [13:31:11.520] } [13:31:11.520] NAMES <- toupper(removed) [13:31:11.520] for (kk in seq_along(NAMES)) { [13:31:11.520] name <- removed[[kk]] [13:31:11.520] NAME <- NAMES[[kk]] [13:31:11.520] if (name != NAME && is.element(NAME, old_names)) [13:31:11.520] next [13:31:11.520] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.520] } [13:31:11.520] if (length(args) > 0) [13:31:11.520] base::do.call(base::Sys.setenv, args = args) [13:31:11.520] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:11.520] } [13:31:11.520] else { [13:31:11.520] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:11.520] } [13:31:11.520] { [13:31:11.520] if (base::length(...future.futureOptionsAdded) > [13:31:11.520] 0L) { [13:31:11.520] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:11.520] base::names(opts) <- ...future.futureOptionsAdded [13:31:11.520] base::options(opts) [13:31:11.520] } [13:31:11.520] { [13:31:11.520] NULL [13:31:11.520] options(future.plan = NULL) [13:31:11.520] if (is.na(NA_character_)) [13:31:11.520] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.520] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:11.520] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:11.520] .init = FALSE) [13:31:11.520] } [13:31:11.520] } [13:31:11.520] } [13:31:11.520] }) [13:31:11.520] if (TRUE) { [13:31:11.520] base::sink(type = "output", split = FALSE) [13:31:11.520] if (TRUE) { [13:31:11.520] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:11.520] } [13:31:11.520] else { [13:31:11.520] ...future.result["stdout"] <- base::list(NULL) [13:31:11.520] } [13:31:11.520] base::close(...future.stdout) [13:31:11.520] ...future.stdout <- NULL [13:31:11.520] } [13:31:11.520] ...future.result$conditions <- ...future.conditions [13:31:11.520] ...future.result$finished <- base::Sys.time() [13:31:11.520] ...future.result [13:31:11.520] } [13:31:11.524] - Resolving 3 mirai_multisession futures[13:31:11.525] signalConditions() ... [13:31:11.525] - include = 'immediateCondition' [13:31:11.525] - exclude = [13:31:11.526] - resignal = FALSE [13:31:11.526] - Number of conditions: 1 [13:31:11.526] signalConditions() ... done [13:31:11.526] Future state: 'finished' [13:31:11.526] signalConditions() ... [13:31:11.526] - include = 'condition' [13:31:11.527] - exclude = 'immediateCondition' [13:31:11.527] - resignal = TRUE [13:31:11.527] - Number of conditions: 1 [13:31:11.527] - Condition #1: 'simpleError', 'error', 'condition' [13:31:11.527] signalConditions() ... done [13:31:11.528] signalConditions() ... [13:31:11.528] - include = 'immediateCondition' [13:31:11.528] - exclude = [13:31:11.528] - resignal = FALSE [13:31:11.528] - Number of conditions: 1 [13:31:11.529] signalConditions() ... done [13:31:11.529] Future state: 'finished' [13:31:11.529] signalConditions() ... [13:31:11.529] - include = 'condition' [13:31:11.529] - exclude = 'immediateCondition' [13:31:11.530] - resignal = TRUE [13:31:11.530] - Number of conditions: 1 [13:31:11.530] - Condition #1: 'simpleError', 'error', 'condition' [13:31:11.530] signalConditions() ... done [13:31:11.530] signalConditions() ... [13:31:11.533] - include = 'immediateCondition' [13:31:11.534] - exclude = [13:31:11.534] - resignal = FALSE [13:31:11.534] - Number of conditions: 1 [13:31:11.534] signalConditions() ... done [13:31:11.535] Future state: 'finished' [13:31:11.535] signalConditions() ... [13:31:11.535] - include = 'condition' [13:31:11.535] - exclude = 'immediateCondition' [13:31:11.535] - resignal = TRUE [13:31:11.536] - Number of conditions: 1 [13:31:11.536] - Condition #1: 'simpleError', 'error', 'condition' [13:31:11.536] signalConditions() ... done [13:31:11.536] *** mirai_multisession(..., globals = FALSE) and errors[13:31:11.538] getGlobalsAndPackages() ... [13:31:11.539] Not searching for globals [13:31:11.539] - globals: [0] [13:31:11.539] getGlobalsAndPackages() ... DONE [13:31:11.539] getGlobalsAndPackages() ... [13:31:11.539] [13:31:11.540] - globals: [0] [13:31:11.540] getGlobalsAndPackages() ... DONE [13:31:11.540] Packages needed by the future expression (n = 0): [13:31:11.540] Packages needed by future strategies (n = 0): [13:31:11.541] { [13:31:11.541] { [13:31:11.541] { [13:31:11.541] ...future.startTime <- base::Sys.time() [13:31:11.541] { [13:31:11.541] { [13:31:11.541] { [13:31:11.541] base::local({ [13:31:11.541] has_future <- base::requireNamespace("future", [13:31:11.541] quietly = TRUE) [13:31:11.541] if (has_future) { [13:31:11.541] ns <- base::getNamespace("future") [13:31:11.541] version <- ns[[".package"]][["version"]] [13:31:11.541] if (is.null(version)) [13:31:11.541] version <- utils::packageVersion("future") [13:31:11.541] } [13:31:11.541] else { [13:31:11.541] version <- NULL [13:31:11.541] } [13:31:11.541] if (!has_future || version < "1.8.0") { [13:31:11.541] info <- base::c(r_version = base::gsub("R version ", [13:31:11.541] "", base::R.version$version.string), [13:31:11.541] platform = base::sprintf("%s (%s-bit)", [13:31:11.541] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:11.541] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:11.541] "release", "version")], collapse = " "), [13:31:11.541] hostname = base::Sys.info()[["nodename"]]) [13:31:11.541] info <- base::sprintf("%s: %s", base::names(info), [13:31:11.541] info) [13:31:11.541] info <- base::paste(info, collapse = "; ") [13:31:11.541] if (!has_future) { [13:31:11.541] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:11.541] info) [13:31:11.541] } [13:31:11.541] else { [13:31:11.541] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:11.541] info, version) [13:31:11.541] } [13:31:11.541] base::stop(msg) [13:31:11.541] } [13:31:11.541] }) [13:31:11.541] } [13:31:11.541] ...future.strategy.old <- future::plan("list") [13:31:11.541] options(future.plan = NULL) [13:31:11.541] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.541] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:11.541] } [13:31:11.541] ...future.workdir <- getwd() [13:31:11.541] } [13:31:11.541] ...future.oldOptions <- base::as.list(base::.Options) [13:31:11.541] ...future.oldEnvVars <- base::Sys.getenv() [13:31:11.541] } [13:31:11.541] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:11.541] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:11.541] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:11.541] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:11.541] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:11.541] future.stdout.windows.reencode = NULL, width = 80L) [13:31:11.541] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:11.541] base::names(...future.oldOptions)) [13:31:11.541] } [13:31:11.541] if (FALSE) { [13:31:11.541] } [13:31:11.541] else { [13:31:11.541] if (TRUE) { [13:31:11.541] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:11.541] open = "w") [13:31:11.541] } [13:31:11.541] else { [13:31:11.541] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:11.541] windows = "NUL", "/dev/null"), open = "w") [13:31:11.541] } [13:31:11.541] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:11.541] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:11.541] base::sink(type = "output", split = FALSE) [13:31:11.541] base::close(...future.stdout) [13:31:11.541] }, add = TRUE) [13:31:11.541] } [13:31:11.541] ...future.frame <- base::sys.nframe() [13:31:11.541] ...future.conditions <- base::list() [13:31:11.541] ...future.rng <- base::globalenv()$.Random.seed [13:31:11.541] if (FALSE) { [13:31:11.541] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:11.541] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:11.541] } [13:31:11.541] ...future.result <- base::tryCatch({ [13:31:11.541] base::withCallingHandlers({ [13:31:11.541] ...future.value <- base::withVisible(base::local({ [13:31:11.541] stop("Whoops!") [13:31:11.541] 1 [13:31:11.541] })) [13:31:11.541] future::FutureResult(value = ...future.value$value, [13:31:11.541] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.541] ...future.rng), globalenv = if (FALSE) [13:31:11.541] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:11.541] ...future.globalenv.names)) [13:31:11.541] else NULL, started = ...future.startTime, version = "1.8") [13:31:11.541] }, condition = base::local({ [13:31:11.541] c <- base::c [13:31:11.541] inherits <- base::inherits [13:31:11.541] invokeRestart <- base::invokeRestart [13:31:11.541] length <- base::length [13:31:11.541] list <- base::list [13:31:11.541] seq.int <- base::seq.int [13:31:11.541] signalCondition <- base::signalCondition [13:31:11.541] sys.calls <- base::sys.calls [13:31:11.541] `[[` <- base::`[[` [13:31:11.541] `+` <- base::`+` [13:31:11.541] `<<-` <- base::`<<-` [13:31:11.541] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:11.541] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:11.541] 3L)] [13:31:11.541] } [13:31:11.541] function(cond) { [13:31:11.541] is_error <- inherits(cond, "error") [13:31:11.541] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:11.541] NULL) [13:31:11.541] if (is_error) { [13:31:11.541] sessionInformation <- function() { [13:31:11.541] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:11.541] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:11.541] search = base::search(), system = base::Sys.info()) [13:31:11.541] } [13:31:11.541] ...future.conditions[[length(...future.conditions) + [13:31:11.541] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:11.541] cond$call), session = sessionInformation(), [13:31:11.541] timestamp = base::Sys.time(), signaled = 0L) [13:31:11.541] signalCondition(cond) [13:31:11.541] } [13:31:11.541] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:11.541] signal <- FALSE && inherits(cond, character(0)) [13:31:11.541] ...future.conditions[[length(...future.conditions) + [13:31:11.541] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:11.541] if (FALSE && !signal) { [13:31:11.541] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.541] { [13:31:11.541] inherits <- base::inherits [13:31:11.541] invokeRestart <- base::invokeRestart [13:31:11.541] is.null <- base::is.null [13:31:11.541] muffled <- FALSE [13:31:11.541] if (inherits(cond, "message")) { [13:31:11.541] muffled <- grepl(pattern, "muffleMessage") [13:31:11.541] if (muffled) [13:31:11.541] invokeRestart("muffleMessage") [13:31:11.541] } [13:31:11.541] else if (inherits(cond, "warning")) { [13:31:11.541] muffled <- grepl(pattern, "muffleWarning") [13:31:11.541] if (muffled) [13:31:11.541] invokeRestart("muffleWarning") [13:31:11.541] } [13:31:11.541] else if (inherits(cond, "condition")) { [13:31:11.541] if (!is.null(pattern)) { [13:31:11.541] computeRestarts <- base::computeRestarts [13:31:11.541] grepl <- base::grepl [13:31:11.541] restarts <- computeRestarts(cond) [13:31:11.541] for (restart in restarts) { [13:31:11.541] name <- restart$name [13:31:11.541] if (is.null(name)) [13:31:11.541] next [13:31:11.541] if (!grepl(pattern, name)) [13:31:11.541] next [13:31:11.541] invokeRestart(restart) [13:31:11.541] muffled <- TRUE [13:31:11.541] break [13:31:11.541] } [13:31:11.541] } [13:31:11.541] } [13:31:11.541] invisible(muffled) [13:31:11.541] } [13:31:11.541] muffleCondition(cond, pattern = "^muffle") [13:31:11.541] } [13:31:11.541] } [13:31:11.541] else { [13:31:11.541] if (TRUE) { [13:31:11.541] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.541] { [13:31:11.541] inherits <- base::inherits [13:31:11.541] invokeRestart <- base::invokeRestart [13:31:11.541] is.null <- base::is.null [13:31:11.541] muffled <- FALSE [13:31:11.541] if (inherits(cond, "message")) { [13:31:11.541] muffled <- grepl(pattern, "muffleMessage") [13:31:11.541] if (muffled) [13:31:11.541] invokeRestart("muffleMessage") [13:31:11.541] } [13:31:11.541] else if (inherits(cond, "warning")) { [13:31:11.541] muffled <- grepl(pattern, "muffleWarning") [13:31:11.541] if (muffled) [13:31:11.541] invokeRestart("muffleWarning") [13:31:11.541] } [13:31:11.541] else if (inherits(cond, "condition")) { [13:31:11.541] if (!is.null(pattern)) { [13:31:11.541] computeRestarts <- base::computeRestarts [13:31:11.541] grepl <- base::grepl [13:31:11.541] restarts <- computeRestarts(cond) [13:31:11.541] for (restart in restarts) { [13:31:11.541] name <- restart$name [13:31:11.541] if (is.null(name)) [13:31:11.541] next [13:31:11.541] if (!grepl(pattern, name)) [13:31:11.541] next [13:31:11.541] invokeRestart(restart) [13:31:11.541] muffled <- TRUE [13:31:11.541] break [13:31:11.541] } [13:31:11.541] } [13:31:11.541] } [13:31:11.541] invisible(muffled) [13:31:11.541] } [13:31:11.541] muffleCondition(cond, pattern = "^muffle") [13:31:11.541] } [13:31:11.541] } [13:31:11.541] } [13:31:11.541] })) [13:31:11.541] }, error = function(ex) { [13:31:11.541] base::structure(base::list(value = NULL, visible = NULL, [13:31:11.541] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.541] ...future.rng), started = ...future.startTime, [13:31:11.541] finished = Sys.time(), session_uuid = NA_character_, [13:31:11.541] version = "1.8"), class = "FutureResult") [13:31:11.541] }, finally = { [13:31:11.541] if (!identical(...future.workdir, getwd())) [13:31:11.541] setwd(...future.workdir) [13:31:11.541] { [13:31:11.541] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:11.541] ...future.oldOptions$nwarnings <- NULL [13:31:11.541] } [13:31:11.541] base::options(...future.oldOptions) [13:31:11.541] if (.Platform$OS.type == "windows") { [13:31:11.541] old_names <- names(...future.oldEnvVars) [13:31:11.541] envs <- base::Sys.getenv() [13:31:11.541] names <- names(envs) [13:31:11.541] common <- intersect(names, old_names) [13:31:11.541] added <- setdiff(names, old_names) [13:31:11.541] removed <- setdiff(old_names, names) [13:31:11.541] changed <- common[...future.oldEnvVars[common] != [13:31:11.541] envs[common]] [13:31:11.541] NAMES <- toupper(changed) [13:31:11.541] args <- list() [13:31:11.541] for (kk in seq_along(NAMES)) { [13:31:11.541] name <- changed[[kk]] [13:31:11.541] NAME <- NAMES[[kk]] [13:31:11.541] if (name != NAME && is.element(NAME, old_names)) [13:31:11.541] next [13:31:11.541] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.541] } [13:31:11.541] NAMES <- toupper(added) [13:31:11.541] for (kk in seq_along(NAMES)) { [13:31:11.541] name <- added[[kk]] [13:31:11.541] NAME <- NAMES[[kk]] [13:31:11.541] if (name != NAME && is.element(NAME, old_names)) [13:31:11.541] next [13:31:11.541] args[[name]] <- "" [13:31:11.541] } [13:31:11.541] NAMES <- toupper(removed) [13:31:11.541] for (kk in seq_along(NAMES)) { [13:31:11.541] name <- removed[[kk]] [13:31:11.541] NAME <- NAMES[[kk]] [13:31:11.541] if (name != NAME && is.element(NAME, old_names)) [13:31:11.541] next [13:31:11.541] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.541] } [13:31:11.541] if (length(args) > 0) [13:31:11.541] base::do.call(base::Sys.setenv, args = args) [13:31:11.541] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:11.541] } [13:31:11.541] else { [13:31:11.541] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:11.541] } [13:31:11.541] { [13:31:11.541] if (base::length(...future.futureOptionsAdded) > [13:31:11.541] 0L) { [13:31:11.541] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:11.541] base::names(opts) <- ...future.futureOptionsAdded [13:31:11.541] base::options(opts) [13:31:11.541] } [13:31:11.541] { [13:31:11.541] NULL [13:31:11.541] options(future.plan = NULL) [13:31:11.541] if (is.na(NA_character_)) [13:31:11.541] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.541] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:11.541] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:11.541] .init = FALSE) [13:31:11.541] } [13:31:11.541] } [13:31:11.541] } [13:31:11.541] }) [13:31:11.541] if (TRUE) { [13:31:11.541] base::sink(type = "output", split = FALSE) [13:31:11.541] if (TRUE) { [13:31:11.541] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:11.541] } [13:31:11.541] else { [13:31:11.541] ...future.result["stdout"] <- base::list(NULL) [13:31:11.541] } [13:31:11.541] base::close(...future.stdout) [13:31:11.541] ...future.stdout <- NULL [13:31:11.541] } [13:31:11.541] ...future.result$conditions <- ...future.conditions [13:31:11.541] ...future.result$finished <- base::Sys.time() [13:31:11.541] ...future.result [13:31:11.541] } 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:31:11.545] resolved() for 'MiraiFuture' ... [13:31:11.546] - state: 'running' [13:31:11.546] - run: TRUE [13:31:11.546] - result: 'NULL' [13:31:11.546] - resolved: FALSE [13:31:11.546] resolved() for 'MiraiFuture' ... done Resolved: FALSE Value: Conditions captured: Early signaling: FALSE Owner process: 34a50e50-df8b-1a25-bcea-c6e422c658f2 Class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:31:11.547] signalConditions() ... [13:31:11.547] - include = 'immediateCondition' [13:31:11.548] - exclude = [13:31:11.548] - resignal = FALSE [13:31:11.548] - Number of conditions: 1 [13:31:11.548] signalConditions() ... done [13:31:11.548] signalConditions() ... [13:31:11.549] - include = 'immediateCondition' [13:31:11.549] - exclude = [13:31:11.549] - resignal = FALSE [13:31:11.549] - Number of conditions: 1 [13:31:11.549] signalConditions() ... done [13:31:11.549] Future state: 'finished' [13:31:11.550] signalConditions() ... [13:31:11.550] - include = 'condition' [13:31:11.550] - exclude = 'immediateCondition' [13:31:11.550] - resignal = TRUE [13:31:11.550] - Number of conditions: 1 [13:31:11.550] - Condition #1: 'simpleError', 'error', 'condition' [13:31:11.551] signalConditions() ... done [13:31:11.551] signalConditions() ... [13:31:11.551] - include = 'immediateCondition' [13:31:11.551] - exclude = [13:31:11.551] - resignal = FALSE [13:31:11.552] - Number of conditions: 1 [13:31:11.552] signalConditions() ... done [13:31:11.552] Future state: 'finished' [13:31:11.552] signalConditions() ... [13:31:11.552] - include = 'condition' [13:31:11.552] - exclude = 'immediateCondition' [13:31:11.553] - resignal = TRUE [13:31:11.553] - Number of conditions: 1 [13:31:11.553] - Condition #1: 'simpleError', 'error', 'condition' [13:31:11.553] signalConditions() ... done [13:31:11.553] *** mirai_multisession(..., globals = TRUE) without globals[13:31:11.555] getGlobalsAndPackages() ... [13:31:11.556] Searching for globals... [13:31:11.559] - globals found: [1] '{' [13:31:11.559] Searching for globals ... DONE [13:31:11.560] Resolving globals: FALSE [13:31:11.560] [13:31:11.560] [13:31:11.561] getGlobalsAndPackages() ... DONE [13:31:11.561] getGlobalsAndPackages() ... [13:31:11.561] [13:31:11.561] - globals: [0] [13:31:11.561] getGlobalsAndPackages() ... DONE [13:31:11.562] Packages needed by the future expression (n = 0): [13:31:11.562] Packages needed by future strategies (n = 0): [13:31:11.562] { [13:31:11.562] { [13:31:11.562] { [13:31:11.562] ...future.startTime <- base::Sys.time() [13:31:11.562] { [13:31:11.562] { [13:31:11.562] { [13:31:11.562] base::local({ [13:31:11.562] has_future <- base::requireNamespace("future", [13:31:11.562] quietly = TRUE) [13:31:11.562] if (has_future) { [13:31:11.562] ns <- base::getNamespace("future") [13:31:11.562] version <- ns[[".package"]][["version"]] [13:31:11.562] if (is.null(version)) [13:31:11.562] version <- utils::packageVersion("future") [13:31:11.562] } [13:31:11.562] else { [13:31:11.562] version <- NULL [13:31:11.562] } [13:31:11.562] if (!has_future || version < "1.8.0") { [13:31:11.562] info <- base::c(r_version = base::gsub("R version ", [13:31:11.562] "", base::R.version$version.string), [13:31:11.562] platform = base::sprintf("%s (%s-bit)", [13:31:11.562] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:11.562] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:11.562] "release", "version")], collapse = " "), [13:31:11.562] hostname = base::Sys.info()[["nodename"]]) [13:31:11.562] info <- base::sprintf("%s: %s", base::names(info), [13:31:11.562] info) [13:31:11.562] info <- base::paste(info, collapse = "; ") [13:31:11.562] if (!has_future) { [13:31:11.562] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:11.562] info) [13:31:11.562] } [13:31:11.562] else { [13:31:11.562] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:11.562] info, version) [13:31:11.562] } [13:31:11.562] base::stop(msg) [13:31:11.562] } [13:31:11.562] }) [13:31:11.562] } [13:31:11.562] ...future.strategy.old <- future::plan("list") [13:31:11.562] options(future.plan = NULL) [13:31:11.562] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.562] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:11.562] } [13:31:11.562] ...future.workdir <- getwd() [13:31:11.562] } [13:31:11.562] ...future.oldOptions <- base::as.list(base::.Options) [13:31:11.562] ...future.oldEnvVars <- base::Sys.getenv() [13:31:11.562] } [13:31:11.562] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:11.562] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:11.562] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:11.562] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:11.562] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:11.562] future.stdout.windows.reencode = NULL, width = 80L) [13:31:11.562] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:11.562] base::names(...future.oldOptions)) [13:31:11.562] } [13:31:11.562] if (FALSE) { [13:31:11.562] } [13:31:11.562] else { [13:31:11.562] if (TRUE) { [13:31:11.562] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:11.562] open = "w") [13:31:11.562] } [13:31:11.562] else { [13:31:11.562] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:11.562] windows = "NUL", "/dev/null"), open = "w") [13:31:11.562] } [13:31:11.562] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:11.562] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:11.562] base::sink(type = "output", split = FALSE) [13:31:11.562] base::close(...future.stdout) [13:31:11.562] }, add = TRUE) [13:31:11.562] } [13:31:11.562] ...future.frame <- base::sys.nframe() [13:31:11.562] ...future.conditions <- base::list() [13:31:11.562] ...future.rng <- base::globalenv()$.Random.seed [13:31:11.562] if (FALSE) { [13:31:11.562] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:11.562] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:11.562] } [13:31:11.562] ...future.result <- base::tryCatch({ [13:31:11.562] base::withCallingHandlers({ [13:31:11.562] ...future.value <- base::withVisible(base::local({ [13:31:11.562] 42L [13:31:11.562] })) [13:31:11.562] future::FutureResult(value = ...future.value$value, [13:31:11.562] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.562] ...future.rng), globalenv = if (FALSE) [13:31:11.562] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:11.562] ...future.globalenv.names)) [13:31:11.562] else NULL, started = ...future.startTime, version = "1.8") [13:31:11.562] }, condition = base::local({ [13:31:11.562] c <- base::c [13:31:11.562] inherits <- base::inherits [13:31:11.562] invokeRestart <- base::invokeRestart [13:31:11.562] length <- base::length [13:31:11.562] list <- base::list [13:31:11.562] seq.int <- base::seq.int [13:31:11.562] signalCondition <- base::signalCondition [13:31:11.562] sys.calls <- base::sys.calls [13:31:11.562] `[[` <- base::`[[` [13:31:11.562] `+` <- base::`+` [13:31:11.562] `<<-` <- base::`<<-` [13:31:11.562] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:11.562] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:11.562] 3L)] [13:31:11.562] } [13:31:11.562] function(cond) { [13:31:11.562] is_error <- inherits(cond, "error") [13:31:11.562] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:11.562] NULL) [13:31:11.562] if (is_error) { [13:31:11.562] sessionInformation <- function() { [13:31:11.562] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:11.562] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:11.562] search = base::search(), system = base::Sys.info()) [13:31:11.562] } [13:31:11.562] ...future.conditions[[length(...future.conditions) + [13:31:11.562] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:11.562] cond$call), session = sessionInformation(), [13:31:11.562] timestamp = base::Sys.time(), signaled = 0L) [13:31:11.562] signalCondition(cond) [13:31:11.562] } [13:31:11.562] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:11.562] signal <- FALSE && inherits(cond, character(0)) [13:31:11.562] ...future.conditions[[length(...future.conditions) + [13:31:11.562] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:11.562] if (FALSE && !signal) { [13:31:11.562] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.562] { [13:31:11.562] inherits <- base::inherits [13:31:11.562] invokeRestart <- base::invokeRestart [13:31:11.562] is.null <- base::is.null [13:31:11.562] muffled <- FALSE [13:31:11.562] if (inherits(cond, "message")) { [13:31:11.562] muffled <- grepl(pattern, "muffleMessage") [13:31:11.562] if (muffled) [13:31:11.562] invokeRestart("muffleMessage") [13:31:11.562] } [13:31:11.562] else if (inherits(cond, "warning")) { [13:31:11.562] muffled <- grepl(pattern, "muffleWarning") [13:31:11.562] if (muffled) [13:31:11.562] invokeRestart("muffleWarning") [13:31:11.562] } [13:31:11.562] else if (inherits(cond, "condition")) { [13:31:11.562] if (!is.null(pattern)) { [13:31:11.562] computeRestarts <- base::computeRestarts [13:31:11.562] grepl <- base::grepl [13:31:11.562] restarts <- computeRestarts(cond) [13:31:11.562] for (restart in restarts) { [13:31:11.562] name <- restart$name [13:31:11.562] if (is.null(name)) [13:31:11.562] next [13:31:11.562] if (!grepl(pattern, name)) [13:31:11.562] next [13:31:11.562] invokeRestart(restart) [13:31:11.562] muffled <- TRUE [13:31:11.562] break [13:31:11.562] } [13:31:11.562] } [13:31:11.562] } [13:31:11.562] invisible(muffled) [13:31:11.562] } [13:31:11.562] muffleCondition(cond, pattern = "^muffle") [13:31:11.562] } [13:31:11.562] } [13:31:11.562] else { [13:31:11.562] if (TRUE) { [13:31:11.562] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.562] { [13:31:11.562] inherits <- base::inherits [13:31:11.562] invokeRestart <- base::invokeRestart [13:31:11.562] is.null <- base::is.null [13:31:11.562] muffled <- FALSE [13:31:11.562] if (inherits(cond, "message")) { [13:31:11.562] muffled <- grepl(pattern, "muffleMessage") [13:31:11.562] if (muffled) [13:31:11.562] invokeRestart("muffleMessage") [13:31:11.562] } [13:31:11.562] else if (inherits(cond, "warning")) { [13:31:11.562] muffled <- grepl(pattern, "muffleWarning") [13:31:11.562] if (muffled) [13:31:11.562] invokeRestart("muffleWarning") [13:31:11.562] } [13:31:11.562] else if (inherits(cond, "condition")) { [13:31:11.562] if (!is.null(pattern)) { [13:31:11.562] computeRestarts <- base::computeRestarts [13:31:11.562] grepl <- base::grepl [13:31:11.562] restarts <- computeRestarts(cond) [13:31:11.562] for (restart in restarts) { [13:31:11.562] name <- restart$name [13:31:11.562] if (is.null(name)) [13:31:11.562] next [13:31:11.562] if (!grepl(pattern, name)) [13:31:11.562] next [13:31:11.562] invokeRestart(restart) [13:31:11.562] muffled <- TRUE [13:31:11.562] break [13:31:11.562] } [13:31:11.562] } [13:31:11.562] } [13:31:11.562] invisible(muffled) [13:31:11.562] } [13:31:11.562] muffleCondition(cond, pattern = "^muffle") [13:31:11.562] } [13:31:11.562] } [13:31:11.562] } [13:31:11.562] })) [13:31:11.562] }, error = function(ex) { [13:31:11.562] base::structure(base::list(value = NULL, visible = NULL, [13:31:11.562] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.562] ...future.rng), started = ...future.startTime, [13:31:11.562] finished = Sys.time(), session_uuid = NA_character_, [13:31:11.562] version = "1.8"), class = "FutureResult") [13:31:11.562] }, finally = { [13:31:11.562] if (!identical(...future.workdir, getwd())) [13:31:11.562] setwd(...future.workdir) [13:31:11.562] { [13:31:11.562] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:11.562] ...future.oldOptions$nwarnings <- NULL [13:31:11.562] } [13:31:11.562] base::options(...future.oldOptions) [13:31:11.562] if (.Platform$OS.type == "windows") { [13:31:11.562] old_names <- names(...future.oldEnvVars) [13:31:11.562] envs <- base::Sys.getenv() [13:31:11.562] names <- names(envs) [13:31:11.562] common <- intersect(names, old_names) [13:31:11.562] added <- setdiff(names, old_names) [13:31:11.562] removed <- setdiff(old_names, names) [13:31:11.562] changed <- common[...future.oldEnvVars[common] != [13:31:11.562] envs[common]] [13:31:11.562] NAMES <- toupper(changed) [13:31:11.562] args <- list() [13:31:11.562] for (kk in seq_along(NAMES)) { [13:31:11.562] name <- changed[[kk]] [13:31:11.562] NAME <- NAMES[[kk]] [13:31:11.562] if (name != NAME && is.element(NAME, old_names)) [13:31:11.562] next [13:31:11.562] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.562] } [13:31:11.562] NAMES <- toupper(added) [13:31:11.562] for (kk in seq_along(NAMES)) { [13:31:11.562] name <- added[[kk]] [13:31:11.562] NAME <- NAMES[[kk]] [13:31:11.562] if (name != NAME && is.element(NAME, old_names)) [13:31:11.562] next [13:31:11.562] args[[name]] <- "" [13:31:11.562] } [13:31:11.562] NAMES <- toupper(removed) [13:31:11.562] for (kk in seq_along(NAMES)) { [13:31:11.562] name <- removed[[kk]] [13:31:11.562] NAME <- NAMES[[kk]] [13:31:11.562] if (name != NAME && is.element(NAME, old_names)) [13:31:11.562] next [13:31:11.562] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.562] } [13:31:11.562] if (length(args) > 0) [13:31:11.562] base::do.call(base::Sys.setenv, args = args) [13:31:11.562] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:11.562] } [13:31:11.562] else { [13:31:11.562] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:11.562] } [13:31:11.562] { [13:31:11.562] if (base::length(...future.futureOptionsAdded) > [13:31:11.562] 0L) { [13:31:11.562] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:11.562] base::names(opts) <- ...future.futureOptionsAdded [13:31:11.562] base::options(opts) [13:31:11.562] } [13:31:11.562] { [13:31:11.562] NULL [13:31:11.562] options(future.plan = NULL) [13:31:11.562] if (is.na(NA_character_)) [13:31:11.562] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.562] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:11.562] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:11.562] .init = FALSE) [13:31:11.562] } [13:31:11.562] } [13:31:11.562] } [13:31:11.562] }) [13:31:11.562] if (TRUE) { [13:31:11.562] base::sink(type = "output", split = FALSE) [13:31:11.562] if (TRUE) { [13:31:11.562] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:11.562] } [13:31:11.562] else { [13:31:11.562] ...future.result["stdout"] <- base::list(NULL) [13:31:11.562] } [13:31:11.562] base::close(...future.stdout) [13:31:11.562] ...future.stdout <- NULL [13:31:11.562] } [13:31:11.562] ...future.result$conditions <- ...future.conditions [13:31:11.562] ...future.result$finished <- base::Sys.time() [13:31:11.562] ...future.result [13:31:11.562] } [13:31:11.566] resolved() for 'MiraiFuture' ... [13:31:11.566] - state: 'running' [13:31:11.567] - run: TRUE [13:31:11.567] - result: 'NULL' [13:31:11.567] - resolved: FALSE [13:31:11.567] resolved() for 'MiraiFuture' ... done [1] FALSE [1] 42 [13:31:11.568] *** mirai_multisession(..., globals = TRUE) with globals[13:31:11.570] getGlobalsAndPackages() ... [13:31:11.570] Searching for globals... [13:31:11.576] - globals found: [4] '{', '<-', '*', 'a' [13:31:11.577] Searching for globals ... DONE [13:31:11.577] Resolving globals: FALSE [13:31:11.579] The total size of the 1 globals is 56 bytes (56 bytes) [13:31:11.580] 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:31:11.580] - globals: [1] 'a' [13:31:11.581] [13:31:11.581] getGlobalsAndPackages() ... DONE [13:31:11.581] getGlobalsAndPackages() ... [13:31:11.581] - globals passed as-is: [1] 'a' [13:31:11.581] Resolving globals: FALSE [13:31:11.582] - globals: [1] 'a' [13:31:11.582] [13:31:11.582] getGlobalsAndPackages() ... DONE [13:31:11.582] Packages needed by the future expression (n = 0): [13:31:11.583] Packages needed by future strategies (n = 0): [13:31:11.583] { [13:31:11.583] { [13:31:11.583] { [13:31:11.583] ...future.startTime <- base::Sys.time() [13:31:11.583] { [13:31:11.583] { [13:31:11.583] { [13:31:11.583] base::local({ [13:31:11.583] has_future <- base::requireNamespace("future", [13:31:11.583] quietly = TRUE) [13:31:11.583] if (has_future) { [13:31:11.583] ns <- base::getNamespace("future") [13:31:11.583] version <- ns[[".package"]][["version"]] [13:31:11.583] if (is.null(version)) [13:31:11.583] version <- utils::packageVersion("future") [13:31:11.583] } [13:31:11.583] else { [13:31:11.583] version <- NULL [13:31:11.583] } [13:31:11.583] if (!has_future || version < "1.8.0") { [13:31:11.583] info <- base::c(r_version = base::gsub("R version ", [13:31:11.583] "", base::R.version$version.string), [13:31:11.583] platform = base::sprintf("%s (%s-bit)", [13:31:11.583] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:11.583] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:11.583] "release", "version")], collapse = " "), [13:31:11.583] hostname = base::Sys.info()[["nodename"]]) [13:31:11.583] info <- base::sprintf("%s: %s", base::names(info), [13:31:11.583] info) [13:31:11.583] info <- base::paste(info, collapse = "; ") [13:31:11.583] if (!has_future) { [13:31:11.583] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:11.583] info) [13:31:11.583] } [13:31:11.583] else { [13:31:11.583] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:11.583] info, version) [13:31:11.583] } [13:31:11.583] base::stop(msg) [13:31:11.583] } [13:31:11.583] }) [13:31:11.583] } [13:31:11.583] ...future.strategy.old <- future::plan("list") [13:31:11.583] options(future.plan = NULL) [13:31:11.583] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.583] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:11.583] } [13:31:11.583] ...future.workdir <- getwd() [13:31:11.583] } [13:31:11.583] ...future.oldOptions <- base::as.list(base::.Options) [13:31:11.583] ...future.oldEnvVars <- base::Sys.getenv() [13:31:11.583] } [13:31:11.583] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:11.583] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:11.583] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:11.583] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:11.583] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:11.583] future.stdout.windows.reencode = NULL, width = 80L) [13:31:11.583] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:11.583] base::names(...future.oldOptions)) [13:31:11.583] } [13:31:11.583] if (FALSE) { [13:31:11.583] } [13:31:11.583] else { [13:31:11.583] if (TRUE) { [13:31:11.583] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:11.583] open = "w") [13:31:11.583] } [13:31:11.583] else { [13:31:11.583] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:11.583] windows = "NUL", "/dev/null"), open = "w") [13:31:11.583] } [13:31:11.583] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:11.583] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:11.583] base::sink(type = "output", split = FALSE) [13:31:11.583] base::close(...future.stdout) [13:31:11.583] }, add = TRUE) [13:31:11.583] } [13:31:11.583] ...future.frame <- base::sys.nframe() [13:31:11.583] ...future.conditions <- base::list() [13:31:11.583] ...future.rng <- base::globalenv()$.Random.seed [13:31:11.583] if (FALSE) { [13:31:11.583] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:11.583] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:11.583] } [13:31:11.583] ...future.result <- base::tryCatch({ [13:31:11.583] base::withCallingHandlers({ [13:31:11.583] ...future.value <- base::withVisible(base::local({ [13:31:11.583] b <- 3 [13:31:11.583] c <- 2 [13:31:11.583] a * b * c [13:31:11.583] })) [13:31:11.583] future::FutureResult(value = ...future.value$value, [13:31:11.583] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.583] ...future.rng), globalenv = if (FALSE) [13:31:11.583] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:11.583] ...future.globalenv.names)) [13:31:11.583] else NULL, started = ...future.startTime, version = "1.8") [13:31:11.583] }, condition = base::local({ [13:31:11.583] c <- base::c [13:31:11.583] inherits <- base::inherits [13:31:11.583] invokeRestart <- base::invokeRestart [13:31:11.583] length <- base::length [13:31:11.583] list <- base::list [13:31:11.583] seq.int <- base::seq.int [13:31:11.583] signalCondition <- base::signalCondition [13:31:11.583] sys.calls <- base::sys.calls [13:31:11.583] `[[` <- base::`[[` [13:31:11.583] `+` <- base::`+` [13:31:11.583] `<<-` <- base::`<<-` [13:31:11.583] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:11.583] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:11.583] 3L)] [13:31:11.583] } [13:31:11.583] function(cond) { [13:31:11.583] is_error <- inherits(cond, "error") [13:31:11.583] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:11.583] NULL) [13:31:11.583] if (is_error) { [13:31:11.583] sessionInformation <- function() { [13:31:11.583] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:11.583] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:11.583] search = base::search(), system = base::Sys.info()) [13:31:11.583] } [13:31:11.583] ...future.conditions[[length(...future.conditions) + [13:31:11.583] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:11.583] cond$call), session = sessionInformation(), [13:31:11.583] timestamp = base::Sys.time(), signaled = 0L) [13:31:11.583] signalCondition(cond) [13:31:11.583] } [13:31:11.583] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:11.583] signal <- FALSE && inherits(cond, character(0)) [13:31:11.583] ...future.conditions[[length(...future.conditions) + [13:31:11.583] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:11.583] if (FALSE && !signal) { [13:31:11.583] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.583] { [13:31:11.583] inherits <- base::inherits [13:31:11.583] invokeRestart <- base::invokeRestart [13:31:11.583] is.null <- base::is.null [13:31:11.583] muffled <- FALSE [13:31:11.583] if (inherits(cond, "message")) { [13:31:11.583] muffled <- grepl(pattern, "muffleMessage") [13:31:11.583] if (muffled) [13:31:11.583] invokeRestart("muffleMessage") [13:31:11.583] } [13:31:11.583] else if (inherits(cond, "warning")) { [13:31:11.583] muffled <- grepl(pattern, "muffleWarning") [13:31:11.583] if (muffled) [13:31:11.583] invokeRestart("muffleWarning") [13:31:11.583] } [13:31:11.583] else if (inherits(cond, "condition")) { [13:31:11.583] if (!is.null(pattern)) { [13:31:11.583] computeRestarts <- base::computeRestarts [13:31:11.583] grepl <- base::grepl [13:31:11.583] restarts <- computeRestarts(cond) [13:31:11.583] for (restart in restarts) { [13:31:11.583] name <- restart$name [13:31:11.583] if (is.null(name)) [13:31:11.583] next [13:31:11.583] if (!grepl(pattern, name)) [13:31:11.583] next [13:31:11.583] invokeRestart(restart) [13:31:11.583] muffled <- TRUE [13:31:11.583] break [13:31:11.583] } [13:31:11.583] } [13:31:11.583] } [13:31:11.583] invisible(muffled) [13:31:11.583] } [13:31:11.583] muffleCondition(cond, pattern = "^muffle") [13:31:11.583] } [13:31:11.583] } [13:31:11.583] else { [13:31:11.583] if (TRUE) { [13:31:11.583] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.583] { [13:31:11.583] inherits <- base::inherits [13:31:11.583] invokeRestart <- base::invokeRestart [13:31:11.583] is.null <- base::is.null [13:31:11.583] muffled <- FALSE [13:31:11.583] if (inherits(cond, "message")) { [13:31:11.583] muffled <- grepl(pattern, "muffleMessage") [13:31:11.583] if (muffled) [13:31:11.583] invokeRestart("muffleMessage") [13:31:11.583] } [13:31:11.583] else if (inherits(cond, "warning")) { [13:31:11.583] muffled <- grepl(pattern, "muffleWarning") [13:31:11.583] if (muffled) [13:31:11.583] invokeRestart("muffleWarning") [13:31:11.583] } [13:31:11.583] else if (inherits(cond, "condition")) { [13:31:11.583] if (!is.null(pattern)) { [13:31:11.583] computeRestarts <- base::computeRestarts [13:31:11.583] grepl <- base::grepl [13:31:11.583] restarts <- computeRestarts(cond) [13:31:11.583] for (restart in restarts) { [13:31:11.583] name <- restart$name [13:31:11.583] if (is.null(name)) [13:31:11.583] next [13:31:11.583] if (!grepl(pattern, name)) [13:31:11.583] next [13:31:11.583] invokeRestart(restart) [13:31:11.583] muffled <- TRUE [13:31:11.583] break [13:31:11.583] } [13:31:11.583] } [13:31:11.583] } [13:31:11.583] invisible(muffled) [13:31:11.583] } [13:31:11.583] muffleCondition(cond, pattern = "^muffle") [13:31:11.583] } [13:31:11.583] } [13:31:11.583] } [13:31:11.583] })) [13:31:11.583] }, error = function(ex) { [13:31:11.583] base::structure(base::list(value = NULL, visible = NULL, [13:31:11.583] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.583] ...future.rng), started = ...future.startTime, [13:31:11.583] finished = Sys.time(), session_uuid = NA_character_, [13:31:11.583] version = "1.8"), class = "FutureResult") [13:31:11.583] }, finally = { [13:31:11.583] if (!identical(...future.workdir, getwd())) [13:31:11.583] setwd(...future.workdir) [13:31:11.583] { [13:31:11.583] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:11.583] ...future.oldOptions$nwarnings <- NULL [13:31:11.583] } [13:31:11.583] base::options(...future.oldOptions) [13:31:11.583] if (.Platform$OS.type == "windows") { [13:31:11.583] old_names <- names(...future.oldEnvVars) [13:31:11.583] envs <- base::Sys.getenv() [13:31:11.583] names <- names(envs) [13:31:11.583] common <- intersect(names, old_names) [13:31:11.583] added <- setdiff(names, old_names) [13:31:11.583] removed <- setdiff(old_names, names) [13:31:11.583] changed <- common[...future.oldEnvVars[common] != [13:31:11.583] envs[common]] [13:31:11.583] NAMES <- toupper(changed) [13:31:11.583] args <- list() [13:31:11.583] for (kk in seq_along(NAMES)) { [13:31:11.583] name <- changed[[kk]] [13:31:11.583] NAME <- NAMES[[kk]] [13:31:11.583] if (name != NAME && is.element(NAME, old_names)) [13:31:11.583] next [13:31:11.583] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.583] } [13:31:11.583] NAMES <- toupper(added) [13:31:11.583] for (kk in seq_along(NAMES)) { [13:31:11.583] name <- added[[kk]] [13:31:11.583] NAME <- NAMES[[kk]] [13:31:11.583] if (name != NAME && is.element(NAME, old_names)) [13:31:11.583] next [13:31:11.583] args[[name]] <- "" [13:31:11.583] } [13:31:11.583] NAMES <- toupper(removed) [13:31:11.583] for (kk in seq_along(NAMES)) { [13:31:11.583] name <- removed[[kk]] [13:31:11.583] NAME <- NAMES[[kk]] [13:31:11.583] if (name != NAME && is.element(NAME, old_names)) [13:31:11.583] next [13:31:11.583] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.583] } [13:31:11.583] if (length(args) > 0) [13:31:11.583] base::do.call(base::Sys.setenv, args = args) [13:31:11.583] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:11.583] } [13:31:11.583] else { [13:31:11.583] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:11.583] } [13:31:11.583] { [13:31:11.583] if (base::length(...future.futureOptionsAdded) > [13:31:11.583] 0L) { [13:31:11.583] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:11.583] base::names(opts) <- ...future.futureOptionsAdded [13:31:11.583] base::options(opts) [13:31:11.583] } [13:31:11.583] { [13:31:11.583] NULL [13:31:11.583] options(future.plan = NULL) [13:31:11.583] if (is.na(NA_character_)) [13:31:11.583] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.583] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:11.583] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:11.583] .init = FALSE) [13:31:11.583] } [13:31:11.583] } [13:31:11.583] } [13:31:11.583] }) [13:31:11.583] if (TRUE) { [13:31:11.583] base::sink(type = "output", split = FALSE) [13:31:11.583] if (TRUE) { [13:31:11.583] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:11.583] } [13:31:11.583] else { [13:31:11.583] ...future.result["stdout"] <- base::list(NULL) [13:31:11.583] } [13:31:11.583] base::close(...future.stdout) [13:31:11.583] ...future.stdout <- NULL [13:31:11.583] } [13:31:11.583] ...future.result$conditions <- ...future.conditions [13:31:11.583] ...future.result$finished <- base::Sys.time() [13:31:11.583] ...future.result [13:31:11.583] } 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:31:11.588] resolved() for 'MiraiFuture' ... [13:31:11.588] - state: 'running' [13:31:11.588] - run: TRUE [13:31:11.588] - result: 'NULL' [13:31:11.588] - resolved: FALSE [13:31:11.589] resolved() for 'MiraiFuture' ... done Resolved: TRUE Value: Conditions captured: Early signaling: FALSE Owner process: 34a50e50-df8b-1a25-bcea-c6e422c658f2 Class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [1] 0 [13:31:11.589] *** mirai_multisession(..., globals = TRUE) with globals and blocking[13:31:11.589] - Creating mirai_multisession future #1 ...[13:31:11.591] getGlobalsAndPackages() ... [13:31:11.592] Searching for globals... [13:31:11.592] - globals found: [2] '{', 'ii' [13:31:11.593] Searching for globals ... DONE [13:31:11.593] Resolving globals: FALSE [13:31:11.593] The total size of the 1 globals is 56 bytes (56 bytes) [13:31:11.594] 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:31:11.594] - globals: [1] 'ii' [13:31:11.594] [13:31:11.594] getGlobalsAndPackages() ... DONE [13:31:11.594] getGlobalsAndPackages() ... [13:31:11.594] - globals passed as-is: [1] 'ii' [13:31:11.595] Resolving globals: FALSE [13:31:11.595] - globals: [1] 'ii' [13:31:11.595] [13:31:11.595] getGlobalsAndPackages() ... DONE [13:31:11.596] Packages needed by the future expression (n = 0): [13:31:11.596] Packages needed by future strategies (n = 0): [13:31:11.596] { [13:31:11.596] { [13:31:11.596] { [13:31:11.596] ...future.startTime <- base::Sys.time() [13:31:11.596] { [13:31:11.596] { [13:31:11.596] { [13:31:11.596] base::local({ [13:31:11.596] has_future <- base::requireNamespace("future", [13:31:11.596] quietly = TRUE) [13:31:11.596] if (has_future) { [13:31:11.596] ns <- base::getNamespace("future") [13:31:11.596] version <- ns[[".package"]][["version"]] [13:31:11.596] if (is.null(version)) [13:31:11.596] version <- utils::packageVersion("future") [13:31:11.596] } [13:31:11.596] else { [13:31:11.596] version <- NULL [13:31:11.596] } [13:31:11.596] if (!has_future || version < "1.8.0") { [13:31:11.596] info <- base::c(r_version = base::gsub("R version ", [13:31:11.596] "", base::R.version$version.string), [13:31:11.596] platform = base::sprintf("%s (%s-bit)", [13:31:11.596] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:11.596] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:11.596] "release", "version")], collapse = " "), [13:31:11.596] hostname = base::Sys.info()[["nodename"]]) [13:31:11.596] info <- base::sprintf("%s: %s", base::names(info), [13:31:11.596] info) [13:31:11.596] info <- base::paste(info, collapse = "; ") [13:31:11.596] if (!has_future) { [13:31:11.596] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:11.596] info) [13:31:11.596] } [13:31:11.596] else { [13:31:11.596] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:11.596] info, version) [13:31:11.596] } [13:31:11.596] base::stop(msg) [13:31:11.596] } [13:31:11.596] }) [13:31:11.596] } [13:31:11.596] ...future.strategy.old <- future::plan("list") [13:31:11.596] options(future.plan = NULL) [13:31:11.596] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.596] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:11.596] } [13:31:11.596] ...future.workdir <- getwd() [13:31:11.596] } [13:31:11.596] ...future.oldOptions <- base::as.list(base::.Options) [13:31:11.596] ...future.oldEnvVars <- base::Sys.getenv() [13:31:11.596] } [13:31:11.596] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:11.596] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:11.596] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:11.596] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:11.596] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:11.596] future.stdout.windows.reencode = NULL, width = 80L) [13:31:11.596] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:11.596] base::names(...future.oldOptions)) [13:31:11.596] } [13:31:11.596] if (FALSE) { [13:31:11.596] } [13:31:11.596] else { [13:31:11.596] if (TRUE) { [13:31:11.596] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:11.596] open = "w") [13:31:11.596] } [13:31:11.596] else { [13:31:11.596] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:11.596] windows = "NUL", "/dev/null"), open = "w") [13:31:11.596] } [13:31:11.596] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:11.596] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:11.596] base::sink(type = "output", split = FALSE) [13:31:11.596] base::close(...future.stdout) [13:31:11.596] }, add = TRUE) [13:31:11.596] } [13:31:11.596] ...future.frame <- base::sys.nframe() [13:31:11.596] ...future.conditions <- base::list() [13:31:11.596] ...future.rng <- base::globalenv()$.Random.seed [13:31:11.596] if (FALSE) { [13:31:11.596] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:11.596] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:11.596] } [13:31:11.596] ...future.result <- base::tryCatch({ [13:31:11.596] base::withCallingHandlers({ [13:31:11.596] ...future.value <- base::withVisible(base::local({ [13:31:11.596] ii [13:31:11.596] })) [13:31:11.596] future::FutureResult(value = ...future.value$value, [13:31:11.596] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.596] ...future.rng), globalenv = if (FALSE) [13:31:11.596] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:11.596] ...future.globalenv.names)) [13:31:11.596] else NULL, started = ...future.startTime, version = "1.8") [13:31:11.596] }, condition = base::local({ [13:31:11.596] c <- base::c [13:31:11.596] inherits <- base::inherits [13:31:11.596] invokeRestart <- base::invokeRestart [13:31:11.596] length <- base::length [13:31:11.596] list <- base::list [13:31:11.596] seq.int <- base::seq.int [13:31:11.596] signalCondition <- base::signalCondition [13:31:11.596] sys.calls <- base::sys.calls [13:31:11.596] `[[` <- base::`[[` [13:31:11.596] `+` <- base::`+` [13:31:11.596] `<<-` <- base::`<<-` [13:31:11.596] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:11.596] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:11.596] 3L)] [13:31:11.596] } [13:31:11.596] function(cond) { [13:31:11.596] is_error <- inherits(cond, "error") [13:31:11.596] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:11.596] NULL) [13:31:11.596] if (is_error) { [13:31:11.596] sessionInformation <- function() { [13:31:11.596] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:11.596] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:11.596] search = base::search(), system = base::Sys.info()) [13:31:11.596] } [13:31:11.596] ...future.conditions[[length(...future.conditions) + [13:31:11.596] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:11.596] cond$call), session = sessionInformation(), [13:31:11.596] timestamp = base::Sys.time(), signaled = 0L) [13:31:11.596] signalCondition(cond) [13:31:11.596] } [13:31:11.596] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:11.596] signal <- FALSE && inherits(cond, character(0)) [13:31:11.596] ...future.conditions[[length(...future.conditions) + [13:31:11.596] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:11.596] if (FALSE && !signal) { [13:31:11.596] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.596] { [13:31:11.596] inherits <- base::inherits [13:31:11.596] invokeRestart <- base::invokeRestart [13:31:11.596] is.null <- base::is.null [13:31:11.596] muffled <- FALSE [13:31:11.596] if (inherits(cond, "message")) { [13:31:11.596] muffled <- grepl(pattern, "muffleMessage") [13:31:11.596] if (muffled) [13:31:11.596] invokeRestart("muffleMessage") [13:31:11.596] } [13:31:11.596] else if (inherits(cond, "warning")) { [13:31:11.596] muffled <- grepl(pattern, "muffleWarning") [13:31:11.596] if (muffled) [13:31:11.596] invokeRestart("muffleWarning") [13:31:11.596] } [13:31:11.596] else if (inherits(cond, "condition")) { [13:31:11.596] if (!is.null(pattern)) { [13:31:11.596] computeRestarts <- base::computeRestarts [13:31:11.596] grepl <- base::grepl [13:31:11.596] restarts <- computeRestarts(cond) [13:31:11.596] for (restart in restarts) { [13:31:11.596] name <- restart$name [13:31:11.596] if (is.null(name)) [13:31:11.596] next [13:31:11.596] if (!grepl(pattern, name)) [13:31:11.596] next [13:31:11.596] invokeRestart(restart) [13:31:11.596] muffled <- TRUE [13:31:11.596] break [13:31:11.596] } [13:31:11.596] } [13:31:11.596] } [13:31:11.596] invisible(muffled) [13:31:11.596] } [13:31:11.596] muffleCondition(cond, pattern = "^muffle") [13:31:11.596] } [13:31:11.596] } [13:31:11.596] else { [13:31:11.596] if (TRUE) { [13:31:11.596] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.596] { [13:31:11.596] inherits <- base::inherits [13:31:11.596] invokeRestart <- base::invokeRestart [13:31:11.596] is.null <- base::is.null [13:31:11.596] muffled <- FALSE [13:31:11.596] if (inherits(cond, "message")) { [13:31:11.596] muffled <- grepl(pattern, "muffleMessage") [13:31:11.596] if (muffled) [13:31:11.596] invokeRestart("muffleMessage") [13:31:11.596] } [13:31:11.596] else if (inherits(cond, "warning")) { [13:31:11.596] muffled <- grepl(pattern, "muffleWarning") [13:31:11.596] if (muffled) [13:31:11.596] invokeRestart("muffleWarning") [13:31:11.596] } [13:31:11.596] else if (inherits(cond, "condition")) { [13:31:11.596] if (!is.null(pattern)) { [13:31:11.596] computeRestarts <- base::computeRestarts [13:31:11.596] grepl <- base::grepl [13:31:11.596] restarts <- computeRestarts(cond) [13:31:11.596] for (restart in restarts) { [13:31:11.596] name <- restart$name [13:31:11.596] if (is.null(name)) [13:31:11.596] next [13:31:11.596] if (!grepl(pattern, name)) [13:31:11.596] next [13:31:11.596] invokeRestart(restart) [13:31:11.596] muffled <- TRUE [13:31:11.596] break [13:31:11.596] } [13:31:11.596] } [13:31:11.596] } [13:31:11.596] invisible(muffled) [13:31:11.596] } [13:31:11.596] muffleCondition(cond, pattern = "^muffle") [13:31:11.596] } [13:31:11.596] } [13:31:11.596] } [13:31:11.596] })) [13:31:11.596] }, error = function(ex) { [13:31:11.596] base::structure(base::list(value = NULL, visible = NULL, [13:31:11.596] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.596] ...future.rng), started = ...future.startTime, [13:31:11.596] finished = Sys.time(), session_uuid = NA_character_, [13:31:11.596] version = "1.8"), class = "FutureResult") [13:31:11.596] }, finally = { [13:31:11.596] if (!identical(...future.workdir, getwd())) [13:31:11.596] setwd(...future.workdir) [13:31:11.596] { [13:31:11.596] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:11.596] ...future.oldOptions$nwarnings <- NULL [13:31:11.596] } [13:31:11.596] base::options(...future.oldOptions) [13:31:11.596] if (.Platform$OS.type == "windows") { [13:31:11.596] old_names <- names(...future.oldEnvVars) [13:31:11.596] envs <- base::Sys.getenv() [13:31:11.596] names <- names(envs) [13:31:11.596] common <- intersect(names, old_names) [13:31:11.596] added <- setdiff(names, old_names) [13:31:11.596] removed <- setdiff(old_names, names) [13:31:11.596] changed <- common[...future.oldEnvVars[common] != [13:31:11.596] envs[common]] [13:31:11.596] NAMES <- toupper(changed) [13:31:11.596] args <- list() [13:31:11.596] for (kk in seq_along(NAMES)) { [13:31:11.596] name <- changed[[kk]] [13:31:11.596] NAME <- NAMES[[kk]] [13:31:11.596] if (name != NAME && is.element(NAME, old_names)) [13:31:11.596] next [13:31:11.596] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.596] } [13:31:11.596] NAMES <- toupper(added) [13:31:11.596] for (kk in seq_along(NAMES)) { [13:31:11.596] name <- added[[kk]] [13:31:11.596] NAME <- NAMES[[kk]] [13:31:11.596] if (name != NAME && is.element(NAME, old_names)) [13:31:11.596] next [13:31:11.596] args[[name]] <- "" [13:31:11.596] } [13:31:11.596] NAMES <- toupper(removed) [13:31:11.596] for (kk in seq_along(NAMES)) { [13:31:11.596] name <- removed[[kk]] [13:31:11.596] NAME <- NAMES[[kk]] [13:31:11.596] if (name != NAME && is.element(NAME, old_names)) [13:31:11.596] next [13:31:11.596] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.596] } [13:31:11.596] if (length(args) > 0) [13:31:11.596] base::do.call(base::Sys.setenv, args = args) [13:31:11.596] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:11.596] } [13:31:11.596] else { [13:31:11.596] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:11.596] } [13:31:11.596] { [13:31:11.596] if (base::length(...future.futureOptionsAdded) > [13:31:11.596] 0L) { [13:31:11.596] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:11.596] base::names(opts) <- ...future.futureOptionsAdded [13:31:11.596] base::options(opts) [13:31:11.596] } [13:31:11.596] { [13:31:11.596] NULL [13:31:11.596] options(future.plan = NULL) [13:31:11.596] if (is.na(NA_character_)) [13:31:11.596] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.596] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:11.596] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:11.596] .init = FALSE) [13:31:11.596] } [13:31:11.596] } [13:31:11.596] } [13:31:11.596] }) [13:31:11.596] if (TRUE) { [13:31:11.596] base::sink(type = "output", split = FALSE) [13:31:11.596] if (TRUE) { [13:31:11.596] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:11.596] } [13:31:11.596] else { [13:31:11.596] ...future.result["stdout"] <- base::list(NULL) [13:31:11.596] } [13:31:11.596] base::close(...future.stdout) [13:31:11.596] ...future.stdout <- NULL [13:31:11.596] } [13:31:11.596] ...future.result$conditions <- ...future.conditions [13:31:11.596] ...future.result$finished <- base::Sys.time() [13:31:11.596] ...future.result [13:31:11.596] } [13:31:11.600] - Creating mirai_multisession future #2 ...[13:31:11.602] getGlobalsAndPackages() ... [13:31:11.602] Searching for globals... [13:31:11.603] - globals found: [2] '{', 'ii' [13:31:11.603] Searching for globals ... DONE [13:31:11.604] Resolving globals: FALSE [13:31:11.604] The total size of the 1 globals is 56 bytes (56 bytes) [13:31:11.604] 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:31:11.605] - globals: [1] 'ii' [13:31:11.605] [13:31:11.605] getGlobalsAndPackages() ... DONE [13:31:11.605] getGlobalsAndPackages() ... [13:31:11.605] - globals passed as-is: [1] 'ii' [13:31:11.605] Resolving globals: FALSE [13:31:11.606] - globals: [1] 'ii' [13:31:11.606] [13:31:11.606] getGlobalsAndPackages() ... DONE [13:31:11.606] Packages needed by the future expression (n = 0): [13:31:11.607] Packages needed by future strategies (n = 0): [13:31:11.607] { [13:31:11.607] { [13:31:11.607] { [13:31:11.607] ...future.startTime <- base::Sys.time() [13:31:11.607] { [13:31:11.607] { [13:31:11.607] { [13:31:11.607] base::local({ [13:31:11.607] has_future <- base::requireNamespace("future", [13:31:11.607] quietly = TRUE) [13:31:11.607] if (has_future) { [13:31:11.607] ns <- base::getNamespace("future") [13:31:11.607] version <- ns[[".package"]][["version"]] [13:31:11.607] if (is.null(version)) [13:31:11.607] version <- utils::packageVersion("future") [13:31:11.607] } [13:31:11.607] else { [13:31:11.607] version <- NULL [13:31:11.607] } [13:31:11.607] if (!has_future || version < "1.8.0") { [13:31:11.607] info <- base::c(r_version = base::gsub("R version ", [13:31:11.607] "", base::R.version$version.string), [13:31:11.607] platform = base::sprintf("%s (%s-bit)", [13:31:11.607] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:11.607] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:11.607] "release", "version")], collapse = " "), [13:31:11.607] hostname = base::Sys.info()[["nodename"]]) [13:31:11.607] info <- base::sprintf("%s: %s", base::names(info), [13:31:11.607] info) [13:31:11.607] info <- base::paste(info, collapse = "; ") [13:31:11.607] if (!has_future) { [13:31:11.607] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:11.607] info) [13:31:11.607] } [13:31:11.607] else { [13:31:11.607] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:11.607] info, version) [13:31:11.607] } [13:31:11.607] base::stop(msg) [13:31:11.607] } [13:31:11.607] }) [13:31:11.607] } [13:31:11.607] ...future.strategy.old <- future::plan("list") [13:31:11.607] options(future.plan = NULL) [13:31:11.607] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.607] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:11.607] } [13:31:11.607] ...future.workdir <- getwd() [13:31:11.607] } [13:31:11.607] ...future.oldOptions <- base::as.list(base::.Options) [13:31:11.607] ...future.oldEnvVars <- base::Sys.getenv() [13:31:11.607] } [13:31:11.607] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:11.607] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:11.607] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:11.607] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:11.607] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:11.607] future.stdout.windows.reencode = NULL, width = 80L) [13:31:11.607] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:11.607] base::names(...future.oldOptions)) [13:31:11.607] } [13:31:11.607] if (FALSE) { [13:31:11.607] } [13:31:11.607] else { [13:31:11.607] if (TRUE) { [13:31:11.607] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:11.607] open = "w") [13:31:11.607] } [13:31:11.607] else { [13:31:11.607] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:11.607] windows = "NUL", "/dev/null"), open = "w") [13:31:11.607] } [13:31:11.607] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:11.607] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:11.607] base::sink(type = "output", split = FALSE) [13:31:11.607] base::close(...future.stdout) [13:31:11.607] }, add = TRUE) [13:31:11.607] } [13:31:11.607] ...future.frame <- base::sys.nframe() [13:31:11.607] ...future.conditions <- base::list() [13:31:11.607] ...future.rng <- base::globalenv()$.Random.seed [13:31:11.607] if (FALSE) { [13:31:11.607] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:11.607] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:11.607] } [13:31:11.607] ...future.result <- base::tryCatch({ [13:31:11.607] base::withCallingHandlers({ [13:31:11.607] ...future.value <- base::withVisible(base::local({ [13:31:11.607] ii [13:31:11.607] })) [13:31:11.607] future::FutureResult(value = ...future.value$value, [13:31:11.607] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.607] ...future.rng), globalenv = if (FALSE) [13:31:11.607] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:11.607] ...future.globalenv.names)) [13:31:11.607] else NULL, started = ...future.startTime, version = "1.8") [13:31:11.607] }, condition = base::local({ [13:31:11.607] c <- base::c [13:31:11.607] inherits <- base::inherits [13:31:11.607] invokeRestart <- base::invokeRestart [13:31:11.607] length <- base::length [13:31:11.607] list <- base::list [13:31:11.607] seq.int <- base::seq.int [13:31:11.607] signalCondition <- base::signalCondition [13:31:11.607] sys.calls <- base::sys.calls [13:31:11.607] `[[` <- base::`[[` [13:31:11.607] `+` <- base::`+` [13:31:11.607] `<<-` <- base::`<<-` [13:31:11.607] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:11.607] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:11.607] 3L)] [13:31:11.607] } [13:31:11.607] function(cond) { [13:31:11.607] is_error <- inherits(cond, "error") [13:31:11.607] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:11.607] NULL) [13:31:11.607] if (is_error) { [13:31:11.607] sessionInformation <- function() { [13:31:11.607] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:11.607] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:11.607] search = base::search(), system = base::Sys.info()) [13:31:11.607] } [13:31:11.607] ...future.conditions[[length(...future.conditions) + [13:31:11.607] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:11.607] cond$call), session = sessionInformation(), [13:31:11.607] timestamp = base::Sys.time(), signaled = 0L) [13:31:11.607] signalCondition(cond) [13:31:11.607] } [13:31:11.607] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:11.607] signal <- FALSE && inherits(cond, character(0)) [13:31:11.607] ...future.conditions[[length(...future.conditions) + [13:31:11.607] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:11.607] if (FALSE && !signal) { [13:31:11.607] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.607] { [13:31:11.607] inherits <- base::inherits [13:31:11.607] invokeRestart <- base::invokeRestart [13:31:11.607] is.null <- base::is.null [13:31:11.607] muffled <- FALSE [13:31:11.607] if (inherits(cond, "message")) { [13:31:11.607] muffled <- grepl(pattern, "muffleMessage") [13:31:11.607] if (muffled) [13:31:11.607] invokeRestart("muffleMessage") [13:31:11.607] } [13:31:11.607] else if (inherits(cond, "warning")) { [13:31:11.607] muffled <- grepl(pattern, "muffleWarning") [13:31:11.607] if (muffled) [13:31:11.607] invokeRestart("muffleWarning") [13:31:11.607] } [13:31:11.607] else if (inherits(cond, "condition")) { [13:31:11.607] if (!is.null(pattern)) { [13:31:11.607] computeRestarts <- base::computeRestarts [13:31:11.607] grepl <- base::grepl [13:31:11.607] restarts <- computeRestarts(cond) [13:31:11.607] for (restart in restarts) { [13:31:11.607] name <- restart$name [13:31:11.607] if (is.null(name)) [13:31:11.607] next [13:31:11.607] if (!grepl(pattern, name)) [13:31:11.607] next [13:31:11.607] invokeRestart(restart) [13:31:11.607] muffled <- TRUE [13:31:11.607] break [13:31:11.607] } [13:31:11.607] } [13:31:11.607] } [13:31:11.607] invisible(muffled) [13:31:11.607] } [13:31:11.607] muffleCondition(cond, pattern = "^muffle") [13:31:11.607] } [13:31:11.607] } [13:31:11.607] else { [13:31:11.607] if (TRUE) { [13:31:11.607] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.607] { [13:31:11.607] inherits <- base::inherits [13:31:11.607] invokeRestart <- base::invokeRestart [13:31:11.607] is.null <- base::is.null [13:31:11.607] muffled <- FALSE [13:31:11.607] if (inherits(cond, "message")) { [13:31:11.607] muffled <- grepl(pattern, "muffleMessage") [13:31:11.607] if (muffled) [13:31:11.607] invokeRestart("muffleMessage") [13:31:11.607] } [13:31:11.607] else if (inherits(cond, "warning")) { [13:31:11.607] muffled <- grepl(pattern, "muffleWarning") [13:31:11.607] if (muffled) [13:31:11.607] invokeRestart("muffleWarning") [13:31:11.607] } [13:31:11.607] else if (inherits(cond, "condition")) { [13:31:11.607] if (!is.null(pattern)) { [13:31:11.607] computeRestarts <- base::computeRestarts [13:31:11.607] grepl <- base::grepl [13:31:11.607] restarts <- computeRestarts(cond) [13:31:11.607] for (restart in restarts) { [13:31:11.607] name <- restart$name [13:31:11.607] if (is.null(name)) [13:31:11.607] next [13:31:11.607] if (!grepl(pattern, name)) [13:31:11.607] next [13:31:11.607] invokeRestart(restart) [13:31:11.607] muffled <- TRUE [13:31:11.607] break [13:31:11.607] } [13:31:11.607] } [13:31:11.607] } [13:31:11.607] invisible(muffled) [13:31:11.607] } [13:31:11.607] muffleCondition(cond, pattern = "^muffle") [13:31:11.607] } [13:31:11.607] } [13:31:11.607] } [13:31:11.607] })) [13:31:11.607] }, error = function(ex) { [13:31:11.607] base::structure(base::list(value = NULL, visible = NULL, [13:31:11.607] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.607] ...future.rng), started = ...future.startTime, [13:31:11.607] finished = Sys.time(), session_uuid = NA_character_, [13:31:11.607] version = "1.8"), class = "FutureResult") [13:31:11.607] }, finally = { [13:31:11.607] if (!identical(...future.workdir, getwd())) [13:31:11.607] setwd(...future.workdir) [13:31:11.607] { [13:31:11.607] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:11.607] ...future.oldOptions$nwarnings <- NULL [13:31:11.607] } [13:31:11.607] base::options(...future.oldOptions) [13:31:11.607] if (.Platform$OS.type == "windows") { [13:31:11.607] old_names <- names(...future.oldEnvVars) [13:31:11.607] envs <- base::Sys.getenv() [13:31:11.607] names <- names(envs) [13:31:11.607] common <- intersect(names, old_names) [13:31:11.607] added <- setdiff(names, old_names) [13:31:11.607] removed <- setdiff(old_names, names) [13:31:11.607] changed <- common[...future.oldEnvVars[common] != [13:31:11.607] envs[common]] [13:31:11.607] NAMES <- toupper(changed) [13:31:11.607] args <- list() [13:31:11.607] for (kk in seq_along(NAMES)) { [13:31:11.607] name <- changed[[kk]] [13:31:11.607] NAME <- NAMES[[kk]] [13:31:11.607] if (name != NAME && is.element(NAME, old_names)) [13:31:11.607] next [13:31:11.607] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.607] } [13:31:11.607] NAMES <- toupper(added) [13:31:11.607] for (kk in seq_along(NAMES)) { [13:31:11.607] name <- added[[kk]] [13:31:11.607] NAME <- NAMES[[kk]] [13:31:11.607] if (name != NAME && is.element(NAME, old_names)) [13:31:11.607] next [13:31:11.607] args[[name]] <- "" [13:31:11.607] } [13:31:11.607] NAMES <- toupper(removed) [13:31:11.607] for (kk in seq_along(NAMES)) { [13:31:11.607] name <- removed[[kk]] [13:31:11.607] NAME <- NAMES[[kk]] [13:31:11.607] if (name != NAME && is.element(NAME, old_names)) [13:31:11.607] next [13:31:11.607] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.607] } [13:31:11.607] if (length(args) > 0) [13:31:11.607] base::do.call(base::Sys.setenv, args = args) [13:31:11.607] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:11.607] } [13:31:11.607] else { [13:31:11.607] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:11.607] } [13:31:11.607] { [13:31:11.607] if (base::length(...future.futureOptionsAdded) > [13:31:11.607] 0L) { [13:31:11.607] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:11.607] base::names(opts) <- ...future.futureOptionsAdded [13:31:11.607] base::options(opts) [13:31:11.607] } [13:31:11.607] { [13:31:11.607] NULL [13:31:11.607] options(future.plan = NULL) [13:31:11.607] if (is.na(NA_character_)) [13:31:11.607] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.607] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:11.607] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:11.607] .init = FALSE) [13:31:11.607] } [13:31:11.607] } [13:31:11.607] } [13:31:11.607] }) [13:31:11.607] if (TRUE) { [13:31:11.607] base::sink(type = "output", split = FALSE) [13:31:11.607] if (TRUE) { [13:31:11.607] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:11.607] } [13:31:11.607] else { [13:31:11.607] ...future.result["stdout"] <- base::list(NULL) [13:31:11.607] } [13:31:11.607] base::close(...future.stdout) [13:31:11.607] ...future.stdout <- NULL [13:31:11.607] } [13:31:11.607] ...future.result$conditions <- ...future.conditions [13:31:11.607] ...future.result$finished <- base::Sys.time() [13:31:11.607] ...future.result [13:31:11.607] } [13:31:11.611] - Creating mirai_multisession future #3 ...[13:31:11.613] getGlobalsAndPackages() ... [13:31:11.613] Searching for globals... [13:31:11.614] - globals found: [2] '{', 'ii' [13:31:11.614] Searching for globals ... DONE [13:31:11.614] Resolving globals: FALSE [13:31:11.615] The total size of the 1 globals is 56 bytes (56 bytes) [13:31:11.615] 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:31:11.615] - globals: [1] 'ii' [13:31:11.616] [13:31:11.616] getGlobalsAndPackages() ... DONE [13:31:11.616] getGlobalsAndPackages() ... [13:31:11.616] - globals passed as-is: [1] 'ii' [13:31:11.616] Resolving globals: FALSE [13:31:11.616] - globals: [1] 'ii' [13:31:11.617] [13:31:11.617] getGlobalsAndPackages() ... DONE [13:31:11.617] Packages needed by the future expression (n = 0): [13:31:11.617] Packages needed by future strategies (n = 0): [13:31:11.618] { [13:31:11.618] { [13:31:11.618] { [13:31:11.618] ...future.startTime <- base::Sys.time() [13:31:11.618] { [13:31:11.618] { [13:31:11.618] { [13:31:11.618] base::local({ [13:31:11.618] has_future <- base::requireNamespace("future", [13:31:11.618] quietly = TRUE) [13:31:11.618] if (has_future) { [13:31:11.618] ns <- base::getNamespace("future") [13:31:11.618] version <- ns[[".package"]][["version"]] [13:31:11.618] if (is.null(version)) [13:31:11.618] version <- utils::packageVersion("future") [13:31:11.618] } [13:31:11.618] else { [13:31:11.618] version <- NULL [13:31:11.618] } [13:31:11.618] if (!has_future || version < "1.8.0") { [13:31:11.618] info <- base::c(r_version = base::gsub("R version ", [13:31:11.618] "", base::R.version$version.string), [13:31:11.618] platform = base::sprintf("%s (%s-bit)", [13:31:11.618] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:11.618] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:11.618] "release", "version")], collapse = " "), [13:31:11.618] hostname = base::Sys.info()[["nodename"]]) [13:31:11.618] info <- base::sprintf("%s: %s", base::names(info), [13:31:11.618] info) [13:31:11.618] info <- base::paste(info, collapse = "; ") [13:31:11.618] if (!has_future) { [13:31:11.618] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:11.618] info) [13:31:11.618] } [13:31:11.618] else { [13:31:11.618] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:11.618] info, version) [13:31:11.618] } [13:31:11.618] base::stop(msg) [13:31:11.618] } [13:31:11.618] }) [13:31:11.618] } [13:31:11.618] ...future.strategy.old <- future::plan("list") [13:31:11.618] options(future.plan = NULL) [13:31:11.618] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.618] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:11.618] } [13:31:11.618] ...future.workdir <- getwd() [13:31:11.618] } [13:31:11.618] ...future.oldOptions <- base::as.list(base::.Options) [13:31:11.618] ...future.oldEnvVars <- base::Sys.getenv() [13:31:11.618] } [13:31:11.618] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:11.618] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:11.618] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:11.618] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:11.618] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:11.618] future.stdout.windows.reencode = NULL, width = 80L) [13:31:11.618] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:11.618] base::names(...future.oldOptions)) [13:31:11.618] } [13:31:11.618] if (FALSE) { [13:31:11.618] } [13:31:11.618] else { [13:31:11.618] if (TRUE) { [13:31:11.618] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:11.618] open = "w") [13:31:11.618] } [13:31:11.618] else { [13:31:11.618] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:11.618] windows = "NUL", "/dev/null"), open = "w") [13:31:11.618] } [13:31:11.618] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:11.618] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:11.618] base::sink(type = "output", split = FALSE) [13:31:11.618] base::close(...future.stdout) [13:31:11.618] }, add = TRUE) [13:31:11.618] } [13:31:11.618] ...future.frame <- base::sys.nframe() [13:31:11.618] ...future.conditions <- base::list() [13:31:11.618] ...future.rng <- base::globalenv()$.Random.seed [13:31:11.618] if (FALSE) { [13:31:11.618] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:11.618] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:11.618] } [13:31:11.618] ...future.result <- base::tryCatch({ [13:31:11.618] base::withCallingHandlers({ [13:31:11.618] ...future.value <- base::withVisible(base::local({ [13:31:11.618] ii [13:31:11.618] })) [13:31:11.618] future::FutureResult(value = ...future.value$value, [13:31:11.618] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.618] ...future.rng), globalenv = if (FALSE) [13:31:11.618] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:11.618] ...future.globalenv.names)) [13:31:11.618] else NULL, started = ...future.startTime, version = "1.8") [13:31:11.618] }, condition = base::local({ [13:31:11.618] c <- base::c [13:31:11.618] inherits <- base::inherits [13:31:11.618] invokeRestart <- base::invokeRestart [13:31:11.618] length <- base::length [13:31:11.618] list <- base::list [13:31:11.618] seq.int <- base::seq.int [13:31:11.618] signalCondition <- base::signalCondition [13:31:11.618] sys.calls <- base::sys.calls [13:31:11.618] `[[` <- base::`[[` [13:31:11.618] `+` <- base::`+` [13:31:11.618] `<<-` <- base::`<<-` [13:31:11.618] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:11.618] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:11.618] 3L)] [13:31:11.618] } [13:31:11.618] function(cond) { [13:31:11.618] is_error <- inherits(cond, "error") [13:31:11.618] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:11.618] NULL) [13:31:11.618] if (is_error) { [13:31:11.618] sessionInformation <- function() { [13:31:11.618] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:11.618] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:11.618] search = base::search(), system = base::Sys.info()) [13:31:11.618] } [13:31:11.618] ...future.conditions[[length(...future.conditions) + [13:31:11.618] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:11.618] cond$call), session = sessionInformation(), [13:31:11.618] timestamp = base::Sys.time(), signaled = 0L) [13:31:11.618] signalCondition(cond) [13:31:11.618] } [13:31:11.618] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:11.618] signal <- FALSE && inherits(cond, character(0)) [13:31:11.618] ...future.conditions[[length(...future.conditions) + [13:31:11.618] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:11.618] if (FALSE && !signal) { [13:31:11.618] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.618] { [13:31:11.618] inherits <- base::inherits [13:31:11.618] invokeRestart <- base::invokeRestart [13:31:11.618] is.null <- base::is.null [13:31:11.618] muffled <- FALSE [13:31:11.618] if (inherits(cond, "message")) { [13:31:11.618] muffled <- grepl(pattern, "muffleMessage") [13:31:11.618] if (muffled) [13:31:11.618] invokeRestart("muffleMessage") [13:31:11.618] } [13:31:11.618] else if (inherits(cond, "warning")) { [13:31:11.618] muffled <- grepl(pattern, "muffleWarning") [13:31:11.618] if (muffled) [13:31:11.618] invokeRestart("muffleWarning") [13:31:11.618] } [13:31:11.618] else if (inherits(cond, "condition")) { [13:31:11.618] if (!is.null(pattern)) { [13:31:11.618] computeRestarts <- base::computeRestarts [13:31:11.618] grepl <- base::grepl [13:31:11.618] restarts <- computeRestarts(cond) [13:31:11.618] for (restart in restarts) { [13:31:11.618] name <- restart$name [13:31:11.618] if (is.null(name)) [13:31:11.618] next [13:31:11.618] if (!grepl(pattern, name)) [13:31:11.618] next [13:31:11.618] invokeRestart(restart) [13:31:11.618] muffled <- TRUE [13:31:11.618] break [13:31:11.618] } [13:31:11.618] } [13:31:11.618] } [13:31:11.618] invisible(muffled) [13:31:11.618] } [13:31:11.618] muffleCondition(cond, pattern = "^muffle") [13:31:11.618] } [13:31:11.618] } [13:31:11.618] else { [13:31:11.618] if (TRUE) { [13:31:11.618] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.618] { [13:31:11.618] inherits <- base::inherits [13:31:11.618] invokeRestart <- base::invokeRestart [13:31:11.618] is.null <- base::is.null [13:31:11.618] muffled <- FALSE [13:31:11.618] if (inherits(cond, "message")) { [13:31:11.618] muffled <- grepl(pattern, "muffleMessage") [13:31:11.618] if (muffled) [13:31:11.618] invokeRestart("muffleMessage") [13:31:11.618] } [13:31:11.618] else if (inherits(cond, "warning")) { [13:31:11.618] muffled <- grepl(pattern, "muffleWarning") [13:31:11.618] if (muffled) [13:31:11.618] invokeRestart("muffleWarning") [13:31:11.618] } [13:31:11.618] else if (inherits(cond, "condition")) { [13:31:11.618] if (!is.null(pattern)) { [13:31:11.618] computeRestarts <- base::computeRestarts [13:31:11.618] grepl <- base::grepl [13:31:11.618] restarts <- computeRestarts(cond) [13:31:11.618] for (restart in restarts) { [13:31:11.618] name <- restart$name [13:31:11.618] if (is.null(name)) [13:31:11.618] next [13:31:11.618] if (!grepl(pattern, name)) [13:31:11.618] next [13:31:11.618] invokeRestart(restart) [13:31:11.618] muffled <- TRUE [13:31:11.618] break [13:31:11.618] } [13:31:11.618] } [13:31:11.618] } [13:31:11.618] invisible(muffled) [13:31:11.618] } [13:31:11.618] muffleCondition(cond, pattern = "^muffle") [13:31:11.618] } [13:31:11.618] } [13:31:11.618] } [13:31:11.618] })) [13:31:11.618] }, error = function(ex) { [13:31:11.618] base::structure(base::list(value = NULL, visible = NULL, [13:31:11.618] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.618] ...future.rng), started = ...future.startTime, [13:31:11.618] finished = Sys.time(), session_uuid = NA_character_, [13:31:11.618] version = "1.8"), class = "FutureResult") [13:31:11.618] }, finally = { [13:31:11.618] if (!identical(...future.workdir, getwd())) [13:31:11.618] setwd(...future.workdir) [13:31:11.618] { [13:31:11.618] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:11.618] ...future.oldOptions$nwarnings <- NULL [13:31:11.618] } [13:31:11.618] base::options(...future.oldOptions) [13:31:11.618] if (.Platform$OS.type == "windows") { [13:31:11.618] old_names <- names(...future.oldEnvVars) [13:31:11.618] envs <- base::Sys.getenv() [13:31:11.618] names <- names(envs) [13:31:11.618] common <- intersect(names, old_names) [13:31:11.618] added <- setdiff(names, old_names) [13:31:11.618] removed <- setdiff(old_names, names) [13:31:11.618] changed <- common[...future.oldEnvVars[common] != [13:31:11.618] envs[common]] [13:31:11.618] NAMES <- toupper(changed) [13:31:11.618] args <- list() [13:31:11.618] for (kk in seq_along(NAMES)) { [13:31:11.618] name <- changed[[kk]] [13:31:11.618] NAME <- NAMES[[kk]] [13:31:11.618] if (name != NAME && is.element(NAME, old_names)) [13:31:11.618] next [13:31:11.618] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.618] } [13:31:11.618] NAMES <- toupper(added) [13:31:11.618] for (kk in seq_along(NAMES)) { [13:31:11.618] name <- added[[kk]] [13:31:11.618] NAME <- NAMES[[kk]] [13:31:11.618] if (name != NAME && is.element(NAME, old_names)) [13:31:11.618] next [13:31:11.618] args[[name]] <- "" [13:31:11.618] } [13:31:11.618] NAMES <- toupper(removed) [13:31:11.618] for (kk in seq_along(NAMES)) { [13:31:11.618] name <- removed[[kk]] [13:31:11.618] NAME <- NAMES[[kk]] [13:31:11.618] if (name != NAME && is.element(NAME, old_names)) [13:31:11.618] next [13:31:11.618] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.618] } [13:31:11.618] if (length(args) > 0) [13:31:11.618] base::do.call(base::Sys.setenv, args = args) [13:31:11.618] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:11.618] } [13:31:11.618] else { [13:31:11.618] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:11.618] } [13:31:11.618] { [13:31:11.618] if (base::length(...future.futureOptionsAdded) > [13:31:11.618] 0L) { [13:31:11.618] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:11.618] base::names(opts) <- ...future.futureOptionsAdded [13:31:11.618] base::options(opts) [13:31:11.618] } [13:31:11.618] { [13:31:11.618] NULL [13:31:11.618] options(future.plan = NULL) [13:31:11.618] if (is.na(NA_character_)) [13:31:11.618] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.618] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:11.618] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:11.618] .init = FALSE) [13:31:11.618] } [13:31:11.618] } [13:31:11.618] } [13:31:11.618] }) [13:31:11.618] if (TRUE) { [13:31:11.618] base::sink(type = "output", split = FALSE) [13:31:11.618] if (TRUE) { [13:31:11.618] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:11.618] } [13:31:11.618] else { [13:31:11.618] ...future.result["stdout"] <- base::list(NULL) [13:31:11.618] } [13:31:11.618] base::close(...future.stdout) [13:31:11.618] ...future.stdout <- NULL [13:31:11.618] } [13:31:11.618] ...future.result$conditions <- ...future.conditions [13:31:11.618] ...future.result$finished <- base::Sys.time() [13:31:11.618] ...future.result [13:31:11.618] } [13:31:11.622] - Resolving 3 mirai_multisession futures[13:31:11.624] *** mirai_multisession(..., globals = TRUE) and errors[13:31:11.626] getGlobalsAndPackages() ... [13:31:11.626] Searching for globals... [13:31:11.629] - globals found: [2] '{', 'stop' [13:31:11.629] Searching for globals ... DONE [13:31:11.629] Resolving globals: FALSE [13:31:11.629] [13:31:11.629] [13:31:11.630] getGlobalsAndPackages() ... DONE [13:31:11.630] getGlobalsAndPackages() ... [13:31:11.630] [13:31:11.630] - globals: [0] [13:31:11.630] getGlobalsAndPackages() ... DONE [13:31:11.631] Packages needed by the future expression (n = 0): [13:31:11.631] Packages needed by future strategies (n = 0): [13:31:11.631] { [13:31:11.631] { [13:31:11.631] { [13:31:11.631] ...future.startTime <- base::Sys.time() [13:31:11.631] { [13:31:11.631] { [13:31:11.631] { [13:31:11.631] base::local({ [13:31:11.631] has_future <- base::requireNamespace("future", [13:31:11.631] quietly = TRUE) [13:31:11.631] if (has_future) { [13:31:11.631] ns <- base::getNamespace("future") [13:31:11.631] version <- ns[[".package"]][["version"]] [13:31:11.631] if (is.null(version)) [13:31:11.631] version <- utils::packageVersion("future") [13:31:11.631] } [13:31:11.631] else { [13:31:11.631] version <- NULL [13:31:11.631] } [13:31:11.631] if (!has_future || version < "1.8.0") { [13:31:11.631] info <- base::c(r_version = base::gsub("R version ", [13:31:11.631] "", base::R.version$version.string), [13:31:11.631] platform = base::sprintf("%s (%s-bit)", [13:31:11.631] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:11.631] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:11.631] "release", "version")], collapse = " "), [13:31:11.631] hostname = base::Sys.info()[["nodename"]]) [13:31:11.631] info <- base::sprintf("%s: %s", base::names(info), [13:31:11.631] info) [13:31:11.631] info <- base::paste(info, collapse = "; ") [13:31:11.631] if (!has_future) { [13:31:11.631] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:11.631] info) [13:31:11.631] } [13:31:11.631] else { [13:31:11.631] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:11.631] info, version) [13:31:11.631] } [13:31:11.631] base::stop(msg) [13:31:11.631] } [13:31:11.631] }) [13:31:11.631] } [13:31:11.631] ...future.strategy.old <- future::plan("list") [13:31:11.631] options(future.plan = NULL) [13:31:11.631] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.631] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:11.631] } [13:31:11.631] ...future.workdir <- getwd() [13:31:11.631] } [13:31:11.631] ...future.oldOptions <- base::as.list(base::.Options) [13:31:11.631] ...future.oldEnvVars <- base::Sys.getenv() [13:31:11.631] } [13:31:11.631] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:11.631] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:11.631] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:11.631] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:11.631] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:11.631] future.stdout.windows.reencode = NULL, width = 80L) [13:31:11.631] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:11.631] base::names(...future.oldOptions)) [13:31:11.631] } [13:31:11.631] if (FALSE) { [13:31:11.631] } [13:31:11.631] else { [13:31:11.631] if (TRUE) { [13:31:11.631] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:11.631] open = "w") [13:31:11.631] } [13:31:11.631] else { [13:31:11.631] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:11.631] windows = "NUL", "/dev/null"), open = "w") [13:31:11.631] } [13:31:11.631] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:11.631] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:11.631] base::sink(type = "output", split = FALSE) [13:31:11.631] base::close(...future.stdout) [13:31:11.631] }, add = TRUE) [13:31:11.631] } [13:31:11.631] ...future.frame <- base::sys.nframe() [13:31:11.631] ...future.conditions <- base::list() [13:31:11.631] ...future.rng <- base::globalenv()$.Random.seed [13:31:11.631] if (FALSE) { [13:31:11.631] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:11.631] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:11.631] } [13:31:11.631] ...future.result <- base::tryCatch({ [13:31:11.631] base::withCallingHandlers({ [13:31:11.631] ...future.value <- base::withVisible(base::local({ [13:31:11.631] stop("Whoops!") [13:31:11.631] 1 [13:31:11.631] })) [13:31:11.631] future::FutureResult(value = ...future.value$value, [13:31:11.631] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.631] ...future.rng), globalenv = if (FALSE) [13:31:11.631] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:11.631] ...future.globalenv.names)) [13:31:11.631] else NULL, started = ...future.startTime, version = "1.8") [13:31:11.631] }, condition = base::local({ [13:31:11.631] c <- base::c [13:31:11.631] inherits <- base::inherits [13:31:11.631] invokeRestart <- base::invokeRestart [13:31:11.631] length <- base::length [13:31:11.631] list <- base::list [13:31:11.631] seq.int <- base::seq.int [13:31:11.631] signalCondition <- base::signalCondition [13:31:11.631] sys.calls <- base::sys.calls [13:31:11.631] `[[` <- base::`[[` [13:31:11.631] `+` <- base::`+` [13:31:11.631] `<<-` <- base::`<<-` [13:31:11.631] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:11.631] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:11.631] 3L)] [13:31:11.631] } [13:31:11.631] function(cond) { [13:31:11.631] is_error <- inherits(cond, "error") [13:31:11.631] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:11.631] NULL) [13:31:11.631] if (is_error) { [13:31:11.631] sessionInformation <- function() { [13:31:11.631] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:11.631] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:11.631] search = base::search(), system = base::Sys.info()) [13:31:11.631] } [13:31:11.631] ...future.conditions[[length(...future.conditions) + [13:31:11.631] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:11.631] cond$call), session = sessionInformation(), [13:31:11.631] timestamp = base::Sys.time(), signaled = 0L) [13:31:11.631] signalCondition(cond) [13:31:11.631] } [13:31:11.631] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:11.631] signal <- FALSE && inherits(cond, character(0)) [13:31:11.631] ...future.conditions[[length(...future.conditions) + [13:31:11.631] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:11.631] if (FALSE && !signal) { [13:31:11.631] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.631] { [13:31:11.631] inherits <- base::inherits [13:31:11.631] invokeRestart <- base::invokeRestart [13:31:11.631] is.null <- base::is.null [13:31:11.631] muffled <- FALSE [13:31:11.631] if (inherits(cond, "message")) { [13:31:11.631] muffled <- grepl(pattern, "muffleMessage") [13:31:11.631] if (muffled) [13:31:11.631] invokeRestart("muffleMessage") [13:31:11.631] } [13:31:11.631] else if (inherits(cond, "warning")) { [13:31:11.631] muffled <- grepl(pattern, "muffleWarning") [13:31:11.631] if (muffled) [13:31:11.631] invokeRestart("muffleWarning") [13:31:11.631] } [13:31:11.631] else if (inherits(cond, "condition")) { [13:31:11.631] if (!is.null(pattern)) { [13:31:11.631] computeRestarts <- base::computeRestarts [13:31:11.631] grepl <- base::grepl [13:31:11.631] restarts <- computeRestarts(cond) [13:31:11.631] for (restart in restarts) { [13:31:11.631] name <- restart$name [13:31:11.631] if (is.null(name)) [13:31:11.631] next [13:31:11.631] if (!grepl(pattern, name)) [13:31:11.631] next [13:31:11.631] invokeRestart(restart) [13:31:11.631] muffled <- TRUE [13:31:11.631] break [13:31:11.631] } [13:31:11.631] } [13:31:11.631] } [13:31:11.631] invisible(muffled) [13:31:11.631] } [13:31:11.631] muffleCondition(cond, pattern = "^muffle") [13:31:11.631] } [13:31:11.631] } [13:31:11.631] else { [13:31:11.631] if (TRUE) { [13:31:11.631] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.631] { [13:31:11.631] inherits <- base::inherits [13:31:11.631] invokeRestart <- base::invokeRestart [13:31:11.631] is.null <- base::is.null [13:31:11.631] muffled <- FALSE [13:31:11.631] if (inherits(cond, "message")) { [13:31:11.631] muffled <- grepl(pattern, "muffleMessage") [13:31:11.631] if (muffled) [13:31:11.631] invokeRestart("muffleMessage") [13:31:11.631] } [13:31:11.631] else if (inherits(cond, "warning")) { [13:31:11.631] muffled <- grepl(pattern, "muffleWarning") [13:31:11.631] if (muffled) [13:31:11.631] invokeRestart("muffleWarning") [13:31:11.631] } [13:31:11.631] else if (inherits(cond, "condition")) { [13:31:11.631] if (!is.null(pattern)) { [13:31:11.631] computeRestarts <- base::computeRestarts [13:31:11.631] grepl <- base::grepl [13:31:11.631] restarts <- computeRestarts(cond) [13:31:11.631] for (restart in restarts) { [13:31:11.631] name <- restart$name [13:31:11.631] if (is.null(name)) [13:31:11.631] next [13:31:11.631] if (!grepl(pattern, name)) [13:31:11.631] next [13:31:11.631] invokeRestart(restart) [13:31:11.631] muffled <- TRUE [13:31:11.631] break [13:31:11.631] } [13:31:11.631] } [13:31:11.631] } [13:31:11.631] invisible(muffled) [13:31:11.631] } [13:31:11.631] muffleCondition(cond, pattern = "^muffle") [13:31:11.631] } [13:31:11.631] } [13:31:11.631] } [13:31:11.631] })) [13:31:11.631] }, error = function(ex) { [13:31:11.631] base::structure(base::list(value = NULL, visible = NULL, [13:31:11.631] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.631] ...future.rng), started = ...future.startTime, [13:31:11.631] finished = Sys.time(), session_uuid = NA_character_, [13:31:11.631] version = "1.8"), class = "FutureResult") [13:31:11.631] }, finally = { [13:31:11.631] if (!identical(...future.workdir, getwd())) [13:31:11.631] setwd(...future.workdir) [13:31:11.631] { [13:31:11.631] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:11.631] ...future.oldOptions$nwarnings <- NULL [13:31:11.631] } [13:31:11.631] base::options(...future.oldOptions) [13:31:11.631] if (.Platform$OS.type == "windows") { [13:31:11.631] old_names <- names(...future.oldEnvVars) [13:31:11.631] envs <- base::Sys.getenv() [13:31:11.631] names <- names(envs) [13:31:11.631] common <- intersect(names, old_names) [13:31:11.631] added <- setdiff(names, old_names) [13:31:11.631] removed <- setdiff(old_names, names) [13:31:11.631] changed <- common[...future.oldEnvVars[common] != [13:31:11.631] envs[common]] [13:31:11.631] NAMES <- toupper(changed) [13:31:11.631] args <- list() [13:31:11.631] for (kk in seq_along(NAMES)) { [13:31:11.631] name <- changed[[kk]] [13:31:11.631] NAME <- NAMES[[kk]] [13:31:11.631] if (name != NAME && is.element(NAME, old_names)) [13:31:11.631] next [13:31:11.631] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.631] } [13:31:11.631] NAMES <- toupper(added) [13:31:11.631] for (kk in seq_along(NAMES)) { [13:31:11.631] name <- added[[kk]] [13:31:11.631] NAME <- NAMES[[kk]] [13:31:11.631] if (name != NAME && is.element(NAME, old_names)) [13:31:11.631] next [13:31:11.631] args[[name]] <- "" [13:31:11.631] } [13:31:11.631] NAMES <- toupper(removed) [13:31:11.631] for (kk in seq_along(NAMES)) { [13:31:11.631] name <- removed[[kk]] [13:31:11.631] NAME <- NAMES[[kk]] [13:31:11.631] if (name != NAME && is.element(NAME, old_names)) [13:31:11.631] next [13:31:11.631] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.631] } [13:31:11.631] if (length(args) > 0) [13:31:11.631] base::do.call(base::Sys.setenv, args = args) [13:31:11.631] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:11.631] } [13:31:11.631] else { [13:31:11.631] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:11.631] } [13:31:11.631] { [13:31:11.631] if (base::length(...future.futureOptionsAdded) > [13:31:11.631] 0L) { [13:31:11.631] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:11.631] base::names(opts) <- ...future.futureOptionsAdded [13:31:11.631] base::options(opts) [13:31:11.631] } [13:31:11.631] { [13:31:11.631] NULL [13:31:11.631] options(future.plan = NULL) [13:31:11.631] if (is.na(NA_character_)) [13:31:11.631] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.631] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:11.631] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:11.631] .init = FALSE) [13:31:11.631] } [13:31:11.631] } [13:31:11.631] } [13:31:11.631] }) [13:31:11.631] if (TRUE) { [13:31:11.631] base::sink(type = "output", split = FALSE) [13:31:11.631] if (TRUE) { [13:31:11.631] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:11.631] } [13:31:11.631] else { [13:31:11.631] ...future.result["stdout"] <- base::list(NULL) [13:31:11.631] } [13:31:11.631] base::close(...future.stdout) [13:31:11.631] ...future.stdout <- NULL [13:31:11.631] } [13:31:11.631] ...future.result$conditions <- ...future.conditions [13:31:11.631] ...future.result$finished <- base::Sys.time() [13:31:11.631] ...future.result [13:31:11.631] } 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:31:11.635] resolved() for 'MiraiFuture' ... [13:31:11.636] - state: 'running' [13:31:11.636] - run: TRUE [13:31:11.636] - result: 'NULL' [13:31:11.636] - resolved: FALSE [13:31:11.636] resolved() for 'MiraiFuture' ... done Resolved: FALSE Value: Conditions captured: Early signaling: FALSE Owner process: 34a50e50-df8b-1a25-bcea-c6e422c658f2 Class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:31:11.637] signalConditions() ... [13:31:11.637] - include = 'immediateCondition' [13:31:11.638] - exclude = [13:31:11.638] - resignal = FALSE [13:31:11.638] - Number of conditions: 1 [13:31:11.638] signalConditions() ... done [13:31:11.639] signalConditions() ... [13:31:11.639] - include = 'immediateCondition' [13:31:11.639] - exclude = [13:31:11.639] - resignal = FALSE [13:31:11.639] - Number of conditions: 1 [13:31:11.639] signalConditions() ... done [13:31:11.640] Future state: 'finished' [13:31:11.640] signalConditions() ... [13:31:11.640] - include = 'condition' [13:31:11.640] - exclude = 'immediateCondition' [13:31:11.640] - resignal = TRUE [13:31:11.640] - Number of conditions: 1 [13:31:11.640] - Condition #1: 'simpleError', 'error', 'condition' [13:31:11.641] signalConditions() ... done [13:31:11.641] signalConditions() ... [13:31:11.641] - include = 'immediateCondition' [13:31:11.641] - exclude = [13:31:11.642] - resignal = FALSE [13:31:11.642] - Number of conditions: 1 [13:31:11.642] signalConditions() ... done [13:31:11.642] Future state: 'finished' [13:31:11.642] signalConditions() ... [13:31:11.642] - include = 'condition' [13:31:11.643] - exclude = 'immediateCondition' [13:31:11.643] - resignal = TRUE [13:31:11.643] - Number of conditions: 1 [13:31:11.643] - Condition #1: 'simpleError', 'error', 'condition' [13:31:11.643] signalConditions() ... done *** mirai_multisession(..., workers = 1L) ... [13:31:11.644] getGlobalsAndPackages() ... [13:31:11.644] Searching for globals... [13:31:11.645] - globals found: [4] '{', '*', 'a', 'b' [13:31:11.645] Searching for globals ... DONE [13:31:11.645] Resolving globals: FALSE [13:31:11.646] The total size of the 2 globals is 112 bytes (112 bytes) [13:31:11.646] 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:31:11.646] - globals: [2] 'a', 'b' [13:31:11.647] [13:31:11.647] getGlobalsAndPackages() ... DONE [13:31:11.647] getGlobalsAndPackages() ... [13:31:11.647] - globals passed as-is: [2] 'a', 'b' [13:31:11.647] Resolving globals: FALSE [13:31:11.648] - globals: [2] 'a', 'b' [13:31:11.648] [13:31:11.648] getGlobalsAndPackages() ... DONE [13:31:11.648] Packages needed by the future expression (n = 0): [13:31:11.648] Packages needed by future strategies (n = 0): [13:31:11.649] { [13:31:11.649] { [13:31:11.649] { [13:31:11.649] ...future.startTime <- base::Sys.time() [13:31:11.649] { [13:31:11.649] { [13:31:11.649] { [13:31:11.649] base::local({ [13:31:11.649] has_future <- base::requireNamespace("future", [13:31:11.649] quietly = TRUE) [13:31:11.649] if (has_future) { [13:31:11.649] ns <- base::getNamespace("future") [13:31:11.649] version <- ns[[".package"]][["version"]] [13:31:11.649] if (is.null(version)) [13:31:11.649] version <- utils::packageVersion("future") [13:31:11.649] } [13:31:11.649] else { [13:31:11.649] version <- NULL [13:31:11.649] } [13:31:11.649] if (!has_future || version < "1.8.0") { [13:31:11.649] info <- base::c(r_version = base::gsub("R version ", [13:31:11.649] "", base::R.version$version.string), [13:31:11.649] platform = base::sprintf("%s (%s-bit)", [13:31:11.649] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:11.649] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:11.649] "release", "version")], collapse = " "), [13:31:11.649] hostname = base::Sys.info()[["nodename"]]) [13:31:11.649] info <- base::sprintf("%s: %s", base::names(info), [13:31:11.649] info) [13:31:11.649] info <- base::paste(info, collapse = "; ") [13:31:11.649] if (!has_future) { [13:31:11.649] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:11.649] info) [13:31:11.649] } [13:31:11.649] else { [13:31:11.649] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:11.649] info, version) [13:31:11.649] } [13:31:11.649] base::stop(msg) [13:31:11.649] } [13:31:11.649] }) [13:31:11.649] } [13:31:11.649] ...future.strategy.old <- future::plan("list") [13:31:11.649] options(future.plan = NULL) [13:31:11.649] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.649] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:11.649] } [13:31:11.649] ...future.workdir <- getwd() [13:31:11.649] } [13:31:11.649] ...future.oldOptions <- base::as.list(base::.Options) [13:31:11.649] ...future.oldEnvVars <- base::Sys.getenv() [13:31:11.649] } [13:31:11.649] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:11.649] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:11.649] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:11.649] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:11.649] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:11.649] future.stdout.windows.reencode = NULL, width = 80L) [13:31:11.649] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:11.649] base::names(...future.oldOptions)) [13:31:11.649] } [13:31:11.649] if (FALSE) { [13:31:11.649] } [13:31:11.649] else { [13:31:11.649] if (TRUE) { [13:31:11.649] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:11.649] open = "w") [13:31:11.649] } [13:31:11.649] else { [13:31:11.649] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:11.649] windows = "NUL", "/dev/null"), open = "w") [13:31:11.649] } [13:31:11.649] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:11.649] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:11.649] base::sink(type = "output", split = FALSE) [13:31:11.649] base::close(...future.stdout) [13:31:11.649] }, add = TRUE) [13:31:11.649] } [13:31:11.649] ...future.frame <- base::sys.nframe() [13:31:11.649] ...future.conditions <- base::list() [13:31:11.649] ...future.rng <- base::globalenv()$.Random.seed [13:31:11.649] if (FALSE) { [13:31:11.649] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:11.649] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:11.649] } [13:31:11.649] ...future.result <- base::tryCatch({ [13:31:11.649] base::withCallingHandlers({ [13:31:11.649] ...future.value <- base::withVisible(base::local({ [13:31:11.649] a * b [13:31:11.649] })) [13:31:11.649] future::FutureResult(value = ...future.value$value, [13:31:11.649] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.649] ...future.rng), globalenv = if (FALSE) [13:31:11.649] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:11.649] ...future.globalenv.names)) [13:31:11.649] else NULL, started = ...future.startTime, version = "1.8") [13:31:11.649] }, condition = base::local({ [13:31:11.649] c <- base::c [13:31:11.649] inherits <- base::inherits [13:31:11.649] invokeRestart <- base::invokeRestart [13:31:11.649] length <- base::length [13:31:11.649] list <- base::list [13:31:11.649] seq.int <- base::seq.int [13:31:11.649] signalCondition <- base::signalCondition [13:31:11.649] sys.calls <- base::sys.calls [13:31:11.649] `[[` <- base::`[[` [13:31:11.649] `+` <- base::`+` [13:31:11.649] `<<-` <- base::`<<-` [13:31:11.649] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:11.649] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:11.649] 3L)] [13:31:11.649] } [13:31:11.649] function(cond) { [13:31:11.649] is_error <- inherits(cond, "error") [13:31:11.649] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:11.649] NULL) [13:31:11.649] if (is_error) { [13:31:11.649] sessionInformation <- function() { [13:31:11.649] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:11.649] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:11.649] search = base::search(), system = base::Sys.info()) [13:31:11.649] } [13:31:11.649] ...future.conditions[[length(...future.conditions) + [13:31:11.649] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:11.649] cond$call), session = sessionInformation(), [13:31:11.649] timestamp = base::Sys.time(), signaled = 0L) [13:31:11.649] signalCondition(cond) [13:31:11.649] } [13:31:11.649] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:11.649] signal <- FALSE && inherits(cond, character(0)) [13:31:11.649] ...future.conditions[[length(...future.conditions) + [13:31:11.649] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:11.649] if (FALSE && !signal) { [13:31:11.649] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.649] { [13:31:11.649] inherits <- base::inherits [13:31:11.649] invokeRestart <- base::invokeRestart [13:31:11.649] is.null <- base::is.null [13:31:11.649] muffled <- FALSE [13:31:11.649] if (inherits(cond, "message")) { [13:31:11.649] muffled <- grepl(pattern, "muffleMessage") [13:31:11.649] if (muffled) [13:31:11.649] invokeRestart("muffleMessage") [13:31:11.649] } [13:31:11.649] else if (inherits(cond, "warning")) { [13:31:11.649] muffled <- grepl(pattern, "muffleWarning") [13:31:11.649] if (muffled) [13:31:11.649] invokeRestart("muffleWarning") [13:31:11.649] } [13:31:11.649] else if (inherits(cond, "condition")) { [13:31:11.649] if (!is.null(pattern)) { [13:31:11.649] computeRestarts <- base::computeRestarts [13:31:11.649] grepl <- base::grepl [13:31:11.649] restarts <- computeRestarts(cond) [13:31:11.649] for (restart in restarts) { [13:31:11.649] name <- restart$name [13:31:11.649] if (is.null(name)) [13:31:11.649] next [13:31:11.649] if (!grepl(pattern, name)) [13:31:11.649] next [13:31:11.649] invokeRestart(restart) [13:31:11.649] muffled <- TRUE [13:31:11.649] break [13:31:11.649] } [13:31:11.649] } [13:31:11.649] } [13:31:11.649] invisible(muffled) [13:31:11.649] } [13:31:11.649] muffleCondition(cond, pattern = "^muffle") [13:31:11.649] } [13:31:11.649] } [13:31:11.649] else { [13:31:11.649] if (TRUE) { [13:31:11.649] muffleCondition <- function (cond, pattern = "^muffle") [13:31:11.649] { [13:31:11.649] inherits <- base::inherits [13:31:11.649] invokeRestart <- base::invokeRestart [13:31:11.649] is.null <- base::is.null [13:31:11.649] muffled <- FALSE [13:31:11.649] if (inherits(cond, "message")) { [13:31:11.649] muffled <- grepl(pattern, "muffleMessage") [13:31:11.649] if (muffled) [13:31:11.649] invokeRestart("muffleMessage") [13:31:11.649] } [13:31:11.649] else if (inherits(cond, "warning")) { [13:31:11.649] muffled <- grepl(pattern, "muffleWarning") [13:31:11.649] if (muffled) [13:31:11.649] invokeRestart("muffleWarning") [13:31:11.649] } [13:31:11.649] else if (inherits(cond, "condition")) { [13:31:11.649] if (!is.null(pattern)) { [13:31:11.649] computeRestarts <- base::computeRestarts [13:31:11.649] grepl <- base::grepl [13:31:11.649] restarts <- computeRestarts(cond) [13:31:11.649] for (restart in restarts) { [13:31:11.649] name <- restart$name [13:31:11.649] if (is.null(name)) [13:31:11.649] next [13:31:11.649] if (!grepl(pattern, name)) [13:31:11.649] next [13:31:11.649] invokeRestart(restart) [13:31:11.649] muffled <- TRUE [13:31:11.649] break [13:31:11.649] } [13:31:11.649] } [13:31:11.649] } [13:31:11.649] invisible(muffled) [13:31:11.649] } [13:31:11.649] muffleCondition(cond, pattern = "^muffle") [13:31:11.649] } [13:31:11.649] } [13:31:11.649] } [13:31:11.649] })) [13:31:11.649] }, error = function(ex) { [13:31:11.649] base::structure(base::list(value = NULL, visible = NULL, [13:31:11.649] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:11.649] ...future.rng), started = ...future.startTime, [13:31:11.649] finished = Sys.time(), session_uuid = NA_character_, [13:31:11.649] version = "1.8"), class = "FutureResult") [13:31:11.649] }, finally = { [13:31:11.649] if (!identical(...future.workdir, getwd())) [13:31:11.649] setwd(...future.workdir) [13:31:11.649] { [13:31:11.649] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:11.649] ...future.oldOptions$nwarnings <- NULL [13:31:11.649] } [13:31:11.649] base::options(...future.oldOptions) [13:31:11.649] if (.Platform$OS.type == "windows") { [13:31:11.649] old_names <- names(...future.oldEnvVars) [13:31:11.649] envs <- base::Sys.getenv() [13:31:11.649] names <- names(envs) [13:31:11.649] common <- intersect(names, old_names) [13:31:11.649] added <- setdiff(names, old_names) [13:31:11.649] removed <- setdiff(old_names, names) [13:31:11.649] changed <- common[...future.oldEnvVars[common] != [13:31:11.649] envs[common]] [13:31:11.649] NAMES <- toupper(changed) [13:31:11.649] args <- list() [13:31:11.649] for (kk in seq_along(NAMES)) { [13:31:11.649] name <- changed[[kk]] [13:31:11.649] NAME <- NAMES[[kk]] [13:31:11.649] if (name != NAME && is.element(NAME, old_names)) [13:31:11.649] next [13:31:11.649] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.649] } [13:31:11.649] NAMES <- toupper(added) [13:31:11.649] for (kk in seq_along(NAMES)) { [13:31:11.649] name <- added[[kk]] [13:31:11.649] NAME <- NAMES[[kk]] [13:31:11.649] if (name != NAME && is.element(NAME, old_names)) [13:31:11.649] next [13:31:11.649] args[[name]] <- "" [13:31:11.649] } [13:31:11.649] NAMES <- toupper(removed) [13:31:11.649] for (kk in seq_along(NAMES)) { [13:31:11.649] name <- removed[[kk]] [13:31:11.649] NAME <- NAMES[[kk]] [13:31:11.649] if (name != NAME && is.element(NAME, old_names)) [13:31:11.649] next [13:31:11.649] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:11.649] } [13:31:11.649] if (length(args) > 0) [13:31:11.649] base::do.call(base::Sys.setenv, args = args) [13:31:11.649] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:11.649] } [13:31:11.649] else { [13:31:11.649] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:11.649] } [13:31:11.649] { [13:31:11.649] if (base::length(...future.futureOptionsAdded) > [13:31:11.649] 0L) { [13:31:11.649] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:11.649] base::names(opts) <- ...future.futureOptionsAdded [13:31:11.649] base::options(opts) [13:31:11.649] } [13:31:11.649] { [13:31:11.649] NULL [13:31:11.649] options(future.plan = NULL) [13:31:11.649] if (is.na(NA_character_)) [13:31:11.649] Sys.unsetenv("R_FUTURE_PLAN") [13:31:11.649] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:11.649] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:11.649] .init = FALSE) [13:31:11.649] } [13:31:11.649] } [13:31:11.649] } [13:31:11.649] }) [13:31:11.649] if (TRUE) { [13:31:11.649] base::sink(type = "output", split = FALSE) [13:31:11.649] if (TRUE) { [13:31:11.649] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:11.649] } [13:31:11.649] else { [13:31:11.649] ...future.result["stdout"] <- base::list(NULL) [13:31:11.649] } [13:31:11.649] base::close(...future.stdout) [13:31:11.649] ...future.stdout <- NULL [13:31:11.649] } [13:31:11.649] ...future.result$conditions <- ...future.conditions [13:31:11.649] ...future.result$finished <- base::Sys.time() [13:31:11.649] ...future.result [13:31:11.649] } [1] 6 *** mirai_multisession(..., workers = 1L) ... DONE [13:31:11.655] Testing with 1 cores ... DONE> > message("*** mirai_multisession() ... DONE") *** mirai_multisession() ... DONE > > source("incl/end.R") > > proc.time() user system elapsed 0.48 0.12 1.18