R Under development (unstable) (2024-07-02 r86866 ucrt) -- "Unsuffered Consequences" Copyright (C) 2024 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > source("incl/start.R") Loading required package: future [13:31:15.046] plan(): Setting new future strategy stack: [13:31:15.047] List of future strategies: [13:31:15.047] 1. mirai_multisession: [13:31:15.047] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:31:15.047] - tweaked: FALSE [13:31:15.047] - call: future::plan(future.mirai::mirai_multisession) [13:31:15.060] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:31:15.060] < mirai [$data] > [13:31:15.065] getGlobalsAndPackages() ... [13:31:15.065] Not searching for globals [13:31:15.065] - globals: [0] [13:31:15.065] getGlobalsAndPackages() ... DONE [13:31:15.066] getGlobalsAndPackages() ... [13:31:15.066] [13:31:15.066] - globals: [0] [13:31:15.066] getGlobalsAndPackages() ... DONE [13:31:15.324] Packages needed by the future expression (n = 0): [13:31:15.324] Packages needed by future strategies (n = 0): [13:31:15.325] { [13:31:15.325] { [13:31:15.325] { [13:31:15.325] ...future.startTime <- base::Sys.time() [13:31:15.325] { [13:31:15.325] { [13:31:15.325] { [13:31:15.325] base::local({ [13:31:15.325] has_future <- base::requireNamespace("future", [13:31:15.325] quietly = TRUE) [13:31:15.325] if (has_future) { [13:31:15.325] ns <- base::getNamespace("future") [13:31:15.325] version <- ns[[".package"]][["version"]] [13:31:15.325] if (is.null(version)) [13:31:15.325] version <- utils::packageVersion("future") [13:31:15.325] } [13:31:15.325] else { [13:31:15.325] version <- NULL [13:31:15.325] } [13:31:15.325] if (!has_future || version < "1.8.0") { [13:31:15.325] info <- base::c(r_version = base::gsub("R version ", [13:31:15.325] "", base::R.version$version.string), [13:31:15.325] platform = base::sprintf("%s (%s-bit)", [13:31:15.325] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:15.325] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:15.325] "release", "version")], collapse = " "), [13:31:15.325] hostname = base::Sys.info()[["nodename"]]) [13:31:15.325] info <- base::sprintf("%s: %s", base::names(info), [13:31:15.325] info) [13:31:15.325] info <- base::paste(info, collapse = "; ") [13:31:15.325] if (!has_future) { [13:31:15.325] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:15.325] info) [13:31:15.325] } [13:31:15.325] else { [13:31:15.325] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:15.325] info, version) [13:31:15.325] } [13:31:15.325] base::stop(msg) [13:31:15.325] } [13:31:15.325] }) [13:31:15.325] } [13:31:15.325] ...future.strategy.old <- future::plan("list") [13:31:15.325] options(future.plan = NULL) [13:31:15.325] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.325] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:15.325] } [13:31:15.325] ...future.workdir <- getwd() [13:31:15.325] } [13:31:15.325] ...future.oldOptions <- base::as.list(base::.Options) [13:31:15.325] ...future.oldEnvVars <- base::Sys.getenv() [13:31:15.325] } [13:31:15.325] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:15.325] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:15.325] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:15.325] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:15.325] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:15.325] future.stdout.windows.reencode = NULL, width = 80L) [13:31:15.325] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:15.325] base::names(...future.oldOptions)) [13:31:15.325] } [13:31:15.325] if (FALSE) { [13:31:15.325] } [13:31:15.325] else { [13:31:15.325] if (TRUE) { [13:31:15.325] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:15.325] open = "w") [13:31:15.325] } [13:31:15.325] else { [13:31:15.325] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:15.325] windows = "NUL", "/dev/null"), open = "w") [13:31:15.325] } [13:31:15.325] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:15.325] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:15.325] base::sink(type = "output", split = FALSE) [13:31:15.325] base::close(...future.stdout) [13:31:15.325] }, add = TRUE) [13:31:15.325] } [13:31:15.325] ...future.frame <- base::sys.nframe() [13:31:15.325] ...future.conditions <- base::list() [13:31:15.325] ...future.rng <- base::globalenv()$.Random.seed [13:31:15.325] if (FALSE) { [13:31:15.325] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:15.325] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:15.325] } [13:31:15.325] ...future.result <- base::tryCatch({ [13:31:15.325] base::withCallingHandlers({ [13:31:15.325] ...future.value <- base::withVisible(base::local(NA)) [13:31:15.325] future::FutureResult(value = ...future.value$value, [13:31:15.325] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.325] ...future.rng), globalenv = if (FALSE) [13:31:15.325] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:15.325] ...future.globalenv.names)) [13:31:15.325] else NULL, started = ...future.startTime, version = "1.8") [13:31:15.325] }, condition = base::local({ [13:31:15.325] c <- base::c [13:31:15.325] inherits <- base::inherits [13:31:15.325] invokeRestart <- base::invokeRestart [13:31:15.325] length <- base::length [13:31:15.325] list <- base::list [13:31:15.325] seq.int <- base::seq.int [13:31:15.325] signalCondition <- base::signalCondition [13:31:15.325] sys.calls <- base::sys.calls [13:31:15.325] `[[` <- base::`[[` [13:31:15.325] `+` <- base::`+` [13:31:15.325] `<<-` <- base::`<<-` [13:31:15.325] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:15.325] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:15.325] 3L)] [13:31:15.325] } [13:31:15.325] function(cond) { [13:31:15.325] is_error <- inherits(cond, "error") [13:31:15.325] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:15.325] NULL) [13:31:15.325] if (is_error) { [13:31:15.325] sessionInformation <- function() { [13:31:15.325] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:15.325] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:15.325] search = base::search(), system = base::Sys.info()) [13:31:15.325] } [13:31:15.325] ...future.conditions[[length(...future.conditions) + [13:31:15.325] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:15.325] cond$call), session = sessionInformation(), [13:31:15.325] timestamp = base::Sys.time(), signaled = 0L) [13:31:15.325] signalCondition(cond) [13:31:15.325] } [13:31:15.325] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:15.325] signal <- FALSE && inherits(cond, character(0)) [13:31:15.325] ...future.conditions[[length(...future.conditions) + [13:31:15.325] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:15.325] if (FALSE && !signal) { [13:31:15.325] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.325] { [13:31:15.325] inherits <- base::inherits [13:31:15.325] invokeRestart <- base::invokeRestart [13:31:15.325] is.null <- base::is.null [13:31:15.325] muffled <- FALSE [13:31:15.325] if (inherits(cond, "message")) { [13:31:15.325] muffled <- grepl(pattern, "muffleMessage") [13:31:15.325] if (muffled) [13:31:15.325] invokeRestart("muffleMessage") [13:31:15.325] } [13:31:15.325] else if (inherits(cond, "warning")) { [13:31:15.325] muffled <- grepl(pattern, "muffleWarning") [13:31:15.325] if (muffled) [13:31:15.325] invokeRestart("muffleWarning") [13:31:15.325] } [13:31:15.325] else if (inherits(cond, "condition")) { [13:31:15.325] if (!is.null(pattern)) { [13:31:15.325] computeRestarts <- base::computeRestarts [13:31:15.325] grepl <- base::grepl [13:31:15.325] restarts <- computeRestarts(cond) [13:31:15.325] for (restart in restarts) { [13:31:15.325] name <- restart$name [13:31:15.325] if (is.null(name)) [13:31:15.325] next [13:31:15.325] if (!grepl(pattern, name)) [13:31:15.325] next [13:31:15.325] invokeRestart(restart) [13:31:15.325] muffled <- TRUE [13:31:15.325] break [13:31:15.325] } [13:31:15.325] } [13:31:15.325] } [13:31:15.325] invisible(muffled) [13:31:15.325] } [13:31:15.325] muffleCondition(cond, pattern = "^muffle") [13:31:15.325] } [13:31:15.325] } [13:31:15.325] else { [13:31:15.325] if (TRUE) { [13:31:15.325] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.325] { [13:31:15.325] inherits <- base::inherits [13:31:15.325] invokeRestart <- base::invokeRestart [13:31:15.325] is.null <- base::is.null [13:31:15.325] muffled <- FALSE [13:31:15.325] if (inherits(cond, "message")) { [13:31:15.325] muffled <- grepl(pattern, "muffleMessage") [13:31:15.325] if (muffled) [13:31:15.325] invokeRestart("muffleMessage") [13:31:15.325] } [13:31:15.325] else if (inherits(cond, "warning")) { [13:31:15.325] muffled <- grepl(pattern, "muffleWarning") [13:31:15.325] if (muffled) [13:31:15.325] invokeRestart("muffleWarning") [13:31:15.325] } [13:31:15.325] else if (inherits(cond, "condition")) { [13:31:15.325] if (!is.null(pattern)) { [13:31:15.325] computeRestarts <- base::computeRestarts [13:31:15.325] grepl <- base::grepl [13:31:15.325] restarts <- computeRestarts(cond) [13:31:15.325] for (restart in restarts) { [13:31:15.325] name <- restart$name [13:31:15.325] if (is.null(name)) [13:31:15.325] next [13:31:15.325] if (!grepl(pattern, name)) [13:31:15.325] next [13:31:15.325] invokeRestart(restart) [13:31:15.325] muffled <- TRUE [13:31:15.325] break [13:31:15.325] } [13:31:15.325] } [13:31:15.325] } [13:31:15.325] invisible(muffled) [13:31:15.325] } [13:31:15.325] muffleCondition(cond, pattern = "^muffle") [13:31:15.325] } [13:31:15.325] } [13:31:15.325] } [13:31:15.325] })) [13:31:15.325] }, error = function(ex) { [13:31:15.325] base::structure(base::list(value = NULL, visible = NULL, [13:31:15.325] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.325] ...future.rng), started = ...future.startTime, [13:31:15.325] finished = Sys.time(), session_uuid = NA_character_, [13:31:15.325] version = "1.8"), class = "FutureResult") [13:31:15.325] }, finally = { [13:31:15.325] if (!identical(...future.workdir, getwd())) [13:31:15.325] setwd(...future.workdir) [13:31:15.325] { [13:31:15.325] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:15.325] ...future.oldOptions$nwarnings <- NULL [13:31:15.325] } [13:31:15.325] base::options(...future.oldOptions) [13:31:15.325] if (.Platform$OS.type == "windows") { [13:31:15.325] old_names <- names(...future.oldEnvVars) [13:31:15.325] envs <- base::Sys.getenv() [13:31:15.325] names <- names(envs) [13:31:15.325] common <- intersect(names, old_names) [13:31:15.325] added <- setdiff(names, old_names) [13:31:15.325] removed <- setdiff(old_names, names) [13:31:15.325] changed <- common[...future.oldEnvVars[common] != [13:31:15.325] envs[common]] [13:31:15.325] NAMES <- toupper(changed) [13:31:15.325] args <- list() [13:31:15.325] for (kk in seq_along(NAMES)) { [13:31:15.325] name <- changed[[kk]] [13:31:15.325] NAME <- NAMES[[kk]] [13:31:15.325] if (name != NAME && is.element(NAME, old_names)) [13:31:15.325] next [13:31:15.325] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.325] } [13:31:15.325] NAMES <- toupper(added) [13:31:15.325] for (kk in seq_along(NAMES)) { [13:31:15.325] name <- added[[kk]] [13:31:15.325] NAME <- NAMES[[kk]] [13:31:15.325] if (name != NAME && is.element(NAME, old_names)) [13:31:15.325] next [13:31:15.325] args[[name]] <- "" [13:31:15.325] } [13:31:15.325] NAMES <- toupper(removed) [13:31:15.325] for (kk in seq_along(NAMES)) { [13:31:15.325] name <- removed[[kk]] [13:31:15.325] NAME <- NAMES[[kk]] [13:31:15.325] if (name != NAME && is.element(NAME, old_names)) [13:31:15.325] next [13:31:15.325] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.325] } [13:31:15.325] if (length(args) > 0) [13:31:15.325] base::do.call(base::Sys.setenv, args = args) [13:31:15.325] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:15.325] } [13:31:15.325] else { [13:31:15.325] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:15.325] } [13:31:15.325] { [13:31:15.325] if (base::length(...future.futureOptionsAdded) > [13:31:15.325] 0L) { [13:31:15.325] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:15.325] base::names(opts) <- ...future.futureOptionsAdded [13:31:15.325] base::options(opts) [13:31:15.325] } [13:31:15.325] { [13:31:15.325] NULL [13:31:15.325] options(future.plan = NULL) [13:31:15.325] if (is.na(NA_character_)) [13:31:15.325] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.325] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:15.325] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:15.325] .init = FALSE) [13:31:15.325] } [13:31:15.325] } [13:31:15.325] } [13:31:15.325] }) [13:31:15.325] if (TRUE) { [13:31:15.325] base::sink(type = "output", split = FALSE) [13:31:15.325] if (TRUE) { [13:31:15.325] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:15.325] } [13:31:15.325] else { [13:31:15.325] ...future.result["stdout"] <- base::list(NULL) [13:31:15.325] } [13:31:15.325] base::close(...future.stdout) [13:31:15.325] ...future.stdout <- NULL [13:31:15.325] } [13:31:15.325] ...future.result$conditions <- ...future.conditions [13:31:15.325] ...future.result$finished <- base::Sys.time() [13:31:15.325] ...future.result [13:31:15.325] } [13:31:15.477] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:31:15.478] 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:15.539] Testing with 1 cores ...[13:31:15.539] *** mirai_multisession(..., globals = FALSE) without globals[13:31:15.541] getGlobalsAndPackages() ... [13:31:15.541] Not searching for globals [13:31:15.541] - globals: [0] [13:31:15.541] getGlobalsAndPackages() ... DONE [13:31:15.542] getGlobalsAndPackages() ... [13:31:15.542] [13:31:15.542] - globals: [0] [13:31:15.542] getGlobalsAndPackages() ... DONE [13:31:15.661] Packages needed by the future expression (n = 0): [13:31:15.662] Packages needed by future strategies (n = 0): [13:31:15.662] { [13:31:15.662] { [13:31:15.662] { [13:31:15.662] ...future.startTime <- base::Sys.time() [13:31:15.662] { [13:31:15.662] { [13:31:15.662] { [13:31:15.662] base::local({ [13:31:15.662] has_future <- base::requireNamespace("future", [13:31:15.662] quietly = TRUE) [13:31:15.662] if (has_future) { [13:31:15.662] ns <- base::getNamespace("future") [13:31:15.662] version <- ns[[".package"]][["version"]] [13:31:15.662] if (is.null(version)) [13:31:15.662] version <- utils::packageVersion("future") [13:31:15.662] } [13:31:15.662] else { [13:31:15.662] version <- NULL [13:31:15.662] } [13:31:15.662] if (!has_future || version < "1.8.0") { [13:31:15.662] info <- base::c(r_version = base::gsub("R version ", [13:31:15.662] "", base::R.version$version.string), [13:31:15.662] platform = base::sprintf("%s (%s-bit)", [13:31:15.662] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:15.662] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:15.662] "release", "version")], collapse = " "), [13:31:15.662] hostname = base::Sys.info()[["nodename"]]) [13:31:15.662] info <- base::sprintf("%s: %s", base::names(info), [13:31:15.662] info) [13:31:15.662] info <- base::paste(info, collapse = "; ") [13:31:15.662] if (!has_future) { [13:31:15.662] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:15.662] info) [13:31:15.662] } [13:31:15.662] else { [13:31:15.662] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:15.662] info, version) [13:31:15.662] } [13:31:15.662] base::stop(msg) [13:31:15.662] } [13:31:15.662] }) [13:31:15.662] } [13:31:15.662] ...future.strategy.old <- future::plan("list") [13:31:15.662] options(future.plan = NULL) [13:31:15.662] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.662] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:15.662] } [13:31:15.662] ...future.workdir <- getwd() [13:31:15.662] } [13:31:15.662] ...future.oldOptions <- base::as.list(base::.Options) [13:31:15.662] ...future.oldEnvVars <- base::Sys.getenv() [13:31:15.662] } [13:31:15.662] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:15.662] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:15.662] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:15.662] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:15.662] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:15.662] future.stdout.windows.reencode = NULL, width = 80L) [13:31:15.662] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:15.662] base::names(...future.oldOptions)) [13:31:15.662] } [13:31:15.662] if (FALSE) { [13:31:15.662] } [13:31:15.662] else { [13:31:15.662] if (TRUE) { [13:31:15.662] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:15.662] open = "w") [13:31:15.662] } [13:31:15.662] else { [13:31:15.662] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:15.662] windows = "NUL", "/dev/null"), open = "w") [13:31:15.662] } [13:31:15.662] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:15.662] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:15.662] base::sink(type = "output", split = FALSE) [13:31:15.662] base::close(...future.stdout) [13:31:15.662] }, add = TRUE) [13:31:15.662] } [13:31:15.662] ...future.frame <- base::sys.nframe() [13:31:15.662] ...future.conditions <- base::list() [13:31:15.662] ...future.rng <- base::globalenv()$.Random.seed [13:31:15.662] if (FALSE) { [13:31:15.662] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:15.662] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:15.662] } [13:31:15.662] ...future.result <- base::tryCatch({ [13:31:15.662] base::withCallingHandlers({ [13:31:15.662] ...future.value <- base::withVisible(base::local({ [13:31:15.662] 42L [13:31:15.662] })) [13:31:15.662] future::FutureResult(value = ...future.value$value, [13:31:15.662] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.662] ...future.rng), globalenv = if (FALSE) [13:31:15.662] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:15.662] ...future.globalenv.names)) [13:31:15.662] else NULL, started = ...future.startTime, version = "1.8") [13:31:15.662] }, condition = base::local({ [13:31:15.662] c <- base::c [13:31:15.662] inherits <- base::inherits [13:31:15.662] invokeRestart <- base::invokeRestart [13:31:15.662] length <- base::length [13:31:15.662] list <- base::list [13:31:15.662] seq.int <- base::seq.int [13:31:15.662] signalCondition <- base::signalCondition [13:31:15.662] sys.calls <- base::sys.calls [13:31:15.662] `[[` <- base::`[[` [13:31:15.662] `+` <- base::`+` [13:31:15.662] `<<-` <- base::`<<-` [13:31:15.662] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:15.662] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:15.662] 3L)] [13:31:15.662] } [13:31:15.662] function(cond) { [13:31:15.662] is_error <- inherits(cond, "error") [13:31:15.662] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:15.662] NULL) [13:31:15.662] if (is_error) { [13:31:15.662] sessionInformation <- function() { [13:31:15.662] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:15.662] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:15.662] search = base::search(), system = base::Sys.info()) [13:31:15.662] } [13:31:15.662] ...future.conditions[[length(...future.conditions) + [13:31:15.662] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:15.662] cond$call), session = sessionInformation(), [13:31:15.662] timestamp = base::Sys.time(), signaled = 0L) [13:31:15.662] signalCondition(cond) [13:31:15.662] } [13:31:15.662] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:15.662] signal <- FALSE && inherits(cond, character(0)) [13:31:15.662] ...future.conditions[[length(...future.conditions) + [13:31:15.662] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:15.662] if (FALSE && !signal) { [13:31:15.662] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.662] { [13:31:15.662] inherits <- base::inherits [13:31:15.662] invokeRestart <- base::invokeRestart [13:31:15.662] is.null <- base::is.null [13:31:15.662] muffled <- FALSE [13:31:15.662] if (inherits(cond, "message")) { [13:31:15.662] muffled <- grepl(pattern, "muffleMessage") [13:31:15.662] if (muffled) [13:31:15.662] invokeRestart("muffleMessage") [13:31:15.662] } [13:31:15.662] else if (inherits(cond, "warning")) { [13:31:15.662] muffled <- grepl(pattern, "muffleWarning") [13:31:15.662] if (muffled) [13:31:15.662] invokeRestart("muffleWarning") [13:31:15.662] } [13:31:15.662] else if (inherits(cond, "condition")) { [13:31:15.662] if (!is.null(pattern)) { [13:31:15.662] computeRestarts <- base::computeRestarts [13:31:15.662] grepl <- base::grepl [13:31:15.662] restarts <- computeRestarts(cond) [13:31:15.662] for (restart in restarts) { [13:31:15.662] name <- restart$name [13:31:15.662] if (is.null(name)) [13:31:15.662] next [13:31:15.662] if (!grepl(pattern, name)) [13:31:15.662] next [13:31:15.662] invokeRestart(restart) [13:31:15.662] muffled <- TRUE [13:31:15.662] break [13:31:15.662] } [13:31:15.662] } [13:31:15.662] } [13:31:15.662] invisible(muffled) [13:31:15.662] } [13:31:15.662] muffleCondition(cond, pattern = "^muffle") [13:31:15.662] } [13:31:15.662] } [13:31:15.662] else { [13:31:15.662] if (TRUE) { [13:31:15.662] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.662] { [13:31:15.662] inherits <- base::inherits [13:31:15.662] invokeRestart <- base::invokeRestart [13:31:15.662] is.null <- base::is.null [13:31:15.662] muffled <- FALSE [13:31:15.662] if (inherits(cond, "message")) { [13:31:15.662] muffled <- grepl(pattern, "muffleMessage") [13:31:15.662] if (muffled) [13:31:15.662] invokeRestart("muffleMessage") [13:31:15.662] } [13:31:15.662] else if (inherits(cond, "warning")) { [13:31:15.662] muffled <- grepl(pattern, "muffleWarning") [13:31:15.662] if (muffled) [13:31:15.662] invokeRestart("muffleWarning") [13:31:15.662] } [13:31:15.662] else if (inherits(cond, "condition")) { [13:31:15.662] if (!is.null(pattern)) { [13:31:15.662] computeRestarts <- base::computeRestarts [13:31:15.662] grepl <- base::grepl [13:31:15.662] restarts <- computeRestarts(cond) [13:31:15.662] for (restart in restarts) { [13:31:15.662] name <- restart$name [13:31:15.662] if (is.null(name)) [13:31:15.662] next [13:31:15.662] if (!grepl(pattern, name)) [13:31:15.662] next [13:31:15.662] invokeRestart(restart) [13:31:15.662] muffled <- TRUE [13:31:15.662] break [13:31:15.662] } [13:31:15.662] } [13:31:15.662] } [13:31:15.662] invisible(muffled) [13:31:15.662] } [13:31:15.662] muffleCondition(cond, pattern = "^muffle") [13:31:15.662] } [13:31:15.662] } [13:31:15.662] } [13:31:15.662] })) [13:31:15.662] }, error = function(ex) { [13:31:15.662] base::structure(base::list(value = NULL, visible = NULL, [13:31:15.662] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.662] ...future.rng), started = ...future.startTime, [13:31:15.662] finished = Sys.time(), session_uuid = NA_character_, [13:31:15.662] version = "1.8"), class = "FutureResult") [13:31:15.662] }, finally = { [13:31:15.662] if (!identical(...future.workdir, getwd())) [13:31:15.662] setwd(...future.workdir) [13:31:15.662] { [13:31:15.662] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:15.662] ...future.oldOptions$nwarnings <- NULL [13:31:15.662] } [13:31:15.662] base::options(...future.oldOptions) [13:31:15.662] if (.Platform$OS.type == "windows") { [13:31:15.662] old_names <- names(...future.oldEnvVars) [13:31:15.662] envs <- base::Sys.getenv() [13:31:15.662] names <- names(envs) [13:31:15.662] common <- intersect(names, old_names) [13:31:15.662] added <- setdiff(names, old_names) [13:31:15.662] removed <- setdiff(old_names, names) [13:31:15.662] changed <- common[...future.oldEnvVars[common] != [13:31:15.662] envs[common]] [13:31:15.662] NAMES <- toupper(changed) [13:31:15.662] args <- list() [13:31:15.662] for (kk in seq_along(NAMES)) { [13:31:15.662] name <- changed[[kk]] [13:31:15.662] NAME <- NAMES[[kk]] [13:31:15.662] if (name != NAME && is.element(NAME, old_names)) [13:31:15.662] next [13:31:15.662] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.662] } [13:31:15.662] NAMES <- toupper(added) [13:31:15.662] for (kk in seq_along(NAMES)) { [13:31:15.662] name <- added[[kk]] [13:31:15.662] NAME <- NAMES[[kk]] [13:31:15.662] if (name != NAME && is.element(NAME, old_names)) [13:31:15.662] next [13:31:15.662] args[[name]] <- "" [13:31:15.662] } [13:31:15.662] NAMES <- toupper(removed) [13:31:15.662] for (kk in seq_along(NAMES)) { [13:31:15.662] name <- removed[[kk]] [13:31:15.662] NAME <- NAMES[[kk]] [13:31:15.662] if (name != NAME && is.element(NAME, old_names)) [13:31:15.662] next [13:31:15.662] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.662] } [13:31:15.662] if (length(args) > 0) [13:31:15.662] base::do.call(base::Sys.setenv, args = args) [13:31:15.662] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:15.662] } [13:31:15.662] else { [13:31:15.662] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:15.662] } [13:31:15.662] { [13:31:15.662] if (base::length(...future.futureOptionsAdded) > [13:31:15.662] 0L) { [13:31:15.662] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:15.662] base::names(opts) <- ...future.futureOptionsAdded [13:31:15.662] base::options(opts) [13:31:15.662] } [13:31:15.662] { [13:31:15.662] NULL [13:31:15.662] options(future.plan = NULL) [13:31:15.662] if (is.na(NA_character_)) [13:31:15.662] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.662] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:15.662] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:15.662] .init = FALSE) [13:31:15.662] } [13:31:15.662] } [13:31:15.662] } [13:31:15.662] }) [13:31:15.662] if (TRUE) { [13:31:15.662] base::sink(type = "output", split = FALSE) [13:31:15.662] if (TRUE) { [13:31:15.662] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:15.662] } [13:31:15.662] else { [13:31:15.662] ...future.result["stdout"] <- base::list(NULL) [13:31:15.662] } [13:31:15.662] base::close(...future.stdout) [13:31:15.662] ...future.stdout <- NULL [13:31:15.662] } [13:31:15.662] ...future.result$conditions <- ...future.conditions [13:31:15.662] ...future.result$finished <- base::Sys.time() [13:31:15.662] ...future.result [13:31:15.662] } [13:31:15.667] resolved() for 'MiraiFuture' ... [13:31:15.667] - state: 'running' [13:31:15.667] - run: TRUE [13:31:15.667] - result: 'NULL' [13:31:15.668] - resolved: FALSE [13:31:15.668] resolved() for 'MiraiFuture' ... done [1] FALSE [1] 42 [13:31:15.782] *** mirai_multisession(..., globals = FALSE) with globals[13:31:15.785] getGlobalsAndPackages() ... [13:31:15.785] Not searching for globals [13:31:15.785] - globals: [0] [13:31:15.785] getGlobalsAndPackages() ... DONE [13:31:15.786] getGlobalsAndPackages() ... [13:31:15.786] [13:31:15.786] - globals: [0] [13:31:15.786] getGlobalsAndPackages() ... DONE [13:31:15.786] Packages needed by the future expression (n = 0): [13:31:15.787] Packages needed by future strategies (n = 0): [13:31:15.787] { [13:31:15.787] { [13:31:15.787] { [13:31:15.787] ...future.startTime <- base::Sys.time() [13:31:15.787] { [13:31:15.787] { [13:31:15.787] { [13:31:15.787] base::local({ [13:31:15.787] has_future <- base::requireNamespace("future", [13:31:15.787] quietly = TRUE) [13:31:15.787] if (has_future) { [13:31:15.787] ns <- base::getNamespace("future") [13:31:15.787] version <- ns[[".package"]][["version"]] [13:31:15.787] if (is.null(version)) [13:31:15.787] version <- utils::packageVersion("future") [13:31:15.787] } [13:31:15.787] else { [13:31:15.787] version <- NULL [13:31:15.787] } [13:31:15.787] if (!has_future || version < "1.8.0") { [13:31:15.787] info <- base::c(r_version = base::gsub("R version ", [13:31:15.787] "", base::R.version$version.string), [13:31:15.787] platform = base::sprintf("%s (%s-bit)", [13:31:15.787] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:15.787] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:15.787] "release", "version")], collapse = " "), [13:31:15.787] hostname = base::Sys.info()[["nodename"]]) [13:31:15.787] info <- base::sprintf("%s: %s", base::names(info), [13:31:15.787] info) [13:31:15.787] info <- base::paste(info, collapse = "; ") [13:31:15.787] if (!has_future) { [13:31:15.787] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:15.787] info) [13:31:15.787] } [13:31:15.787] else { [13:31:15.787] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:15.787] info, version) [13:31:15.787] } [13:31:15.787] base::stop(msg) [13:31:15.787] } [13:31:15.787] }) [13:31:15.787] } [13:31:15.787] ...future.strategy.old <- future::plan("list") [13:31:15.787] options(future.plan = NULL) [13:31:15.787] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.787] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:15.787] } [13:31:15.787] ...future.workdir <- getwd() [13:31:15.787] } [13:31:15.787] ...future.oldOptions <- base::as.list(base::.Options) [13:31:15.787] ...future.oldEnvVars <- base::Sys.getenv() [13:31:15.787] } [13:31:15.787] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:15.787] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:15.787] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:15.787] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:15.787] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:15.787] future.stdout.windows.reencode = NULL, width = 80L) [13:31:15.787] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:15.787] base::names(...future.oldOptions)) [13:31:15.787] } [13:31:15.787] if (FALSE) { [13:31:15.787] } [13:31:15.787] else { [13:31:15.787] if (TRUE) { [13:31:15.787] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:15.787] open = "w") [13:31:15.787] } [13:31:15.787] else { [13:31:15.787] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:15.787] windows = "NUL", "/dev/null"), open = "w") [13:31:15.787] } [13:31:15.787] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:15.787] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:15.787] base::sink(type = "output", split = FALSE) [13:31:15.787] base::close(...future.stdout) [13:31:15.787] }, add = TRUE) [13:31:15.787] } [13:31:15.787] ...future.frame <- base::sys.nframe() [13:31:15.787] ...future.conditions <- base::list() [13:31:15.787] ...future.rng <- base::globalenv()$.Random.seed [13:31:15.787] if (FALSE) { [13:31:15.787] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:15.787] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:15.787] } [13:31:15.787] ...future.result <- base::tryCatch({ [13:31:15.787] base::withCallingHandlers({ [13:31:15.787] ...future.value <- base::withVisible(base::local({ [13:31:15.787] b <- 3 [13:31:15.787] c <- 2 [13:31:15.787] a * b * c [13:31:15.787] })) [13:31:15.787] future::FutureResult(value = ...future.value$value, [13:31:15.787] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.787] ...future.rng), globalenv = if (FALSE) [13:31:15.787] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:15.787] ...future.globalenv.names)) [13:31:15.787] else NULL, started = ...future.startTime, version = "1.8") [13:31:15.787] }, condition = base::local({ [13:31:15.787] c <- base::c [13:31:15.787] inherits <- base::inherits [13:31:15.787] invokeRestart <- base::invokeRestart [13:31:15.787] length <- base::length [13:31:15.787] list <- base::list [13:31:15.787] seq.int <- base::seq.int [13:31:15.787] signalCondition <- base::signalCondition [13:31:15.787] sys.calls <- base::sys.calls [13:31:15.787] `[[` <- base::`[[` [13:31:15.787] `+` <- base::`+` [13:31:15.787] `<<-` <- base::`<<-` [13:31:15.787] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:15.787] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:15.787] 3L)] [13:31:15.787] } [13:31:15.787] function(cond) { [13:31:15.787] is_error <- inherits(cond, "error") [13:31:15.787] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:15.787] NULL) [13:31:15.787] if (is_error) { [13:31:15.787] sessionInformation <- function() { [13:31:15.787] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:15.787] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:15.787] search = base::search(), system = base::Sys.info()) [13:31:15.787] } [13:31:15.787] ...future.conditions[[length(...future.conditions) + [13:31:15.787] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:15.787] cond$call), session = sessionInformation(), [13:31:15.787] timestamp = base::Sys.time(), signaled = 0L) [13:31:15.787] signalCondition(cond) [13:31:15.787] } [13:31:15.787] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:15.787] signal <- FALSE && inherits(cond, character(0)) [13:31:15.787] ...future.conditions[[length(...future.conditions) + [13:31:15.787] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:15.787] if (FALSE && !signal) { [13:31:15.787] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.787] { [13:31:15.787] inherits <- base::inherits [13:31:15.787] invokeRestart <- base::invokeRestart [13:31:15.787] is.null <- base::is.null [13:31:15.787] muffled <- FALSE [13:31:15.787] if (inherits(cond, "message")) { [13:31:15.787] muffled <- grepl(pattern, "muffleMessage") [13:31:15.787] if (muffled) [13:31:15.787] invokeRestart("muffleMessage") [13:31:15.787] } [13:31:15.787] else if (inherits(cond, "warning")) { [13:31:15.787] muffled <- grepl(pattern, "muffleWarning") [13:31:15.787] if (muffled) [13:31:15.787] invokeRestart("muffleWarning") [13:31:15.787] } [13:31:15.787] else if (inherits(cond, "condition")) { [13:31:15.787] if (!is.null(pattern)) { [13:31:15.787] computeRestarts <- base::computeRestarts [13:31:15.787] grepl <- base::grepl [13:31:15.787] restarts <- computeRestarts(cond) [13:31:15.787] for (restart in restarts) { [13:31:15.787] name <- restart$name [13:31:15.787] if (is.null(name)) [13:31:15.787] next [13:31:15.787] if (!grepl(pattern, name)) [13:31:15.787] next [13:31:15.787] invokeRestart(restart) [13:31:15.787] muffled <- TRUE [13:31:15.787] break [13:31:15.787] } [13:31:15.787] } [13:31:15.787] } [13:31:15.787] invisible(muffled) [13:31:15.787] } [13:31:15.787] muffleCondition(cond, pattern = "^muffle") [13:31:15.787] } [13:31:15.787] } [13:31:15.787] else { [13:31:15.787] if (TRUE) { [13:31:15.787] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.787] { [13:31:15.787] inherits <- base::inherits [13:31:15.787] invokeRestart <- base::invokeRestart [13:31:15.787] is.null <- base::is.null [13:31:15.787] muffled <- FALSE [13:31:15.787] if (inherits(cond, "message")) { [13:31:15.787] muffled <- grepl(pattern, "muffleMessage") [13:31:15.787] if (muffled) [13:31:15.787] invokeRestart("muffleMessage") [13:31:15.787] } [13:31:15.787] else if (inherits(cond, "warning")) { [13:31:15.787] muffled <- grepl(pattern, "muffleWarning") [13:31:15.787] if (muffled) [13:31:15.787] invokeRestart("muffleWarning") [13:31:15.787] } [13:31:15.787] else if (inherits(cond, "condition")) { [13:31:15.787] if (!is.null(pattern)) { [13:31:15.787] computeRestarts <- base::computeRestarts [13:31:15.787] grepl <- base::grepl [13:31:15.787] restarts <- computeRestarts(cond) [13:31:15.787] for (restart in restarts) { [13:31:15.787] name <- restart$name [13:31:15.787] if (is.null(name)) [13:31:15.787] next [13:31:15.787] if (!grepl(pattern, name)) [13:31:15.787] next [13:31:15.787] invokeRestart(restart) [13:31:15.787] muffled <- TRUE [13:31:15.787] break [13:31:15.787] } [13:31:15.787] } [13:31:15.787] } [13:31:15.787] invisible(muffled) [13:31:15.787] } [13:31:15.787] muffleCondition(cond, pattern = "^muffle") [13:31:15.787] } [13:31:15.787] } [13:31:15.787] } [13:31:15.787] })) [13:31:15.787] }, error = function(ex) { [13:31:15.787] base::structure(base::list(value = NULL, visible = NULL, [13:31:15.787] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.787] ...future.rng), started = ...future.startTime, [13:31:15.787] finished = Sys.time(), session_uuid = NA_character_, [13:31:15.787] version = "1.8"), class = "FutureResult") [13:31:15.787] }, finally = { [13:31:15.787] if (!identical(...future.workdir, getwd())) [13:31:15.787] setwd(...future.workdir) [13:31:15.787] { [13:31:15.787] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:15.787] ...future.oldOptions$nwarnings <- NULL [13:31:15.787] } [13:31:15.787] base::options(...future.oldOptions) [13:31:15.787] if (.Platform$OS.type == "windows") { [13:31:15.787] old_names <- names(...future.oldEnvVars) [13:31:15.787] envs <- base::Sys.getenv() [13:31:15.787] names <- names(envs) [13:31:15.787] common <- intersect(names, old_names) [13:31:15.787] added <- setdiff(names, old_names) [13:31:15.787] removed <- setdiff(old_names, names) [13:31:15.787] changed <- common[...future.oldEnvVars[common] != [13:31:15.787] envs[common]] [13:31:15.787] NAMES <- toupper(changed) [13:31:15.787] args <- list() [13:31:15.787] for (kk in seq_along(NAMES)) { [13:31:15.787] name <- changed[[kk]] [13:31:15.787] NAME <- NAMES[[kk]] [13:31:15.787] if (name != NAME && is.element(NAME, old_names)) [13:31:15.787] next [13:31:15.787] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.787] } [13:31:15.787] NAMES <- toupper(added) [13:31:15.787] for (kk in seq_along(NAMES)) { [13:31:15.787] name <- added[[kk]] [13:31:15.787] NAME <- NAMES[[kk]] [13:31:15.787] if (name != NAME && is.element(NAME, old_names)) [13:31:15.787] next [13:31:15.787] args[[name]] <- "" [13:31:15.787] } [13:31:15.787] NAMES <- toupper(removed) [13:31:15.787] for (kk in seq_along(NAMES)) { [13:31:15.787] name <- removed[[kk]] [13:31:15.787] NAME <- NAMES[[kk]] [13:31:15.787] if (name != NAME && is.element(NAME, old_names)) [13:31:15.787] next [13:31:15.787] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.787] } [13:31:15.787] if (length(args) > 0) [13:31:15.787] base::do.call(base::Sys.setenv, args = args) [13:31:15.787] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:15.787] } [13:31:15.787] else { [13:31:15.787] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:15.787] } [13:31:15.787] { [13:31:15.787] if (base::length(...future.futureOptionsAdded) > [13:31:15.787] 0L) { [13:31:15.787] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:15.787] base::names(opts) <- ...future.futureOptionsAdded [13:31:15.787] base::options(opts) [13:31:15.787] } [13:31:15.787] { [13:31:15.787] NULL [13:31:15.787] options(future.plan = NULL) [13:31:15.787] if (is.na(NA_character_)) [13:31:15.787] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.787] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:15.787] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:15.787] .init = FALSE) [13:31:15.787] } [13:31:15.787] } [13:31:15.787] } [13:31:15.787] }) [13:31:15.787] if (TRUE) { [13:31:15.787] base::sink(type = "output", split = FALSE) [13:31:15.787] if (TRUE) { [13:31:15.787] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:15.787] } [13:31:15.787] else { [13:31:15.787] ...future.result["stdout"] <- base::list(NULL) [13:31:15.787] } [13:31:15.787] base::close(...future.stdout) [13:31:15.787] ...future.stdout <- NULL [13:31:15.787] } [13:31:15.787] ...future.result$conditions <- ...future.conditions [13:31:15.787] ...future.result$finished <- base::Sys.time() [13:31:15.787] ...future.result [13:31:15.787] } 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:15.792] resolved() for 'MiraiFuture' ... [13:31:15.792] - state: 'running' [13:31:15.792] - run: TRUE [13:31:15.793] - result: 'NULL' [13:31:15.793] - resolved: FALSE [13:31:15.793] resolved() for 'MiraiFuture' ... done Resolved: FALSE Value: Conditions captured: Early signaling: FALSE Owner process: b6aff70f-dcb2-5b98-b1ed-deeb3a52e0c0 Class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:31:15.795] signalConditions() ... [13:31:15.795] - include = 'immediateCondition' [13:31:15.795] - exclude = [13:31:15.795] - resignal = FALSE [13:31:15.795] - Number of conditions: 1 [13:31:15.796] signalConditions() ... done [13:31:15.796] Future state: 'finished' [13:31:15.796] signalConditions() ... [13:31:15.796] - include = 'condition' [13:31:15.796] - exclude = 'immediateCondition' [13:31:15.796] - resignal = TRUE [13:31:15.797] - Number of conditions: 1 [13:31:15.797] - Condition #1: 'simpleError', 'error', 'condition' [13:31:15.797] signalConditions() ... done [13:31:15.797] *** mirai_multisession(..., globals = FALSE) with globals and blocking[13:31:15.797] - Creating mirai_multisession future #1 ...[13:31:15.800] getGlobalsAndPackages() ... [13:31:15.800] Not searching for globals [13:31:15.800] - globals: [0] [13:31:15.800] getGlobalsAndPackages() ... DONE [13:31:15.800] getGlobalsAndPackages() ... [13:31:15.801] [13:31:15.801] - globals: [0] [13:31:15.801] getGlobalsAndPackages() ... DONE [13:31:15.801] Packages needed by the future expression (n = 0): [13:31:15.801] Packages needed by future strategies (n = 0): [13:31:15.802] { [13:31:15.802] { [13:31:15.802] { [13:31:15.802] ...future.startTime <- base::Sys.time() [13:31:15.802] { [13:31:15.802] { [13:31:15.802] { [13:31:15.802] base::local({ [13:31:15.802] has_future <- base::requireNamespace("future", [13:31:15.802] quietly = TRUE) [13:31:15.802] if (has_future) { [13:31:15.802] ns <- base::getNamespace("future") [13:31:15.802] version <- ns[[".package"]][["version"]] [13:31:15.802] if (is.null(version)) [13:31:15.802] version <- utils::packageVersion("future") [13:31:15.802] } [13:31:15.802] else { [13:31:15.802] version <- NULL [13:31:15.802] } [13:31:15.802] if (!has_future || version < "1.8.0") { [13:31:15.802] info <- base::c(r_version = base::gsub("R version ", [13:31:15.802] "", base::R.version$version.string), [13:31:15.802] platform = base::sprintf("%s (%s-bit)", [13:31:15.802] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:15.802] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:15.802] "release", "version")], collapse = " "), [13:31:15.802] hostname = base::Sys.info()[["nodename"]]) [13:31:15.802] info <- base::sprintf("%s: %s", base::names(info), [13:31:15.802] info) [13:31:15.802] info <- base::paste(info, collapse = "; ") [13:31:15.802] if (!has_future) { [13:31:15.802] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:15.802] info) [13:31:15.802] } [13:31:15.802] else { [13:31:15.802] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:15.802] info, version) [13:31:15.802] } [13:31:15.802] base::stop(msg) [13:31:15.802] } [13:31:15.802] }) [13:31:15.802] } [13:31:15.802] ...future.strategy.old <- future::plan("list") [13:31:15.802] options(future.plan = NULL) [13:31:15.802] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.802] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:15.802] } [13:31:15.802] ...future.workdir <- getwd() [13:31:15.802] } [13:31:15.802] ...future.oldOptions <- base::as.list(base::.Options) [13:31:15.802] ...future.oldEnvVars <- base::Sys.getenv() [13:31:15.802] } [13:31:15.802] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:15.802] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:15.802] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:15.802] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:15.802] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:15.802] future.stdout.windows.reencode = NULL, width = 80L) [13:31:15.802] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:15.802] base::names(...future.oldOptions)) [13:31:15.802] } [13:31:15.802] if (FALSE) { [13:31:15.802] } [13:31:15.802] else { [13:31:15.802] if (TRUE) { [13:31:15.802] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:15.802] open = "w") [13:31:15.802] } [13:31:15.802] else { [13:31:15.802] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:15.802] windows = "NUL", "/dev/null"), open = "w") [13:31:15.802] } [13:31:15.802] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:15.802] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:15.802] base::sink(type = "output", split = FALSE) [13:31:15.802] base::close(...future.stdout) [13:31:15.802] }, add = TRUE) [13:31:15.802] } [13:31:15.802] ...future.frame <- base::sys.nframe() [13:31:15.802] ...future.conditions <- base::list() [13:31:15.802] ...future.rng <- base::globalenv()$.Random.seed [13:31:15.802] if (FALSE) { [13:31:15.802] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:15.802] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:15.802] } [13:31:15.802] ...future.result <- base::tryCatch({ [13:31:15.802] base::withCallingHandlers({ [13:31:15.802] ...future.value <- base::withVisible(base::local({ [13:31:15.802] ii [13:31:15.802] })) [13:31:15.802] future::FutureResult(value = ...future.value$value, [13:31:15.802] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.802] ...future.rng), globalenv = if (FALSE) [13:31:15.802] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:15.802] ...future.globalenv.names)) [13:31:15.802] else NULL, started = ...future.startTime, version = "1.8") [13:31:15.802] }, condition = base::local({ [13:31:15.802] c <- base::c [13:31:15.802] inherits <- base::inherits [13:31:15.802] invokeRestart <- base::invokeRestart [13:31:15.802] length <- base::length [13:31:15.802] list <- base::list [13:31:15.802] seq.int <- base::seq.int [13:31:15.802] signalCondition <- base::signalCondition [13:31:15.802] sys.calls <- base::sys.calls [13:31:15.802] `[[` <- base::`[[` [13:31:15.802] `+` <- base::`+` [13:31:15.802] `<<-` <- base::`<<-` [13:31:15.802] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:15.802] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:15.802] 3L)] [13:31:15.802] } [13:31:15.802] function(cond) { [13:31:15.802] is_error <- inherits(cond, "error") [13:31:15.802] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:15.802] NULL) [13:31:15.802] if (is_error) { [13:31:15.802] sessionInformation <- function() { [13:31:15.802] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:15.802] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:15.802] search = base::search(), system = base::Sys.info()) [13:31:15.802] } [13:31:15.802] ...future.conditions[[length(...future.conditions) + [13:31:15.802] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:15.802] cond$call), session = sessionInformation(), [13:31:15.802] timestamp = base::Sys.time(), signaled = 0L) [13:31:15.802] signalCondition(cond) [13:31:15.802] } [13:31:15.802] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:15.802] signal <- FALSE && inherits(cond, character(0)) [13:31:15.802] ...future.conditions[[length(...future.conditions) + [13:31:15.802] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:15.802] if (FALSE && !signal) { [13:31:15.802] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.802] { [13:31:15.802] inherits <- base::inherits [13:31:15.802] invokeRestart <- base::invokeRestart [13:31:15.802] is.null <- base::is.null [13:31:15.802] muffled <- FALSE [13:31:15.802] if (inherits(cond, "message")) { [13:31:15.802] muffled <- grepl(pattern, "muffleMessage") [13:31:15.802] if (muffled) [13:31:15.802] invokeRestart("muffleMessage") [13:31:15.802] } [13:31:15.802] else if (inherits(cond, "warning")) { [13:31:15.802] muffled <- grepl(pattern, "muffleWarning") [13:31:15.802] if (muffled) [13:31:15.802] invokeRestart("muffleWarning") [13:31:15.802] } [13:31:15.802] else if (inherits(cond, "condition")) { [13:31:15.802] if (!is.null(pattern)) { [13:31:15.802] computeRestarts <- base::computeRestarts [13:31:15.802] grepl <- base::grepl [13:31:15.802] restarts <- computeRestarts(cond) [13:31:15.802] for (restart in restarts) { [13:31:15.802] name <- restart$name [13:31:15.802] if (is.null(name)) [13:31:15.802] next [13:31:15.802] if (!grepl(pattern, name)) [13:31:15.802] next [13:31:15.802] invokeRestart(restart) [13:31:15.802] muffled <- TRUE [13:31:15.802] break [13:31:15.802] } [13:31:15.802] } [13:31:15.802] } [13:31:15.802] invisible(muffled) [13:31:15.802] } [13:31:15.802] muffleCondition(cond, pattern = "^muffle") [13:31:15.802] } [13:31:15.802] } [13:31:15.802] else { [13:31:15.802] if (TRUE) { [13:31:15.802] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.802] { [13:31:15.802] inherits <- base::inherits [13:31:15.802] invokeRestart <- base::invokeRestart [13:31:15.802] is.null <- base::is.null [13:31:15.802] muffled <- FALSE [13:31:15.802] if (inherits(cond, "message")) { [13:31:15.802] muffled <- grepl(pattern, "muffleMessage") [13:31:15.802] if (muffled) [13:31:15.802] invokeRestart("muffleMessage") [13:31:15.802] } [13:31:15.802] else if (inherits(cond, "warning")) { [13:31:15.802] muffled <- grepl(pattern, "muffleWarning") [13:31:15.802] if (muffled) [13:31:15.802] invokeRestart("muffleWarning") [13:31:15.802] } [13:31:15.802] else if (inherits(cond, "condition")) { [13:31:15.802] if (!is.null(pattern)) { [13:31:15.802] computeRestarts <- base::computeRestarts [13:31:15.802] grepl <- base::grepl [13:31:15.802] restarts <- computeRestarts(cond) [13:31:15.802] for (restart in restarts) { [13:31:15.802] name <- restart$name [13:31:15.802] if (is.null(name)) [13:31:15.802] next [13:31:15.802] if (!grepl(pattern, name)) [13:31:15.802] next [13:31:15.802] invokeRestart(restart) [13:31:15.802] muffled <- TRUE [13:31:15.802] break [13:31:15.802] } [13:31:15.802] } [13:31:15.802] } [13:31:15.802] invisible(muffled) [13:31:15.802] } [13:31:15.802] muffleCondition(cond, pattern = "^muffle") [13:31:15.802] } [13:31:15.802] } [13:31:15.802] } [13:31:15.802] })) [13:31:15.802] }, error = function(ex) { [13:31:15.802] base::structure(base::list(value = NULL, visible = NULL, [13:31:15.802] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.802] ...future.rng), started = ...future.startTime, [13:31:15.802] finished = Sys.time(), session_uuid = NA_character_, [13:31:15.802] version = "1.8"), class = "FutureResult") [13:31:15.802] }, finally = { [13:31:15.802] if (!identical(...future.workdir, getwd())) [13:31:15.802] setwd(...future.workdir) [13:31:15.802] { [13:31:15.802] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:15.802] ...future.oldOptions$nwarnings <- NULL [13:31:15.802] } [13:31:15.802] base::options(...future.oldOptions) [13:31:15.802] if (.Platform$OS.type == "windows") { [13:31:15.802] old_names <- names(...future.oldEnvVars) [13:31:15.802] envs <- base::Sys.getenv() [13:31:15.802] names <- names(envs) [13:31:15.802] common <- intersect(names, old_names) [13:31:15.802] added <- setdiff(names, old_names) [13:31:15.802] removed <- setdiff(old_names, names) [13:31:15.802] changed <- common[...future.oldEnvVars[common] != [13:31:15.802] envs[common]] [13:31:15.802] NAMES <- toupper(changed) [13:31:15.802] args <- list() [13:31:15.802] for (kk in seq_along(NAMES)) { [13:31:15.802] name <- changed[[kk]] [13:31:15.802] NAME <- NAMES[[kk]] [13:31:15.802] if (name != NAME && is.element(NAME, old_names)) [13:31:15.802] next [13:31:15.802] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.802] } [13:31:15.802] NAMES <- toupper(added) [13:31:15.802] for (kk in seq_along(NAMES)) { [13:31:15.802] name <- added[[kk]] [13:31:15.802] NAME <- NAMES[[kk]] [13:31:15.802] if (name != NAME && is.element(NAME, old_names)) [13:31:15.802] next [13:31:15.802] args[[name]] <- "" [13:31:15.802] } [13:31:15.802] NAMES <- toupper(removed) [13:31:15.802] for (kk in seq_along(NAMES)) { [13:31:15.802] name <- removed[[kk]] [13:31:15.802] NAME <- NAMES[[kk]] [13:31:15.802] if (name != NAME && is.element(NAME, old_names)) [13:31:15.802] next [13:31:15.802] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.802] } [13:31:15.802] if (length(args) > 0) [13:31:15.802] base::do.call(base::Sys.setenv, args = args) [13:31:15.802] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:15.802] } [13:31:15.802] else { [13:31:15.802] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:15.802] } [13:31:15.802] { [13:31:15.802] if (base::length(...future.futureOptionsAdded) > [13:31:15.802] 0L) { [13:31:15.802] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:15.802] base::names(opts) <- ...future.futureOptionsAdded [13:31:15.802] base::options(opts) [13:31:15.802] } [13:31:15.802] { [13:31:15.802] NULL [13:31:15.802] options(future.plan = NULL) [13:31:15.802] if (is.na(NA_character_)) [13:31:15.802] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.802] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:15.802] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:15.802] .init = FALSE) [13:31:15.802] } [13:31:15.802] } [13:31:15.802] } [13:31:15.802] }) [13:31:15.802] if (TRUE) { [13:31:15.802] base::sink(type = "output", split = FALSE) [13:31:15.802] if (TRUE) { [13:31:15.802] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:15.802] } [13:31:15.802] else { [13:31:15.802] ...future.result["stdout"] <- base::list(NULL) [13:31:15.802] } [13:31:15.802] base::close(...future.stdout) [13:31:15.802] ...future.stdout <- NULL [13:31:15.802] } [13:31:15.802] ...future.result$conditions <- ...future.conditions [13:31:15.802] ...future.result$finished <- base::Sys.time() [13:31:15.802] ...future.result [13:31:15.802] } [13:31:15.806] - Creating mirai_multisession future #2 ...[13:31:15.808] getGlobalsAndPackages() ... [13:31:15.808] Not searching for globals [13:31:15.809] - globals: [0] [13:31:15.809] getGlobalsAndPackages() ... DONE [13:31:15.809] getGlobalsAndPackages() ... [13:31:15.809] [13:31:15.809] - globals: [0] [13:31:15.809] getGlobalsAndPackages() ... DONE [13:31:15.810] Packages needed by the future expression (n = 0): [13:31:15.810] Packages needed by future strategies (n = 0): [13:31:15.811] { [13:31:15.811] { [13:31:15.811] { [13:31:15.811] ...future.startTime <- base::Sys.time() [13:31:15.811] { [13:31:15.811] { [13:31:15.811] { [13:31:15.811] base::local({ [13:31:15.811] has_future <- base::requireNamespace("future", [13:31:15.811] quietly = TRUE) [13:31:15.811] if (has_future) { [13:31:15.811] ns <- base::getNamespace("future") [13:31:15.811] version <- ns[[".package"]][["version"]] [13:31:15.811] if (is.null(version)) [13:31:15.811] version <- utils::packageVersion("future") [13:31:15.811] } [13:31:15.811] else { [13:31:15.811] version <- NULL [13:31:15.811] } [13:31:15.811] if (!has_future || version < "1.8.0") { [13:31:15.811] info <- base::c(r_version = base::gsub("R version ", [13:31:15.811] "", base::R.version$version.string), [13:31:15.811] platform = base::sprintf("%s (%s-bit)", [13:31:15.811] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:15.811] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:15.811] "release", "version")], collapse = " "), [13:31:15.811] hostname = base::Sys.info()[["nodename"]]) [13:31:15.811] info <- base::sprintf("%s: %s", base::names(info), [13:31:15.811] info) [13:31:15.811] info <- base::paste(info, collapse = "; ") [13:31:15.811] if (!has_future) { [13:31:15.811] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:15.811] info) [13:31:15.811] } [13:31:15.811] else { [13:31:15.811] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:15.811] info, version) [13:31:15.811] } [13:31:15.811] base::stop(msg) [13:31:15.811] } [13:31:15.811] }) [13:31:15.811] } [13:31:15.811] ...future.strategy.old <- future::plan("list") [13:31:15.811] options(future.plan = NULL) [13:31:15.811] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.811] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:15.811] } [13:31:15.811] ...future.workdir <- getwd() [13:31:15.811] } [13:31:15.811] ...future.oldOptions <- base::as.list(base::.Options) [13:31:15.811] ...future.oldEnvVars <- base::Sys.getenv() [13:31:15.811] } [13:31:15.811] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:15.811] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:15.811] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:15.811] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:15.811] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:15.811] future.stdout.windows.reencode = NULL, width = 80L) [13:31:15.811] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:15.811] base::names(...future.oldOptions)) [13:31:15.811] } [13:31:15.811] if (FALSE) { [13:31:15.811] } [13:31:15.811] else { [13:31:15.811] if (TRUE) { [13:31:15.811] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:15.811] open = "w") [13:31:15.811] } [13:31:15.811] else { [13:31:15.811] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:15.811] windows = "NUL", "/dev/null"), open = "w") [13:31:15.811] } [13:31:15.811] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:15.811] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:15.811] base::sink(type = "output", split = FALSE) [13:31:15.811] base::close(...future.stdout) [13:31:15.811] }, add = TRUE) [13:31:15.811] } [13:31:15.811] ...future.frame <- base::sys.nframe() [13:31:15.811] ...future.conditions <- base::list() [13:31:15.811] ...future.rng <- base::globalenv()$.Random.seed [13:31:15.811] if (FALSE) { [13:31:15.811] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:15.811] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:15.811] } [13:31:15.811] ...future.result <- base::tryCatch({ [13:31:15.811] base::withCallingHandlers({ [13:31:15.811] ...future.value <- base::withVisible(base::local({ [13:31:15.811] ii [13:31:15.811] })) [13:31:15.811] future::FutureResult(value = ...future.value$value, [13:31:15.811] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.811] ...future.rng), globalenv = if (FALSE) [13:31:15.811] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:15.811] ...future.globalenv.names)) [13:31:15.811] else NULL, started = ...future.startTime, version = "1.8") [13:31:15.811] }, condition = base::local({ [13:31:15.811] c <- base::c [13:31:15.811] inherits <- base::inherits [13:31:15.811] invokeRestart <- base::invokeRestart [13:31:15.811] length <- base::length [13:31:15.811] list <- base::list [13:31:15.811] seq.int <- base::seq.int [13:31:15.811] signalCondition <- base::signalCondition [13:31:15.811] sys.calls <- base::sys.calls [13:31:15.811] `[[` <- base::`[[` [13:31:15.811] `+` <- base::`+` [13:31:15.811] `<<-` <- base::`<<-` [13:31:15.811] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:15.811] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:15.811] 3L)] [13:31:15.811] } [13:31:15.811] function(cond) { [13:31:15.811] is_error <- inherits(cond, "error") [13:31:15.811] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:15.811] NULL) [13:31:15.811] if (is_error) { [13:31:15.811] sessionInformation <- function() { [13:31:15.811] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:15.811] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:15.811] search = base::search(), system = base::Sys.info()) [13:31:15.811] } [13:31:15.811] ...future.conditions[[length(...future.conditions) + [13:31:15.811] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:15.811] cond$call), session = sessionInformation(), [13:31:15.811] timestamp = base::Sys.time(), signaled = 0L) [13:31:15.811] signalCondition(cond) [13:31:15.811] } [13:31:15.811] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:15.811] signal <- FALSE && inherits(cond, character(0)) [13:31:15.811] ...future.conditions[[length(...future.conditions) + [13:31:15.811] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:15.811] if (FALSE && !signal) { [13:31:15.811] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.811] { [13:31:15.811] inherits <- base::inherits [13:31:15.811] invokeRestart <- base::invokeRestart [13:31:15.811] is.null <- base::is.null [13:31:15.811] muffled <- FALSE [13:31:15.811] if (inherits(cond, "message")) { [13:31:15.811] muffled <- grepl(pattern, "muffleMessage") [13:31:15.811] if (muffled) [13:31:15.811] invokeRestart("muffleMessage") [13:31:15.811] } [13:31:15.811] else if (inherits(cond, "warning")) { [13:31:15.811] muffled <- grepl(pattern, "muffleWarning") [13:31:15.811] if (muffled) [13:31:15.811] invokeRestart("muffleWarning") [13:31:15.811] } [13:31:15.811] else if (inherits(cond, "condition")) { [13:31:15.811] if (!is.null(pattern)) { [13:31:15.811] computeRestarts <- base::computeRestarts [13:31:15.811] grepl <- base::grepl [13:31:15.811] restarts <- computeRestarts(cond) [13:31:15.811] for (restart in restarts) { [13:31:15.811] name <- restart$name [13:31:15.811] if (is.null(name)) [13:31:15.811] next [13:31:15.811] if (!grepl(pattern, name)) [13:31:15.811] next [13:31:15.811] invokeRestart(restart) [13:31:15.811] muffled <- TRUE [13:31:15.811] break [13:31:15.811] } [13:31:15.811] } [13:31:15.811] } [13:31:15.811] invisible(muffled) [13:31:15.811] } [13:31:15.811] muffleCondition(cond, pattern = "^muffle") [13:31:15.811] } [13:31:15.811] } [13:31:15.811] else { [13:31:15.811] if (TRUE) { [13:31:15.811] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.811] { [13:31:15.811] inherits <- base::inherits [13:31:15.811] invokeRestart <- base::invokeRestart [13:31:15.811] is.null <- base::is.null [13:31:15.811] muffled <- FALSE [13:31:15.811] if (inherits(cond, "message")) { [13:31:15.811] muffled <- grepl(pattern, "muffleMessage") [13:31:15.811] if (muffled) [13:31:15.811] invokeRestart("muffleMessage") [13:31:15.811] } [13:31:15.811] else if (inherits(cond, "warning")) { [13:31:15.811] muffled <- grepl(pattern, "muffleWarning") [13:31:15.811] if (muffled) [13:31:15.811] invokeRestart("muffleWarning") [13:31:15.811] } [13:31:15.811] else if (inherits(cond, "condition")) { [13:31:15.811] if (!is.null(pattern)) { [13:31:15.811] computeRestarts <- base::computeRestarts [13:31:15.811] grepl <- base::grepl [13:31:15.811] restarts <- computeRestarts(cond) [13:31:15.811] for (restart in restarts) { [13:31:15.811] name <- restart$name [13:31:15.811] if (is.null(name)) [13:31:15.811] next [13:31:15.811] if (!grepl(pattern, name)) [13:31:15.811] next [13:31:15.811] invokeRestart(restart) [13:31:15.811] muffled <- TRUE [13:31:15.811] break [13:31:15.811] } [13:31:15.811] } [13:31:15.811] } [13:31:15.811] invisible(muffled) [13:31:15.811] } [13:31:15.811] muffleCondition(cond, pattern = "^muffle") [13:31:15.811] } [13:31:15.811] } [13:31:15.811] } [13:31:15.811] })) [13:31:15.811] }, error = function(ex) { [13:31:15.811] base::structure(base::list(value = NULL, visible = NULL, [13:31:15.811] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.811] ...future.rng), started = ...future.startTime, [13:31:15.811] finished = Sys.time(), session_uuid = NA_character_, [13:31:15.811] version = "1.8"), class = "FutureResult") [13:31:15.811] }, finally = { [13:31:15.811] if (!identical(...future.workdir, getwd())) [13:31:15.811] setwd(...future.workdir) [13:31:15.811] { [13:31:15.811] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:15.811] ...future.oldOptions$nwarnings <- NULL [13:31:15.811] } [13:31:15.811] base::options(...future.oldOptions) [13:31:15.811] if (.Platform$OS.type == "windows") { [13:31:15.811] old_names <- names(...future.oldEnvVars) [13:31:15.811] envs <- base::Sys.getenv() [13:31:15.811] names <- names(envs) [13:31:15.811] common <- intersect(names, old_names) [13:31:15.811] added <- setdiff(names, old_names) [13:31:15.811] removed <- setdiff(old_names, names) [13:31:15.811] changed <- common[...future.oldEnvVars[common] != [13:31:15.811] envs[common]] [13:31:15.811] NAMES <- toupper(changed) [13:31:15.811] args <- list() [13:31:15.811] for (kk in seq_along(NAMES)) { [13:31:15.811] name <- changed[[kk]] [13:31:15.811] NAME <- NAMES[[kk]] [13:31:15.811] if (name != NAME && is.element(NAME, old_names)) [13:31:15.811] next [13:31:15.811] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.811] } [13:31:15.811] NAMES <- toupper(added) [13:31:15.811] for (kk in seq_along(NAMES)) { [13:31:15.811] name <- added[[kk]] [13:31:15.811] NAME <- NAMES[[kk]] [13:31:15.811] if (name != NAME && is.element(NAME, old_names)) [13:31:15.811] next [13:31:15.811] args[[name]] <- "" [13:31:15.811] } [13:31:15.811] NAMES <- toupper(removed) [13:31:15.811] for (kk in seq_along(NAMES)) { [13:31:15.811] name <- removed[[kk]] [13:31:15.811] NAME <- NAMES[[kk]] [13:31:15.811] if (name != NAME && is.element(NAME, old_names)) [13:31:15.811] next [13:31:15.811] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.811] } [13:31:15.811] if (length(args) > 0) [13:31:15.811] base::do.call(base::Sys.setenv, args = args) [13:31:15.811] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:15.811] } [13:31:15.811] else { [13:31:15.811] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:15.811] } [13:31:15.811] { [13:31:15.811] if (base::length(...future.futureOptionsAdded) > [13:31:15.811] 0L) { [13:31:15.811] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:15.811] base::names(opts) <- ...future.futureOptionsAdded [13:31:15.811] base::options(opts) [13:31:15.811] } [13:31:15.811] { [13:31:15.811] NULL [13:31:15.811] options(future.plan = NULL) [13:31:15.811] if (is.na(NA_character_)) [13:31:15.811] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.811] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:15.811] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:15.811] .init = FALSE) [13:31:15.811] } [13:31:15.811] } [13:31:15.811] } [13:31:15.811] }) [13:31:15.811] if (TRUE) { [13:31:15.811] base::sink(type = "output", split = FALSE) [13:31:15.811] if (TRUE) { [13:31:15.811] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:15.811] } [13:31:15.811] else { [13:31:15.811] ...future.result["stdout"] <- base::list(NULL) [13:31:15.811] } [13:31:15.811] base::close(...future.stdout) [13:31:15.811] ...future.stdout <- NULL [13:31:15.811] } [13:31:15.811] ...future.result$conditions <- ...future.conditions [13:31:15.811] ...future.result$finished <- base::Sys.time() [13:31:15.811] ...future.result [13:31:15.811] } [13:31:15.814] - Creating mirai_multisession future #3 ...[13:31:15.816] getGlobalsAndPackages() ... [13:31:15.817] Not searching for globals [13:31:15.817] - globals: [0] [13:31:15.817] getGlobalsAndPackages() ... DONE [13:31:15.817] getGlobalsAndPackages() ... [13:31:15.817] [13:31:15.818] - globals: [0] [13:31:15.818] getGlobalsAndPackages() ... DONE [13:31:15.818] Packages needed by the future expression (n = 0): [13:31:15.818] Packages needed by future strategies (n = 0): [13:31:15.819] { [13:31:15.819] { [13:31:15.819] { [13:31:15.819] ...future.startTime <- base::Sys.time() [13:31:15.819] { [13:31:15.819] { [13:31:15.819] { [13:31:15.819] base::local({ [13:31:15.819] has_future <- base::requireNamespace("future", [13:31:15.819] quietly = TRUE) [13:31:15.819] if (has_future) { [13:31:15.819] ns <- base::getNamespace("future") [13:31:15.819] version <- ns[[".package"]][["version"]] [13:31:15.819] if (is.null(version)) [13:31:15.819] version <- utils::packageVersion("future") [13:31:15.819] } [13:31:15.819] else { [13:31:15.819] version <- NULL [13:31:15.819] } [13:31:15.819] if (!has_future || version < "1.8.0") { [13:31:15.819] info <- base::c(r_version = base::gsub("R version ", [13:31:15.819] "", base::R.version$version.string), [13:31:15.819] platform = base::sprintf("%s (%s-bit)", [13:31:15.819] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:15.819] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:15.819] "release", "version")], collapse = " "), [13:31:15.819] hostname = base::Sys.info()[["nodename"]]) [13:31:15.819] info <- base::sprintf("%s: %s", base::names(info), [13:31:15.819] info) [13:31:15.819] info <- base::paste(info, collapse = "; ") [13:31:15.819] if (!has_future) { [13:31:15.819] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:15.819] info) [13:31:15.819] } [13:31:15.819] else { [13:31:15.819] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:15.819] info, version) [13:31:15.819] } [13:31:15.819] base::stop(msg) [13:31:15.819] } [13:31:15.819] }) [13:31:15.819] } [13:31:15.819] ...future.strategy.old <- future::plan("list") [13:31:15.819] options(future.plan = NULL) [13:31:15.819] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.819] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:15.819] } [13:31:15.819] ...future.workdir <- getwd() [13:31:15.819] } [13:31:15.819] ...future.oldOptions <- base::as.list(base::.Options) [13:31:15.819] ...future.oldEnvVars <- base::Sys.getenv() [13:31:15.819] } [13:31:15.819] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:15.819] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:15.819] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:15.819] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:15.819] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:15.819] future.stdout.windows.reencode = NULL, width = 80L) [13:31:15.819] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:15.819] base::names(...future.oldOptions)) [13:31:15.819] } [13:31:15.819] if (FALSE) { [13:31:15.819] } [13:31:15.819] else { [13:31:15.819] if (TRUE) { [13:31:15.819] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:15.819] open = "w") [13:31:15.819] } [13:31:15.819] else { [13:31:15.819] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:15.819] windows = "NUL", "/dev/null"), open = "w") [13:31:15.819] } [13:31:15.819] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:15.819] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:15.819] base::sink(type = "output", split = FALSE) [13:31:15.819] base::close(...future.stdout) [13:31:15.819] }, add = TRUE) [13:31:15.819] } [13:31:15.819] ...future.frame <- base::sys.nframe() [13:31:15.819] ...future.conditions <- base::list() [13:31:15.819] ...future.rng <- base::globalenv()$.Random.seed [13:31:15.819] if (FALSE) { [13:31:15.819] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:15.819] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:15.819] } [13:31:15.819] ...future.result <- base::tryCatch({ [13:31:15.819] base::withCallingHandlers({ [13:31:15.819] ...future.value <- base::withVisible(base::local({ [13:31:15.819] ii [13:31:15.819] })) [13:31:15.819] future::FutureResult(value = ...future.value$value, [13:31:15.819] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.819] ...future.rng), globalenv = if (FALSE) [13:31:15.819] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:15.819] ...future.globalenv.names)) [13:31:15.819] else NULL, started = ...future.startTime, version = "1.8") [13:31:15.819] }, condition = base::local({ [13:31:15.819] c <- base::c [13:31:15.819] inherits <- base::inherits [13:31:15.819] invokeRestart <- base::invokeRestart [13:31:15.819] length <- base::length [13:31:15.819] list <- base::list [13:31:15.819] seq.int <- base::seq.int [13:31:15.819] signalCondition <- base::signalCondition [13:31:15.819] sys.calls <- base::sys.calls [13:31:15.819] `[[` <- base::`[[` [13:31:15.819] `+` <- base::`+` [13:31:15.819] `<<-` <- base::`<<-` [13:31:15.819] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:15.819] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:15.819] 3L)] [13:31:15.819] } [13:31:15.819] function(cond) { [13:31:15.819] is_error <- inherits(cond, "error") [13:31:15.819] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:15.819] NULL) [13:31:15.819] if (is_error) { [13:31:15.819] sessionInformation <- function() { [13:31:15.819] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:15.819] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:15.819] search = base::search(), system = base::Sys.info()) [13:31:15.819] } [13:31:15.819] ...future.conditions[[length(...future.conditions) + [13:31:15.819] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:15.819] cond$call), session = sessionInformation(), [13:31:15.819] timestamp = base::Sys.time(), signaled = 0L) [13:31:15.819] signalCondition(cond) [13:31:15.819] } [13:31:15.819] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:15.819] signal <- FALSE && inherits(cond, character(0)) [13:31:15.819] ...future.conditions[[length(...future.conditions) + [13:31:15.819] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:15.819] if (FALSE && !signal) { [13:31:15.819] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.819] { [13:31:15.819] inherits <- base::inherits [13:31:15.819] invokeRestart <- base::invokeRestart [13:31:15.819] is.null <- base::is.null [13:31:15.819] muffled <- FALSE [13:31:15.819] if (inherits(cond, "message")) { [13:31:15.819] muffled <- grepl(pattern, "muffleMessage") [13:31:15.819] if (muffled) [13:31:15.819] invokeRestart("muffleMessage") [13:31:15.819] } [13:31:15.819] else if (inherits(cond, "warning")) { [13:31:15.819] muffled <- grepl(pattern, "muffleWarning") [13:31:15.819] if (muffled) [13:31:15.819] invokeRestart("muffleWarning") [13:31:15.819] } [13:31:15.819] else if (inherits(cond, "condition")) { [13:31:15.819] if (!is.null(pattern)) { [13:31:15.819] computeRestarts <- base::computeRestarts [13:31:15.819] grepl <- base::grepl [13:31:15.819] restarts <- computeRestarts(cond) [13:31:15.819] for (restart in restarts) { [13:31:15.819] name <- restart$name [13:31:15.819] if (is.null(name)) [13:31:15.819] next [13:31:15.819] if (!grepl(pattern, name)) [13:31:15.819] next [13:31:15.819] invokeRestart(restart) [13:31:15.819] muffled <- TRUE [13:31:15.819] break [13:31:15.819] } [13:31:15.819] } [13:31:15.819] } [13:31:15.819] invisible(muffled) [13:31:15.819] } [13:31:15.819] muffleCondition(cond, pattern = "^muffle") [13:31:15.819] } [13:31:15.819] } [13:31:15.819] else { [13:31:15.819] if (TRUE) { [13:31:15.819] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.819] { [13:31:15.819] inherits <- base::inherits [13:31:15.819] invokeRestart <- base::invokeRestart [13:31:15.819] is.null <- base::is.null [13:31:15.819] muffled <- FALSE [13:31:15.819] if (inherits(cond, "message")) { [13:31:15.819] muffled <- grepl(pattern, "muffleMessage") [13:31:15.819] if (muffled) [13:31:15.819] invokeRestart("muffleMessage") [13:31:15.819] } [13:31:15.819] else if (inherits(cond, "warning")) { [13:31:15.819] muffled <- grepl(pattern, "muffleWarning") [13:31:15.819] if (muffled) [13:31:15.819] invokeRestart("muffleWarning") [13:31:15.819] } [13:31:15.819] else if (inherits(cond, "condition")) { [13:31:15.819] if (!is.null(pattern)) { [13:31:15.819] computeRestarts <- base::computeRestarts [13:31:15.819] grepl <- base::grepl [13:31:15.819] restarts <- computeRestarts(cond) [13:31:15.819] for (restart in restarts) { [13:31:15.819] name <- restart$name [13:31:15.819] if (is.null(name)) [13:31:15.819] next [13:31:15.819] if (!grepl(pattern, name)) [13:31:15.819] next [13:31:15.819] invokeRestart(restart) [13:31:15.819] muffled <- TRUE [13:31:15.819] break [13:31:15.819] } [13:31:15.819] } [13:31:15.819] } [13:31:15.819] invisible(muffled) [13:31:15.819] } [13:31:15.819] muffleCondition(cond, pattern = "^muffle") [13:31:15.819] } [13:31:15.819] } [13:31:15.819] } [13:31:15.819] })) [13:31:15.819] }, error = function(ex) { [13:31:15.819] base::structure(base::list(value = NULL, visible = NULL, [13:31:15.819] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.819] ...future.rng), started = ...future.startTime, [13:31:15.819] finished = Sys.time(), session_uuid = NA_character_, [13:31:15.819] version = "1.8"), class = "FutureResult") [13:31:15.819] }, finally = { [13:31:15.819] if (!identical(...future.workdir, getwd())) [13:31:15.819] setwd(...future.workdir) [13:31:15.819] { [13:31:15.819] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:15.819] ...future.oldOptions$nwarnings <- NULL [13:31:15.819] } [13:31:15.819] base::options(...future.oldOptions) [13:31:15.819] if (.Platform$OS.type == "windows") { [13:31:15.819] old_names <- names(...future.oldEnvVars) [13:31:15.819] envs <- base::Sys.getenv() [13:31:15.819] names <- names(envs) [13:31:15.819] common <- intersect(names, old_names) [13:31:15.819] added <- setdiff(names, old_names) [13:31:15.819] removed <- setdiff(old_names, names) [13:31:15.819] changed <- common[...future.oldEnvVars[common] != [13:31:15.819] envs[common]] [13:31:15.819] NAMES <- toupper(changed) [13:31:15.819] args <- list() [13:31:15.819] for (kk in seq_along(NAMES)) { [13:31:15.819] name <- changed[[kk]] [13:31:15.819] NAME <- NAMES[[kk]] [13:31:15.819] if (name != NAME && is.element(NAME, old_names)) [13:31:15.819] next [13:31:15.819] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.819] } [13:31:15.819] NAMES <- toupper(added) [13:31:15.819] for (kk in seq_along(NAMES)) { [13:31:15.819] name <- added[[kk]] [13:31:15.819] NAME <- NAMES[[kk]] [13:31:15.819] if (name != NAME && is.element(NAME, old_names)) [13:31:15.819] next [13:31:15.819] args[[name]] <- "" [13:31:15.819] } [13:31:15.819] NAMES <- toupper(removed) [13:31:15.819] for (kk in seq_along(NAMES)) { [13:31:15.819] name <- removed[[kk]] [13:31:15.819] NAME <- NAMES[[kk]] [13:31:15.819] if (name != NAME && is.element(NAME, old_names)) [13:31:15.819] next [13:31:15.819] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.819] } [13:31:15.819] if (length(args) > 0) [13:31:15.819] base::do.call(base::Sys.setenv, args = args) [13:31:15.819] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:15.819] } [13:31:15.819] else { [13:31:15.819] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:15.819] } [13:31:15.819] { [13:31:15.819] if (base::length(...future.futureOptionsAdded) > [13:31:15.819] 0L) { [13:31:15.819] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:15.819] base::names(opts) <- ...future.futureOptionsAdded [13:31:15.819] base::options(opts) [13:31:15.819] } [13:31:15.819] { [13:31:15.819] NULL [13:31:15.819] options(future.plan = NULL) [13:31:15.819] if (is.na(NA_character_)) [13:31:15.819] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.819] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:15.819] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:15.819] .init = FALSE) [13:31:15.819] } [13:31:15.819] } [13:31:15.819] } [13:31:15.819] }) [13:31:15.819] if (TRUE) { [13:31:15.819] base::sink(type = "output", split = FALSE) [13:31:15.819] if (TRUE) { [13:31:15.819] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:15.819] } [13:31:15.819] else { [13:31:15.819] ...future.result["stdout"] <- base::list(NULL) [13:31:15.819] } [13:31:15.819] base::close(...future.stdout) [13:31:15.819] ...future.stdout <- NULL [13:31:15.819] } [13:31:15.819] ...future.result$conditions <- ...future.conditions [13:31:15.819] ...future.result$finished <- base::Sys.time() [13:31:15.819] ...future.result [13:31:15.819] } [13:31:15.823] - Resolving 3 mirai_multisession futures[13:31:15.823] signalConditions() ... [13:31:15.824] - include = 'immediateCondition' [13:31:15.826] - exclude = [13:31:15.826] - resignal = FALSE [13:31:15.826] - Number of conditions: 1 [13:31:15.826] signalConditions() ... done [13:31:15.826] Future state: 'finished' [13:31:15.827] signalConditions() ... [13:31:15.827] - include = 'condition' [13:31:15.827] - exclude = 'immediateCondition' [13:31:15.827] - resignal = TRUE [13:31:15.827] - Number of conditions: 1 [13:31:15.827] - Condition #1: 'simpleError', 'error', 'condition' [13:31:15.828] signalConditions() ... done [13:31:15.828] signalConditions() ... [13:31:15.828] - include = 'immediateCondition' [13:31:15.828] - exclude = [13:31:15.828] - resignal = FALSE [13:31:15.829] - Number of conditions: 1 [13:31:15.829] signalConditions() ... done [13:31:15.829] Future state: 'finished' [13:31:15.829] signalConditions() ... [13:31:15.829] - include = 'condition' [13:31:15.829] - exclude = 'immediateCondition' [13:31:15.830] - resignal = TRUE [13:31:15.830] - Number of conditions: 1 [13:31:15.830] - Condition #1: 'simpleError', 'error', 'condition' [13:31:15.830] signalConditions() ... done [13:31:15.830] signalConditions() ... [13:31:15.831] - include = 'immediateCondition' [13:31:15.831] - exclude = [13:31:15.831] - resignal = FALSE [13:31:15.831] - Number of conditions: 1 [13:31:15.831] signalConditions() ... done [13:31:15.832] Future state: 'finished' [13:31:15.832] signalConditions() ... [13:31:15.832] - include = 'condition' [13:31:15.832] - exclude = 'immediateCondition' [13:31:15.832] - resignal = TRUE [13:31:15.832] - Number of conditions: 1 [13:31:15.833] - Condition #1: 'simpleError', 'error', 'condition' [13:31:15.833] signalConditions() ... done [13:31:15.833] *** mirai_multisession(..., globals = FALSE) and errors[13:31:15.835] getGlobalsAndPackages() ... [13:31:15.835] Not searching for globals [13:31:15.835] - globals: [0] [13:31:15.835] getGlobalsAndPackages() ... DONE [13:31:15.836] getGlobalsAndPackages() ... [13:31:15.836] [13:31:15.836] - globals: [0] [13:31:15.836] getGlobalsAndPackages() ... DONE [13:31:15.836] Packages needed by the future expression (n = 0): [13:31:15.837] Packages needed by future strategies (n = 0): [13:31:15.837] { [13:31:15.837] { [13:31:15.837] { [13:31:15.837] ...future.startTime <- base::Sys.time() [13:31:15.837] { [13:31:15.837] { [13:31:15.837] { [13:31:15.837] base::local({ [13:31:15.837] has_future <- base::requireNamespace("future", [13:31:15.837] quietly = TRUE) [13:31:15.837] if (has_future) { [13:31:15.837] ns <- base::getNamespace("future") [13:31:15.837] version <- ns[[".package"]][["version"]] [13:31:15.837] if (is.null(version)) [13:31:15.837] version <- utils::packageVersion("future") [13:31:15.837] } [13:31:15.837] else { [13:31:15.837] version <- NULL [13:31:15.837] } [13:31:15.837] if (!has_future || version < "1.8.0") { [13:31:15.837] info <- base::c(r_version = base::gsub("R version ", [13:31:15.837] "", base::R.version$version.string), [13:31:15.837] platform = base::sprintf("%s (%s-bit)", [13:31:15.837] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:15.837] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:15.837] "release", "version")], collapse = " "), [13:31:15.837] hostname = base::Sys.info()[["nodename"]]) [13:31:15.837] info <- base::sprintf("%s: %s", base::names(info), [13:31:15.837] info) [13:31:15.837] info <- base::paste(info, collapse = "; ") [13:31:15.837] if (!has_future) { [13:31:15.837] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:15.837] info) [13:31:15.837] } [13:31:15.837] else { [13:31:15.837] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:15.837] info, version) [13:31:15.837] } [13:31:15.837] base::stop(msg) [13:31:15.837] } [13:31:15.837] }) [13:31:15.837] } [13:31:15.837] ...future.strategy.old <- future::plan("list") [13:31:15.837] options(future.plan = NULL) [13:31:15.837] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.837] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:15.837] } [13:31:15.837] ...future.workdir <- getwd() [13:31:15.837] } [13:31:15.837] ...future.oldOptions <- base::as.list(base::.Options) [13:31:15.837] ...future.oldEnvVars <- base::Sys.getenv() [13:31:15.837] } [13:31:15.837] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:15.837] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:15.837] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:15.837] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:15.837] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:15.837] future.stdout.windows.reencode = NULL, width = 80L) [13:31:15.837] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:15.837] base::names(...future.oldOptions)) [13:31:15.837] } [13:31:15.837] if (FALSE) { [13:31:15.837] } [13:31:15.837] else { [13:31:15.837] if (TRUE) { [13:31:15.837] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:15.837] open = "w") [13:31:15.837] } [13:31:15.837] else { [13:31:15.837] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:15.837] windows = "NUL", "/dev/null"), open = "w") [13:31:15.837] } [13:31:15.837] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:15.837] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:15.837] base::sink(type = "output", split = FALSE) [13:31:15.837] base::close(...future.stdout) [13:31:15.837] }, add = TRUE) [13:31:15.837] } [13:31:15.837] ...future.frame <- base::sys.nframe() [13:31:15.837] ...future.conditions <- base::list() [13:31:15.837] ...future.rng <- base::globalenv()$.Random.seed [13:31:15.837] if (FALSE) { [13:31:15.837] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:15.837] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:15.837] } [13:31:15.837] ...future.result <- base::tryCatch({ [13:31:15.837] base::withCallingHandlers({ [13:31:15.837] ...future.value <- base::withVisible(base::local({ [13:31:15.837] stop("Whoops!") [13:31:15.837] 1 [13:31:15.837] })) [13:31:15.837] future::FutureResult(value = ...future.value$value, [13:31:15.837] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.837] ...future.rng), globalenv = if (FALSE) [13:31:15.837] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:15.837] ...future.globalenv.names)) [13:31:15.837] else NULL, started = ...future.startTime, version = "1.8") [13:31:15.837] }, condition = base::local({ [13:31:15.837] c <- base::c [13:31:15.837] inherits <- base::inherits [13:31:15.837] invokeRestart <- base::invokeRestart [13:31:15.837] length <- base::length [13:31:15.837] list <- base::list [13:31:15.837] seq.int <- base::seq.int [13:31:15.837] signalCondition <- base::signalCondition [13:31:15.837] sys.calls <- base::sys.calls [13:31:15.837] `[[` <- base::`[[` [13:31:15.837] `+` <- base::`+` [13:31:15.837] `<<-` <- base::`<<-` [13:31:15.837] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:15.837] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:15.837] 3L)] [13:31:15.837] } [13:31:15.837] function(cond) { [13:31:15.837] is_error <- inherits(cond, "error") [13:31:15.837] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:15.837] NULL) [13:31:15.837] if (is_error) { [13:31:15.837] sessionInformation <- function() { [13:31:15.837] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:15.837] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:15.837] search = base::search(), system = base::Sys.info()) [13:31:15.837] } [13:31:15.837] ...future.conditions[[length(...future.conditions) + [13:31:15.837] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:15.837] cond$call), session = sessionInformation(), [13:31:15.837] timestamp = base::Sys.time(), signaled = 0L) [13:31:15.837] signalCondition(cond) [13:31:15.837] } [13:31:15.837] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:15.837] signal <- FALSE && inherits(cond, character(0)) [13:31:15.837] ...future.conditions[[length(...future.conditions) + [13:31:15.837] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:15.837] if (FALSE && !signal) { [13:31:15.837] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.837] { [13:31:15.837] inherits <- base::inherits [13:31:15.837] invokeRestart <- base::invokeRestart [13:31:15.837] is.null <- base::is.null [13:31:15.837] muffled <- FALSE [13:31:15.837] if (inherits(cond, "message")) { [13:31:15.837] muffled <- grepl(pattern, "muffleMessage") [13:31:15.837] if (muffled) [13:31:15.837] invokeRestart("muffleMessage") [13:31:15.837] } [13:31:15.837] else if (inherits(cond, "warning")) { [13:31:15.837] muffled <- grepl(pattern, "muffleWarning") [13:31:15.837] if (muffled) [13:31:15.837] invokeRestart("muffleWarning") [13:31:15.837] } [13:31:15.837] else if (inherits(cond, "condition")) { [13:31:15.837] if (!is.null(pattern)) { [13:31:15.837] computeRestarts <- base::computeRestarts [13:31:15.837] grepl <- base::grepl [13:31:15.837] restarts <- computeRestarts(cond) [13:31:15.837] for (restart in restarts) { [13:31:15.837] name <- restart$name [13:31:15.837] if (is.null(name)) [13:31:15.837] next [13:31:15.837] if (!grepl(pattern, name)) [13:31:15.837] next [13:31:15.837] invokeRestart(restart) [13:31:15.837] muffled <- TRUE [13:31:15.837] break [13:31:15.837] } [13:31:15.837] } [13:31:15.837] } [13:31:15.837] invisible(muffled) [13:31:15.837] } [13:31:15.837] muffleCondition(cond, pattern = "^muffle") [13:31:15.837] } [13:31:15.837] } [13:31:15.837] else { [13:31:15.837] if (TRUE) { [13:31:15.837] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.837] { [13:31:15.837] inherits <- base::inherits [13:31:15.837] invokeRestart <- base::invokeRestart [13:31:15.837] is.null <- base::is.null [13:31:15.837] muffled <- FALSE [13:31:15.837] if (inherits(cond, "message")) { [13:31:15.837] muffled <- grepl(pattern, "muffleMessage") [13:31:15.837] if (muffled) [13:31:15.837] invokeRestart("muffleMessage") [13:31:15.837] } [13:31:15.837] else if (inherits(cond, "warning")) { [13:31:15.837] muffled <- grepl(pattern, "muffleWarning") [13:31:15.837] if (muffled) [13:31:15.837] invokeRestart("muffleWarning") [13:31:15.837] } [13:31:15.837] else if (inherits(cond, "condition")) { [13:31:15.837] if (!is.null(pattern)) { [13:31:15.837] computeRestarts <- base::computeRestarts [13:31:15.837] grepl <- base::grepl [13:31:15.837] restarts <- computeRestarts(cond) [13:31:15.837] for (restart in restarts) { [13:31:15.837] name <- restart$name [13:31:15.837] if (is.null(name)) [13:31:15.837] next [13:31:15.837] if (!grepl(pattern, name)) [13:31:15.837] next [13:31:15.837] invokeRestart(restart) [13:31:15.837] muffled <- TRUE [13:31:15.837] break [13:31:15.837] } [13:31:15.837] } [13:31:15.837] } [13:31:15.837] invisible(muffled) [13:31:15.837] } [13:31:15.837] muffleCondition(cond, pattern = "^muffle") [13:31:15.837] } [13:31:15.837] } [13:31:15.837] } [13:31:15.837] })) [13:31:15.837] }, error = function(ex) { [13:31:15.837] base::structure(base::list(value = NULL, visible = NULL, [13:31:15.837] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.837] ...future.rng), started = ...future.startTime, [13:31:15.837] finished = Sys.time(), session_uuid = NA_character_, [13:31:15.837] version = "1.8"), class = "FutureResult") [13:31:15.837] }, finally = { [13:31:15.837] if (!identical(...future.workdir, getwd())) [13:31:15.837] setwd(...future.workdir) [13:31:15.837] { [13:31:15.837] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:15.837] ...future.oldOptions$nwarnings <- NULL [13:31:15.837] } [13:31:15.837] base::options(...future.oldOptions) [13:31:15.837] if (.Platform$OS.type == "windows") { [13:31:15.837] old_names <- names(...future.oldEnvVars) [13:31:15.837] envs <- base::Sys.getenv() [13:31:15.837] names <- names(envs) [13:31:15.837] common <- intersect(names, old_names) [13:31:15.837] added <- setdiff(names, old_names) [13:31:15.837] removed <- setdiff(old_names, names) [13:31:15.837] changed <- common[...future.oldEnvVars[common] != [13:31:15.837] envs[common]] [13:31:15.837] NAMES <- toupper(changed) [13:31:15.837] args <- list() [13:31:15.837] for (kk in seq_along(NAMES)) { [13:31:15.837] name <- changed[[kk]] [13:31:15.837] NAME <- NAMES[[kk]] [13:31:15.837] if (name != NAME && is.element(NAME, old_names)) [13:31:15.837] next [13:31:15.837] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.837] } [13:31:15.837] NAMES <- toupper(added) [13:31:15.837] for (kk in seq_along(NAMES)) { [13:31:15.837] name <- added[[kk]] [13:31:15.837] NAME <- NAMES[[kk]] [13:31:15.837] if (name != NAME && is.element(NAME, old_names)) [13:31:15.837] next [13:31:15.837] args[[name]] <- "" [13:31:15.837] } [13:31:15.837] NAMES <- toupper(removed) [13:31:15.837] for (kk in seq_along(NAMES)) { [13:31:15.837] name <- removed[[kk]] [13:31:15.837] NAME <- NAMES[[kk]] [13:31:15.837] if (name != NAME && is.element(NAME, old_names)) [13:31:15.837] next [13:31:15.837] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.837] } [13:31:15.837] if (length(args) > 0) [13:31:15.837] base::do.call(base::Sys.setenv, args = args) [13:31:15.837] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:15.837] } [13:31:15.837] else { [13:31:15.837] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:15.837] } [13:31:15.837] { [13:31:15.837] if (base::length(...future.futureOptionsAdded) > [13:31:15.837] 0L) { [13:31:15.837] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:15.837] base::names(opts) <- ...future.futureOptionsAdded [13:31:15.837] base::options(opts) [13:31:15.837] } [13:31:15.837] { [13:31:15.837] NULL [13:31:15.837] options(future.plan = NULL) [13:31:15.837] if (is.na(NA_character_)) [13:31:15.837] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.837] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:15.837] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:15.837] .init = FALSE) [13:31:15.837] } [13:31:15.837] } [13:31:15.837] } [13:31:15.837] }) [13:31:15.837] if (TRUE) { [13:31:15.837] base::sink(type = "output", split = FALSE) [13:31:15.837] if (TRUE) { [13:31:15.837] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:15.837] } [13:31:15.837] else { [13:31:15.837] ...future.result["stdout"] <- base::list(NULL) [13:31:15.837] } [13:31:15.837] base::close(...future.stdout) [13:31:15.837] ...future.stdout <- NULL [13:31:15.837] } [13:31:15.837] ...future.result$conditions <- ...future.conditions [13:31:15.837] ...future.result$finished <- base::Sys.time() [13:31:15.837] ...future.result [13:31:15.837] } 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:15.841] resolved() for 'MiraiFuture' ... [13:31:15.842] - state: 'running' [13:31:15.842] - run: TRUE [13:31:15.842] - result: 'NULL' [13:31:15.842] - resolved: FALSE [13:31:15.842] resolved() for 'MiraiFuture' ... done Resolved: FALSE Value: Conditions captured: Early signaling: FALSE Owner process: b6aff70f-dcb2-5b98-b1ed-deeb3a52e0c0 Class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:31:15.843] signalConditions() ... [13:31:15.843] - include = 'immediateCondition' [13:31:15.843] - exclude = [13:31:15.844] - resignal = FALSE [13:31:15.844] - Number of conditions: 1 [13:31:15.844] signalConditions() ... done [13:31:15.844] signalConditions() ... [13:31:15.844] - include = 'immediateCondition' [13:31:15.845] - exclude = [13:31:15.845] - resignal = FALSE [13:31:15.845] - Number of conditions: 1 [13:31:15.845] signalConditions() ... done [13:31:15.845] Future state: 'finished' [13:31:15.845] signalConditions() ... [13:31:15.846] - include = 'condition' [13:31:15.846] - exclude = 'immediateCondition' [13:31:15.846] - resignal = TRUE [13:31:15.846] - Number of conditions: 1 [13:31:15.846] - Condition #1: 'simpleError', 'error', 'condition' [13:31:15.846] signalConditions() ... done [13:31:15.847] signalConditions() ... [13:31:15.847] - include = 'immediateCondition' [13:31:15.847] - exclude = [13:31:15.847] - resignal = FALSE [13:31:15.847] - Number of conditions: 1 [13:31:15.848] signalConditions() ... done [13:31:15.848] Future state: 'finished' [13:31:15.848] signalConditions() ... [13:31:15.848] - include = 'condition' [13:31:15.848] - exclude = 'immediateCondition' [13:31:15.849] - resignal = TRUE [13:31:15.849] - Number of conditions: 1 [13:31:15.849] - Condition #1: 'simpleError', 'error', 'condition' [13:31:15.849] signalConditions() ... done [13:31:15.849] *** mirai_multisession(..., globals = TRUE) without globals[13:31:15.851] getGlobalsAndPackages() ... [13:31:15.852] Searching for globals... [13:31:15.855] - globals found: [1] '{' [13:31:15.855] Searching for globals ... DONE [13:31:15.855] Resolving globals: FALSE [13:31:15.856] [13:31:15.856] [13:31:15.856] getGlobalsAndPackages() ... DONE [13:31:15.856] getGlobalsAndPackages() ... [13:31:15.857] [13:31:15.857] - globals: [0] [13:31:15.857] getGlobalsAndPackages() ... DONE [13:31:15.857] Packages needed by the future expression (n = 0): [13:31:15.857] Packages needed by future strategies (n = 0): [13:31:15.858] { [13:31:15.858] { [13:31:15.858] { [13:31:15.858] ...future.startTime <- base::Sys.time() [13:31:15.858] { [13:31:15.858] { [13:31:15.858] { [13:31:15.858] base::local({ [13:31:15.858] has_future <- base::requireNamespace("future", [13:31:15.858] quietly = TRUE) [13:31:15.858] if (has_future) { [13:31:15.858] ns <- base::getNamespace("future") [13:31:15.858] version <- ns[[".package"]][["version"]] [13:31:15.858] if (is.null(version)) [13:31:15.858] version <- utils::packageVersion("future") [13:31:15.858] } [13:31:15.858] else { [13:31:15.858] version <- NULL [13:31:15.858] } [13:31:15.858] if (!has_future || version < "1.8.0") { [13:31:15.858] info <- base::c(r_version = base::gsub("R version ", [13:31:15.858] "", base::R.version$version.string), [13:31:15.858] platform = base::sprintf("%s (%s-bit)", [13:31:15.858] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:15.858] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:15.858] "release", "version")], collapse = " "), [13:31:15.858] hostname = base::Sys.info()[["nodename"]]) [13:31:15.858] info <- base::sprintf("%s: %s", base::names(info), [13:31:15.858] info) [13:31:15.858] info <- base::paste(info, collapse = "; ") [13:31:15.858] if (!has_future) { [13:31:15.858] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:15.858] info) [13:31:15.858] } [13:31:15.858] else { [13:31:15.858] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:15.858] info, version) [13:31:15.858] } [13:31:15.858] base::stop(msg) [13:31:15.858] } [13:31:15.858] }) [13:31:15.858] } [13:31:15.858] ...future.strategy.old <- future::plan("list") [13:31:15.858] options(future.plan = NULL) [13:31:15.858] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.858] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:15.858] } [13:31:15.858] ...future.workdir <- getwd() [13:31:15.858] } [13:31:15.858] ...future.oldOptions <- base::as.list(base::.Options) [13:31:15.858] ...future.oldEnvVars <- base::Sys.getenv() [13:31:15.858] } [13:31:15.858] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:15.858] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:15.858] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:15.858] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:15.858] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:15.858] future.stdout.windows.reencode = NULL, width = 80L) [13:31:15.858] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:15.858] base::names(...future.oldOptions)) [13:31:15.858] } [13:31:15.858] if (FALSE) { [13:31:15.858] } [13:31:15.858] else { [13:31:15.858] if (TRUE) { [13:31:15.858] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:15.858] open = "w") [13:31:15.858] } [13:31:15.858] else { [13:31:15.858] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:15.858] windows = "NUL", "/dev/null"), open = "w") [13:31:15.858] } [13:31:15.858] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:15.858] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:15.858] base::sink(type = "output", split = FALSE) [13:31:15.858] base::close(...future.stdout) [13:31:15.858] }, add = TRUE) [13:31:15.858] } [13:31:15.858] ...future.frame <- base::sys.nframe() [13:31:15.858] ...future.conditions <- base::list() [13:31:15.858] ...future.rng <- base::globalenv()$.Random.seed [13:31:15.858] if (FALSE) { [13:31:15.858] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:15.858] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:15.858] } [13:31:15.858] ...future.result <- base::tryCatch({ [13:31:15.858] base::withCallingHandlers({ [13:31:15.858] ...future.value <- base::withVisible(base::local({ [13:31:15.858] 42L [13:31:15.858] })) [13:31:15.858] future::FutureResult(value = ...future.value$value, [13:31:15.858] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.858] ...future.rng), globalenv = if (FALSE) [13:31:15.858] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:15.858] ...future.globalenv.names)) [13:31:15.858] else NULL, started = ...future.startTime, version = "1.8") [13:31:15.858] }, condition = base::local({ [13:31:15.858] c <- base::c [13:31:15.858] inherits <- base::inherits [13:31:15.858] invokeRestart <- base::invokeRestart [13:31:15.858] length <- base::length [13:31:15.858] list <- base::list [13:31:15.858] seq.int <- base::seq.int [13:31:15.858] signalCondition <- base::signalCondition [13:31:15.858] sys.calls <- base::sys.calls [13:31:15.858] `[[` <- base::`[[` [13:31:15.858] `+` <- base::`+` [13:31:15.858] `<<-` <- base::`<<-` [13:31:15.858] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:15.858] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:15.858] 3L)] [13:31:15.858] } [13:31:15.858] function(cond) { [13:31:15.858] is_error <- inherits(cond, "error") [13:31:15.858] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:15.858] NULL) [13:31:15.858] if (is_error) { [13:31:15.858] sessionInformation <- function() { [13:31:15.858] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:15.858] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:15.858] search = base::search(), system = base::Sys.info()) [13:31:15.858] } [13:31:15.858] ...future.conditions[[length(...future.conditions) + [13:31:15.858] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:15.858] cond$call), session = sessionInformation(), [13:31:15.858] timestamp = base::Sys.time(), signaled = 0L) [13:31:15.858] signalCondition(cond) [13:31:15.858] } [13:31:15.858] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:15.858] signal <- FALSE && inherits(cond, character(0)) [13:31:15.858] ...future.conditions[[length(...future.conditions) + [13:31:15.858] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:15.858] if (FALSE && !signal) { [13:31:15.858] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.858] { [13:31:15.858] inherits <- base::inherits [13:31:15.858] invokeRestart <- base::invokeRestart [13:31:15.858] is.null <- base::is.null [13:31:15.858] muffled <- FALSE [13:31:15.858] if (inherits(cond, "message")) { [13:31:15.858] muffled <- grepl(pattern, "muffleMessage") [13:31:15.858] if (muffled) [13:31:15.858] invokeRestart("muffleMessage") [13:31:15.858] } [13:31:15.858] else if (inherits(cond, "warning")) { [13:31:15.858] muffled <- grepl(pattern, "muffleWarning") [13:31:15.858] if (muffled) [13:31:15.858] invokeRestart("muffleWarning") [13:31:15.858] } [13:31:15.858] else if (inherits(cond, "condition")) { [13:31:15.858] if (!is.null(pattern)) { [13:31:15.858] computeRestarts <- base::computeRestarts [13:31:15.858] grepl <- base::grepl [13:31:15.858] restarts <- computeRestarts(cond) [13:31:15.858] for (restart in restarts) { [13:31:15.858] name <- restart$name [13:31:15.858] if (is.null(name)) [13:31:15.858] next [13:31:15.858] if (!grepl(pattern, name)) [13:31:15.858] next [13:31:15.858] invokeRestart(restart) [13:31:15.858] muffled <- TRUE [13:31:15.858] break [13:31:15.858] } [13:31:15.858] } [13:31:15.858] } [13:31:15.858] invisible(muffled) [13:31:15.858] } [13:31:15.858] muffleCondition(cond, pattern = "^muffle") [13:31:15.858] } [13:31:15.858] } [13:31:15.858] else { [13:31:15.858] if (TRUE) { [13:31:15.858] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.858] { [13:31:15.858] inherits <- base::inherits [13:31:15.858] invokeRestart <- base::invokeRestart [13:31:15.858] is.null <- base::is.null [13:31:15.858] muffled <- FALSE [13:31:15.858] if (inherits(cond, "message")) { [13:31:15.858] muffled <- grepl(pattern, "muffleMessage") [13:31:15.858] if (muffled) [13:31:15.858] invokeRestart("muffleMessage") [13:31:15.858] } [13:31:15.858] else if (inherits(cond, "warning")) { [13:31:15.858] muffled <- grepl(pattern, "muffleWarning") [13:31:15.858] if (muffled) [13:31:15.858] invokeRestart("muffleWarning") [13:31:15.858] } [13:31:15.858] else if (inherits(cond, "condition")) { [13:31:15.858] if (!is.null(pattern)) { [13:31:15.858] computeRestarts <- base::computeRestarts [13:31:15.858] grepl <- base::grepl [13:31:15.858] restarts <- computeRestarts(cond) [13:31:15.858] for (restart in restarts) { [13:31:15.858] name <- restart$name [13:31:15.858] if (is.null(name)) [13:31:15.858] next [13:31:15.858] if (!grepl(pattern, name)) [13:31:15.858] next [13:31:15.858] invokeRestart(restart) [13:31:15.858] muffled <- TRUE [13:31:15.858] break [13:31:15.858] } [13:31:15.858] } [13:31:15.858] } [13:31:15.858] invisible(muffled) [13:31:15.858] } [13:31:15.858] muffleCondition(cond, pattern = "^muffle") [13:31:15.858] } [13:31:15.858] } [13:31:15.858] } [13:31:15.858] })) [13:31:15.858] }, error = function(ex) { [13:31:15.858] base::structure(base::list(value = NULL, visible = NULL, [13:31:15.858] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.858] ...future.rng), started = ...future.startTime, [13:31:15.858] finished = Sys.time(), session_uuid = NA_character_, [13:31:15.858] version = "1.8"), class = "FutureResult") [13:31:15.858] }, finally = { [13:31:15.858] if (!identical(...future.workdir, getwd())) [13:31:15.858] setwd(...future.workdir) [13:31:15.858] { [13:31:15.858] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:15.858] ...future.oldOptions$nwarnings <- NULL [13:31:15.858] } [13:31:15.858] base::options(...future.oldOptions) [13:31:15.858] if (.Platform$OS.type == "windows") { [13:31:15.858] old_names <- names(...future.oldEnvVars) [13:31:15.858] envs <- base::Sys.getenv() [13:31:15.858] names <- names(envs) [13:31:15.858] common <- intersect(names, old_names) [13:31:15.858] added <- setdiff(names, old_names) [13:31:15.858] removed <- setdiff(old_names, names) [13:31:15.858] changed <- common[...future.oldEnvVars[common] != [13:31:15.858] envs[common]] [13:31:15.858] NAMES <- toupper(changed) [13:31:15.858] args <- list() [13:31:15.858] for (kk in seq_along(NAMES)) { [13:31:15.858] name <- changed[[kk]] [13:31:15.858] NAME <- NAMES[[kk]] [13:31:15.858] if (name != NAME && is.element(NAME, old_names)) [13:31:15.858] next [13:31:15.858] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.858] } [13:31:15.858] NAMES <- toupper(added) [13:31:15.858] for (kk in seq_along(NAMES)) { [13:31:15.858] name <- added[[kk]] [13:31:15.858] NAME <- NAMES[[kk]] [13:31:15.858] if (name != NAME && is.element(NAME, old_names)) [13:31:15.858] next [13:31:15.858] args[[name]] <- "" [13:31:15.858] } [13:31:15.858] NAMES <- toupper(removed) [13:31:15.858] for (kk in seq_along(NAMES)) { [13:31:15.858] name <- removed[[kk]] [13:31:15.858] NAME <- NAMES[[kk]] [13:31:15.858] if (name != NAME && is.element(NAME, old_names)) [13:31:15.858] next [13:31:15.858] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.858] } [13:31:15.858] if (length(args) > 0) [13:31:15.858] base::do.call(base::Sys.setenv, args = args) [13:31:15.858] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:15.858] } [13:31:15.858] else { [13:31:15.858] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:15.858] } [13:31:15.858] { [13:31:15.858] if (base::length(...future.futureOptionsAdded) > [13:31:15.858] 0L) { [13:31:15.858] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:15.858] base::names(opts) <- ...future.futureOptionsAdded [13:31:15.858] base::options(opts) [13:31:15.858] } [13:31:15.858] { [13:31:15.858] NULL [13:31:15.858] options(future.plan = NULL) [13:31:15.858] if (is.na(NA_character_)) [13:31:15.858] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.858] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:15.858] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:15.858] .init = FALSE) [13:31:15.858] } [13:31:15.858] } [13:31:15.858] } [13:31:15.858] }) [13:31:15.858] if (TRUE) { [13:31:15.858] base::sink(type = "output", split = FALSE) [13:31:15.858] if (TRUE) { [13:31:15.858] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:15.858] } [13:31:15.858] else { [13:31:15.858] ...future.result["stdout"] <- base::list(NULL) [13:31:15.858] } [13:31:15.858] base::close(...future.stdout) [13:31:15.858] ...future.stdout <- NULL [13:31:15.858] } [13:31:15.858] ...future.result$conditions <- ...future.conditions [13:31:15.858] ...future.result$finished <- base::Sys.time() [13:31:15.858] ...future.result [13:31:15.858] } [13:31:15.862] resolved() for 'MiraiFuture' ... [13:31:15.862] - state: 'running' [13:31:15.862] - run: TRUE [13:31:15.862] - result: 'NULL' [13:31:15.863] - resolved: FALSE [13:31:15.863] resolved() for 'MiraiFuture' ... done [1] FALSE [1] 42 [13:31:15.864] *** mirai_multisession(..., globals = TRUE) with globals[13:31:15.866] getGlobalsAndPackages() ... [13:31:15.866] Searching for globals... [13:31:15.873] - globals found: [4] '{', '<-', '*', 'a' [13:31:15.873] Searching for globals ... DONE [13:31:15.874] Resolving globals: FALSE [13:31:15.874] The total size of the 1 globals is 56 bytes (56 bytes) [13:31:15.875] 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:15.875] - globals: [1] 'a' [13:31:15.875] [13:31:15.875] getGlobalsAndPackages() ... DONE [13:31:15.876] getGlobalsAndPackages() ... [13:31:15.876] - globals passed as-is: [1] 'a' [13:31:15.876] Resolving globals: FALSE [13:31:15.876] - globals: [1] 'a' [13:31:15.877] [13:31:15.877] getGlobalsAndPackages() ... DONE [13:31:15.877] Packages needed by the future expression (n = 0): [13:31:15.877] Packages needed by future strategies (n = 0): [13:31:15.878] { [13:31:15.878] { [13:31:15.878] { [13:31:15.878] ...future.startTime <- base::Sys.time() [13:31:15.878] { [13:31:15.878] { [13:31:15.878] { [13:31:15.878] base::local({ [13:31:15.878] has_future <- base::requireNamespace("future", [13:31:15.878] quietly = TRUE) [13:31:15.878] if (has_future) { [13:31:15.878] ns <- base::getNamespace("future") [13:31:15.878] version <- ns[[".package"]][["version"]] [13:31:15.878] if (is.null(version)) [13:31:15.878] version <- utils::packageVersion("future") [13:31:15.878] } [13:31:15.878] else { [13:31:15.878] version <- NULL [13:31:15.878] } [13:31:15.878] if (!has_future || version < "1.8.0") { [13:31:15.878] info <- base::c(r_version = base::gsub("R version ", [13:31:15.878] "", base::R.version$version.string), [13:31:15.878] platform = base::sprintf("%s (%s-bit)", [13:31:15.878] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:15.878] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:15.878] "release", "version")], collapse = " "), [13:31:15.878] hostname = base::Sys.info()[["nodename"]]) [13:31:15.878] info <- base::sprintf("%s: %s", base::names(info), [13:31:15.878] info) [13:31:15.878] info <- base::paste(info, collapse = "; ") [13:31:15.878] if (!has_future) { [13:31:15.878] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:15.878] info) [13:31:15.878] } [13:31:15.878] else { [13:31:15.878] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:15.878] info, version) [13:31:15.878] } [13:31:15.878] base::stop(msg) [13:31:15.878] } [13:31:15.878] }) [13:31:15.878] } [13:31:15.878] ...future.strategy.old <- future::plan("list") [13:31:15.878] options(future.plan = NULL) [13:31:15.878] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.878] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:15.878] } [13:31:15.878] ...future.workdir <- getwd() [13:31:15.878] } [13:31:15.878] ...future.oldOptions <- base::as.list(base::.Options) [13:31:15.878] ...future.oldEnvVars <- base::Sys.getenv() [13:31:15.878] } [13:31:15.878] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:15.878] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:15.878] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:15.878] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:15.878] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:15.878] future.stdout.windows.reencode = NULL, width = 80L) [13:31:15.878] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:15.878] base::names(...future.oldOptions)) [13:31:15.878] } [13:31:15.878] if (FALSE) { [13:31:15.878] } [13:31:15.878] else { [13:31:15.878] if (TRUE) { [13:31:15.878] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:15.878] open = "w") [13:31:15.878] } [13:31:15.878] else { [13:31:15.878] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:15.878] windows = "NUL", "/dev/null"), open = "w") [13:31:15.878] } [13:31:15.878] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:15.878] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:15.878] base::sink(type = "output", split = FALSE) [13:31:15.878] base::close(...future.stdout) [13:31:15.878] }, add = TRUE) [13:31:15.878] } [13:31:15.878] ...future.frame <- base::sys.nframe() [13:31:15.878] ...future.conditions <- base::list() [13:31:15.878] ...future.rng <- base::globalenv()$.Random.seed [13:31:15.878] if (FALSE) { [13:31:15.878] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:15.878] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:15.878] } [13:31:15.878] ...future.result <- base::tryCatch({ [13:31:15.878] base::withCallingHandlers({ [13:31:15.878] ...future.value <- base::withVisible(base::local({ [13:31:15.878] b <- 3 [13:31:15.878] c <- 2 [13:31:15.878] a * b * c [13:31:15.878] })) [13:31:15.878] future::FutureResult(value = ...future.value$value, [13:31:15.878] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.878] ...future.rng), globalenv = if (FALSE) [13:31:15.878] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:15.878] ...future.globalenv.names)) [13:31:15.878] else NULL, started = ...future.startTime, version = "1.8") [13:31:15.878] }, condition = base::local({ [13:31:15.878] c <- base::c [13:31:15.878] inherits <- base::inherits [13:31:15.878] invokeRestart <- base::invokeRestart [13:31:15.878] length <- base::length [13:31:15.878] list <- base::list [13:31:15.878] seq.int <- base::seq.int [13:31:15.878] signalCondition <- base::signalCondition [13:31:15.878] sys.calls <- base::sys.calls [13:31:15.878] `[[` <- base::`[[` [13:31:15.878] `+` <- base::`+` [13:31:15.878] `<<-` <- base::`<<-` [13:31:15.878] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:15.878] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:15.878] 3L)] [13:31:15.878] } [13:31:15.878] function(cond) { [13:31:15.878] is_error <- inherits(cond, "error") [13:31:15.878] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:15.878] NULL) [13:31:15.878] if (is_error) { [13:31:15.878] sessionInformation <- function() { [13:31:15.878] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:15.878] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:15.878] search = base::search(), system = base::Sys.info()) [13:31:15.878] } [13:31:15.878] ...future.conditions[[length(...future.conditions) + [13:31:15.878] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:15.878] cond$call), session = sessionInformation(), [13:31:15.878] timestamp = base::Sys.time(), signaled = 0L) [13:31:15.878] signalCondition(cond) [13:31:15.878] } [13:31:15.878] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:15.878] signal <- FALSE && inherits(cond, character(0)) [13:31:15.878] ...future.conditions[[length(...future.conditions) + [13:31:15.878] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:15.878] if (FALSE && !signal) { [13:31:15.878] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.878] { [13:31:15.878] inherits <- base::inherits [13:31:15.878] invokeRestart <- base::invokeRestart [13:31:15.878] is.null <- base::is.null [13:31:15.878] muffled <- FALSE [13:31:15.878] if (inherits(cond, "message")) { [13:31:15.878] muffled <- grepl(pattern, "muffleMessage") [13:31:15.878] if (muffled) [13:31:15.878] invokeRestart("muffleMessage") [13:31:15.878] } [13:31:15.878] else if (inherits(cond, "warning")) { [13:31:15.878] muffled <- grepl(pattern, "muffleWarning") [13:31:15.878] if (muffled) [13:31:15.878] invokeRestart("muffleWarning") [13:31:15.878] } [13:31:15.878] else if (inherits(cond, "condition")) { [13:31:15.878] if (!is.null(pattern)) { [13:31:15.878] computeRestarts <- base::computeRestarts [13:31:15.878] grepl <- base::grepl [13:31:15.878] restarts <- computeRestarts(cond) [13:31:15.878] for (restart in restarts) { [13:31:15.878] name <- restart$name [13:31:15.878] if (is.null(name)) [13:31:15.878] next [13:31:15.878] if (!grepl(pattern, name)) [13:31:15.878] next [13:31:15.878] invokeRestart(restart) [13:31:15.878] muffled <- TRUE [13:31:15.878] break [13:31:15.878] } [13:31:15.878] } [13:31:15.878] } [13:31:15.878] invisible(muffled) [13:31:15.878] } [13:31:15.878] muffleCondition(cond, pattern = "^muffle") [13:31:15.878] } [13:31:15.878] } [13:31:15.878] else { [13:31:15.878] if (TRUE) { [13:31:15.878] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.878] { [13:31:15.878] inherits <- base::inherits [13:31:15.878] invokeRestart <- base::invokeRestart [13:31:15.878] is.null <- base::is.null [13:31:15.878] muffled <- FALSE [13:31:15.878] if (inherits(cond, "message")) { [13:31:15.878] muffled <- grepl(pattern, "muffleMessage") [13:31:15.878] if (muffled) [13:31:15.878] invokeRestart("muffleMessage") [13:31:15.878] } [13:31:15.878] else if (inherits(cond, "warning")) { [13:31:15.878] muffled <- grepl(pattern, "muffleWarning") [13:31:15.878] if (muffled) [13:31:15.878] invokeRestart("muffleWarning") [13:31:15.878] } [13:31:15.878] else if (inherits(cond, "condition")) { [13:31:15.878] if (!is.null(pattern)) { [13:31:15.878] computeRestarts <- base::computeRestarts [13:31:15.878] grepl <- base::grepl [13:31:15.878] restarts <- computeRestarts(cond) [13:31:15.878] for (restart in restarts) { [13:31:15.878] name <- restart$name [13:31:15.878] if (is.null(name)) [13:31:15.878] next [13:31:15.878] if (!grepl(pattern, name)) [13:31:15.878] next [13:31:15.878] invokeRestart(restart) [13:31:15.878] muffled <- TRUE [13:31:15.878] break [13:31:15.878] } [13:31:15.878] } [13:31:15.878] } [13:31:15.878] invisible(muffled) [13:31:15.878] } [13:31:15.878] muffleCondition(cond, pattern = "^muffle") [13:31:15.878] } [13:31:15.878] } [13:31:15.878] } [13:31:15.878] })) [13:31:15.878] }, error = function(ex) { [13:31:15.878] base::structure(base::list(value = NULL, visible = NULL, [13:31:15.878] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.878] ...future.rng), started = ...future.startTime, [13:31:15.878] finished = Sys.time(), session_uuid = NA_character_, [13:31:15.878] version = "1.8"), class = "FutureResult") [13:31:15.878] }, finally = { [13:31:15.878] if (!identical(...future.workdir, getwd())) [13:31:15.878] setwd(...future.workdir) [13:31:15.878] { [13:31:15.878] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:15.878] ...future.oldOptions$nwarnings <- NULL [13:31:15.878] } [13:31:15.878] base::options(...future.oldOptions) [13:31:15.878] if (.Platform$OS.type == "windows") { [13:31:15.878] old_names <- names(...future.oldEnvVars) [13:31:15.878] envs <- base::Sys.getenv() [13:31:15.878] names <- names(envs) [13:31:15.878] common <- intersect(names, old_names) [13:31:15.878] added <- setdiff(names, old_names) [13:31:15.878] removed <- setdiff(old_names, names) [13:31:15.878] changed <- common[...future.oldEnvVars[common] != [13:31:15.878] envs[common]] [13:31:15.878] NAMES <- toupper(changed) [13:31:15.878] args <- list() [13:31:15.878] for (kk in seq_along(NAMES)) { [13:31:15.878] name <- changed[[kk]] [13:31:15.878] NAME <- NAMES[[kk]] [13:31:15.878] if (name != NAME && is.element(NAME, old_names)) [13:31:15.878] next [13:31:15.878] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.878] } [13:31:15.878] NAMES <- toupper(added) [13:31:15.878] for (kk in seq_along(NAMES)) { [13:31:15.878] name <- added[[kk]] [13:31:15.878] NAME <- NAMES[[kk]] [13:31:15.878] if (name != NAME && is.element(NAME, old_names)) [13:31:15.878] next [13:31:15.878] args[[name]] <- "" [13:31:15.878] } [13:31:15.878] NAMES <- toupper(removed) [13:31:15.878] for (kk in seq_along(NAMES)) { [13:31:15.878] name <- removed[[kk]] [13:31:15.878] NAME <- NAMES[[kk]] [13:31:15.878] if (name != NAME && is.element(NAME, old_names)) [13:31:15.878] next [13:31:15.878] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.878] } [13:31:15.878] if (length(args) > 0) [13:31:15.878] base::do.call(base::Sys.setenv, args = args) [13:31:15.878] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:15.878] } [13:31:15.878] else { [13:31:15.878] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:15.878] } [13:31:15.878] { [13:31:15.878] if (base::length(...future.futureOptionsAdded) > [13:31:15.878] 0L) { [13:31:15.878] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:15.878] base::names(opts) <- ...future.futureOptionsAdded [13:31:15.878] base::options(opts) [13:31:15.878] } [13:31:15.878] { [13:31:15.878] NULL [13:31:15.878] options(future.plan = NULL) [13:31:15.878] if (is.na(NA_character_)) [13:31:15.878] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.878] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:15.878] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:15.878] .init = FALSE) [13:31:15.878] } [13:31:15.878] } [13:31:15.878] } [13:31:15.878] }) [13:31:15.878] if (TRUE) { [13:31:15.878] base::sink(type = "output", split = FALSE) [13:31:15.878] if (TRUE) { [13:31:15.878] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:15.878] } [13:31:15.878] else { [13:31:15.878] ...future.result["stdout"] <- base::list(NULL) [13:31:15.878] } [13:31:15.878] base::close(...future.stdout) [13:31:15.878] ...future.stdout <- NULL [13:31:15.878] } [13:31:15.878] ...future.result$conditions <- ...future.conditions [13:31:15.878] ...future.result$finished <- base::Sys.time() [13:31:15.878] ...future.result [13:31:15.878] } 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:15.882] resolved() for 'MiraiFuture' ... [13:31:15.882] - state: 'running' [13:31:15.883] - run: TRUE [13:31:15.883] - result: 'NULL' [13:31:15.883] - resolved: FALSE [13:31:15.883] resolved() for 'MiraiFuture' ... done Resolved: TRUE Value: Conditions captured: Early signaling: FALSE Owner process: b6aff70f-dcb2-5b98-b1ed-deeb3a52e0c0 Class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [1] 0 [13:31:15.884] *** mirai_multisession(..., globals = TRUE) with globals and blocking[13:31:15.884] - Creating mirai_multisession future #1 ...[13:31:15.886] getGlobalsAndPackages() ... [13:31:15.886] Searching for globals... [13:31:15.887] - globals found: [2] '{', 'ii' [13:31:15.887] Searching for globals ... DONE [13:31:15.887] Resolving globals: FALSE [13:31:15.888] The total size of the 1 globals is 56 bytes (56 bytes) [13:31:15.888] 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:15.888] - globals: [1] 'ii' [13:31:15.888] [13:31:15.888] getGlobalsAndPackages() ... DONE [13:31:15.889] getGlobalsAndPackages() ... [13:31:15.889] - globals passed as-is: [1] 'ii' [13:31:15.889] Resolving globals: FALSE [13:31:15.889] - globals: [1] 'ii' [13:31:15.889] [13:31:15.890] getGlobalsAndPackages() ... DONE [13:31:15.890] Packages needed by the future expression (n = 0): [13:31:15.890] Packages needed by future strategies (n = 0): [13:31:15.891] { [13:31:15.891] { [13:31:15.891] { [13:31:15.891] ...future.startTime <- base::Sys.time() [13:31:15.891] { [13:31:15.891] { [13:31:15.891] { [13:31:15.891] base::local({ [13:31:15.891] has_future <- base::requireNamespace("future", [13:31:15.891] quietly = TRUE) [13:31:15.891] if (has_future) { [13:31:15.891] ns <- base::getNamespace("future") [13:31:15.891] version <- ns[[".package"]][["version"]] [13:31:15.891] if (is.null(version)) [13:31:15.891] version <- utils::packageVersion("future") [13:31:15.891] } [13:31:15.891] else { [13:31:15.891] version <- NULL [13:31:15.891] } [13:31:15.891] if (!has_future || version < "1.8.0") { [13:31:15.891] info <- base::c(r_version = base::gsub("R version ", [13:31:15.891] "", base::R.version$version.string), [13:31:15.891] platform = base::sprintf("%s (%s-bit)", [13:31:15.891] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:15.891] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:15.891] "release", "version")], collapse = " "), [13:31:15.891] hostname = base::Sys.info()[["nodename"]]) [13:31:15.891] info <- base::sprintf("%s: %s", base::names(info), [13:31:15.891] info) [13:31:15.891] info <- base::paste(info, collapse = "; ") [13:31:15.891] if (!has_future) { [13:31:15.891] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:15.891] info) [13:31:15.891] } [13:31:15.891] else { [13:31:15.891] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:15.891] info, version) [13:31:15.891] } [13:31:15.891] base::stop(msg) [13:31:15.891] } [13:31:15.891] }) [13:31:15.891] } [13:31:15.891] ...future.strategy.old <- future::plan("list") [13:31:15.891] options(future.plan = NULL) [13:31:15.891] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.891] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:15.891] } [13:31:15.891] ...future.workdir <- getwd() [13:31:15.891] } [13:31:15.891] ...future.oldOptions <- base::as.list(base::.Options) [13:31:15.891] ...future.oldEnvVars <- base::Sys.getenv() [13:31:15.891] } [13:31:15.891] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:15.891] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:15.891] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:15.891] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:15.891] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:15.891] future.stdout.windows.reencode = NULL, width = 80L) [13:31:15.891] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:15.891] base::names(...future.oldOptions)) [13:31:15.891] } [13:31:15.891] if (FALSE) { [13:31:15.891] } [13:31:15.891] else { [13:31:15.891] if (TRUE) { [13:31:15.891] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:15.891] open = "w") [13:31:15.891] } [13:31:15.891] else { [13:31:15.891] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:15.891] windows = "NUL", "/dev/null"), open = "w") [13:31:15.891] } [13:31:15.891] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:15.891] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:15.891] base::sink(type = "output", split = FALSE) [13:31:15.891] base::close(...future.stdout) [13:31:15.891] }, add = TRUE) [13:31:15.891] } [13:31:15.891] ...future.frame <- base::sys.nframe() [13:31:15.891] ...future.conditions <- base::list() [13:31:15.891] ...future.rng <- base::globalenv()$.Random.seed [13:31:15.891] if (FALSE) { [13:31:15.891] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:15.891] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:15.891] } [13:31:15.891] ...future.result <- base::tryCatch({ [13:31:15.891] base::withCallingHandlers({ [13:31:15.891] ...future.value <- base::withVisible(base::local({ [13:31:15.891] ii [13:31:15.891] })) [13:31:15.891] future::FutureResult(value = ...future.value$value, [13:31:15.891] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.891] ...future.rng), globalenv = if (FALSE) [13:31:15.891] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:15.891] ...future.globalenv.names)) [13:31:15.891] else NULL, started = ...future.startTime, version = "1.8") [13:31:15.891] }, condition = base::local({ [13:31:15.891] c <- base::c [13:31:15.891] inherits <- base::inherits [13:31:15.891] invokeRestart <- base::invokeRestart [13:31:15.891] length <- base::length [13:31:15.891] list <- base::list [13:31:15.891] seq.int <- base::seq.int [13:31:15.891] signalCondition <- base::signalCondition [13:31:15.891] sys.calls <- base::sys.calls [13:31:15.891] `[[` <- base::`[[` [13:31:15.891] `+` <- base::`+` [13:31:15.891] `<<-` <- base::`<<-` [13:31:15.891] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:15.891] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:15.891] 3L)] [13:31:15.891] } [13:31:15.891] function(cond) { [13:31:15.891] is_error <- inherits(cond, "error") [13:31:15.891] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:15.891] NULL) [13:31:15.891] if (is_error) { [13:31:15.891] sessionInformation <- function() { [13:31:15.891] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:15.891] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:15.891] search = base::search(), system = base::Sys.info()) [13:31:15.891] } [13:31:15.891] ...future.conditions[[length(...future.conditions) + [13:31:15.891] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:15.891] cond$call), session = sessionInformation(), [13:31:15.891] timestamp = base::Sys.time(), signaled = 0L) [13:31:15.891] signalCondition(cond) [13:31:15.891] } [13:31:15.891] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:15.891] signal <- FALSE && inherits(cond, character(0)) [13:31:15.891] ...future.conditions[[length(...future.conditions) + [13:31:15.891] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:15.891] if (FALSE && !signal) { [13:31:15.891] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.891] { [13:31:15.891] inherits <- base::inherits [13:31:15.891] invokeRestart <- base::invokeRestart [13:31:15.891] is.null <- base::is.null [13:31:15.891] muffled <- FALSE [13:31:15.891] if (inherits(cond, "message")) { [13:31:15.891] muffled <- grepl(pattern, "muffleMessage") [13:31:15.891] if (muffled) [13:31:15.891] invokeRestart("muffleMessage") [13:31:15.891] } [13:31:15.891] else if (inherits(cond, "warning")) { [13:31:15.891] muffled <- grepl(pattern, "muffleWarning") [13:31:15.891] if (muffled) [13:31:15.891] invokeRestart("muffleWarning") [13:31:15.891] } [13:31:15.891] else if (inherits(cond, "condition")) { [13:31:15.891] if (!is.null(pattern)) { [13:31:15.891] computeRestarts <- base::computeRestarts [13:31:15.891] grepl <- base::grepl [13:31:15.891] restarts <- computeRestarts(cond) [13:31:15.891] for (restart in restarts) { [13:31:15.891] name <- restart$name [13:31:15.891] if (is.null(name)) [13:31:15.891] next [13:31:15.891] if (!grepl(pattern, name)) [13:31:15.891] next [13:31:15.891] invokeRestart(restart) [13:31:15.891] muffled <- TRUE [13:31:15.891] break [13:31:15.891] } [13:31:15.891] } [13:31:15.891] } [13:31:15.891] invisible(muffled) [13:31:15.891] } [13:31:15.891] muffleCondition(cond, pattern = "^muffle") [13:31:15.891] } [13:31:15.891] } [13:31:15.891] else { [13:31:15.891] if (TRUE) { [13:31:15.891] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.891] { [13:31:15.891] inherits <- base::inherits [13:31:15.891] invokeRestart <- base::invokeRestart [13:31:15.891] is.null <- base::is.null [13:31:15.891] muffled <- FALSE [13:31:15.891] if (inherits(cond, "message")) { [13:31:15.891] muffled <- grepl(pattern, "muffleMessage") [13:31:15.891] if (muffled) [13:31:15.891] invokeRestart("muffleMessage") [13:31:15.891] } [13:31:15.891] else if (inherits(cond, "warning")) { [13:31:15.891] muffled <- grepl(pattern, "muffleWarning") [13:31:15.891] if (muffled) [13:31:15.891] invokeRestart("muffleWarning") [13:31:15.891] } [13:31:15.891] else if (inherits(cond, "condition")) { [13:31:15.891] if (!is.null(pattern)) { [13:31:15.891] computeRestarts <- base::computeRestarts [13:31:15.891] grepl <- base::grepl [13:31:15.891] restarts <- computeRestarts(cond) [13:31:15.891] for (restart in restarts) { [13:31:15.891] name <- restart$name [13:31:15.891] if (is.null(name)) [13:31:15.891] next [13:31:15.891] if (!grepl(pattern, name)) [13:31:15.891] next [13:31:15.891] invokeRestart(restart) [13:31:15.891] muffled <- TRUE [13:31:15.891] break [13:31:15.891] } [13:31:15.891] } [13:31:15.891] } [13:31:15.891] invisible(muffled) [13:31:15.891] } [13:31:15.891] muffleCondition(cond, pattern = "^muffle") [13:31:15.891] } [13:31:15.891] } [13:31:15.891] } [13:31:15.891] })) [13:31:15.891] }, error = function(ex) { [13:31:15.891] base::structure(base::list(value = NULL, visible = NULL, [13:31:15.891] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.891] ...future.rng), started = ...future.startTime, [13:31:15.891] finished = Sys.time(), session_uuid = NA_character_, [13:31:15.891] version = "1.8"), class = "FutureResult") [13:31:15.891] }, finally = { [13:31:15.891] if (!identical(...future.workdir, getwd())) [13:31:15.891] setwd(...future.workdir) [13:31:15.891] { [13:31:15.891] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:15.891] ...future.oldOptions$nwarnings <- NULL [13:31:15.891] } [13:31:15.891] base::options(...future.oldOptions) [13:31:15.891] if (.Platform$OS.type == "windows") { [13:31:15.891] old_names <- names(...future.oldEnvVars) [13:31:15.891] envs <- base::Sys.getenv() [13:31:15.891] names <- names(envs) [13:31:15.891] common <- intersect(names, old_names) [13:31:15.891] added <- setdiff(names, old_names) [13:31:15.891] removed <- setdiff(old_names, names) [13:31:15.891] changed <- common[...future.oldEnvVars[common] != [13:31:15.891] envs[common]] [13:31:15.891] NAMES <- toupper(changed) [13:31:15.891] args <- list() [13:31:15.891] for (kk in seq_along(NAMES)) { [13:31:15.891] name <- changed[[kk]] [13:31:15.891] NAME <- NAMES[[kk]] [13:31:15.891] if (name != NAME && is.element(NAME, old_names)) [13:31:15.891] next [13:31:15.891] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.891] } [13:31:15.891] NAMES <- toupper(added) [13:31:15.891] for (kk in seq_along(NAMES)) { [13:31:15.891] name <- added[[kk]] [13:31:15.891] NAME <- NAMES[[kk]] [13:31:15.891] if (name != NAME && is.element(NAME, old_names)) [13:31:15.891] next [13:31:15.891] args[[name]] <- "" [13:31:15.891] } [13:31:15.891] NAMES <- toupper(removed) [13:31:15.891] for (kk in seq_along(NAMES)) { [13:31:15.891] name <- removed[[kk]] [13:31:15.891] NAME <- NAMES[[kk]] [13:31:15.891] if (name != NAME && is.element(NAME, old_names)) [13:31:15.891] next [13:31:15.891] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.891] } [13:31:15.891] if (length(args) > 0) [13:31:15.891] base::do.call(base::Sys.setenv, args = args) [13:31:15.891] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:15.891] } [13:31:15.891] else { [13:31:15.891] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:15.891] } [13:31:15.891] { [13:31:15.891] if (base::length(...future.futureOptionsAdded) > [13:31:15.891] 0L) { [13:31:15.891] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:15.891] base::names(opts) <- ...future.futureOptionsAdded [13:31:15.891] base::options(opts) [13:31:15.891] } [13:31:15.891] { [13:31:15.891] NULL [13:31:15.891] options(future.plan = NULL) [13:31:15.891] if (is.na(NA_character_)) [13:31:15.891] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.891] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:15.891] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:15.891] .init = FALSE) [13:31:15.891] } [13:31:15.891] } [13:31:15.891] } [13:31:15.891] }) [13:31:15.891] if (TRUE) { [13:31:15.891] base::sink(type = "output", split = FALSE) [13:31:15.891] if (TRUE) { [13:31:15.891] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:15.891] } [13:31:15.891] else { [13:31:15.891] ...future.result["stdout"] <- base::list(NULL) [13:31:15.891] } [13:31:15.891] base::close(...future.stdout) [13:31:15.891] ...future.stdout <- NULL [13:31:15.891] } [13:31:15.891] ...future.result$conditions <- ...future.conditions [13:31:15.891] ...future.result$finished <- base::Sys.time() [13:31:15.891] ...future.result [13:31:15.891] } [13:31:15.894] - Creating mirai_multisession future #2 ...[13:31:15.896] getGlobalsAndPackages() ... [13:31:15.897] Searching for globals... [13:31:15.897] - globals found: [2] '{', 'ii' [13:31:15.898] Searching for globals ... DONE [13:31:15.898] Resolving globals: FALSE [13:31:15.898] The total size of the 1 globals is 56 bytes (56 bytes) [13:31:15.899] 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:15.899] - globals: [1] 'ii' [13:31:15.899] [13:31:15.899] getGlobalsAndPackages() ... DONE [13:31:15.899] getGlobalsAndPackages() ... [13:31:15.899] - globals passed as-is: [1] 'ii' [13:31:15.900] Resolving globals: FALSE [13:31:15.900] - globals: [1] 'ii' [13:31:15.900] [13:31:15.900] getGlobalsAndPackages() ... DONE [13:31:15.901] Packages needed by the future expression (n = 0): [13:31:15.901] Packages needed by future strategies (n = 0): [13:31:15.901] { [13:31:15.901] { [13:31:15.901] { [13:31:15.901] ...future.startTime <- base::Sys.time() [13:31:15.901] { [13:31:15.901] { [13:31:15.901] { [13:31:15.901] base::local({ [13:31:15.901] has_future <- base::requireNamespace("future", [13:31:15.901] quietly = TRUE) [13:31:15.901] if (has_future) { [13:31:15.901] ns <- base::getNamespace("future") [13:31:15.901] version <- ns[[".package"]][["version"]] [13:31:15.901] if (is.null(version)) [13:31:15.901] version <- utils::packageVersion("future") [13:31:15.901] } [13:31:15.901] else { [13:31:15.901] version <- NULL [13:31:15.901] } [13:31:15.901] if (!has_future || version < "1.8.0") { [13:31:15.901] info <- base::c(r_version = base::gsub("R version ", [13:31:15.901] "", base::R.version$version.string), [13:31:15.901] platform = base::sprintf("%s (%s-bit)", [13:31:15.901] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:15.901] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:15.901] "release", "version")], collapse = " "), [13:31:15.901] hostname = base::Sys.info()[["nodename"]]) [13:31:15.901] info <- base::sprintf("%s: %s", base::names(info), [13:31:15.901] info) [13:31:15.901] info <- base::paste(info, collapse = "; ") [13:31:15.901] if (!has_future) { [13:31:15.901] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:15.901] info) [13:31:15.901] } [13:31:15.901] else { [13:31:15.901] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:15.901] info, version) [13:31:15.901] } [13:31:15.901] base::stop(msg) [13:31:15.901] } [13:31:15.901] }) [13:31:15.901] } [13:31:15.901] ...future.strategy.old <- future::plan("list") [13:31:15.901] options(future.plan = NULL) [13:31:15.901] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.901] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:15.901] } [13:31:15.901] ...future.workdir <- getwd() [13:31:15.901] } [13:31:15.901] ...future.oldOptions <- base::as.list(base::.Options) [13:31:15.901] ...future.oldEnvVars <- base::Sys.getenv() [13:31:15.901] } [13:31:15.901] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:15.901] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:15.901] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:15.901] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:15.901] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:15.901] future.stdout.windows.reencode = NULL, width = 80L) [13:31:15.901] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:15.901] base::names(...future.oldOptions)) [13:31:15.901] } [13:31:15.901] if (FALSE) { [13:31:15.901] } [13:31:15.901] else { [13:31:15.901] if (TRUE) { [13:31:15.901] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:15.901] open = "w") [13:31:15.901] } [13:31:15.901] else { [13:31:15.901] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:15.901] windows = "NUL", "/dev/null"), open = "w") [13:31:15.901] } [13:31:15.901] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:15.901] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:15.901] base::sink(type = "output", split = FALSE) [13:31:15.901] base::close(...future.stdout) [13:31:15.901] }, add = TRUE) [13:31:15.901] } [13:31:15.901] ...future.frame <- base::sys.nframe() [13:31:15.901] ...future.conditions <- base::list() [13:31:15.901] ...future.rng <- base::globalenv()$.Random.seed [13:31:15.901] if (FALSE) { [13:31:15.901] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:15.901] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:15.901] } [13:31:15.901] ...future.result <- base::tryCatch({ [13:31:15.901] base::withCallingHandlers({ [13:31:15.901] ...future.value <- base::withVisible(base::local({ [13:31:15.901] ii [13:31:15.901] })) [13:31:15.901] future::FutureResult(value = ...future.value$value, [13:31:15.901] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.901] ...future.rng), globalenv = if (FALSE) [13:31:15.901] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:15.901] ...future.globalenv.names)) [13:31:15.901] else NULL, started = ...future.startTime, version = "1.8") [13:31:15.901] }, condition = base::local({ [13:31:15.901] c <- base::c [13:31:15.901] inherits <- base::inherits [13:31:15.901] invokeRestart <- base::invokeRestart [13:31:15.901] length <- base::length [13:31:15.901] list <- base::list [13:31:15.901] seq.int <- base::seq.int [13:31:15.901] signalCondition <- base::signalCondition [13:31:15.901] sys.calls <- base::sys.calls [13:31:15.901] `[[` <- base::`[[` [13:31:15.901] `+` <- base::`+` [13:31:15.901] `<<-` <- base::`<<-` [13:31:15.901] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:15.901] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:15.901] 3L)] [13:31:15.901] } [13:31:15.901] function(cond) { [13:31:15.901] is_error <- inherits(cond, "error") [13:31:15.901] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:15.901] NULL) [13:31:15.901] if (is_error) { [13:31:15.901] sessionInformation <- function() { [13:31:15.901] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:15.901] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:15.901] search = base::search(), system = base::Sys.info()) [13:31:15.901] } [13:31:15.901] ...future.conditions[[length(...future.conditions) + [13:31:15.901] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:15.901] cond$call), session = sessionInformation(), [13:31:15.901] timestamp = base::Sys.time(), signaled = 0L) [13:31:15.901] signalCondition(cond) [13:31:15.901] } [13:31:15.901] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:15.901] signal <- FALSE && inherits(cond, character(0)) [13:31:15.901] ...future.conditions[[length(...future.conditions) + [13:31:15.901] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:15.901] if (FALSE && !signal) { [13:31:15.901] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.901] { [13:31:15.901] inherits <- base::inherits [13:31:15.901] invokeRestart <- base::invokeRestart [13:31:15.901] is.null <- base::is.null [13:31:15.901] muffled <- FALSE [13:31:15.901] if (inherits(cond, "message")) { [13:31:15.901] muffled <- grepl(pattern, "muffleMessage") [13:31:15.901] if (muffled) [13:31:15.901] invokeRestart("muffleMessage") [13:31:15.901] } [13:31:15.901] else if (inherits(cond, "warning")) { [13:31:15.901] muffled <- grepl(pattern, "muffleWarning") [13:31:15.901] if (muffled) [13:31:15.901] invokeRestart("muffleWarning") [13:31:15.901] } [13:31:15.901] else if (inherits(cond, "condition")) { [13:31:15.901] if (!is.null(pattern)) { [13:31:15.901] computeRestarts <- base::computeRestarts [13:31:15.901] grepl <- base::grepl [13:31:15.901] restarts <- computeRestarts(cond) [13:31:15.901] for (restart in restarts) { [13:31:15.901] name <- restart$name [13:31:15.901] if (is.null(name)) [13:31:15.901] next [13:31:15.901] if (!grepl(pattern, name)) [13:31:15.901] next [13:31:15.901] invokeRestart(restart) [13:31:15.901] muffled <- TRUE [13:31:15.901] break [13:31:15.901] } [13:31:15.901] } [13:31:15.901] } [13:31:15.901] invisible(muffled) [13:31:15.901] } [13:31:15.901] muffleCondition(cond, pattern = "^muffle") [13:31:15.901] } [13:31:15.901] } [13:31:15.901] else { [13:31:15.901] if (TRUE) { [13:31:15.901] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.901] { [13:31:15.901] inherits <- base::inherits [13:31:15.901] invokeRestart <- base::invokeRestart [13:31:15.901] is.null <- base::is.null [13:31:15.901] muffled <- FALSE [13:31:15.901] if (inherits(cond, "message")) { [13:31:15.901] muffled <- grepl(pattern, "muffleMessage") [13:31:15.901] if (muffled) [13:31:15.901] invokeRestart("muffleMessage") [13:31:15.901] } [13:31:15.901] else if (inherits(cond, "warning")) { [13:31:15.901] muffled <- grepl(pattern, "muffleWarning") [13:31:15.901] if (muffled) [13:31:15.901] invokeRestart("muffleWarning") [13:31:15.901] } [13:31:15.901] else if (inherits(cond, "condition")) { [13:31:15.901] if (!is.null(pattern)) { [13:31:15.901] computeRestarts <- base::computeRestarts [13:31:15.901] grepl <- base::grepl [13:31:15.901] restarts <- computeRestarts(cond) [13:31:15.901] for (restart in restarts) { [13:31:15.901] name <- restart$name [13:31:15.901] if (is.null(name)) [13:31:15.901] next [13:31:15.901] if (!grepl(pattern, name)) [13:31:15.901] next [13:31:15.901] invokeRestart(restart) [13:31:15.901] muffled <- TRUE [13:31:15.901] break [13:31:15.901] } [13:31:15.901] } [13:31:15.901] } [13:31:15.901] invisible(muffled) [13:31:15.901] } [13:31:15.901] muffleCondition(cond, pattern = "^muffle") [13:31:15.901] } [13:31:15.901] } [13:31:15.901] } [13:31:15.901] })) [13:31:15.901] }, error = function(ex) { [13:31:15.901] base::structure(base::list(value = NULL, visible = NULL, [13:31:15.901] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.901] ...future.rng), started = ...future.startTime, [13:31:15.901] finished = Sys.time(), session_uuid = NA_character_, [13:31:15.901] version = "1.8"), class = "FutureResult") [13:31:15.901] }, finally = { [13:31:15.901] if (!identical(...future.workdir, getwd())) [13:31:15.901] setwd(...future.workdir) [13:31:15.901] { [13:31:15.901] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:15.901] ...future.oldOptions$nwarnings <- NULL [13:31:15.901] } [13:31:15.901] base::options(...future.oldOptions) [13:31:15.901] if (.Platform$OS.type == "windows") { [13:31:15.901] old_names <- names(...future.oldEnvVars) [13:31:15.901] envs <- base::Sys.getenv() [13:31:15.901] names <- names(envs) [13:31:15.901] common <- intersect(names, old_names) [13:31:15.901] added <- setdiff(names, old_names) [13:31:15.901] removed <- setdiff(old_names, names) [13:31:15.901] changed <- common[...future.oldEnvVars[common] != [13:31:15.901] envs[common]] [13:31:15.901] NAMES <- toupper(changed) [13:31:15.901] args <- list() [13:31:15.901] for (kk in seq_along(NAMES)) { [13:31:15.901] name <- changed[[kk]] [13:31:15.901] NAME <- NAMES[[kk]] [13:31:15.901] if (name != NAME && is.element(NAME, old_names)) [13:31:15.901] next [13:31:15.901] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.901] } [13:31:15.901] NAMES <- toupper(added) [13:31:15.901] for (kk in seq_along(NAMES)) { [13:31:15.901] name <- added[[kk]] [13:31:15.901] NAME <- NAMES[[kk]] [13:31:15.901] if (name != NAME && is.element(NAME, old_names)) [13:31:15.901] next [13:31:15.901] args[[name]] <- "" [13:31:15.901] } [13:31:15.901] NAMES <- toupper(removed) [13:31:15.901] for (kk in seq_along(NAMES)) { [13:31:15.901] name <- removed[[kk]] [13:31:15.901] NAME <- NAMES[[kk]] [13:31:15.901] if (name != NAME && is.element(NAME, old_names)) [13:31:15.901] next [13:31:15.901] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.901] } [13:31:15.901] if (length(args) > 0) [13:31:15.901] base::do.call(base::Sys.setenv, args = args) [13:31:15.901] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:15.901] } [13:31:15.901] else { [13:31:15.901] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:15.901] } [13:31:15.901] { [13:31:15.901] if (base::length(...future.futureOptionsAdded) > [13:31:15.901] 0L) { [13:31:15.901] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:15.901] base::names(opts) <- ...future.futureOptionsAdded [13:31:15.901] base::options(opts) [13:31:15.901] } [13:31:15.901] { [13:31:15.901] NULL [13:31:15.901] options(future.plan = NULL) [13:31:15.901] if (is.na(NA_character_)) [13:31:15.901] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.901] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:15.901] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:15.901] .init = FALSE) [13:31:15.901] } [13:31:15.901] } [13:31:15.901] } [13:31:15.901] }) [13:31:15.901] if (TRUE) { [13:31:15.901] base::sink(type = "output", split = FALSE) [13:31:15.901] if (TRUE) { [13:31:15.901] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:15.901] } [13:31:15.901] else { [13:31:15.901] ...future.result["stdout"] <- base::list(NULL) [13:31:15.901] } [13:31:15.901] base::close(...future.stdout) [13:31:15.901] ...future.stdout <- NULL [13:31:15.901] } [13:31:15.901] ...future.result$conditions <- ...future.conditions [13:31:15.901] ...future.result$finished <- base::Sys.time() [13:31:15.901] ...future.result [13:31:15.901] } [13:31:15.905] - Creating mirai_multisession future #3 ...[13:31:15.907] getGlobalsAndPackages() ... [13:31:15.907] Searching for globals... [13:31:15.908] - globals found: [2] '{', 'ii' [13:31:15.908] Searching for globals ... DONE [13:31:15.909] Resolving globals: FALSE [13:31:15.909] The total size of the 1 globals is 56 bytes (56 bytes) [13:31:15.911] 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:15.911] - globals: [1] 'ii' [13:31:15.911] [13:31:15.911] getGlobalsAndPackages() ... DONE [13:31:15.912] getGlobalsAndPackages() ... [13:31:15.912] - globals passed as-is: [1] 'ii' [13:31:15.912] Resolving globals: FALSE [13:31:15.912] - globals: [1] 'ii' [13:31:15.912] [13:31:15.913] getGlobalsAndPackages() ... DONE [13:31:15.913] Packages needed by the future expression (n = 0): [13:31:15.913] Packages needed by future strategies (n = 0): [13:31:15.914] { [13:31:15.914] { [13:31:15.914] { [13:31:15.914] ...future.startTime <- base::Sys.time() [13:31:15.914] { [13:31:15.914] { [13:31:15.914] { [13:31:15.914] base::local({ [13:31:15.914] has_future <- base::requireNamespace("future", [13:31:15.914] quietly = TRUE) [13:31:15.914] if (has_future) { [13:31:15.914] ns <- base::getNamespace("future") [13:31:15.914] version <- ns[[".package"]][["version"]] [13:31:15.914] if (is.null(version)) [13:31:15.914] version <- utils::packageVersion("future") [13:31:15.914] } [13:31:15.914] else { [13:31:15.914] version <- NULL [13:31:15.914] } [13:31:15.914] if (!has_future || version < "1.8.0") { [13:31:15.914] info <- base::c(r_version = base::gsub("R version ", [13:31:15.914] "", base::R.version$version.string), [13:31:15.914] platform = base::sprintf("%s (%s-bit)", [13:31:15.914] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:15.914] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:15.914] "release", "version")], collapse = " "), [13:31:15.914] hostname = base::Sys.info()[["nodename"]]) [13:31:15.914] info <- base::sprintf("%s: %s", base::names(info), [13:31:15.914] info) [13:31:15.914] info <- base::paste(info, collapse = "; ") [13:31:15.914] if (!has_future) { [13:31:15.914] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:15.914] info) [13:31:15.914] } [13:31:15.914] else { [13:31:15.914] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:15.914] info, version) [13:31:15.914] } [13:31:15.914] base::stop(msg) [13:31:15.914] } [13:31:15.914] }) [13:31:15.914] } [13:31:15.914] ...future.strategy.old <- future::plan("list") [13:31:15.914] options(future.plan = NULL) [13:31:15.914] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.914] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:15.914] } [13:31:15.914] ...future.workdir <- getwd() [13:31:15.914] } [13:31:15.914] ...future.oldOptions <- base::as.list(base::.Options) [13:31:15.914] ...future.oldEnvVars <- base::Sys.getenv() [13:31:15.914] } [13:31:15.914] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:15.914] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:15.914] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:15.914] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:15.914] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:15.914] future.stdout.windows.reencode = NULL, width = 80L) [13:31:15.914] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:15.914] base::names(...future.oldOptions)) [13:31:15.914] } [13:31:15.914] if (FALSE) { [13:31:15.914] } [13:31:15.914] else { [13:31:15.914] if (TRUE) { [13:31:15.914] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:15.914] open = "w") [13:31:15.914] } [13:31:15.914] else { [13:31:15.914] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:15.914] windows = "NUL", "/dev/null"), open = "w") [13:31:15.914] } [13:31:15.914] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:15.914] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:15.914] base::sink(type = "output", split = FALSE) [13:31:15.914] base::close(...future.stdout) [13:31:15.914] }, add = TRUE) [13:31:15.914] } [13:31:15.914] ...future.frame <- base::sys.nframe() [13:31:15.914] ...future.conditions <- base::list() [13:31:15.914] ...future.rng <- base::globalenv()$.Random.seed [13:31:15.914] if (FALSE) { [13:31:15.914] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:15.914] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:15.914] } [13:31:15.914] ...future.result <- base::tryCatch({ [13:31:15.914] base::withCallingHandlers({ [13:31:15.914] ...future.value <- base::withVisible(base::local({ [13:31:15.914] ii [13:31:15.914] })) [13:31:15.914] future::FutureResult(value = ...future.value$value, [13:31:15.914] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.914] ...future.rng), globalenv = if (FALSE) [13:31:15.914] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:15.914] ...future.globalenv.names)) [13:31:15.914] else NULL, started = ...future.startTime, version = "1.8") [13:31:15.914] }, condition = base::local({ [13:31:15.914] c <- base::c [13:31:15.914] inherits <- base::inherits [13:31:15.914] invokeRestart <- base::invokeRestart [13:31:15.914] length <- base::length [13:31:15.914] list <- base::list [13:31:15.914] seq.int <- base::seq.int [13:31:15.914] signalCondition <- base::signalCondition [13:31:15.914] sys.calls <- base::sys.calls [13:31:15.914] `[[` <- base::`[[` [13:31:15.914] `+` <- base::`+` [13:31:15.914] `<<-` <- base::`<<-` [13:31:15.914] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:15.914] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:15.914] 3L)] [13:31:15.914] } [13:31:15.914] function(cond) { [13:31:15.914] is_error <- inherits(cond, "error") [13:31:15.914] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:15.914] NULL) [13:31:15.914] if (is_error) { [13:31:15.914] sessionInformation <- function() { [13:31:15.914] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:15.914] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:15.914] search = base::search(), system = base::Sys.info()) [13:31:15.914] } [13:31:15.914] ...future.conditions[[length(...future.conditions) + [13:31:15.914] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:15.914] cond$call), session = sessionInformation(), [13:31:15.914] timestamp = base::Sys.time(), signaled = 0L) [13:31:15.914] signalCondition(cond) [13:31:15.914] } [13:31:15.914] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:15.914] signal <- FALSE && inherits(cond, character(0)) [13:31:15.914] ...future.conditions[[length(...future.conditions) + [13:31:15.914] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:15.914] if (FALSE && !signal) { [13:31:15.914] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.914] { [13:31:15.914] inherits <- base::inherits [13:31:15.914] invokeRestart <- base::invokeRestart [13:31:15.914] is.null <- base::is.null [13:31:15.914] muffled <- FALSE [13:31:15.914] if (inherits(cond, "message")) { [13:31:15.914] muffled <- grepl(pattern, "muffleMessage") [13:31:15.914] if (muffled) [13:31:15.914] invokeRestart("muffleMessage") [13:31:15.914] } [13:31:15.914] else if (inherits(cond, "warning")) { [13:31:15.914] muffled <- grepl(pattern, "muffleWarning") [13:31:15.914] if (muffled) [13:31:15.914] invokeRestart("muffleWarning") [13:31:15.914] } [13:31:15.914] else if (inherits(cond, "condition")) { [13:31:15.914] if (!is.null(pattern)) { [13:31:15.914] computeRestarts <- base::computeRestarts [13:31:15.914] grepl <- base::grepl [13:31:15.914] restarts <- computeRestarts(cond) [13:31:15.914] for (restart in restarts) { [13:31:15.914] name <- restart$name [13:31:15.914] if (is.null(name)) [13:31:15.914] next [13:31:15.914] if (!grepl(pattern, name)) [13:31:15.914] next [13:31:15.914] invokeRestart(restart) [13:31:15.914] muffled <- TRUE [13:31:15.914] break [13:31:15.914] } [13:31:15.914] } [13:31:15.914] } [13:31:15.914] invisible(muffled) [13:31:15.914] } [13:31:15.914] muffleCondition(cond, pattern = "^muffle") [13:31:15.914] } [13:31:15.914] } [13:31:15.914] else { [13:31:15.914] if (TRUE) { [13:31:15.914] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.914] { [13:31:15.914] inherits <- base::inherits [13:31:15.914] invokeRestart <- base::invokeRestart [13:31:15.914] is.null <- base::is.null [13:31:15.914] muffled <- FALSE [13:31:15.914] if (inherits(cond, "message")) { [13:31:15.914] muffled <- grepl(pattern, "muffleMessage") [13:31:15.914] if (muffled) [13:31:15.914] invokeRestart("muffleMessage") [13:31:15.914] } [13:31:15.914] else if (inherits(cond, "warning")) { [13:31:15.914] muffled <- grepl(pattern, "muffleWarning") [13:31:15.914] if (muffled) [13:31:15.914] invokeRestart("muffleWarning") [13:31:15.914] } [13:31:15.914] else if (inherits(cond, "condition")) { [13:31:15.914] if (!is.null(pattern)) { [13:31:15.914] computeRestarts <- base::computeRestarts [13:31:15.914] grepl <- base::grepl [13:31:15.914] restarts <- computeRestarts(cond) [13:31:15.914] for (restart in restarts) { [13:31:15.914] name <- restart$name [13:31:15.914] if (is.null(name)) [13:31:15.914] next [13:31:15.914] if (!grepl(pattern, name)) [13:31:15.914] next [13:31:15.914] invokeRestart(restart) [13:31:15.914] muffled <- TRUE [13:31:15.914] break [13:31:15.914] } [13:31:15.914] } [13:31:15.914] } [13:31:15.914] invisible(muffled) [13:31:15.914] } [13:31:15.914] muffleCondition(cond, pattern = "^muffle") [13:31:15.914] } [13:31:15.914] } [13:31:15.914] } [13:31:15.914] })) [13:31:15.914] }, error = function(ex) { [13:31:15.914] base::structure(base::list(value = NULL, visible = NULL, [13:31:15.914] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.914] ...future.rng), started = ...future.startTime, [13:31:15.914] finished = Sys.time(), session_uuid = NA_character_, [13:31:15.914] version = "1.8"), class = "FutureResult") [13:31:15.914] }, finally = { [13:31:15.914] if (!identical(...future.workdir, getwd())) [13:31:15.914] setwd(...future.workdir) [13:31:15.914] { [13:31:15.914] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:15.914] ...future.oldOptions$nwarnings <- NULL [13:31:15.914] } [13:31:15.914] base::options(...future.oldOptions) [13:31:15.914] if (.Platform$OS.type == "windows") { [13:31:15.914] old_names <- names(...future.oldEnvVars) [13:31:15.914] envs <- base::Sys.getenv() [13:31:15.914] names <- names(envs) [13:31:15.914] common <- intersect(names, old_names) [13:31:15.914] added <- setdiff(names, old_names) [13:31:15.914] removed <- setdiff(old_names, names) [13:31:15.914] changed <- common[...future.oldEnvVars[common] != [13:31:15.914] envs[common]] [13:31:15.914] NAMES <- toupper(changed) [13:31:15.914] args <- list() [13:31:15.914] for (kk in seq_along(NAMES)) { [13:31:15.914] name <- changed[[kk]] [13:31:15.914] NAME <- NAMES[[kk]] [13:31:15.914] if (name != NAME && is.element(NAME, old_names)) [13:31:15.914] next [13:31:15.914] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.914] } [13:31:15.914] NAMES <- toupper(added) [13:31:15.914] for (kk in seq_along(NAMES)) { [13:31:15.914] name <- added[[kk]] [13:31:15.914] NAME <- NAMES[[kk]] [13:31:15.914] if (name != NAME && is.element(NAME, old_names)) [13:31:15.914] next [13:31:15.914] args[[name]] <- "" [13:31:15.914] } [13:31:15.914] NAMES <- toupper(removed) [13:31:15.914] for (kk in seq_along(NAMES)) { [13:31:15.914] name <- removed[[kk]] [13:31:15.914] NAME <- NAMES[[kk]] [13:31:15.914] if (name != NAME && is.element(NAME, old_names)) [13:31:15.914] next [13:31:15.914] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.914] } [13:31:15.914] if (length(args) > 0) [13:31:15.914] base::do.call(base::Sys.setenv, args = args) [13:31:15.914] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:15.914] } [13:31:15.914] else { [13:31:15.914] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:15.914] } [13:31:15.914] { [13:31:15.914] if (base::length(...future.futureOptionsAdded) > [13:31:15.914] 0L) { [13:31:15.914] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:15.914] base::names(opts) <- ...future.futureOptionsAdded [13:31:15.914] base::options(opts) [13:31:15.914] } [13:31:15.914] { [13:31:15.914] NULL [13:31:15.914] options(future.plan = NULL) [13:31:15.914] if (is.na(NA_character_)) [13:31:15.914] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.914] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:15.914] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:15.914] .init = FALSE) [13:31:15.914] } [13:31:15.914] } [13:31:15.914] } [13:31:15.914] }) [13:31:15.914] if (TRUE) { [13:31:15.914] base::sink(type = "output", split = FALSE) [13:31:15.914] if (TRUE) { [13:31:15.914] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:15.914] } [13:31:15.914] else { [13:31:15.914] ...future.result["stdout"] <- base::list(NULL) [13:31:15.914] } [13:31:15.914] base::close(...future.stdout) [13:31:15.914] ...future.stdout <- NULL [13:31:15.914] } [13:31:15.914] ...future.result$conditions <- ...future.conditions [13:31:15.914] ...future.result$finished <- base::Sys.time() [13:31:15.914] ...future.result [13:31:15.914] } [13:31:15.917] - Resolving 3 mirai_multisession futures[13:31:15.919] *** mirai_multisession(..., globals = TRUE) and errors[13:31:15.921] getGlobalsAndPackages() ... [13:31:15.921] Searching for globals... [13:31:15.922] - globals found: [2] '{', 'stop' [13:31:15.923] Searching for globals ... DONE [13:31:15.923] Resolving globals: FALSE [13:31:15.923] [13:31:15.923] [13:31:15.923] getGlobalsAndPackages() ... DONE [13:31:15.924] getGlobalsAndPackages() ... [13:31:15.924] [13:31:15.924] - globals: [0] [13:31:15.924] getGlobalsAndPackages() ... DONE [13:31:15.924] Packages needed by the future expression (n = 0): [13:31:15.925] Packages needed by future strategies (n = 0): [13:31:15.925] { [13:31:15.925] { [13:31:15.925] { [13:31:15.925] ...future.startTime <- base::Sys.time() [13:31:15.925] { [13:31:15.925] { [13:31:15.925] { [13:31:15.925] base::local({ [13:31:15.925] has_future <- base::requireNamespace("future", [13:31:15.925] quietly = TRUE) [13:31:15.925] if (has_future) { [13:31:15.925] ns <- base::getNamespace("future") [13:31:15.925] version <- ns[[".package"]][["version"]] [13:31:15.925] if (is.null(version)) [13:31:15.925] version <- utils::packageVersion("future") [13:31:15.925] } [13:31:15.925] else { [13:31:15.925] version <- NULL [13:31:15.925] } [13:31:15.925] if (!has_future || version < "1.8.0") { [13:31:15.925] info <- base::c(r_version = base::gsub("R version ", [13:31:15.925] "", base::R.version$version.string), [13:31:15.925] platform = base::sprintf("%s (%s-bit)", [13:31:15.925] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:15.925] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:15.925] "release", "version")], collapse = " "), [13:31:15.925] hostname = base::Sys.info()[["nodename"]]) [13:31:15.925] info <- base::sprintf("%s: %s", base::names(info), [13:31:15.925] info) [13:31:15.925] info <- base::paste(info, collapse = "; ") [13:31:15.925] if (!has_future) { [13:31:15.925] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:15.925] info) [13:31:15.925] } [13:31:15.925] else { [13:31:15.925] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:15.925] info, version) [13:31:15.925] } [13:31:15.925] base::stop(msg) [13:31:15.925] } [13:31:15.925] }) [13:31:15.925] } [13:31:15.925] ...future.strategy.old <- future::plan("list") [13:31:15.925] options(future.plan = NULL) [13:31:15.925] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.925] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:15.925] } [13:31:15.925] ...future.workdir <- getwd() [13:31:15.925] } [13:31:15.925] ...future.oldOptions <- base::as.list(base::.Options) [13:31:15.925] ...future.oldEnvVars <- base::Sys.getenv() [13:31:15.925] } [13:31:15.925] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:15.925] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:15.925] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:15.925] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:15.925] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:15.925] future.stdout.windows.reencode = NULL, width = 80L) [13:31:15.925] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:15.925] base::names(...future.oldOptions)) [13:31:15.925] } [13:31:15.925] if (FALSE) { [13:31:15.925] } [13:31:15.925] else { [13:31:15.925] if (TRUE) { [13:31:15.925] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:15.925] open = "w") [13:31:15.925] } [13:31:15.925] else { [13:31:15.925] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:15.925] windows = "NUL", "/dev/null"), open = "w") [13:31:15.925] } [13:31:15.925] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:15.925] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:15.925] base::sink(type = "output", split = FALSE) [13:31:15.925] base::close(...future.stdout) [13:31:15.925] }, add = TRUE) [13:31:15.925] } [13:31:15.925] ...future.frame <- base::sys.nframe() [13:31:15.925] ...future.conditions <- base::list() [13:31:15.925] ...future.rng <- base::globalenv()$.Random.seed [13:31:15.925] if (FALSE) { [13:31:15.925] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:15.925] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:15.925] } [13:31:15.925] ...future.result <- base::tryCatch({ [13:31:15.925] base::withCallingHandlers({ [13:31:15.925] ...future.value <- base::withVisible(base::local({ [13:31:15.925] stop("Whoops!") [13:31:15.925] 1 [13:31:15.925] })) [13:31:15.925] future::FutureResult(value = ...future.value$value, [13:31:15.925] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.925] ...future.rng), globalenv = if (FALSE) [13:31:15.925] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:15.925] ...future.globalenv.names)) [13:31:15.925] else NULL, started = ...future.startTime, version = "1.8") [13:31:15.925] }, condition = base::local({ [13:31:15.925] c <- base::c [13:31:15.925] inherits <- base::inherits [13:31:15.925] invokeRestart <- base::invokeRestart [13:31:15.925] length <- base::length [13:31:15.925] list <- base::list [13:31:15.925] seq.int <- base::seq.int [13:31:15.925] signalCondition <- base::signalCondition [13:31:15.925] sys.calls <- base::sys.calls [13:31:15.925] `[[` <- base::`[[` [13:31:15.925] `+` <- base::`+` [13:31:15.925] `<<-` <- base::`<<-` [13:31:15.925] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:15.925] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:15.925] 3L)] [13:31:15.925] } [13:31:15.925] function(cond) { [13:31:15.925] is_error <- inherits(cond, "error") [13:31:15.925] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:15.925] NULL) [13:31:15.925] if (is_error) { [13:31:15.925] sessionInformation <- function() { [13:31:15.925] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:15.925] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:15.925] search = base::search(), system = base::Sys.info()) [13:31:15.925] } [13:31:15.925] ...future.conditions[[length(...future.conditions) + [13:31:15.925] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:15.925] cond$call), session = sessionInformation(), [13:31:15.925] timestamp = base::Sys.time(), signaled = 0L) [13:31:15.925] signalCondition(cond) [13:31:15.925] } [13:31:15.925] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:15.925] signal <- FALSE && inherits(cond, character(0)) [13:31:15.925] ...future.conditions[[length(...future.conditions) + [13:31:15.925] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:15.925] if (FALSE && !signal) { [13:31:15.925] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.925] { [13:31:15.925] inherits <- base::inherits [13:31:15.925] invokeRestart <- base::invokeRestart [13:31:15.925] is.null <- base::is.null [13:31:15.925] muffled <- FALSE [13:31:15.925] if (inherits(cond, "message")) { [13:31:15.925] muffled <- grepl(pattern, "muffleMessage") [13:31:15.925] if (muffled) [13:31:15.925] invokeRestart("muffleMessage") [13:31:15.925] } [13:31:15.925] else if (inherits(cond, "warning")) { [13:31:15.925] muffled <- grepl(pattern, "muffleWarning") [13:31:15.925] if (muffled) [13:31:15.925] invokeRestart("muffleWarning") [13:31:15.925] } [13:31:15.925] else if (inherits(cond, "condition")) { [13:31:15.925] if (!is.null(pattern)) { [13:31:15.925] computeRestarts <- base::computeRestarts [13:31:15.925] grepl <- base::grepl [13:31:15.925] restarts <- computeRestarts(cond) [13:31:15.925] for (restart in restarts) { [13:31:15.925] name <- restart$name [13:31:15.925] if (is.null(name)) [13:31:15.925] next [13:31:15.925] if (!grepl(pattern, name)) [13:31:15.925] next [13:31:15.925] invokeRestart(restart) [13:31:15.925] muffled <- TRUE [13:31:15.925] break [13:31:15.925] } [13:31:15.925] } [13:31:15.925] } [13:31:15.925] invisible(muffled) [13:31:15.925] } [13:31:15.925] muffleCondition(cond, pattern = "^muffle") [13:31:15.925] } [13:31:15.925] } [13:31:15.925] else { [13:31:15.925] if (TRUE) { [13:31:15.925] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.925] { [13:31:15.925] inherits <- base::inherits [13:31:15.925] invokeRestart <- base::invokeRestart [13:31:15.925] is.null <- base::is.null [13:31:15.925] muffled <- FALSE [13:31:15.925] if (inherits(cond, "message")) { [13:31:15.925] muffled <- grepl(pattern, "muffleMessage") [13:31:15.925] if (muffled) [13:31:15.925] invokeRestart("muffleMessage") [13:31:15.925] } [13:31:15.925] else if (inherits(cond, "warning")) { [13:31:15.925] muffled <- grepl(pattern, "muffleWarning") [13:31:15.925] if (muffled) [13:31:15.925] invokeRestart("muffleWarning") [13:31:15.925] } [13:31:15.925] else if (inherits(cond, "condition")) { [13:31:15.925] if (!is.null(pattern)) { [13:31:15.925] computeRestarts <- base::computeRestarts [13:31:15.925] grepl <- base::grepl [13:31:15.925] restarts <- computeRestarts(cond) [13:31:15.925] for (restart in restarts) { [13:31:15.925] name <- restart$name [13:31:15.925] if (is.null(name)) [13:31:15.925] next [13:31:15.925] if (!grepl(pattern, name)) [13:31:15.925] next [13:31:15.925] invokeRestart(restart) [13:31:15.925] muffled <- TRUE [13:31:15.925] break [13:31:15.925] } [13:31:15.925] } [13:31:15.925] } [13:31:15.925] invisible(muffled) [13:31:15.925] } [13:31:15.925] muffleCondition(cond, pattern = "^muffle") [13:31:15.925] } [13:31:15.925] } [13:31:15.925] } [13:31:15.925] })) [13:31:15.925] }, error = function(ex) { [13:31:15.925] base::structure(base::list(value = NULL, visible = NULL, [13:31:15.925] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.925] ...future.rng), started = ...future.startTime, [13:31:15.925] finished = Sys.time(), session_uuid = NA_character_, [13:31:15.925] version = "1.8"), class = "FutureResult") [13:31:15.925] }, finally = { [13:31:15.925] if (!identical(...future.workdir, getwd())) [13:31:15.925] setwd(...future.workdir) [13:31:15.925] { [13:31:15.925] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:15.925] ...future.oldOptions$nwarnings <- NULL [13:31:15.925] } [13:31:15.925] base::options(...future.oldOptions) [13:31:15.925] if (.Platform$OS.type == "windows") { [13:31:15.925] old_names <- names(...future.oldEnvVars) [13:31:15.925] envs <- base::Sys.getenv() [13:31:15.925] names <- names(envs) [13:31:15.925] common <- intersect(names, old_names) [13:31:15.925] added <- setdiff(names, old_names) [13:31:15.925] removed <- setdiff(old_names, names) [13:31:15.925] changed <- common[...future.oldEnvVars[common] != [13:31:15.925] envs[common]] [13:31:15.925] NAMES <- toupper(changed) [13:31:15.925] args <- list() [13:31:15.925] for (kk in seq_along(NAMES)) { [13:31:15.925] name <- changed[[kk]] [13:31:15.925] NAME <- NAMES[[kk]] [13:31:15.925] if (name != NAME && is.element(NAME, old_names)) [13:31:15.925] next [13:31:15.925] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.925] } [13:31:15.925] NAMES <- toupper(added) [13:31:15.925] for (kk in seq_along(NAMES)) { [13:31:15.925] name <- added[[kk]] [13:31:15.925] NAME <- NAMES[[kk]] [13:31:15.925] if (name != NAME && is.element(NAME, old_names)) [13:31:15.925] next [13:31:15.925] args[[name]] <- "" [13:31:15.925] } [13:31:15.925] NAMES <- toupper(removed) [13:31:15.925] for (kk in seq_along(NAMES)) { [13:31:15.925] name <- removed[[kk]] [13:31:15.925] NAME <- NAMES[[kk]] [13:31:15.925] if (name != NAME && is.element(NAME, old_names)) [13:31:15.925] next [13:31:15.925] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.925] } [13:31:15.925] if (length(args) > 0) [13:31:15.925] base::do.call(base::Sys.setenv, args = args) [13:31:15.925] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:15.925] } [13:31:15.925] else { [13:31:15.925] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:15.925] } [13:31:15.925] { [13:31:15.925] if (base::length(...future.futureOptionsAdded) > [13:31:15.925] 0L) { [13:31:15.925] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:15.925] base::names(opts) <- ...future.futureOptionsAdded [13:31:15.925] base::options(opts) [13:31:15.925] } [13:31:15.925] { [13:31:15.925] NULL [13:31:15.925] options(future.plan = NULL) [13:31:15.925] if (is.na(NA_character_)) [13:31:15.925] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.925] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:15.925] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:15.925] .init = FALSE) [13:31:15.925] } [13:31:15.925] } [13:31:15.925] } [13:31:15.925] }) [13:31:15.925] if (TRUE) { [13:31:15.925] base::sink(type = "output", split = FALSE) [13:31:15.925] if (TRUE) { [13:31:15.925] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:15.925] } [13:31:15.925] else { [13:31:15.925] ...future.result["stdout"] <- base::list(NULL) [13:31:15.925] } [13:31:15.925] base::close(...future.stdout) [13:31:15.925] ...future.stdout <- NULL [13:31:15.925] } [13:31:15.925] ...future.result$conditions <- ...future.conditions [13:31:15.925] ...future.result$finished <- base::Sys.time() [13:31:15.925] ...future.result [13:31:15.925] } 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:15.929] resolved() for 'MiraiFuture' ... [13:31:15.929] - state: 'running' [13:31:15.930] - run: TRUE [13:31:15.930] - result: 'NULL' [13:31:15.930] - resolved: FALSE [13:31:15.930] resolved() for 'MiraiFuture' ... done Resolved: FALSE Value: Conditions captured: Early signaling: FALSE Owner process: b6aff70f-dcb2-5b98-b1ed-deeb3a52e0c0 Class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:31:15.931] signalConditions() ... [13:31:15.931] - include = 'immediateCondition' [13:31:15.931] - exclude = [13:31:15.931] - resignal = FALSE [13:31:15.932] - Number of conditions: 1 [13:31:15.932] signalConditions() ... done [13:31:15.932] signalConditions() ... [13:31:15.932] - include = 'immediateCondition' [13:31:15.933] - exclude = [13:31:15.933] - resignal = FALSE [13:31:15.933] - Number of conditions: 1 [13:31:15.933] signalConditions() ... done [13:31:15.933] Future state: 'finished' [13:31:15.933] signalConditions() ... [13:31:15.934] - include = 'condition' [13:31:15.934] - exclude = 'immediateCondition' [13:31:15.934] - resignal = TRUE [13:31:15.934] - Number of conditions: 1 [13:31:15.934] - Condition #1: 'simpleError', 'error', 'condition' [13:31:15.934] signalConditions() ... done [13:31:15.935] signalConditions() ... [13:31:15.935] - include = 'immediateCondition' [13:31:15.935] - exclude = [13:31:15.935] - resignal = FALSE [13:31:15.936] - Number of conditions: 1 [13:31:15.936] signalConditions() ... done [13:31:15.936] Future state: 'finished' [13:31:15.936] signalConditions() ... [13:31:15.936] - include = 'condition' [13:31:15.936] - exclude = 'immediateCondition' [13:31:15.937] - resignal = TRUE [13:31:15.937] - Number of conditions: 1 [13:31:15.937] - Condition #1: 'simpleError', 'error', 'condition' [13:31:15.937] signalConditions() ... done *** mirai_multisession(..., workers = 1L) ... [13:31:15.937] getGlobalsAndPackages() ... [13:31:15.938] Searching for globals... [13:31:15.939] - globals found: [4] '{', '*', 'a', 'b' [13:31:15.939] Searching for globals ... DONE [13:31:15.939] Resolving globals: FALSE [13:31:15.940] The total size of the 2 globals is 112 bytes (112 bytes) [13:31:15.940] 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:15.940] - globals: [2] 'a', 'b' [13:31:15.940] [13:31:15.941] getGlobalsAndPackages() ... DONE [13:31:15.941] getGlobalsAndPackages() ... [13:31:15.941] - globals passed as-is: [2] 'a', 'b' [13:31:15.941] Resolving globals: FALSE [13:31:15.941] - globals: [2] 'a', 'b' [13:31:15.942] [13:31:15.942] getGlobalsAndPackages() ... DONE [13:31:15.942] Packages needed by the future expression (n = 0): [13:31:15.942] Packages needed by future strategies (n = 0): [13:31:15.943] { [13:31:15.943] { [13:31:15.943] { [13:31:15.943] ...future.startTime <- base::Sys.time() [13:31:15.943] { [13:31:15.943] { [13:31:15.943] { [13:31:15.943] base::local({ [13:31:15.943] has_future <- base::requireNamespace("future", [13:31:15.943] quietly = TRUE) [13:31:15.943] if (has_future) { [13:31:15.943] ns <- base::getNamespace("future") [13:31:15.943] version <- ns[[".package"]][["version"]] [13:31:15.943] if (is.null(version)) [13:31:15.943] version <- utils::packageVersion("future") [13:31:15.943] } [13:31:15.943] else { [13:31:15.943] version <- NULL [13:31:15.943] } [13:31:15.943] if (!has_future || version < "1.8.0") { [13:31:15.943] info <- base::c(r_version = base::gsub("R version ", [13:31:15.943] "", base::R.version$version.string), [13:31:15.943] platform = base::sprintf("%s (%s-bit)", [13:31:15.943] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:15.943] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:15.943] "release", "version")], collapse = " "), [13:31:15.943] hostname = base::Sys.info()[["nodename"]]) [13:31:15.943] info <- base::sprintf("%s: %s", base::names(info), [13:31:15.943] info) [13:31:15.943] info <- base::paste(info, collapse = "; ") [13:31:15.943] if (!has_future) { [13:31:15.943] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:15.943] info) [13:31:15.943] } [13:31:15.943] else { [13:31:15.943] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:15.943] info, version) [13:31:15.943] } [13:31:15.943] base::stop(msg) [13:31:15.943] } [13:31:15.943] }) [13:31:15.943] } [13:31:15.943] ...future.strategy.old <- future::plan("list") [13:31:15.943] options(future.plan = NULL) [13:31:15.943] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.943] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:15.943] } [13:31:15.943] ...future.workdir <- getwd() [13:31:15.943] } [13:31:15.943] ...future.oldOptions <- base::as.list(base::.Options) [13:31:15.943] ...future.oldEnvVars <- base::Sys.getenv() [13:31:15.943] } [13:31:15.943] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:15.943] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:15.943] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:15.943] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:15.943] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:15.943] future.stdout.windows.reencode = NULL, width = 80L) [13:31:15.943] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:15.943] base::names(...future.oldOptions)) [13:31:15.943] } [13:31:15.943] if (FALSE) { [13:31:15.943] } [13:31:15.943] else { [13:31:15.943] if (TRUE) { [13:31:15.943] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:15.943] open = "w") [13:31:15.943] } [13:31:15.943] else { [13:31:15.943] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:15.943] windows = "NUL", "/dev/null"), open = "w") [13:31:15.943] } [13:31:15.943] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:15.943] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:15.943] base::sink(type = "output", split = FALSE) [13:31:15.943] base::close(...future.stdout) [13:31:15.943] }, add = TRUE) [13:31:15.943] } [13:31:15.943] ...future.frame <- base::sys.nframe() [13:31:15.943] ...future.conditions <- base::list() [13:31:15.943] ...future.rng <- base::globalenv()$.Random.seed [13:31:15.943] if (FALSE) { [13:31:15.943] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:15.943] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:15.943] } [13:31:15.943] ...future.result <- base::tryCatch({ [13:31:15.943] base::withCallingHandlers({ [13:31:15.943] ...future.value <- base::withVisible(base::local({ [13:31:15.943] a * b [13:31:15.943] })) [13:31:15.943] future::FutureResult(value = ...future.value$value, [13:31:15.943] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.943] ...future.rng), globalenv = if (FALSE) [13:31:15.943] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:15.943] ...future.globalenv.names)) [13:31:15.943] else NULL, started = ...future.startTime, version = "1.8") [13:31:15.943] }, condition = base::local({ [13:31:15.943] c <- base::c [13:31:15.943] inherits <- base::inherits [13:31:15.943] invokeRestart <- base::invokeRestart [13:31:15.943] length <- base::length [13:31:15.943] list <- base::list [13:31:15.943] seq.int <- base::seq.int [13:31:15.943] signalCondition <- base::signalCondition [13:31:15.943] sys.calls <- base::sys.calls [13:31:15.943] `[[` <- base::`[[` [13:31:15.943] `+` <- base::`+` [13:31:15.943] `<<-` <- base::`<<-` [13:31:15.943] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:15.943] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:15.943] 3L)] [13:31:15.943] } [13:31:15.943] function(cond) { [13:31:15.943] is_error <- inherits(cond, "error") [13:31:15.943] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:15.943] NULL) [13:31:15.943] if (is_error) { [13:31:15.943] sessionInformation <- function() { [13:31:15.943] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:15.943] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:15.943] search = base::search(), system = base::Sys.info()) [13:31:15.943] } [13:31:15.943] ...future.conditions[[length(...future.conditions) + [13:31:15.943] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:15.943] cond$call), session = sessionInformation(), [13:31:15.943] timestamp = base::Sys.time(), signaled = 0L) [13:31:15.943] signalCondition(cond) [13:31:15.943] } [13:31:15.943] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:15.943] signal <- FALSE && inherits(cond, character(0)) [13:31:15.943] ...future.conditions[[length(...future.conditions) + [13:31:15.943] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:15.943] if (FALSE && !signal) { [13:31:15.943] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.943] { [13:31:15.943] inherits <- base::inherits [13:31:15.943] invokeRestart <- base::invokeRestart [13:31:15.943] is.null <- base::is.null [13:31:15.943] muffled <- FALSE [13:31:15.943] if (inherits(cond, "message")) { [13:31:15.943] muffled <- grepl(pattern, "muffleMessage") [13:31:15.943] if (muffled) [13:31:15.943] invokeRestart("muffleMessage") [13:31:15.943] } [13:31:15.943] else if (inherits(cond, "warning")) { [13:31:15.943] muffled <- grepl(pattern, "muffleWarning") [13:31:15.943] if (muffled) [13:31:15.943] invokeRestart("muffleWarning") [13:31:15.943] } [13:31:15.943] else if (inherits(cond, "condition")) { [13:31:15.943] if (!is.null(pattern)) { [13:31:15.943] computeRestarts <- base::computeRestarts [13:31:15.943] grepl <- base::grepl [13:31:15.943] restarts <- computeRestarts(cond) [13:31:15.943] for (restart in restarts) { [13:31:15.943] name <- restart$name [13:31:15.943] if (is.null(name)) [13:31:15.943] next [13:31:15.943] if (!grepl(pattern, name)) [13:31:15.943] next [13:31:15.943] invokeRestart(restart) [13:31:15.943] muffled <- TRUE [13:31:15.943] break [13:31:15.943] } [13:31:15.943] } [13:31:15.943] } [13:31:15.943] invisible(muffled) [13:31:15.943] } [13:31:15.943] muffleCondition(cond, pattern = "^muffle") [13:31:15.943] } [13:31:15.943] } [13:31:15.943] else { [13:31:15.943] if (TRUE) { [13:31:15.943] muffleCondition <- function (cond, pattern = "^muffle") [13:31:15.943] { [13:31:15.943] inherits <- base::inherits [13:31:15.943] invokeRestart <- base::invokeRestart [13:31:15.943] is.null <- base::is.null [13:31:15.943] muffled <- FALSE [13:31:15.943] if (inherits(cond, "message")) { [13:31:15.943] muffled <- grepl(pattern, "muffleMessage") [13:31:15.943] if (muffled) [13:31:15.943] invokeRestart("muffleMessage") [13:31:15.943] } [13:31:15.943] else if (inherits(cond, "warning")) { [13:31:15.943] muffled <- grepl(pattern, "muffleWarning") [13:31:15.943] if (muffled) [13:31:15.943] invokeRestart("muffleWarning") [13:31:15.943] } [13:31:15.943] else if (inherits(cond, "condition")) { [13:31:15.943] if (!is.null(pattern)) { [13:31:15.943] computeRestarts <- base::computeRestarts [13:31:15.943] grepl <- base::grepl [13:31:15.943] restarts <- computeRestarts(cond) [13:31:15.943] for (restart in restarts) { [13:31:15.943] name <- restart$name [13:31:15.943] if (is.null(name)) [13:31:15.943] next [13:31:15.943] if (!grepl(pattern, name)) [13:31:15.943] next [13:31:15.943] invokeRestart(restart) [13:31:15.943] muffled <- TRUE [13:31:15.943] break [13:31:15.943] } [13:31:15.943] } [13:31:15.943] } [13:31:15.943] invisible(muffled) [13:31:15.943] } [13:31:15.943] muffleCondition(cond, pattern = "^muffle") [13:31:15.943] } [13:31:15.943] } [13:31:15.943] } [13:31:15.943] })) [13:31:15.943] }, error = function(ex) { [13:31:15.943] base::structure(base::list(value = NULL, visible = NULL, [13:31:15.943] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:15.943] ...future.rng), started = ...future.startTime, [13:31:15.943] finished = Sys.time(), session_uuid = NA_character_, [13:31:15.943] version = "1.8"), class = "FutureResult") [13:31:15.943] }, finally = { [13:31:15.943] if (!identical(...future.workdir, getwd())) [13:31:15.943] setwd(...future.workdir) [13:31:15.943] { [13:31:15.943] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:15.943] ...future.oldOptions$nwarnings <- NULL [13:31:15.943] } [13:31:15.943] base::options(...future.oldOptions) [13:31:15.943] if (.Platform$OS.type == "windows") { [13:31:15.943] old_names <- names(...future.oldEnvVars) [13:31:15.943] envs <- base::Sys.getenv() [13:31:15.943] names <- names(envs) [13:31:15.943] common <- intersect(names, old_names) [13:31:15.943] added <- setdiff(names, old_names) [13:31:15.943] removed <- setdiff(old_names, names) [13:31:15.943] changed <- common[...future.oldEnvVars[common] != [13:31:15.943] envs[common]] [13:31:15.943] NAMES <- toupper(changed) [13:31:15.943] args <- list() [13:31:15.943] for (kk in seq_along(NAMES)) { [13:31:15.943] name <- changed[[kk]] [13:31:15.943] NAME <- NAMES[[kk]] [13:31:15.943] if (name != NAME && is.element(NAME, old_names)) [13:31:15.943] next [13:31:15.943] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.943] } [13:31:15.943] NAMES <- toupper(added) [13:31:15.943] for (kk in seq_along(NAMES)) { [13:31:15.943] name <- added[[kk]] [13:31:15.943] NAME <- NAMES[[kk]] [13:31:15.943] if (name != NAME && is.element(NAME, old_names)) [13:31:15.943] next [13:31:15.943] args[[name]] <- "" [13:31:15.943] } [13:31:15.943] NAMES <- toupper(removed) [13:31:15.943] for (kk in seq_along(NAMES)) { [13:31:15.943] name <- removed[[kk]] [13:31:15.943] NAME <- NAMES[[kk]] [13:31:15.943] if (name != NAME && is.element(NAME, old_names)) [13:31:15.943] next [13:31:15.943] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:15.943] } [13:31:15.943] if (length(args) > 0) [13:31:15.943] base::do.call(base::Sys.setenv, args = args) [13:31:15.943] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:15.943] } [13:31:15.943] else { [13:31:15.943] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:15.943] } [13:31:15.943] { [13:31:15.943] if (base::length(...future.futureOptionsAdded) > [13:31:15.943] 0L) { [13:31:15.943] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:15.943] base::names(opts) <- ...future.futureOptionsAdded [13:31:15.943] base::options(opts) [13:31:15.943] } [13:31:15.943] { [13:31:15.943] NULL [13:31:15.943] options(future.plan = NULL) [13:31:15.943] if (is.na(NA_character_)) [13:31:15.943] Sys.unsetenv("R_FUTURE_PLAN") [13:31:15.943] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:15.943] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:15.943] .init = FALSE) [13:31:15.943] } [13:31:15.943] } [13:31:15.943] } [13:31:15.943] }) [13:31:15.943] if (TRUE) { [13:31:15.943] base::sink(type = "output", split = FALSE) [13:31:15.943] if (TRUE) { [13:31:15.943] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:15.943] } [13:31:15.943] else { [13:31:15.943] ...future.result["stdout"] <- base::list(NULL) [13:31:15.943] } [13:31:15.943] base::close(...future.stdout) [13:31:15.943] ...future.stdout <- NULL [13:31:15.943] } [13:31:15.943] ...future.result$conditions <- ...future.conditions [13:31:15.943] ...future.result$finished <- base::Sys.time() [13:31:15.943] ...future.result [13:31:15.943] } [1] 6 *** mirai_multisession(..., workers = 1L) ... DONE [13:31:15.949] Testing with 1 cores ... DONE> > message("*** mirai_multisession() ... DONE") *** mirai_multisession() ... DONE > > source("incl/end.R") > > proc.time() user system elapsed 0.53 0.06 1.20