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,load-only.R") [13:31:16.960] Detected 'R CMD check': - adjusting defaults to be a good citizen [13:31:16.962] Set package option 'parallelly.availableCores.methods' [13:31:16.963] Environment variable 'R_PARALLELLY_AVAILABLECORES_METHODS' not set [13:31:16.963] Set package option 'parallelly.availableCores.fallback' [13:31:16.963] Environment variable 'R_PARALLELLY_AVAILABLECORES_FALLBACK' not set [13:31:16.964] Set package option 'parallelly.availableCores.min' [13:31:16.964] Environment variable 'R_PARALLELLY_AVAILABLECORES_MIN' not set [13:31:16.964] Set package option 'parallelly.availableCores.system' [13:31:16.965] Environment variable 'R_PARALLELLY_AVAILABLECORES_SYSTEM' not set [13:31:16.965] Set package option 'parallelly.availableCores.logical' [13:31:16.965] Environment variable 'R_PARALLELLY_AVAILABLECORES_LOGICAL' not set [13:31:16.965] Set package option 'parallelly.availableCores.omit' [13:31:16.966] Environment variable 'R_PARALLELLY_AVAILABLECORES_OMIT' not set [13:31:16.966] Set package option 'parallelly.availableWorkers.methods' [13:31:16.966] Environment variable 'R_PARALLELLY_AVAILABLEWORKERS_METHODS' not set [13:31:16.966] Set package option 'parallelly.maxWorkers.localhost' [13:31:16.967] Environment variable 'R_PARALLELLY_MAXWORKERS_LOCALHOST' not set [13:31:16.967] Set package option 'parallelly.maxWorkers.localhost.ignore' [13:31:16.967] Environment variable 'R_PARALLELLY_MAXWORKERS_LOCALHOST_IGNORE' not set [13:31:16.967] Set package option 'parallelly.fork.enable' [13:31:16.968] Environment variable 'R_PARALLELLY_FORK_ENABLE' not set [13:31:16.968] Set package option 'parallelly.supportsMulticore.disableOn' [13:31:16.968] Environment variable 'R_PARALLELLY_SUPPORTSMULTICORE_DISABLEON' not set [13:31:16.968] Set package option 'parallelly.supportsMulticore.unstable' [13:31:16.969] Environment variable 'R_PARALLELLY_SUPPORTSMULTICORE_UNSTABLE' not set [13:31:16.969] Set package option 'parallelly.makeNodePSOCK.setup_strategy' [13:31:16.969] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_SETUP_STRATEGY' not set [13:31:16.970] Set package option 'parallelly.makeNodePSOCK.validate' [13:31:16.970] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_VALIDATE' not set [13:31:16.970] Set package option 'parallelly.makeNodePSOCK.connectTimeout' [13:31:16.970] R_PARALLELLY_MAKENODEPSOCK_CONNECTTIMEOUT='120' [13:31:16.971] Coercing from character to numeric: '120' [13:31:16.971] => options("parallelly.makeNodePSOCK.connectTimeout" = '120') [n=1, mode=double] [13:31:16.971] Set package option 'parallelly.makeNodePSOCK.timeout' [13:31:16.971] R_PARALLELLY_MAKENODEPSOCK_TIMEOUT='120' [13:31:16.972] Coercing from character to numeric: '120' [13:31:16.972] => options("parallelly.makeNodePSOCK.timeout" = '120') [n=1, mode=double] [13:31:16.972] Set package option 'parallelly.makeNodePSOCK.useXDR' [13:31:16.972] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_USEXDR' not set [13:31:16.973] Set package option 'parallelly.makeNodePSOCK.socketOptions' [13:31:16.973] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_SOCKETOPTIONS' not set [13:31:16.973] Set package option 'parallelly.makeNodePSOCK.rshcmd' [13:31:16.974] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_RSHCMD' not set [13:31:16.974] Set package option 'parallelly.makeNodePSOCK.rshopts' [13:31:16.974] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_RSHOPTS' not set [13:31:16.974] Set package option 'parallelly.makeNodePSOCK.tries' [13:31:16.975] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_TRIES' not set [13:31:16.975] Set package option 'parallelly.makeNodePSOCK.tries.delay' [13:31:16.975] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_TRIES_DELAY' not set [13:31:16.975] Set package option 'parallelly.makeNodePSOCK.rscript_label' [13:31:16.976] R_PARALLELLY_MAKENODEPSOCK_RSCRIPT_LABEL='TRUE' [13:31:16.976] => options("parallelly.makeNodePSOCK.rscript_label" = 'TRUE') [n=1, mode=character] [13:31:16.976] Set package option 'parallelly.makeNodePSOCK.sessionInfo.pkgs' [13:31:16.976] R_PARALLELLY_MAKENODEPSOCK_SESSIONINFO_PKGS='TRUE' [13:31:16.977] => options("parallelly.makeNodePSOCK.sessionInfo.pkgs" = 'TRUE') [n=1, mode=character] [13:31:16.977] Set package option 'parallelly.makeNodePSOCK.autoKill' [13:31:16.977] R_PARALLELLY_MAKENODEPSOCK_AUTOKILL='TRUE' [13:31:16.977] Coercing from character to logical: 'TRUE' [13:31:16.978] => options("parallelly.makeNodePSOCK.autoKill" = 'TRUE') [n=1, mode=logical] [13:31:16.978] Set package option 'parallelly.makeNodePSOCK.master.localhost.hostname' [13:31:16.978] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_MASTER_LOCALHOST_HOSTNAME' not set [13:31:16.978] Set package option 'parallelly.makeNodePSOCK.port.increment' [13:31:16.979] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_PORT_INCREMENT' not set [13:31:16.980] parallelly-specific environment variables: - R_PARALLELLY_MAKENODEPSOCK_AUTOKILL='TRUE' - R_PARALLELLY_MAKENODEPSOCK_CONNECTTIMEOUT='120' - R_PARALLELLY_MAKENODEPSOCK_RSCRIPT_LABEL='TRUE' - R_PARALLELLY_MAKENODEPSOCK_SESSIONINFO_PKGS='TRUE' - R_PARALLELLY_MAKENODEPSOCK_TIMEOUT='120' - R_PARALLELLY_RANDOM_PORTS='20000:39999' [13:31:16.988] Future-specific environment variables: [13:31:16.989] Environment variable 'R_FUTURE_DEMO_MANDELBROT_REGION' not set [13:31:16.989] Environment variable 'R_FUTURE_DEMO_MANDELBROT_NROW' not set [13:31:16.989] Environment variable 'R_FUTURE_DEPRECATED_IGNORE' not set [13:31:16.989] Environment variable 'R_FUTURE_DEPRECATED_DEFUNCT' not set [13:31:16.990] Environment variable 'R_FUTURE_FORK_MULTITHREADING_ENABLE' not set [13:31:16.990] Environment variable 'R_FUTURE_GLOBALS_MAXSIZE' not set [13:31:16.990] Environment variable 'R_FUTURE_GLOBALS_ONMISSING' not set [13:31:16.990] Environment variable 'R_FUTURE_GLOBALS_ONREFERENCE' not set [13:31:16.990] Environment variable 'R_FUTURE_GLOBALS_METHOD' not set [13:31:16.991] Environment variable 'R_FUTURE_GLOBALS_RESOLVE' not set [13:31:16.991] Environment variable 'R_FUTURE_LAZY_ASSERTOWNER' not set [13:31:16.991] Environment variable 'R_FUTURE_PLAN' not set [13:31:16.991] Environment variable 'R_FUTURE_PLAN_DISALLOW' not set [13:31:16.991] Environment variable 'R_FUTURE_PSOCK_RELAY_IMMEDIATE' not set [13:31:16.991] Environment variable 'R_FUTURE_RELAY_IMMEDIATE' not set [13:31:16.992] Environment variable 'R_FUTURE_RESOLVE_RECURSIVE' not set [13:31:16.992] Environment variable 'R_FUTURE_ALIVE_TIMEOUT' not set [13:31:16.992] Environment variable 'R_FUTURE_RESOLVED_TIMEOUT' not set [13:31:16.992] Environment variable 'R_FUTURE_CLUSTER_RESOLVED_TIMEOUT' not set [13:31:16.992] Environment variable 'R_FUTURE_MULTICORE_RESOLVED_TIMEOUT' not set [13:31:16.992] Environment variable 'R_FUTURE_ONFUTURECONDITION_KEEPFUTURE' not set [13:31:16.993] Environment variable 'R_FUTURE_RNG_ONMISUSE' not set [13:31:16.993] Environment variable 'R_FUTURE_GLOBALENV_ONMISUSE' not set [13:31:16.993] Environment variable 'R_FUTURE_WAIT_TIMEOUT' not set [13:31:16.993] Environment variable 'R_FUTURE_WAIT_INTERVAL' not set [13:31:16.993] Environment variable 'R_FUTURE_WAIT_ALPHA' not set [13:31:16.994] Environment variable 'R_FUTURE_ASSIGN_GLOBALS_EXCLUDE' not set [13:31:16.994] Environment variable 'R_FUTURE_OUTPUT_WINDOWS_REENCODE' not set [13:31:16.994] Environment variable 'R_FUTURE_GLOBALS_GLOBALSOF_LOCALS' not set [13:31:16.994] Environment variable 'R_FUTURE_STATE_ONINVALID' not set [13:31:16.994] Environment variable 'R_FUTURE_JOURNAL' not set [13:31:16.995] Environment variable 'R_FUTURE_GLOBALS_KEEPWHERE' not set [13:31:16.996] R process uuid: cf4c988c-96c1-a64d-5852-da6b19425a16 [13:31:16.996] Setting plan('default') [13:31:16.996] plan(): Setting new future strategy stack: [13:31:16.997] List of future strategies: [13:31:16.997] 1. sequential: [13:31:16.997] - args: function (..., envir = parent.frame(), workers = "") [13:31:16.997] - tweaked: FALSE [13:31:16.997] - call: NULL [13:31:16.998] plan(): nbrOfWorkers() = 1 [13:31:17.052] plan(): Setting new future strategy stack: [13:31:17.052] List of future strategies: [13:31:17.052] 1. mirai_multisession: [13:31:17.052] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:31:17.052] - tweaked: FALSE [13:31:17.052] - call: future::plan(future.mirai::mirai_multisession) [13:31:17.066] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:31:17.066] < mirai [$data] > [13:31:17.071] getGlobalsAndPackages() ... [13:31:17.071] Not searching for globals [13:31:17.071] - globals: [0] [13:31:17.071] getGlobalsAndPackages() ... DONE [13:31:17.072] getGlobalsAndPackages() ... [13:31:17.072] [13:31:17.072] - globals: [0] [13:31:17.072] getGlobalsAndPackages() ... DONE [13:31:17.320] Packages needed by the future expression (n = 0): [13:31:17.321] Packages needed by future strategies (n = 0): [13:31:17.322] { [13:31:17.322] { [13:31:17.322] { [13:31:17.322] ...future.startTime <- base::Sys.time() [13:31:17.322] { [13:31:17.322] { [13:31:17.322] { [13:31:17.322] base::local({ [13:31:17.322] has_future <- base::requireNamespace("future", [13:31:17.322] quietly = TRUE) [13:31:17.322] if (has_future) { [13:31:17.322] ns <- base::getNamespace("future") [13:31:17.322] version <- ns[[".package"]][["version"]] [13:31:17.322] if (is.null(version)) [13:31:17.322] version <- utils::packageVersion("future") [13:31:17.322] } [13:31:17.322] else { [13:31:17.322] version <- NULL [13:31:17.322] } [13:31:17.322] if (!has_future || version < "1.8.0") { [13:31:17.322] info <- base::c(r_version = base::gsub("R version ", [13:31:17.322] "", base::R.version$version.string), [13:31:17.322] platform = base::sprintf("%s (%s-bit)", [13:31:17.322] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:17.322] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:17.322] "release", "version")], collapse = " "), [13:31:17.322] hostname = base::Sys.info()[["nodename"]]) [13:31:17.322] info <- base::sprintf("%s: %s", base::names(info), [13:31:17.322] info) [13:31:17.322] info <- base::paste(info, collapse = "; ") [13:31:17.322] if (!has_future) { [13:31:17.322] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:17.322] info) [13:31:17.322] } [13:31:17.322] else { [13:31:17.322] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:17.322] info, version) [13:31:17.322] } [13:31:17.322] base::stop(msg) [13:31:17.322] } [13:31:17.322] }) [13:31:17.322] } [13:31:17.322] ...future.strategy.old <- future::plan("list") [13:31:17.322] options(future.plan = NULL) [13:31:17.322] Sys.unsetenv("R_FUTURE_PLAN") [13:31:17.322] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:17.322] } [13:31:17.322] ...future.workdir <- getwd() [13:31:17.322] } [13:31:17.322] ...future.oldOptions <- base::as.list(base::.Options) [13:31:17.322] ...future.oldEnvVars <- base::Sys.getenv() [13:31:17.322] } [13:31:17.322] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:17.322] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:17.322] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:17.322] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:17.322] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:17.322] future.stdout.windows.reencode = NULL, width = 80L) [13:31:17.322] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:17.322] base::names(...future.oldOptions)) [13:31:17.322] } [13:31:17.322] if (FALSE) { [13:31:17.322] } [13:31:17.322] else { [13:31:17.322] if (TRUE) { [13:31:17.322] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:17.322] open = "w") [13:31:17.322] } [13:31:17.322] else { [13:31:17.322] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:17.322] windows = "NUL", "/dev/null"), open = "w") [13:31:17.322] } [13:31:17.322] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:17.322] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:17.322] base::sink(type = "output", split = FALSE) [13:31:17.322] base::close(...future.stdout) [13:31:17.322] }, add = TRUE) [13:31:17.322] } [13:31:17.322] ...future.frame <- base::sys.nframe() [13:31:17.322] ...future.conditions <- base::list() [13:31:17.322] ...future.rng <- base::globalenv()$.Random.seed [13:31:17.322] if (FALSE) { [13:31:17.322] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:17.322] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:17.322] } [13:31:17.322] ...future.result <- base::tryCatch({ [13:31:17.322] base::withCallingHandlers({ [13:31:17.322] ...future.value <- base::withVisible(base::local(NA)) [13:31:17.322] future::FutureResult(value = ...future.value$value, [13:31:17.322] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:17.322] ...future.rng), globalenv = if (FALSE) [13:31:17.322] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:17.322] ...future.globalenv.names)) [13:31:17.322] else NULL, started = ...future.startTime, version = "1.8") [13:31:17.322] }, condition = base::local({ [13:31:17.322] c <- base::c [13:31:17.322] inherits <- base::inherits [13:31:17.322] invokeRestart <- base::invokeRestart [13:31:17.322] length <- base::length [13:31:17.322] list <- base::list [13:31:17.322] seq.int <- base::seq.int [13:31:17.322] signalCondition <- base::signalCondition [13:31:17.322] sys.calls <- base::sys.calls [13:31:17.322] `[[` <- base::`[[` [13:31:17.322] `+` <- base::`+` [13:31:17.322] `<<-` <- base::`<<-` [13:31:17.322] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:17.322] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:17.322] 3L)] [13:31:17.322] } [13:31:17.322] function(cond) { [13:31:17.322] is_error <- inherits(cond, "error") [13:31:17.322] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:17.322] NULL) [13:31:17.322] if (is_error) { [13:31:17.322] sessionInformation <- function() { [13:31:17.322] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:17.322] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:17.322] search = base::search(), system = base::Sys.info()) [13:31:17.322] } [13:31:17.322] ...future.conditions[[length(...future.conditions) + [13:31:17.322] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:17.322] cond$call), session = sessionInformation(), [13:31:17.322] timestamp = base::Sys.time(), signaled = 0L) [13:31:17.322] signalCondition(cond) [13:31:17.322] } [13:31:17.322] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:17.322] signal <- FALSE && inherits(cond, character(0)) [13:31:17.322] ...future.conditions[[length(...future.conditions) + [13:31:17.322] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:17.322] if (FALSE && !signal) { [13:31:17.322] muffleCondition <- function (cond, pattern = "^muffle") [13:31:17.322] { [13:31:17.322] inherits <- base::inherits [13:31:17.322] invokeRestart <- base::invokeRestart [13:31:17.322] is.null <- base::is.null [13:31:17.322] muffled <- FALSE [13:31:17.322] if (inherits(cond, "message")) { [13:31:17.322] muffled <- grepl(pattern, "muffleMessage") [13:31:17.322] if (muffled) [13:31:17.322] invokeRestart("muffleMessage") [13:31:17.322] } [13:31:17.322] else if (inherits(cond, "warning")) { [13:31:17.322] muffled <- grepl(pattern, "muffleWarning") [13:31:17.322] if (muffled) [13:31:17.322] invokeRestart("muffleWarning") [13:31:17.322] } [13:31:17.322] else if (inherits(cond, "condition")) { [13:31:17.322] if (!is.null(pattern)) { [13:31:17.322] computeRestarts <- base::computeRestarts [13:31:17.322] grepl <- base::grepl [13:31:17.322] restarts <- computeRestarts(cond) [13:31:17.322] for (restart in restarts) { [13:31:17.322] name <- restart$name [13:31:17.322] if (is.null(name)) [13:31:17.322] next [13:31:17.322] if (!grepl(pattern, name)) [13:31:17.322] next [13:31:17.322] invokeRestart(restart) [13:31:17.322] muffled <- TRUE [13:31:17.322] break [13:31:17.322] } [13:31:17.322] } [13:31:17.322] } [13:31:17.322] invisible(muffled) [13:31:17.322] } [13:31:17.322] muffleCondition(cond, pattern = "^muffle") [13:31:17.322] } [13:31:17.322] } [13:31:17.322] else { [13:31:17.322] if (TRUE) { [13:31:17.322] muffleCondition <- function (cond, pattern = "^muffle") [13:31:17.322] { [13:31:17.322] inherits <- base::inherits [13:31:17.322] invokeRestart <- base::invokeRestart [13:31:17.322] is.null <- base::is.null [13:31:17.322] muffled <- FALSE [13:31:17.322] if (inherits(cond, "message")) { [13:31:17.322] muffled <- grepl(pattern, "muffleMessage") [13:31:17.322] if (muffled) [13:31:17.322] invokeRestart("muffleMessage") [13:31:17.322] } [13:31:17.322] else if (inherits(cond, "warning")) { [13:31:17.322] muffled <- grepl(pattern, "muffleWarning") [13:31:17.322] if (muffled) [13:31:17.322] invokeRestart("muffleWarning") [13:31:17.322] } [13:31:17.322] else if (inherits(cond, "condition")) { [13:31:17.322] if (!is.null(pattern)) { [13:31:17.322] computeRestarts <- base::computeRestarts [13:31:17.322] grepl <- base::grepl [13:31:17.322] restarts <- computeRestarts(cond) [13:31:17.322] for (restart in restarts) { [13:31:17.322] name <- restart$name [13:31:17.322] if (is.null(name)) [13:31:17.322] next [13:31:17.322] if (!grepl(pattern, name)) [13:31:17.322] next [13:31:17.322] invokeRestart(restart) [13:31:17.322] muffled <- TRUE [13:31:17.322] break [13:31:17.322] } [13:31:17.322] } [13:31:17.322] } [13:31:17.322] invisible(muffled) [13:31:17.322] } [13:31:17.322] muffleCondition(cond, pattern = "^muffle") [13:31:17.322] } [13:31:17.322] } [13:31:17.322] } [13:31:17.322] })) [13:31:17.322] }, error = function(ex) { [13:31:17.322] base::structure(base::list(value = NULL, visible = NULL, [13:31:17.322] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:17.322] ...future.rng), started = ...future.startTime, [13:31:17.322] finished = Sys.time(), session_uuid = NA_character_, [13:31:17.322] version = "1.8"), class = "FutureResult") [13:31:17.322] }, finally = { [13:31:17.322] if (!identical(...future.workdir, getwd())) [13:31:17.322] setwd(...future.workdir) [13:31:17.322] { [13:31:17.322] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:17.322] ...future.oldOptions$nwarnings <- NULL [13:31:17.322] } [13:31:17.322] base::options(...future.oldOptions) [13:31:17.322] if (.Platform$OS.type == "windows") { [13:31:17.322] old_names <- names(...future.oldEnvVars) [13:31:17.322] envs <- base::Sys.getenv() [13:31:17.322] names <- names(envs) [13:31:17.322] common <- intersect(names, old_names) [13:31:17.322] added <- setdiff(names, old_names) [13:31:17.322] removed <- setdiff(old_names, names) [13:31:17.322] changed <- common[...future.oldEnvVars[common] != [13:31:17.322] envs[common]] [13:31:17.322] NAMES <- toupper(changed) [13:31:17.322] args <- list() [13:31:17.322] for (kk in seq_along(NAMES)) { [13:31:17.322] name <- changed[[kk]] [13:31:17.322] NAME <- NAMES[[kk]] [13:31:17.322] if (name != NAME && is.element(NAME, old_names)) [13:31:17.322] next [13:31:17.322] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:17.322] } [13:31:17.322] NAMES <- toupper(added) [13:31:17.322] for (kk in seq_along(NAMES)) { [13:31:17.322] name <- added[[kk]] [13:31:17.322] NAME <- NAMES[[kk]] [13:31:17.322] if (name != NAME && is.element(NAME, old_names)) [13:31:17.322] next [13:31:17.322] args[[name]] <- "" [13:31:17.322] } [13:31:17.322] NAMES <- toupper(removed) [13:31:17.322] for (kk in seq_along(NAMES)) { [13:31:17.322] name <- removed[[kk]] [13:31:17.322] NAME <- NAMES[[kk]] [13:31:17.322] if (name != NAME && is.element(NAME, old_names)) [13:31:17.322] next [13:31:17.322] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:17.322] } [13:31:17.322] if (length(args) > 0) [13:31:17.322] base::do.call(base::Sys.setenv, args = args) [13:31:17.322] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:17.322] } [13:31:17.322] else { [13:31:17.322] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:17.322] } [13:31:17.322] { [13:31:17.322] if (base::length(...future.futureOptionsAdded) > [13:31:17.322] 0L) { [13:31:17.322] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:17.322] base::names(opts) <- ...future.futureOptionsAdded [13:31:17.322] base::options(opts) [13:31:17.322] } [13:31:17.322] { [13:31:17.322] NULL [13:31:17.322] options(future.plan = NULL) [13:31:17.322] if (is.na(NA_character_)) [13:31:17.322] Sys.unsetenv("R_FUTURE_PLAN") [13:31:17.322] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:17.322] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:17.322] .init = FALSE) [13:31:17.322] } [13:31:17.322] } [13:31:17.322] } [13:31:17.322] }) [13:31:17.322] if (TRUE) { [13:31:17.322] base::sink(type = "output", split = FALSE) [13:31:17.322] if (TRUE) { [13:31:17.322] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:17.322] } [13:31:17.322] else { [13:31:17.322] ...future.result["stdout"] <- base::list(NULL) [13:31:17.322] } [13:31:17.322] base::close(...future.stdout) [13:31:17.322] ...future.stdout <- NULL [13:31:17.322] } [13:31:17.322] ...future.result$conditions <- ...future.conditions [13:31:17.322] ...future.result$finished <- base::Sys.time() [13:31:17.322] ...future.result [13:31:17.322] } [13:31:17.441] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:31:17.442] plan(): nbrOfWorkers() = 2 > > message("*** plan() ...") *** plan() ... > > message("*** future::plan(future.mirai::mirai_multisession)") *** future::plan(future.mirai::mirai_multisession) > oplan <- future::plan(future.mirai::mirai_multisession) [13:31:17.442] plan(): Setting new future strategy stack: [13:31:17.443] List of future strategies: [13:31:17.443] 1. mirai_multisession: [13:31:17.443] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:31:17.443] - tweaked: FALSE [13:31:17.443] - call: future::plan(future.mirai::mirai_multisession) [13:31:17.456] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:31:17.456] < mirai [$data] > [13:31:17.458] getGlobalsAndPackages() ... [13:31:17.458] Not searching for globals [13:31:17.459] - globals: [0] [13:31:17.459] getGlobalsAndPackages() ... DONE [13:31:17.459] getGlobalsAndPackages() ... [13:31:17.459] [13:31:17.459] - globals: [0] [13:31:17.459] getGlobalsAndPackages() ... DONE [13:31:17.460] Packages needed by the future expression (n = 0): [13:31:17.460] Packages needed by future strategies (n = 0): [13:31:17.462] { [13:31:17.462] { [13:31:17.462] { [13:31:17.462] ...future.startTime <- base::Sys.time() [13:31:17.462] { [13:31:17.462] { [13:31:17.462] { [13:31:17.462] base::local({ [13:31:17.462] has_future <- base::requireNamespace("future", [13:31:17.462] quietly = TRUE) [13:31:17.462] if (has_future) { [13:31:17.462] ns <- base::getNamespace("future") [13:31:17.462] version <- ns[[".package"]][["version"]] [13:31:17.462] if (is.null(version)) [13:31:17.462] version <- utils::packageVersion("future") [13:31:17.462] } [13:31:17.462] else { [13:31:17.462] version <- NULL [13:31:17.462] } [13:31:17.462] if (!has_future || version < "1.8.0") { [13:31:17.462] info <- base::c(r_version = base::gsub("R version ", [13:31:17.462] "", base::R.version$version.string), [13:31:17.462] platform = base::sprintf("%s (%s-bit)", [13:31:17.462] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:17.462] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:17.462] "release", "version")], collapse = " "), [13:31:17.462] hostname = base::Sys.info()[["nodename"]]) [13:31:17.462] info <- base::sprintf("%s: %s", base::names(info), [13:31:17.462] info) [13:31:17.462] info <- base::paste(info, collapse = "; ") [13:31:17.462] if (!has_future) { [13:31:17.462] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:17.462] info) [13:31:17.462] } [13:31:17.462] else { [13:31:17.462] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:17.462] info, version) [13:31:17.462] } [13:31:17.462] base::stop(msg) [13:31:17.462] } [13:31:17.462] }) [13:31:17.462] } [13:31:17.462] ...future.strategy.old <- future::plan("list") [13:31:17.462] options(future.plan = NULL) [13:31:17.462] Sys.unsetenv("R_FUTURE_PLAN") [13:31:17.462] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:17.462] } [13:31:17.462] ...future.workdir <- getwd() [13:31:17.462] } [13:31:17.462] ...future.oldOptions <- base::as.list(base::.Options) [13:31:17.462] ...future.oldEnvVars <- base::Sys.getenv() [13:31:17.462] } [13:31:17.462] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:17.462] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:17.462] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:17.462] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:17.462] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:17.462] future.stdout.windows.reencode = NULL, width = 80L) [13:31:17.462] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:17.462] base::names(...future.oldOptions)) [13:31:17.462] } [13:31:17.462] if (FALSE) { [13:31:17.462] } [13:31:17.462] else { [13:31:17.462] if (TRUE) { [13:31:17.462] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:17.462] open = "w") [13:31:17.462] } [13:31:17.462] else { [13:31:17.462] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:17.462] windows = "NUL", "/dev/null"), open = "w") [13:31:17.462] } [13:31:17.462] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:17.462] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:17.462] base::sink(type = "output", split = FALSE) [13:31:17.462] base::close(...future.stdout) [13:31:17.462] }, add = TRUE) [13:31:17.462] } [13:31:17.462] ...future.frame <- base::sys.nframe() [13:31:17.462] ...future.conditions <- base::list() [13:31:17.462] ...future.rng <- base::globalenv()$.Random.seed [13:31:17.462] if (FALSE) { [13:31:17.462] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:17.462] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:17.462] } [13:31:17.462] ...future.result <- base::tryCatch({ [13:31:17.462] base::withCallingHandlers({ [13:31:17.462] ...future.value <- base::withVisible(base::local(NA)) [13:31:17.462] future::FutureResult(value = ...future.value$value, [13:31:17.462] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:17.462] ...future.rng), globalenv = if (FALSE) [13:31:17.462] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:17.462] ...future.globalenv.names)) [13:31:17.462] else NULL, started = ...future.startTime, version = "1.8") [13:31:17.462] }, condition = base::local({ [13:31:17.462] c <- base::c [13:31:17.462] inherits <- base::inherits [13:31:17.462] invokeRestart <- base::invokeRestart [13:31:17.462] length <- base::length [13:31:17.462] list <- base::list [13:31:17.462] seq.int <- base::seq.int [13:31:17.462] signalCondition <- base::signalCondition [13:31:17.462] sys.calls <- base::sys.calls [13:31:17.462] `[[` <- base::`[[` [13:31:17.462] `+` <- base::`+` [13:31:17.462] `<<-` <- base::`<<-` [13:31:17.462] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:17.462] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:17.462] 3L)] [13:31:17.462] } [13:31:17.462] function(cond) { [13:31:17.462] is_error <- inherits(cond, "error") [13:31:17.462] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:17.462] NULL) [13:31:17.462] if (is_error) { [13:31:17.462] sessionInformation <- function() { [13:31:17.462] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:17.462] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:17.462] search = base::search(), system = base::Sys.info()) [13:31:17.462] } [13:31:17.462] ...future.conditions[[length(...future.conditions) + [13:31:17.462] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:17.462] cond$call), session = sessionInformation(), [13:31:17.462] timestamp = base::Sys.time(), signaled = 0L) [13:31:17.462] signalCondition(cond) [13:31:17.462] } [13:31:17.462] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:17.462] signal <- FALSE && inherits(cond, character(0)) [13:31:17.462] ...future.conditions[[length(...future.conditions) + [13:31:17.462] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:17.462] if (FALSE && !signal) { [13:31:17.462] muffleCondition <- function (cond, pattern = "^muffle") [13:31:17.462] { [13:31:17.462] inherits <- base::inherits [13:31:17.462] invokeRestart <- base::invokeRestart [13:31:17.462] is.null <- base::is.null [13:31:17.462] muffled <- FALSE [13:31:17.462] if (inherits(cond, "message")) { [13:31:17.462] muffled <- grepl(pattern, "muffleMessage") [13:31:17.462] if (muffled) [13:31:17.462] invokeRestart("muffleMessage") [13:31:17.462] } [13:31:17.462] else if (inherits(cond, "warning")) { [13:31:17.462] muffled <- grepl(pattern, "muffleWarning") [13:31:17.462] if (muffled) [13:31:17.462] invokeRestart("muffleWarning") [13:31:17.462] } [13:31:17.462] else if (inherits(cond, "condition")) { [13:31:17.462] if (!is.null(pattern)) { [13:31:17.462] computeRestarts <- base::computeRestarts [13:31:17.462] grepl <- base::grepl [13:31:17.462] restarts <- computeRestarts(cond) [13:31:17.462] for (restart in restarts) { [13:31:17.462] name <- restart$name [13:31:17.462] if (is.null(name)) [13:31:17.462] next [13:31:17.462] if (!grepl(pattern, name)) [13:31:17.462] next [13:31:17.462] invokeRestart(restart) [13:31:17.462] muffled <- TRUE [13:31:17.462] break [13:31:17.462] } [13:31:17.462] } [13:31:17.462] } [13:31:17.462] invisible(muffled) [13:31:17.462] } [13:31:17.462] muffleCondition(cond, pattern = "^muffle") [13:31:17.462] } [13:31:17.462] } [13:31:17.462] else { [13:31:17.462] if (TRUE) { [13:31:17.462] muffleCondition <- function (cond, pattern = "^muffle") [13:31:17.462] { [13:31:17.462] inherits <- base::inherits [13:31:17.462] invokeRestart <- base::invokeRestart [13:31:17.462] is.null <- base::is.null [13:31:17.462] muffled <- FALSE [13:31:17.462] if (inherits(cond, "message")) { [13:31:17.462] muffled <- grepl(pattern, "muffleMessage") [13:31:17.462] if (muffled) [13:31:17.462] invokeRestart("muffleMessage") [13:31:17.462] } [13:31:17.462] else if (inherits(cond, "warning")) { [13:31:17.462] muffled <- grepl(pattern, "muffleWarning") [13:31:17.462] if (muffled) [13:31:17.462] invokeRestart("muffleWarning") [13:31:17.462] } [13:31:17.462] else if (inherits(cond, "condition")) { [13:31:17.462] if (!is.null(pattern)) { [13:31:17.462] computeRestarts <- base::computeRestarts [13:31:17.462] grepl <- base::grepl [13:31:17.462] restarts <- computeRestarts(cond) [13:31:17.462] for (restart in restarts) { [13:31:17.462] name <- restart$name [13:31:17.462] if (is.null(name)) [13:31:17.462] next [13:31:17.462] if (!grepl(pattern, name)) [13:31:17.462] next [13:31:17.462] invokeRestart(restart) [13:31:17.462] muffled <- TRUE [13:31:17.462] break [13:31:17.462] } [13:31:17.462] } [13:31:17.462] } [13:31:17.462] invisible(muffled) [13:31:17.462] } [13:31:17.462] muffleCondition(cond, pattern = "^muffle") [13:31:17.462] } [13:31:17.462] } [13:31:17.462] } [13:31:17.462] })) [13:31:17.462] }, error = function(ex) { [13:31:17.462] base::structure(base::list(value = NULL, visible = NULL, [13:31:17.462] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:17.462] ...future.rng), started = ...future.startTime, [13:31:17.462] finished = Sys.time(), session_uuid = NA_character_, [13:31:17.462] version = "1.8"), class = "FutureResult") [13:31:17.462] }, finally = { [13:31:17.462] if (!identical(...future.workdir, getwd())) [13:31:17.462] setwd(...future.workdir) [13:31:17.462] { [13:31:17.462] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:17.462] ...future.oldOptions$nwarnings <- NULL [13:31:17.462] } [13:31:17.462] base::options(...future.oldOptions) [13:31:17.462] if (.Platform$OS.type == "windows") { [13:31:17.462] old_names <- names(...future.oldEnvVars) [13:31:17.462] envs <- base::Sys.getenv() [13:31:17.462] names <- names(envs) [13:31:17.462] common <- intersect(names, old_names) [13:31:17.462] added <- setdiff(names, old_names) [13:31:17.462] removed <- setdiff(old_names, names) [13:31:17.462] changed <- common[...future.oldEnvVars[common] != [13:31:17.462] envs[common]] [13:31:17.462] NAMES <- toupper(changed) [13:31:17.462] args <- list() [13:31:17.462] for (kk in seq_along(NAMES)) { [13:31:17.462] name <- changed[[kk]] [13:31:17.462] NAME <- NAMES[[kk]] [13:31:17.462] if (name != NAME && is.element(NAME, old_names)) [13:31:17.462] next [13:31:17.462] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:17.462] } [13:31:17.462] NAMES <- toupper(added) [13:31:17.462] for (kk in seq_along(NAMES)) { [13:31:17.462] name <- added[[kk]] [13:31:17.462] NAME <- NAMES[[kk]] [13:31:17.462] if (name != NAME && is.element(NAME, old_names)) [13:31:17.462] next [13:31:17.462] args[[name]] <- "" [13:31:17.462] } [13:31:17.462] NAMES <- toupper(removed) [13:31:17.462] for (kk in seq_along(NAMES)) { [13:31:17.462] name <- removed[[kk]] [13:31:17.462] NAME <- NAMES[[kk]] [13:31:17.462] if (name != NAME && is.element(NAME, old_names)) [13:31:17.462] next [13:31:17.462] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:17.462] } [13:31:17.462] if (length(args) > 0) [13:31:17.462] base::do.call(base::Sys.setenv, args = args) [13:31:17.462] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:17.462] } [13:31:17.462] else { [13:31:17.462] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:17.462] } [13:31:17.462] { [13:31:17.462] if (base::length(...future.futureOptionsAdded) > [13:31:17.462] 0L) { [13:31:17.462] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:17.462] base::names(opts) <- ...future.futureOptionsAdded [13:31:17.462] base::options(opts) [13:31:17.462] } [13:31:17.462] { [13:31:17.462] NULL [13:31:17.462] options(future.plan = NULL) [13:31:17.462] if (is.na(NA_character_)) [13:31:17.462] Sys.unsetenv("R_FUTURE_PLAN") [13:31:17.462] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:17.462] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:17.462] .init = FALSE) [13:31:17.462] } [13:31:17.462] } [13:31:17.462] } [13:31:17.462] }) [13:31:17.462] if (TRUE) { [13:31:17.462] base::sink(type = "output", split = FALSE) [13:31:17.462] if (TRUE) { [13:31:17.462] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:17.462] } [13:31:17.462] else { [13:31:17.462] ...future.result["stdout"] <- base::list(NULL) [13:31:17.462] } [13:31:17.462] base::close(...future.stdout) [13:31:17.462] ...future.stdout <- NULL [13:31:17.462] } [13:31:17.462] ...future.result$conditions <- ...future.conditions [13:31:17.462] ...future.result$finished <- base::Sys.time() [13:31:17.462] ...future.result [13:31:17.462] } [13:31:17.580] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:31:17.580] plan(): nbrOfWorkers() = 2 > print(future::plan()) mirai_multisession: - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) - tweaked: FALSE - call: future::plan(future.mirai::mirai_multisession) > future::plan(oplan) [13:31:17.581] plan(): Setting new future strategy stack: [13:31:17.581] List of future strategies: [13:31:17.581] 1. mirai_multisession: [13:31:17.581] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:31:17.581] - tweaked: FALSE [13:31:17.581] - call: future::plan(future.mirai::mirai_multisession) [13:31:17.582] plan(): nbrOfWorkers() = 2 > print(future::plan()) mirai_multisession: - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) - tweaked: FALSE - call: future::plan(future.mirai::mirai_multisession) > > > library("future.mirai") Loading required package: future [13:31:17.590] Option 'future.startup.script': TRUE [13:31:17.590] Future startup scripts considered: '.future.R', '~/.future.R' [13:31:17.590] Future startup scripts found: > plan(mirai_multisession) [13:31:17.593] plan(): Setting new future strategy stack: [13:31:17.593] List of future strategies: [13:31:17.593] 1. mirai_multisession: [13:31:17.593] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:31:17.593] - tweaked: FALSE [13:31:17.593] - call: plan(mirai_multisession) [13:31:17.593] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:31:17.594] < mirai [$data] > [13:31:17.596] getGlobalsAndPackages() ... [13:31:17.596] Not searching for globals [13:31:17.596] - globals: [0] [13:31:17.596] getGlobalsAndPackages() ... DONE [13:31:17.596] getGlobalsAndPackages() ... [13:31:17.597] [13:31:17.597] - globals: [0] [13:31:17.597] getGlobalsAndPackages() ... DONE [13:31:17.597] Packages needed by the future expression (n = 0): [13:31:17.597] Packages needed by future strategies (n = 0): [13:31:17.598] { [13:31:17.598] { [13:31:17.598] { [13:31:17.598] ...future.startTime <- base::Sys.time() [13:31:17.598] { [13:31:17.598] { [13:31:17.598] { [13:31:17.598] base::local({ [13:31:17.598] has_future <- base::requireNamespace("future", [13:31:17.598] quietly = TRUE) [13:31:17.598] if (has_future) { [13:31:17.598] ns <- base::getNamespace("future") [13:31:17.598] version <- ns[[".package"]][["version"]] [13:31:17.598] if (is.null(version)) [13:31:17.598] version <- utils::packageVersion("future") [13:31:17.598] } [13:31:17.598] else { [13:31:17.598] version <- NULL [13:31:17.598] } [13:31:17.598] if (!has_future || version < "1.8.0") { [13:31:17.598] info <- base::c(r_version = base::gsub("R version ", [13:31:17.598] "", base::R.version$version.string), [13:31:17.598] platform = base::sprintf("%s (%s-bit)", [13:31:17.598] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:17.598] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:17.598] "release", "version")], collapse = " "), [13:31:17.598] hostname = base::Sys.info()[["nodename"]]) [13:31:17.598] info <- base::sprintf("%s: %s", base::names(info), [13:31:17.598] info) [13:31:17.598] info <- base::paste(info, collapse = "; ") [13:31:17.598] if (!has_future) { [13:31:17.598] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:17.598] info) [13:31:17.598] } [13:31:17.598] else { [13:31:17.598] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:17.598] info, version) [13:31:17.598] } [13:31:17.598] base::stop(msg) [13:31:17.598] } [13:31:17.598] }) [13:31:17.598] } [13:31:17.598] ...future.strategy.old <- future::plan("list") [13:31:17.598] options(future.plan = NULL) [13:31:17.598] Sys.unsetenv("R_FUTURE_PLAN") [13:31:17.598] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:17.598] } [13:31:17.598] ...future.workdir <- getwd() [13:31:17.598] } [13:31:17.598] ...future.oldOptions <- base::as.list(base::.Options) [13:31:17.598] ...future.oldEnvVars <- base::Sys.getenv() [13:31:17.598] } [13:31:17.598] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:17.598] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:17.598] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:17.598] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:17.598] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:17.598] future.stdout.windows.reencode = NULL, width = 80L) [13:31:17.598] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:17.598] base::names(...future.oldOptions)) [13:31:17.598] } [13:31:17.598] if (FALSE) { [13:31:17.598] } [13:31:17.598] else { [13:31:17.598] if (TRUE) { [13:31:17.598] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:17.598] open = "w") [13:31:17.598] } [13:31:17.598] else { [13:31:17.598] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:17.598] windows = "NUL", "/dev/null"), open = "w") [13:31:17.598] } [13:31:17.598] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:17.598] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:17.598] base::sink(type = "output", split = FALSE) [13:31:17.598] base::close(...future.stdout) [13:31:17.598] }, add = TRUE) [13:31:17.598] } [13:31:17.598] ...future.frame <- base::sys.nframe() [13:31:17.598] ...future.conditions <- base::list() [13:31:17.598] ...future.rng <- base::globalenv()$.Random.seed [13:31:17.598] if (FALSE) { [13:31:17.598] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:17.598] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:17.598] } [13:31:17.598] ...future.result <- base::tryCatch({ [13:31:17.598] base::withCallingHandlers({ [13:31:17.598] ...future.value <- base::withVisible(base::local(NA)) [13:31:17.598] future::FutureResult(value = ...future.value$value, [13:31:17.598] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:17.598] ...future.rng), globalenv = if (FALSE) [13:31:17.598] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:17.598] ...future.globalenv.names)) [13:31:17.598] else NULL, started = ...future.startTime, version = "1.8") [13:31:17.598] }, condition = base::local({ [13:31:17.598] c <- base::c [13:31:17.598] inherits <- base::inherits [13:31:17.598] invokeRestart <- base::invokeRestart [13:31:17.598] length <- base::length [13:31:17.598] list <- base::list [13:31:17.598] seq.int <- base::seq.int [13:31:17.598] signalCondition <- base::signalCondition [13:31:17.598] sys.calls <- base::sys.calls [13:31:17.598] `[[` <- base::`[[` [13:31:17.598] `+` <- base::`+` [13:31:17.598] `<<-` <- base::`<<-` [13:31:17.598] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:17.598] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:17.598] 3L)] [13:31:17.598] } [13:31:17.598] function(cond) { [13:31:17.598] is_error <- inherits(cond, "error") [13:31:17.598] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:17.598] NULL) [13:31:17.598] if (is_error) { [13:31:17.598] sessionInformation <- function() { [13:31:17.598] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:17.598] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:17.598] search = base::search(), system = base::Sys.info()) [13:31:17.598] } [13:31:17.598] ...future.conditions[[length(...future.conditions) + [13:31:17.598] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:17.598] cond$call), session = sessionInformation(), [13:31:17.598] timestamp = base::Sys.time(), signaled = 0L) [13:31:17.598] signalCondition(cond) [13:31:17.598] } [13:31:17.598] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:17.598] signal <- FALSE && inherits(cond, character(0)) [13:31:17.598] ...future.conditions[[length(...future.conditions) + [13:31:17.598] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:17.598] if (FALSE && !signal) { [13:31:17.598] muffleCondition <- function (cond, pattern = "^muffle") [13:31:17.598] { [13:31:17.598] inherits <- base::inherits [13:31:17.598] invokeRestart <- base::invokeRestart [13:31:17.598] is.null <- base::is.null [13:31:17.598] muffled <- FALSE [13:31:17.598] if (inherits(cond, "message")) { [13:31:17.598] muffled <- grepl(pattern, "muffleMessage") [13:31:17.598] if (muffled) [13:31:17.598] invokeRestart("muffleMessage") [13:31:17.598] } [13:31:17.598] else if (inherits(cond, "warning")) { [13:31:17.598] muffled <- grepl(pattern, "muffleWarning") [13:31:17.598] if (muffled) [13:31:17.598] invokeRestart("muffleWarning") [13:31:17.598] } [13:31:17.598] else if (inherits(cond, "condition")) { [13:31:17.598] if (!is.null(pattern)) { [13:31:17.598] computeRestarts <- base::computeRestarts [13:31:17.598] grepl <- base::grepl [13:31:17.598] restarts <- computeRestarts(cond) [13:31:17.598] for (restart in restarts) { [13:31:17.598] name <- restart$name [13:31:17.598] if (is.null(name)) [13:31:17.598] next [13:31:17.598] if (!grepl(pattern, name)) [13:31:17.598] next [13:31:17.598] invokeRestart(restart) [13:31:17.598] muffled <- TRUE [13:31:17.598] break [13:31:17.598] } [13:31:17.598] } [13:31:17.598] } [13:31:17.598] invisible(muffled) [13:31:17.598] } [13:31:17.598] muffleCondition(cond, pattern = "^muffle") [13:31:17.598] } [13:31:17.598] } [13:31:17.598] else { [13:31:17.598] if (TRUE) { [13:31:17.598] muffleCondition <- function (cond, pattern = "^muffle") [13:31:17.598] { [13:31:17.598] inherits <- base::inherits [13:31:17.598] invokeRestart <- base::invokeRestart [13:31:17.598] is.null <- base::is.null [13:31:17.598] muffled <- FALSE [13:31:17.598] if (inherits(cond, "message")) { [13:31:17.598] muffled <- grepl(pattern, "muffleMessage") [13:31:17.598] if (muffled) [13:31:17.598] invokeRestart("muffleMessage") [13:31:17.598] } [13:31:17.598] else if (inherits(cond, "warning")) { [13:31:17.598] muffled <- grepl(pattern, "muffleWarning") [13:31:17.598] if (muffled) [13:31:17.598] invokeRestart("muffleWarning") [13:31:17.598] } [13:31:17.598] else if (inherits(cond, "condition")) { [13:31:17.598] if (!is.null(pattern)) { [13:31:17.598] computeRestarts <- base::computeRestarts [13:31:17.598] grepl <- base::grepl [13:31:17.598] restarts <- computeRestarts(cond) [13:31:17.598] for (restart in restarts) { [13:31:17.598] name <- restart$name [13:31:17.598] if (is.null(name)) [13:31:17.598] next [13:31:17.598] if (!grepl(pattern, name)) [13:31:17.598] next [13:31:17.598] invokeRestart(restart) [13:31:17.598] muffled <- TRUE [13:31:17.598] break [13:31:17.598] } [13:31:17.598] } [13:31:17.598] } [13:31:17.598] invisible(muffled) [13:31:17.598] } [13:31:17.598] muffleCondition(cond, pattern = "^muffle") [13:31:17.598] } [13:31:17.598] } [13:31:17.598] } [13:31:17.598] })) [13:31:17.598] }, error = function(ex) { [13:31:17.598] base::structure(base::list(value = NULL, visible = NULL, [13:31:17.598] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:17.598] ...future.rng), started = ...future.startTime, [13:31:17.598] finished = Sys.time(), session_uuid = NA_character_, [13:31:17.598] version = "1.8"), class = "FutureResult") [13:31:17.598] }, finally = { [13:31:17.598] if (!identical(...future.workdir, getwd())) [13:31:17.598] setwd(...future.workdir) [13:31:17.598] { [13:31:17.598] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:17.598] ...future.oldOptions$nwarnings <- NULL [13:31:17.598] } [13:31:17.598] base::options(...future.oldOptions) [13:31:17.598] if (.Platform$OS.type == "windows") { [13:31:17.598] old_names <- names(...future.oldEnvVars) [13:31:17.598] envs <- base::Sys.getenv() [13:31:17.598] names <- names(envs) [13:31:17.598] common <- intersect(names, old_names) [13:31:17.598] added <- setdiff(names, old_names) [13:31:17.598] removed <- setdiff(old_names, names) [13:31:17.598] changed <- common[...future.oldEnvVars[common] != [13:31:17.598] envs[common]] [13:31:17.598] NAMES <- toupper(changed) [13:31:17.598] args <- list() [13:31:17.598] for (kk in seq_along(NAMES)) { [13:31:17.598] name <- changed[[kk]] [13:31:17.598] NAME <- NAMES[[kk]] [13:31:17.598] if (name != NAME && is.element(NAME, old_names)) [13:31:17.598] next [13:31:17.598] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:17.598] } [13:31:17.598] NAMES <- toupper(added) [13:31:17.598] for (kk in seq_along(NAMES)) { [13:31:17.598] name <- added[[kk]] [13:31:17.598] NAME <- NAMES[[kk]] [13:31:17.598] if (name != NAME && is.element(NAME, old_names)) [13:31:17.598] next [13:31:17.598] args[[name]] <- "" [13:31:17.598] } [13:31:17.598] NAMES <- toupper(removed) [13:31:17.598] for (kk in seq_along(NAMES)) { [13:31:17.598] name <- removed[[kk]] [13:31:17.598] NAME <- NAMES[[kk]] [13:31:17.598] if (name != NAME && is.element(NAME, old_names)) [13:31:17.598] next [13:31:17.598] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:17.598] } [13:31:17.598] if (length(args) > 0) [13:31:17.598] base::do.call(base::Sys.setenv, args = args) [13:31:17.598] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:17.598] } [13:31:17.598] else { [13:31:17.598] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:17.598] } [13:31:17.598] { [13:31:17.598] if (base::length(...future.futureOptionsAdded) > [13:31:17.598] 0L) { [13:31:17.598] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:17.598] base::names(opts) <- ...future.futureOptionsAdded [13:31:17.598] base::options(opts) [13:31:17.598] } [13:31:17.598] { [13:31:17.598] NULL [13:31:17.598] options(future.plan = NULL) [13:31:17.598] if (is.na(NA_character_)) [13:31:17.598] Sys.unsetenv("R_FUTURE_PLAN") [13:31:17.598] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:17.598] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:17.598] .init = FALSE) [13:31:17.598] } [13:31:17.598] } [13:31:17.598] } [13:31:17.598] }) [13:31:17.598] if (TRUE) { [13:31:17.598] base::sink(type = "output", split = FALSE) [13:31:17.598] if (TRUE) { [13:31:17.598] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:17.598] } [13:31:17.598] else { [13:31:17.598] ...future.result["stdout"] <- base::list(NULL) [13:31:17.598] } [13:31:17.598] base::close(...future.stdout) [13:31:17.598] ...future.stdout <- NULL [13:31:17.598] } [13:31:17.598] ...future.result$conditions <- ...future.conditions [13:31:17.598] ...future.result$finished <- base::Sys.time() [13:31:17.598] ...future.result [13:31:17.598] } [13:31:17.604] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:31:17.605] plan(): nbrOfWorkers() = 2 > > for (type in c("mirai_multisession")) { + mprintf("*** plan('%s') ...", type) + + plan(type) + stopifnot(inherits(plan("next"), "mirai_multisession")) + + a <- 0 + f <- future({ + b <- 3 + c <- 2 + a * b * c + }) + a <- 7 ## Make sure globals are frozen + v <- value(f) + print(v) + stopifnot(v == 0) + + mprintf("*** plan('%s') ... DONE", type) + } # for (type ...) [13:31:17.612] *** plan('mirai_multisession') ...[13:31:17.612] plan(): Setting new future strategy stack: [13:31:17.613] List of future strategies: [13:31:17.613] 1. mirai_multisession: [13:31:17.613] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:31:17.613] - tweaked: FALSE [13:31:17.613] - call: plan(type) [13:31:17.613] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:31:17.613] < mirai [$data] > [13:31:17.615] getGlobalsAndPackages() ... [13:31:17.616] Not searching for globals [13:31:17.616] - globals: [0] [13:31:17.616] getGlobalsAndPackages() ... DONE [13:31:17.616] getGlobalsAndPackages() ... [13:31:17.616] [13:31:17.616] - globals: [0] [13:31:17.617] getGlobalsAndPackages() ... DONE [13:31:17.617] Packages needed by the future expression (n = 0): [13:31:17.617] Packages needed by future strategies (n = 0): [13:31:17.618] { [13:31:17.618] { [13:31:17.618] { [13:31:17.618] ...future.startTime <- base::Sys.time() [13:31:17.618] { [13:31:17.618] { [13:31:17.618] { [13:31:17.618] base::local({ [13:31:17.618] has_future <- base::requireNamespace("future", [13:31:17.618] quietly = TRUE) [13:31:17.618] if (has_future) { [13:31:17.618] ns <- base::getNamespace("future") [13:31:17.618] version <- ns[[".package"]][["version"]] [13:31:17.618] if (is.null(version)) [13:31:17.618] version <- utils::packageVersion("future") [13:31:17.618] } [13:31:17.618] else { [13:31:17.618] version <- NULL [13:31:17.618] } [13:31:17.618] if (!has_future || version < "1.8.0") { [13:31:17.618] info <- base::c(r_version = base::gsub("R version ", [13:31:17.618] "", base::R.version$version.string), [13:31:17.618] platform = base::sprintf("%s (%s-bit)", [13:31:17.618] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:17.618] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:17.618] "release", "version")], collapse = " "), [13:31:17.618] hostname = base::Sys.info()[["nodename"]]) [13:31:17.618] info <- base::sprintf("%s: %s", base::names(info), [13:31:17.618] info) [13:31:17.618] info <- base::paste(info, collapse = "; ") [13:31:17.618] if (!has_future) { [13:31:17.618] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:17.618] info) [13:31:17.618] } [13:31:17.618] else { [13:31:17.618] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:17.618] info, version) [13:31:17.618] } [13:31:17.618] base::stop(msg) [13:31:17.618] } [13:31:17.618] }) [13:31:17.618] } [13:31:17.618] ...future.strategy.old <- future::plan("list") [13:31:17.618] options(future.plan = NULL) [13:31:17.618] Sys.unsetenv("R_FUTURE_PLAN") [13:31:17.618] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:17.618] } [13:31:17.618] ...future.workdir <- getwd() [13:31:17.618] } [13:31:17.618] ...future.oldOptions <- base::as.list(base::.Options) [13:31:17.618] ...future.oldEnvVars <- base::Sys.getenv() [13:31:17.618] } [13:31:17.618] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:17.618] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:17.618] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:17.618] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:17.618] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:17.618] future.stdout.windows.reencode = NULL, width = 80L) [13:31:17.618] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:17.618] base::names(...future.oldOptions)) [13:31:17.618] } [13:31:17.618] if (FALSE) { [13:31:17.618] } [13:31:17.618] else { [13:31:17.618] if (TRUE) { [13:31:17.618] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:17.618] open = "w") [13:31:17.618] } [13:31:17.618] else { [13:31:17.618] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:17.618] windows = "NUL", "/dev/null"), open = "w") [13:31:17.618] } [13:31:17.618] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:17.618] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:17.618] base::sink(type = "output", split = FALSE) [13:31:17.618] base::close(...future.stdout) [13:31:17.618] }, add = TRUE) [13:31:17.618] } [13:31:17.618] ...future.frame <- base::sys.nframe() [13:31:17.618] ...future.conditions <- base::list() [13:31:17.618] ...future.rng <- base::globalenv()$.Random.seed [13:31:17.618] if (FALSE) { [13:31:17.618] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:17.618] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:17.618] } [13:31:17.618] ...future.result <- base::tryCatch({ [13:31:17.618] base::withCallingHandlers({ [13:31:17.618] ...future.value <- base::withVisible(base::local(NA)) [13:31:17.618] future::FutureResult(value = ...future.value$value, [13:31:17.618] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:17.618] ...future.rng), globalenv = if (FALSE) [13:31:17.618] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:17.618] ...future.globalenv.names)) [13:31:17.618] else NULL, started = ...future.startTime, version = "1.8") [13:31:17.618] }, condition = base::local({ [13:31:17.618] c <- base::c [13:31:17.618] inherits <- base::inherits [13:31:17.618] invokeRestart <- base::invokeRestart [13:31:17.618] length <- base::length [13:31:17.618] list <- base::list [13:31:17.618] seq.int <- base::seq.int [13:31:17.618] signalCondition <- base::signalCondition [13:31:17.618] sys.calls <- base::sys.calls [13:31:17.618] `[[` <- base::`[[` [13:31:17.618] `+` <- base::`+` [13:31:17.618] `<<-` <- base::`<<-` [13:31:17.618] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:17.618] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:17.618] 3L)] [13:31:17.618] } [13:31:17.618] function(cond) { [13:31:17.618] is_error <- inherits(cond, "error") [13:31:17.618] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:17.618] NULL) [13:31:17.618] if (is_error) { [13:31:17.618] sessionInformation <- function() { [13:31:17.618] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:17.618] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:17.618] search = base::search(), system = base::Sys.info()) [13:31:17.618] } [13:31:17.618] ...future.conditions[[length(...future.conditions) + [13:31:17.618] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:17.618] cond$call), session = sessionInformation(), [13:31:17.618] timestamp = base::Sys.time(), signaled = 0L) [13:31:17.618] signalCondition(cond) [13:31:17.618] } [13:31:17.618] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:17.618] signal <- FALSE && inherits(cond, character(0)) [13:31:17.618] ...future.conditions[[length(...future.conditions) + [13:31:17.618] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:17.618] if (FALSE && !signal) { [13:31:17.618] muffleCondition <- function (cond, pattern = "^muffle") [13:31:17.618] { [13:31:17.618] inherits <- base::inherits [13:31:17.618] invokeRestart <- base::invokeRestart [13:31:17.618] is.null <- base::is.null [13:31:17.618] muffled <- FALSE [13:31:17.618] if (inherits(cond, "message")) { [13:31:17.618] muffled <- grepl(pattern, "muffleMessage") [13:31:17.618] if (muffled) [13:31:17.618] invokeRestart("muffleMessage") [13:31:17.618] } [13:31:17.618] else if (inherits(cond, "warning")) { [13:31:17.618] muffled <- grepl(pattern, "muffleWarning") [13:31:17.618] if (muffled) [13:31:17.618] invokeRestart("muffleWarning") [13:31:17.618] } [13:31:17.618] else if (inherits(cond, "condition")) { [13:31:17.618] if (!is.null(pattern)) { [13:31:17.618] computeRestarts <- base::computeRestarts [13:31:17.618] grepl <- base::grepl [13:31:17.618] restarts <- computeRestarts(cond) [13:31:17.618] for (restart in restarts) { [13:31:17.618] name <- restart$name [13:31:17.618] if (is.null(name)) [13:31:17.618] next [13:31:17.618] if (!grepl(pattern, name)) [13:31:17.618] next [13:31:17.618] invokeRestart(restart) [13:31:17.618] muffled <- TRUE [13:31:17.618] break [13:31:17.618] } [13:31:17.618] } [13:31:17.618] } [13:31:17.618] invisible(muffled) [13:31:17.618] } [13:31:17.618] muffleCondition(cond, pattern = "^muffle") [13:31:17.618] } [13:31:17.618] } [13:31:17.618] else { [13:31:17.618] if (TRUE) { [13:31:17.618] muffleCondition <- function (cond, pattern = "^muffle") [13:31:17.618] { [13:31:17.618] inherits <- base::inherits [13:31:17.618] invokeRestart <- base::invokeRestart [13:31:17.618] is.null <- base::is.null [13:31:17.618] muffled <- FALSE [13:31:17.618] if (inherits(cond, "message")) { [13:31:17.618] muffled <- grepl(pattern, "muffleMessage") [13:31:17.618] if (muffled) [13:31:17.618] invokeRestart("muffleMessage") [13:31:17.618] } [13:31:17.618] else if (inherits(cond, "warning")) { [13:31:17.618] muffled <- grepl(pattern, "muffleWarning") [13:31:17.618] if (muffled) [13:31:17.618] invokeRestart("muffleWarning") [13:31:17.618] } [13:31:17.618] else if (inherits(cond, "condition")) { [13:31:17.618] if (!is.null(pattern)) { [13:31:17.618] computeRestarts <- base::computeRestarts [13:31:17.618] grepl <- base::grepl [13:31:17.618] restarts <- computeRestarts(cond) [13:31:17.618] for (restart in restarts) { [13:31:17.618] name <- restart$name [13:31:17.618] if (is.null(name)) [13:31:17.618] next [13:31:17.618] if (!grepl(pattern, name)) [13:31:17.618] next [13:31:17.618] invokeRestart(restart) [13:31:17.618] muffled <- TRUE [13:31:17.618] break [13:31:17.618] } [13:31:17.618] } [13:31:17.618] } [13:31:17.618] invisible(muffled) [13:31:17.618] } [13:31:17.618] muffleCondition(cond, pattern = "^muffle") [13:31:17.618] } [13:31:17.618] } [13:31:17.618] } [13:31:17.618] })) [13:31:17.618] }, error = function(ex) { [13:31:17.618] base::structure(base::list(value = NULL, visible = NULL, [13:31:17.618] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:17.618] ...future.rng), started = ...future.startTime, [13:31:17.618] finished = Sys.time(), session_uuid = NA_character_, [13:31:17.618] version = "1.8"), class = "FutureResult") [13:31:17.618] }, finally = { [13:31:17.618] if (!identical(...future.workdir, getwd())) [13:31:17.618] setwd(...future.workdir) [13:31:17.618] { [13:31:17.618] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:17.618] ...future.oldOptions$nwarnings <- NULL [13:31:17.618] } [13:31:17.618] base::options(...future.oldOptions) [13:31:17.618] if (.Platform$OS.type == "windows") { [13:31:17.618] old_names <- names(...future.oldEnvVars) [13:31:17.618] envs <- base::Sys.getenv() [13:31:17.618] names <- names(envs) [13:31:17.618] common <- intersect(names, old_names) [13:31:17.618] added <- setdiff(names, old_names) [13:31:17.618] removed <- setdiff(old_names, names) [13:31:17.618] changed <- common[...future.oldEnvVars[common] != [13:31:17.618] envs[common]] [13:31:17.618] NAMES <- toupper(changed) [13:31:17.618] args <- list() [13:31:17.618] for (kk in seq_along(NAMES)) { [13:31:17.618] name <- changed[[kk]] [13:31:17.618] NAME <- NAMES[[kk]] [13:31:17.618] if (name != NAME && is.element(NAME, old_names)) [13:31:17.618] next [13:31:17.618] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:17.618] } [13:31:17.618] NAMES <- toupper(added) [13:31:17.618] for (kk in seq_along(NAMES)) { [13:31:17.618] name <- added[[kk]] [13:31:17.618] NAME <- NAMES[[kk]] [13:31:17.618] if (name != NAME && is.element(NAME, old_names)) [13:31:17.618] next [13:31:17.618] args[[name]] <- "" [13:31:17.618] } [13:31:17.618] NAMES <- toupper(removed) [13:31:17.618] for (kk in seq_along(NAMES)) { [13:31:17.618] name <- removed[[kk]] [13:31:17.618] NAME <- NAMES[[kk]] [13:31:17.618] if (name != NAME && is.element(NAME, old_names)) [13:31:17.618] next [13:31:17.618] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:17.618] } [13:31:17.618] if (length(args) > 0) [13:31:17.618] base::do.call(base::Sys.setenv, args = args) [13:31:17.618] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:17.618] } [13:31:17.618] else { [13:31:17.618] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:17.618] } [13:31:17.618] { [13:31:17.618] if (base::length(...future.futureOptionsAdded) > [13:31:17.618] 0L) { [13:31:17.618] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:17.618] base::names(opts) <- ...future.futureOptionsAdded [13:31:17.618] base::options(opts) [13:31:17.618] } [13:31:17.618] { [13:31:17.618] NULL [13:31:17.618] options(future.plan = NULL) [13:31:17.618] if (is.na(NA_character_)) [13:31:17.618] Sys.unsetenv("R_FUTURE_PLAN") [13:31:17.618] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:17.618] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:17.618] .init = FALSE) [13:31:17.618] } [13:31:17.618] } [13:31:17.618] } [13:31:17.618] }) [13:31:17.618] if (TRUE) { [13:31:17.618] base::sink(type = "output", split = FALSE) [13:31:17.618] if (TRUE) { [13:31:17.618] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:17.618] } [13:31:17.618] else { [13:31:17.618] ...future.result["stdout"] <- base::list(NULL) [13:31:17.618] } [13:31:17.618] base::close(...future.stdout) [13:31:17.618] ...future.stdout <- NULL [13:31:17.618] } [13:31:17.618] ...future.result$conditions <- ...future.conditions [13:31:17.618] ...future.result$finished <- base::Sys.time() [13:31:17.618] ...future.result [13:31:17.618] } [13:31:17.623] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:31:17.624] plan(): nbrOfWorkers() = 2 [13:31:17.624] getGlobalsAndPackages() ... [13:31:17.624] Searching for globals... [13:31:17.633] - globals found: [4] '{', '<-', '*', 'a' [13:31:17.634] Searching for globals ... DONE [13:31:17.634] Resolving globals: FALSE [13:31:17.635] The total size of the 1 globals is 56 bytes (56 bytes) [13:31:17.636] 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:17.636] - globals: [1] 'a' [13:31:17.636] [13:31:17.636] getGlobalsAndPackages() ... DONE [13:31:17.637] run() for 'Future' ... [13:31:17.637] - state: 'created' [13:31:17.637] - Future backend: 'FutureStrategy', 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' [13:31:17.640] - Future class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:31:17.640] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... [13:31:17.640] - Field: 'label' [13:31:17.640] - Field: 'local' [13:31:17.640] - Field: 'owner' [13:31:17.640] - Field: 'envir' [13:31:17.641] - Field: 'packages' [13:31:17.641] - Field: 'gc' [13:31:17.641] - Field: 'conditions' [13:31:17.641] - Field: 'expr' [13:31:17.641] - Field: 'uuid' [13:31:17.641] - Field: 'seed' [13:31:17.642] - Field: 'version' [13:31:17.642] - Field: 'result' [13:31:17.642] - Field: 'asynchronous' [13:31:17.642] - Field: 'calls' [13:31:17.642] - Field: 'globals' [13:31:17.642] - Field: 'stdout' [13:31:17.643] - Field: 'earlySignal' [13:31:17.643] - Field: 'lazy' [13:31:17.643] - Field: 'state' [13:31:17.643] - Field: '.cluster' [13:31:17.643] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... done [13:31:17.644] - Launch lazy future ... [13:31:17.644] Packages needed by the future expression (n = 0): [13:31:17.644] Packages needed by future strategies (n = 0): [13:31:17.644] { [13:31:17.644] { [13:31:17.644] { [13:31:17.644] ...future.startTime <- base::Sys.time() [13:31:17.644] { [13:31:17.644] { [13:31:17.644] { [13:31:17.644] base::local({ [13:31:17.644] has_future <- base::requireNamespace("future", [13:31:17.644] quietly = TRUE) [13:31:17.644] if (has_future) { [13:31:17.644] ns <- base::getNamespace("future") [13:31:17.644] version <- ns[[".package"]][["version"]] [13:31:17.644] if (is.null(version)) [13:31:17.644] version <- utils::packageVersion("future") [13:31:17.644] } [13:31:17.644] else { [13:31:17.644] version <- NULL [13:31:17.644] } [13:31:17.644] if (!has_future || version < "1.8.0") { [13:31:17.644] info <- base::c(r_version = base::gsub("R version ", [13:31:17.644] "", base::R.version$version.string), [13:31:17.644] platform = base::sprintf("%s (%s-bit)", [13:31:17.644] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:17.644] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:17.644] "release", "version")], collapse = " "), [13:31:17.644] hostname = base::Sys.info()[["nodename"]]) [13:31:17.644] info <- base::sprintf("%s: %s", base::names(info), [13:31:17.644] info) [13:31:17.644] info <- base::paste(info, collapse = "; ") [13:31:17.644] if (!has_future) { [13:31:17.644] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:17.644] info) [13:31:17.644] } [13:31:17.644] else { [13:31:17.644] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:17.644] info, version) [13:31:17.644] } [13:31:17.644] base::stop(msg) [13:31:17.644] } [13:31:17.644] }) [13:31:17.644] } [13:31:17.644] ...future.strategy.old <- future::plan("list") [13:31:17.644] options(future.plan = NULL) [13:31:17.644] Sys.unsetenv("R_FUTURE_PLAN") [13:31:17.644] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:17.644] } [13:31:17.644] ...future.workdir <- getwd() [13:31:17.644] } [13:31:17.644] ...future.oldOptions <- base::as.list(base::.Options) [13:31:17.644] ...future.oldEnvVars <- base::Sys.getenv() [13:31:17.644] } [13:31:17.644] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:17.644] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:17.644] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:17.644] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:17.644] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:17.644] future.stdout.windows.reencode = NULL, width = 80L) [13:31:17.644] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:17.644] base::names(...future.oldOptions)) [13:31:17.644] } [13:31:17.644] if (FALSE) { [13:31:17.644] } [13:31:17.644] else { [13:31:17.644] if (TRUE) { [13:31:17.644] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:17.644] open = "w") [13:31:17.644] } [13:31:17.644] else { [13:31:17.644] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:17.644] windows = "NUL", "/dev/null"), open = "w") [13:31:17.644] } [13:31:17.644] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:17.644] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:17.644] base::sink(type = "output", split = FALSE) [13:31:17.644] base::close(...future.stdout) [13:31:17.644] }, add = TRUE) [13:31:17.644] } [13:31:17.644] ...future.frame <- base::sys.nframe() [13:31:17.644] ...future.conditions <- base::list() [13:31:17.644] ...future.rng <- base::globalenv()$.Random.seed [13:31:17.644] if (FALSE) { [13:31:17.644] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:17.644] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:17.644] } [13:31:17.644] ...future.result <- base::tryCatch({ [13:31:17.644] base::withCallingHandlers({ [13:31:17.644] ...future.value <- base::withVisible(base::local({ [13:31:17.644] b <- 3 [13:31:17.644] c <- 2 [13:31:17.644] a * b * c [13:31:17.644] })) [13:31:17.644] future::FutureResult(value = ...future.value$value, [13:31:17.644] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:17.644] ...future.rng), globalenv = if (FALSE) [13:31:17.644] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:17.644] ...future.globalenv.names)) [13:31:17.644] else NULL, started = ...future.startTime, version = "1.8") [13:31:17.644] }, condition = base::local({ [13:31:17.644] c <- base::c [13:31:17.644] inherits <- base::inherits [13:31:17.644] invokeRestart <- base::invokeRestart [13:31:17.644] length <- base::length [13:31:17.644] list <- base::list [13:31:17.644] seq.int <- base::seq.int [13:31:17.644] signalCondition <- base::signalCondition [13:31:17.644] sys.calls <- base::sys.calls [13:31:17.644] `[[` <- base::`[[` [13:31:17.644] `+` <- base::`+` [13:31:17.644] `<<-` <- base::`<<-` [13:31:17.644] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:17.644] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:17.644] 3L)] [13:31:17.644] } [13:31:17.644] function(cond) { [13:31:17.644] is_error <- inherits(cond, "error") [13:31:17.644] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:17.644] NULL) [13:31:17.644] if (is_error) { [13:31:17.644] sessionInformation <- function() { [13:31:17.644] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:17.644] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:17.644] search = base::search(), system = base::Sys.info()) [13:31:17.644] } [13:31:17.644] ...future.conditions[[length(...future.conditions) + [13:31:17.644] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:17.644] cond$call), session = sessionInformation(), [13:31:17.644] timestamp = base::Sys.time(), signaled = 0L) [13:31:17.644] signalCondition(cond) [13:31:17.644] } [13:31:17.644] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:17.644] signal <- FALSE && inherits(cond, character(0)) [13:31:17.644] ...future.conditions[[length(...future.conditions) + [13:31:17.644] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:17.644] if (FALSE && !signal) { [13:31:17.644] muffleCondition <- function (cond, pattern = "^muffle") [13:31:17.644] { [13:31:17.644] inherits <- base::inherits [13:31:17.644] invokeRestart <- base::invokeRestart [13:31:17.644] is.null <- base::is.null [13:31:17.644] muffled <- FALSE [13:31:17.644] if (inherits(cond, "message")) { [13:31:17.644] muffled <- grepl(pattern, "muffleMessage") [13:31:17.644] if (muffled) [13:31:17.644] invokeRestart("muffleMessage") [13:31:17.644] } [13:31:17.644] else if (inherits(cond, "warning")) { [13:31:17.644] muffled <- grepl(pattern, "muffleWarning") [13:31:17.644] if (muffled) [13:31:17.644] invokeRestart("muffleWarning") [13:31:17.644] } [13:31:17.644] else if (inherits(cond, "condition")) { [13:31:17.644] if (!is.null(pattern)) { [13:31:17.644] computeRestarts <- base::computeRestarts [13:31:17.644] grepl <- base::grepl [13:31:17.644] restarts <- computeRestarts(cond) [13:31:17.644] for (restart in restarts) { [13:31:17.644] name <- restart$name [13:31:17.644] if (is.null(name)) [13:31:17.644] next [13:31:17.644] if (!grepl(pattern, name)) [13:31:17.644] next [13:31:17.644] invokeRestart(restart) [13:31:17.644] muffled <- TRUE [13:31:17.644] break [13:31:17.644] } [13:31:17.644] } [13:31:17.644] } [13:31:17.644] invisible(muffled) [13:31:17.644] } [13:31:17.644] muffleCondition(cond, pattern = "^muffle") [13:31:17.644] } [13:31:17.644] } [13:31:17.644] else { [13:31:17.644] if (TRUE) { [13:31:17.644] muffleCondition <- function (cond, pattern = "^muffle") [13:31:17.644] { [13:31:17.644] inherits <- base::inherits [13:31:17.644] invokeRestart <- base::invokeRestart [13:31:17.644] is.null <- base::is.null [13:31:17.644] muffled <- FALSE [13:31:17.644] if (inherits(cond, "message")) { [13:31:17.644] muffled <- grepl(pattern, "muffleMessage") [13:31:17.644] if (muffled) [13:31:17.644] invokeRestart("muffleMessage") [13:31:17.644] } [13:31:17.644] else if (inherits(cond, "warning")) { [13:31:17.644] muffled <- grepl(pattern, "muffleWarning") [13:31:17.644] if (muffled) [13:31:17.644] invokeRestart("muffleWarning") [13:31:17.644] } [13:31:17.644] else if (inherits(cond, "condition")) { [13:31:17.644] if (!is.null(pattern)) { [13:31:17.644] computeRestarts <- base::computeRestarts [13:31:17.644] grepl <- base::grepl [13:31:17.644] restarts <- computeRestarts(cond) [13:31:17.644] for (restart in restarts) { [13:31:17.644] name <- restart$name [13:31:17.644] if (is.null(name)) [13:31:17.644] next [13:31:17.644] if (!grepl(pattern, name)) [13:31:17.644] next [13:31:17.644] invokeRestart(restart) [13:31:17.644] muffled <- TRUE [13:31:17.644] break [13:31:17.644] } [13:31:17.644] } [13:31:17.644] } [13:31:17.644] invisible(muffled) [13:31:17.644] } [13:31:17.644] muffleCondition(cond, pattern = "^muffle") [13:31:17.644] } [13:31:17.644] } [13:31:17.644] } [13:31:17.644] })) [13:31:17.644] }, error = function(ex) { [13:31:17.644] base::structure(base::list(value = NULL, visible = NULL, [13:31:17.644] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:17.644] ...future.rng), started = ...future.startTime, [13:31:17.644] finished = Sys.time(), session_uuid = NA_character_, [13:31:17.644] version = "1.8"), class = "FutureResult") [13:31:17.644] }, finally = { [13:31:17.644] if (!identical(...future.workdir, getwd())) [13:31:17.644] setwd(...future.workdir) [13:31:17.644] { [13:31:17.644] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:17.644] ...future.oldOptions$nwarnings <- NULL [13:31:17.644] } [13:31:17.644] base::options(...future.oldOptions) [13:31:17.644] if (.Platform$OS.type == "windows") { [13:31:17.644] old_names <- names(...future.oldEnvVars) [13:31:17.644] envs <- base::Sys.getenv() [13:31:17.644] names <- names(envs) [13:31:17.644] common <- intersect(names, old_names) [13:31:17.644] added <- setdiff(names, old_names) [13:31:17.644] removed <- setdiff(old_names, names) [13:31:17.644] changed <- common[...future.oldEnvVars[common] != [13:31:17.644] envs[common]] [13:31:17.644] NAMES <- toupper(changed) [13:31:17.644] args <- list() [13:31:17.644] for (kk in seq_along(NAMES)) { [13:31:17.644] name <- changed[[kk]] [13:31:17.644] NAME <- NAMES[[kk]] [13:31:17.644] if (name != NAME && is.element(NAME, old_names)) [13:31:17.644] next [13:31:17.644] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:17.644] } [13:31:17.644] NAMES <- toupper(added) [13:31:17.644] for (kk in seq_along(NAMES)) { [13:31:17.644] name <- added[[kk]] [13:31:17.644] NAME <- NAMES[[kk]] [13:31:17.644] if (name != NAME && is.element(NAME, old_names)) [13:31:17.644] next [13:31:17.644] args[[name]] <- "" [13:31:17.644] } [13:31:17.644] NAMES <- toupper(removed) [13:31:17.644] for (kk in seq_along(NAMES)) { [13:31:17.644] name <- removed[[kk]] [13:31:17.644] NAME <- NAMES[[kk]] [13:31:17.644] if (name != NAME && is.element(NAME, old_names)) [13:31:17.644] next [13:31:17.644] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:17.644] } [13:31:17.644] if (length(args) > 0) [13:31:17.644] base::do.call(base::Sys.setenv, args = args) [13:31:17.644] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:17.644] } [13:31:17.644] else { [13:31:17.644] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:17.644] } [13:31:17.644] { [13:31:17.644] if (base::length(...future.futureOptionsAdded) > [13:31:17.644] 0L) { [13:31:17.644] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:17.644] base::names(opts) <- ...future.futureOptionsAdded [13:31:17.644] base::options(opts) [13:31:17.644] } [13:31:17.644] { [13:31:17.644] NULL [13:31:17.644] options(future.plan = NULL) [13:31:17.644] if (is.na(NA_character_)) [13:31:17.644] Sys.unsetenv("R_FUTURE_PLAN") [13:31:17.644] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:17.644] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:17.644] .init = FALSE) [13:31:17.644] } [13:31:17.644] } [13:31:17.644] } [13:31:17.644] }) [13:31:17.644] if (TRUE) { [13:31:17.644] base::sink(type = "output", split = FALSE) [13:31:17.644] if (TRUE) { [13:31:17.644] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:17.644] } [13:31:17.644] else { [13:31:17.644] ...future.result["stdout"] <- base::list(NULL) [13:31:17.644] } [13:31:17.644] base::close(...future.stdout) [13:31:17.644] ...future.stdout <- NULL [13:31:17.644] } [13:31:17.644] ...future.result$conditions <- ...future.conditions [13:31:17.644] ...future.result$finished <- base::Sys.time() [13:31:17.644] ...future.result [13:31:17.644] } [13:31:17.648] - Launch lazy future ... done [13:31:17.648] run() for 'MiraiFuture' ... done [1] 0 [13:31:17.650] *** plan('mirai_multisession') ... DONE> > > message("*** Assert that default backend can be overridden ...") *** Assert that default backend can be overridden ... > > mpid <- Sys.getpid() > print(mpid) [1] 95180 > > plan(mirai_multisession) [13:31:17.651] plan(): Setting new future strategy stack: [13:31:17.651] List of future strategies: [13:31:17.651] 1. mirai_multisession: [13:31:17.651] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:31:17.651] - tweaked: FALSE [13:31:17.651] - call: plan(mirai_multisession) [13:31:17.651] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:31:17.652] < mirai [$data] > [13:31:17.654] getGlobalsAndPackages() ... [13:31:17.654] Not searching for globals [13:31:17.654] - globals: [0] [13:31:17.654] getGlobalsAndPackages() ... DONE [13:31:17.654] getGlobalsAndPackages() ... [13:31:17.655] [13:31:17.655] - globals: [0] [13:31:17.655] getGlobalsAndPackages() ... DONE [13:31:17.655] Packages needed by the future expression (n = 0): [13:31:17.655] Packages needed by future strategies (n = 0): [13:31:17.656] { [13:31:17.656] { [13:31:17.656] { [13:31:17.656] ...future.startTime <- base::Sys.time() [13:31:17.656] { [13:31:17.656] { [13:31:17.656] { [13:31:17.656] base::local({ [13:31:17.656] has_future <- base::requireNamespace("future", [13:31:17.656] quietly = TRUE) [13:31:17.656] if (has_future) { [13:31:17.656] ns <- base::getNamespace("future") [13:31:17.656] version <- ns[[".package"]][["version"]] [13:31:17.656] if (is.null(version)) [13:31:17.656] version <- utils::packageVersion("future") [13:31:17.656] } [13:31:17.656] else { [13:31:17.656] version <- NULL [13:31:17.656] } [13:31:17.656] if (!has_future || version < "1.8.0") { [13:31:17.656] info <- base::c(r_version = base::gsub("R version ", [13:31:17.656] "", base::R.version$version.string), [13:31:17.656] platform = base::sprintf("%s (%s-bit)", [13:31:17.656] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:17.656] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:17.656] "release", "version")], collapse = " "), [13:31:17.656] hostname = base::Sys.info()[["nodename"]]) [13:31:17.656] info <- base::sprintf("%s: %s", base::names(info), [13:31:17.656] info) [13:31:17.656] info <- base::paste(info, collapse = "; ") [13:31:17.656] if (!has_future) { [13:31:17.656] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:17.656] info) [13:31:17.656] } [13:31:17.656] else { [13:31:17.656] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:17.656] info, version) [13:31:17.656] } [13:31:17.656] base::stop(msg) [13:31:17.656] } [13:31:17.656] }) [13:31:17.656] } [13:31:17.656] ...future.strategy.old <- future::plan("list") [13:31:17.656] options(future.plan = NULL) [13:31:17.656] Sys.unsetenv("R_FUTURE_PLAN") [13:31:17.656] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:17.656] } [13:31:17.656] ...future.workdir <- getwd() [13:31:17.656] } [13:31:17.656] ...future.oldOptions <- base::as.list(base::.Options) [13:31:17.656] ...future.oldEnvVars <- base::Sys.getenv() [13:31:17.656] } [13:31:17.656] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:17.656] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:17.656] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:17.656] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:17.656] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:17.656] future.stdout.windows.reencode = NULL, width = 80L) [13:31:17.656] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:17.656] base::names(...future.oldOptions)) [13:31:17.656] } [13:31:17.656] if (FALSE) { [13:31:17.656] } [13:31:17.656] else { [13:31:17.656] if (TRUE) { [13:31:17.656] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:17.656] open = "w") [13:31:17.656] } [13:31:17.656] else { [13:31:17.656] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:17.656] windows = "NUL", "/dev/null"), open = "w") [13:31:17.656] } [13:31:17.656] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:17.656] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:17.656] base::sink(type = "output", split = FALSE) [13:31:17.656] base::close(...future.stdout) [13:31:17.656] }, add = TRUE) [13:31:17.656] } [13:31:17.656] ...future.frame <- base::sys.nframe() [13:31:17.656] ...future.conditions <- base::list() [13:31:17.656] ...future.rng <- base::globalenv()$.Random.seed [13:31:17.656] if (FALSE) { [13:31:17.656] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:17.656] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:17.656] } [13:31:17.656] ...future.result <- base::tryCatch({ [13:31:17.656] base::withCallingHandlers({ [13:31:17.656] ...future.value <- base::withVisible(base::local(NA)) [13:31:17.656] future::FutureResult(value = ...future.value$value, [13:31:17.656] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:17.656] ...future.rng), globalenv = if (FALSE) [13:31:17.656] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:17.656] ...future.globalenv.names)) [13:31:17.656] else NULL, started = ...future.startTime, version = "1.8") [13:31:17.656] }, condition = base::local({ [13:31:17.656] c <- base::c [13:31:17.656] inherits <- base::inherits [13:31:17.656] invokeRestart <- base::invokeRestart [13:31:17.656] length <- base::length [13:31:17.656] list <- base::list [13:31:17.656] seq.int <- base::seq.int [13:31:17.656] signalCondition <- base::signalCondition [13:31:17.656] sys.calls <- base::sys.calls [13:31:17.656] `[[` <- base::`[[` [13:31:17.656] `+` <- base::`+` [13:31:17.656] `<<-` <- base::`<<-` [13:31:17.656] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:17.656] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:17.656] 3L)] [13:31:17.656] } [13:31:17.656] function(cond) { [13:31:17.656] is_error <- inherits(cond, "error") [13:31:17.656] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:17.656] NULL) [13:31:17.656] if (is_error) { [13:31:17.656] sessionInformation <- function() { [13:31:17.656] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:17.656] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:17.656] search = base::search(), system = base::Sys.info()) [13:31:17.656] } [13:31:17.656] ...future.conditions[[length(...future.conditions) + [13:31:17.656] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:17.656] cond$call), session = sessionInformation(), [13:31:17.656] timestamp = base::Sys.time(), signaled = 0L) [13:31:17.656] signalCondition(cond) [13:31:17.656] } [13:31:17.656] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:17.656] signal <- FALSE && inherits(cond, character(0)) [13:31:17.656] ...future.conditions[[length(...future.conditions) + [13:31:17.656] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:17.656] if (FALSE && !signal) { [13:31:17.656] muffleCondition <- function (cond, pattern = "^muffle") [13:31:17.656] { [13:31:17.656] inherits <- base::inherits [13:31:17.656] invokeRestart <- base::invokeRestart [13:31:17.656] is.null <- base::is.null [13:31:17.656] muffled <- FALSE [13:31:17.656] if (inherits(cond, "message")) { [13:31:17.656] muffled <- grepl(pattern, "muffleMessage") [13:31:17.656] if (muffled) [13:31:17.656] invokeRestart("muffleMessage") [13:31:17.656] } [13:31:17.656] else if (inherits(cond, "warning")) { [13:31:17.656] muffled <- grepl(pattern, "muffleWarning") [13:31:17.656] if (muffled) [13:31:17.656] invokeRestart("muffleWarning") [13:31:17.656] } [13:31:17.656] else if (inherits(cond, "condition")) { [13:31:17.656] if (!is.null(pattern)) { [13:31:17.656] computeRestarts <- base::computeRestarts [13:31:17.656] grepl <- base::grepl [13:31:17.656] restarts <- computeRestarts(cond) [13:31:17.656] for (restart in restarts) { [13:31:17.656] name <- restart$name [13:31:17.656] if (is.null(name)) [13:31:17.656] next [13:31:17.656] if (!grepl(pattern, name)) [13:31:17.656] next [13:31:17.656] invokeRestart(restart) [13:31:17.656] muffled <- TRUE [13:31:17.656] break [13:31:17.656] } [13:31:17.656] } [13:31:17.656] } [13:31:17.656] invisible(muffled) [13:31:17.656] } [13:31:17.656] muffleCondition(cond, pattern = "^muffle") [13:31:17.656] } [13:31:17.656] } [13:31:17.656] else { [13:31:17.656] if (TRUE) { [13:31:17.656] muffleCondition <- function (cond, pattern = "^muffle") [13:31:17.656] { [13:31:17.656] inherits <- base::inherits [13:31:17.656] invokeRestart <- base::invokeRestart [13:31:17.656] is.null <- base::is.null [13:31:17.656] muffled <- FALSE [13:31:17.656] if (inherits(cond, "message")) { [13:31:17.656] muffled <- grepl(pattern, "muffleMessage") [13:31:17.656] if (muffled) [13:31:17.656] invokeRestart("muffleMessage") [13:31:17.656] } [13:31:17.656] else if (inherits(cond, "warning")) { [13:31:17.656] muffled <- grepl(pattern, "muffleWarning") [13:31:17.656] if (muffled) [13:31:17.656] invokeRestart("muffleWarning") [13:31:17.656] } [13:31:17.656] else if (inherits(cond, "condition")) { [13:31:17.656] if (!is.null(pattern)) { [13:31:17.656] computeRestarts <- base::computeRestarts [13:31:17.656] grepl <- base::grepl [13:31:17.656] restarts <- computeRestarts(cond) [13:31:17.656] for (restart in restarts) { [13:31:17.656] name <- restart$name [13:31:17.656] if (is.null(name)) [13:31:17.656] next [13:31:17.656] if (!grepl(pattern, name)) [13:31:17.656] next [13:31:17.656] invokeRestart(restart) [13:31:17.656] muffled <- TRUE [13:31:17.656] break [13:31:17.656] } [13:31:17.656] } [13:31:17.656] } [13:31:17.656] invisible(muffled) [13:31:17.656] } [13:31:17.656] muffleCondition(cond, pattern = "^muffle") [13:31:17.656] } [13:31:17.656] } [13:31:17.656] } [13:31:17.656] })) [13:31:17.656] }, error = function(ex) { [13:31:17.656] base::structure(base::list(value = NULL, visible = NULL, [13:31:17.656] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:17.656] ...future.rng), started = ...future.startTime, [13:31:17.656] finished = Sys.time(), session_uuid = NA_character_, [13:31:17.656] version = "1.8"), class = "FutureResult") [13:31:17.656] }, finally = { [13:31:17.656] if (!identical(...future.workdir, getwd())) [13:31:17.656] setwd(...future.workdir) [13:31:17.656] { [13:31:17.656] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:17.656] ...future.oldOptions$nwarnings <- NULL [13:31:17.656] } [13:31:17.656] base::options(...future.oldOptions) [13:31:17.656] if (.Platform$OS.type == "windows") { [13:31:17.656] old_names <- names(...future.oldEnvVars) [13:31:17.656] envs <- base::Sys.getenv() [13:31:17.656] names <- names(envs) [13:31:17.656] common <- intersect(names, old_names) [13:31:17.656] added <- setdiff(names, old_names) [13:31:17.656] removed <- setdiff(old_names, names) [13:31:17.656] changed <- common[...future.oldEnvVars[common] != [13:31:17.656] envs[common]] [13:31:17.656] NAMES <- toupper(changed) [13:31:17.656] args <- list() [13:31:17.656] for (kk in seq_along(NAMES)) { [13:31:17.656] name <- changed[[kk]] [13:31:17.656] NAME <- NAMES[[kk]] [13:31:17.656] if (name != NAME && is.element(NAME, old_names)) [13:31:17.656] next [13:31:17.656] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:17.656] } [13:31:17.656] NAMES <- toupper(added) [13:31:17.656] for (kk in seq_along(NAMES)) { [13:31:17.656] name <- added[[kk]] [13:31:17.656] NAME <- NAMES[[kk]] [13:31:17.656] if (name != NAME && is.element(NAME, old_names)) [13:31:17.656] next [13:31:17.656] args[[name]] <- "" [13:31:17.656] } [13:31:17.656] NAMES <- toupper(removed) [13:31:17.656] for (kk in seq_along(NAMES)) { [13:31:17.656] name <- removed[[kk]] [13:31:17.656] NAME <- NAMES[[kk]] [13:31:17.656] if (name != NAME && is.element(NAME, old_names)) [13:31:17.656] next [13:31:17.656] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:17.656] } [13:31:17.656] if (length(args) > 0) [13:31:17.656] base::do.call(base::Sys.setenv, args = args) [13:31:17.656] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:17.656] } [13:31:17.656] else { [13:31:17.656] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:17.656] } [13:31:17.656] { [13:31:17.656] if (base::length(...future.futureOptionsAdded) > [13:31:17.656] 0L) { [13:31:17.656] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:17.656] base::names(opts) <- ...future.futureOptionsAdded [13:31:17.656] base::options(opts) [13:31:17.656] } [13:31:17.656] { [13:31:17.656] NULL [13:31:17.656] options(future.plan = NULL) [13:31:17.656] if (is.na(NA_character_)) [13:31:17.656] Sys.unsetenv("R_FUTURE_PLAN") [13:31:17.656] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:17.656] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:17.656] .init = FALSE) [13:31:17.656] } [13:31:17.656] } [13:31:17.656] } [13:31:17.656] }) [13:31:17.656] if (TRUE) { [13:31:17.656] base::sink(type = "output", split = FALSE) [13:31:17.656] if (TRUE) { [13:31:17.656] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:17.656] } [13:31:17.656] else { [13:31:17.656] ...future.result["stdout"] <- base::list(NULL) [13:31:17.656] } [13:31:17.656] base::close(...future.stdout) [13:31:17.656] ...future.stdout <- NULL [13:31:17.656] } [13:31:17.656] ...future.result$conditions <- ...future.conditions [13:31:17.656] ...future.result$finished <- base::Sys.time() [13:31:17.656] ...future.result [13:31:17.656] } [13:31:17.662] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:31:17.662] plan(): nbrOfWorkers() = 2 > pid %<-% { Sys.getpid() } [13:31:17.663] getGlobalsAndPackages() ... [13:31:17.663] Searching for globals... [13:31:17.664] - globals found: [2] '{', 'Sys.getpid' [13:31:17.664] Searching for globals ... DONE [13:31:17.664] Resolving globals: FALSE [13:31:17.665] [13:31:17.665] [13:31:17.665] getGlobalsAndPackages() ... DONE [13:31:17.665] run() for 'Future' ... [13:31:17.666] - state: 'created' [13:31:17.666] - Future backend: 'FutureStrategy', 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' [13:31:17.668] - Future class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:31:17.668] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... [13:31:17.668] - Field: 'label' [13:31:17.669] - Field: 'local' [13:31:17.669] - Field: 'owner' [13:31:17.669] - Field: 'envir' [13:31:17.669] - Field: 'packages' [13:31:17.669] - Field: 'gc' [13:31:17.669] - Field: 'conditions' [13:31:17.670] - Field: 'expr' [13:31:17.670] - Field: 'uuid' [13:31:17.670] - Field: 'seed' [13:31:17.670] - Field: 'version' [13:31:17.670] - Field: 'result' [13:31:17.670] - Field: 'asynchronous' [13:31:17.671] - Field: 'calls' [13:31:17.671] - Field: 'globals' [13:31:17.671] - Field: 'stdout' [13:31:17.672] - Field: 'earlySignal' [13:31:17.672] - Field: 'lazy' [13:31:17.673] - Field: 'state' [13:31:17.673] - Field: '.cluster' [13:31:17.673] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... done [13:31:17.673] - Launch lazy future ... [13:31:17.673] Packages needed by the future expression (n = 0): [13:31:17.673] Packages needed by future strategies (n = 0): [13:31:17.674] { [13:31:17.674] { [13:31:17.674] { [13:31:17.674] ...future.startTime <- base::Sys.time() [13:31:17.674] { [13:31:17.674] { [13:31:17.674] { [13:31:17.674] base::local({ [13:31:17.674] has_future <- base::requireNamespace("future", [13:31:17.674] quietly = TRUE) [13:31:17.674] if (has_future) { [13:31:17.674] ns <- base::getNamespace("future") [13:31:17.674] version <- ns[[".package"]][["version"]] [13:31:17.674] if (is.null(version)) [13:31:17.674] version <- utils::packageVersion("future") [13:31:17.674] } [13:31:17.674] else { [13:31:17.674] version <- NULL [13:31:17.674] } [13:31:17.674] if (!has_future || version < "1.8.0") { [13:31:17.674] info <- base::c(r_version = base::gsub("R version ", [13:31:17.674] "", base::R.version$version.string), [13:31:17.674] platform = base::sprintf("%s (%s-bit)", [13:31:17.674] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:31:17.674] os = base::paste(base::Sys.info()[base::c("sysname", [13:31:17.674] "release", "version")], collapse = " "), [13:31:17.674] hostname = base::Sys.info()[["nodename"]]) [13:31:17.674] info <- base::sprintf("%s: %s", base::names(info), [13:31:17.674] info) [13:31:17.674] info <- base::paste(info, collapse = "; ") [13:31:17.674] if (!has_future) { [13:31:17.674] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:31:17.674] info) [13:31:17.674] } [13:31:17.674] else { [13:31:17.674] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:31:17.674] info, version) [13:31:17.674] } [13:31:17.674] base::stop(msg) [13:31:17.674] } [13:31:17.674] }) [13:31:17.674] } [13:31:17.674] ...future.strategy.old <- future::plan("list") [13:31:17.674] options(future.plan = NULL) [13:31:17.674] Sys.unsetenv("R_FUTURE_PLAN") [13:31:17.674] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:31:17.674] } [13:31:17.674] ...future.workdir <- getwd() [13:31:17.674] } [13:31:17.674] ...future.oldOptions <- base::as.list(base::.Options) [13:31:17.674] ...future.oldEnvVars <- base::Sys.getenv() [13:31:17.674] } [13:31:17.674] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:31:17.674] future.globals.maxSize = NULL, future.globals.method = NULL, [13:31:17.674] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:31:17.674] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:31:17.674] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:31:17.674] future.stdout.windows.reencode = NULL, width = 80L) [13:31:17.674] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:31:17.674] base::names(...future.oldOptions)) [13:31:17.674] } [13:31:17.674] if (FALSE) { [13:31:17.674] } [13:31:17.674] else { [13:31:17.674] if (TRUE) { [13:31:17.674] ...future.stdout <- base::rawConnection(base::raw(0L), [13:31:17.674] open = "w") [13:31:17.674] } [13:31:17.674] else { [13:31:17.674] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:31:17.674] windows = "NUL", "/dev/null"), open = "w") [13:31:17.674] } [13:31:17.674] base::sink(...future.stdout, type = "output", split = FALSE) [13:31:17.674] base::on.exit(if (!base::is.null(...future.stdout)) { [13:31:17.674] base::sink(type = "output", split = FALSE) [13:31:17.674] base::close(...future.stdout) [13:31:17.674] }, add = TRUE) [13:31:17.674] } [13:31:17.674] ...future.frame <- base::sys.nframe() [13:31:17.674] ...future.conditions <- base::list() [13:31:17.674] ...future.rng <- base::globalenv()$.Random.seed [13:31:17.674] if (FALSE) { [13:31:17.674] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:31:17.674] "...future.value", "...future.globalenv.names", ".Random.seed") [13:31:17.674] } [13:31:17.674] ...future.result <- base::tryCatch({ [13:31:17.674] base::withCallingHandlers({ [13:31:17.674] ...future.value <- base::withVisible(base::local({ [13:31:17.674] Sys.getpid() [13:31:17.674] })) [13:31:17.674] future::FutureResult(value = ...future.value$value, [13:31:17.674] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:31:17.674] ...future.rng), globalenv = if (FALSE) [13:31:17.674] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:31:17.674] ...future.globalenv.names)) [13:31:17.674] else NULL, started = ...future.startTime, version = "1.8") [13:31:17.674] }, condition = base::local({ [13:31:17.674] c <- base::c [13:31:17.674] inherits <- base::inherits [13:31:17.674] invokeRestart <- base::invokeRestart [13:31:17.674] length <- base::length [13:31:17.674] list <- base::list [13:31:17.674] seq.int <- base::seq.int [13:31:17.674] signalCondition <- base::signalCondition [13:31:17.674] sys.calls <- base::sys.calls [13:31:17.674] `[[` <- base::`[[` [13:31:17.674] `+` <- base::`+` [13:31:17.674] `<<-` <- base::`<<-` [13:31:17.674] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:31:17.674] calls[seq.int(from = from + 12L, to = length(calls) - [13:31:17.674] 3L)] [13:31:17.674] } [13:31:17.674] function(cond) { [13:31:17.674] is_error <- inherits(cond, "error") [13:31:17.674] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:31:17.674] NULL) [13:31:17.674] if (is_error) { [13:31:17.674] sessionInformation <- function() { [13:31:17.674] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:31:17.674] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:31:17.674] search = base::search(), system = base::Sys.info()) [13:31:17.674] } [13:31:17.674] ...future.conditions[[length(...future.conditions) + [13:31:17.674] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:31:17.674] cond$call), session = sessionInformation(), [13:31:17.674] timestamp = base::Sys.time(), signaled = 0L) [13:31:17.674] signalCondition(cond) [13:31:17.674] } [13:31:17.674] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:31:17.674] signal <- FALSE && inherits(cond, character(0)) [13:31:17.674] ...future.conditions[[length(...future.conditions) + [13:31:17.674] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:31:17.674] if (FALSE && !signal) { [13:31:17.674] muffleCondition <- function (cond, pattern = "^muffle") [13:31:17.674] { [13:31:17.674] inherits <- base::inherits [13:31:17.674] invokeRestart <- base::invokeRestart [13:31:17.674] is.null <- base::is.null [13:31:17.674] muffled <- FALSE [13:31:17.674] if (inherits(cond, "message")) { [13:31:17.674] muffled <- grepl(pattern, "muffleMessage") [13:31:17.674] if (muffled) [13:31:17.674] invokeRestart("muffleMessage") [13:31:17.674] } [13:31:17.674] else if (inherits(cond, "warning")) { [13:31:17.674] muffled <- grepl(pattern, "muffleWarning") [13:31:17.674] if (muffled) [13:31:17.674] invokeRestart("muffleWarning") [13:31:17.674] } [13:31:17.674] else if (inherits(cond, "condition")) { [13:31:17.674] if (!is.null(pattern)) { [13:31:17.674] computeRestarts <- base::computeRestarts [13:31:17.674] grepl <- base::grepl [13:31:17.674] restarts <- computeRestarts(cond) [13:31:17.674] for (restart in restarts) { [13:31:17.674] name <- restart$name [13:31:17.674] if (is.null(name)) [13:31:17.674] next [13:31:17.674] if (!grepl(pattern, name)) [13:31:17.674] next [13:31:17.674] invokeRestart(restart) [13:31:17.674] muffled <- TRUE [13:31:17.674] break [13:31:17.674] } [13:31:17.674] } [13:31:17.674] } [13:31:17.674] invisible(muffled) [13:31:17.674] } [13:31:17.674] muffleCondition(cond, pattern = "^muffle") [13:31:17.674] } [13:31:17.674] } [13:31:17.674] else { [13:31:17.674] if (TRUE) { [13:31:17.674] muffleCondition <- function (cond, pattern = "^muffle") [13:31:17.674] { [13:31:17.674] inherits <- base::inherits [13:31:17.674] invokeRestart <- base::invokeRestart [13:31:17.674] is.null <- base::is.null [13:31:17.674] muffled <- FALSE [13:31:17.674] if (inherits(cond, "message")) { [13:31:17.674] muffled <- grepl(pattern, "muffleMessage") [13:31:17.674] if (muffled) [13:31:17.674] invokeRestart("muffleMessage") [13:31:17.674] } [13:31:17.674] else if (inherits(cond, "warning")) { [13:31:17.674] muffled <- grepl(pattern, "muffleWarning") [13:31:17.674] if (muffled) [13:31:17.674] invokeRestart("muffleWarning") [13:31:17.674] } [13:31:17.674] else if (inherits(cond, "condition")) { [13:31:17.674] if (!is.null(pattern)) { [13:31:17.674] computeRestarts <- base::computeRestarts [13:31:17.674] grepl <- base::grepl [13:31:17.674] restarts <- computeRestarts(cond) [13:31:17.674] for (restart in restarts) { [13:31:17.674] name <- restart$name [13:31:17.674] if (is.null(name)) [13:31:17.674] next [13:31:17.674] if (!grepl(pattern, name)) [13:31:17.674] next [13:31:17.674] invokeRestart(restart) [13:31:17.674] muffled <- TRUE [13:31:17.674] break [13:31:17.674] } [13:31:17.674] } [13:31:17.674] } [13:31:17.674] invisible(muffled) [13:31:17.674] } [13:31:17.674] muffleCondition(cond, pattern = "^muffle") [13:31:17.674] } [13:31:17.674] } [13:31:17.674] } [13:31:17.674] })) [13:31:17.674] }, error = function(ex) { [13:31:17.674] base::structure(base::list(value = NULL, visible = NULL, [13:31:17.674] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:31:17.674] ...future.rng), started = ...future.startTime, [13:31:17.674] finished = Sys.time(), session_uuid = NA_character_, [13:31:17.674] version = "1.8"), class = "FutureResult") [13:31:17.674] }, finally = { [13:31:17.674] if (!identical(...future.workdir, getwd())) [13:31:17.674] setwd(...future.workdir) [13:31:17.674] { [13:31:17.674] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:31:17.674] ...future.oldOptions$nwarnings <- NULL [13:31:17.674] } [13:31:17.674] base::options(...future.oldOptions) [13:31:17.674] if (.Platform$OS.type == "windows") { [13:31:17.674] old_names <- names(...future.oldEnvVars) [13:31:17.674] envs <- base::Sys.getenv() [13:31:17.674] names <- names(envs) [13:31:17.674] common <- intersect(names, old_names) [13:31:17.674] added <- setdiff(names, old_names) [13:31:17.674] removed <- setdiff(old_names, names) [13:31:17.674] changed <- common[...future.oldEnvVars[common] != [13:31:17.674] envs[common]] [13:31:17.674] NAMES <- toupper(changed) [13:31:17.674] args <- list() [13:31:17.674] for (kk in seq_along(NAMES)) { [13:31:17.674] name <- changed[[kk]] [13:31:17.674] NAME <- NAMES[[kk]] [13:31:17.674] if (name != NAME && is.element(NAME, old_names)) [13:31:17.674] next [13:31:17.674] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:17.674] } [13:31:17.674] NAMES <- toupper(added) [13:31:17.674] for (kk in seq_along(NAMES)) { [13:31:17.674] name <- added[[kk]] [13:31:17.674] NAME <- NAMES[[kk]] [13:31:17.674] if (name != NAME && is.element(NAME, old_names)) [13:31:17.674] next [13:31:17.674] args[[name]] <- "" [13:31:17.674] } [13:31:17.674] NAMES <- toupper(removed) [13:31:17.674] for (kk in seq_along(NAMES)) { [13:31:17.674] name <- removed[[kk]] [13:31:17.674] NAME <- NAMES[[kk]] [13:31:17.674] if (name != NAME && is.element(NAME, old_names)) [13:31:17.674] next [13:31:17.674] args[[name]] <- ...future.oldEnvVars[[name]] [13:31:17.674] } [13:31:17.674] if (length(args) > 0) [13:31:17.674] base::do.call(base::Sys.setenv, args = args) [13:31:17.674] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:31:17.674] } [13:31:17.674] else { [13:31:17.674] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:31:17.674] } [13:31:17.674] { [13:31:17.674] if (base::length(...future.futureOptionsAdded) > [13:31:17.674] 0L) { [13:31:17.674] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:31:17.674] base::names(opts) <- ...future.futureOptionsAdded [13:31:17.674] base::options(opts) [13:31:17.674] } [13:31:17.674] { [13:31:17.674] NULL [13:31:17.674] options(future.plan = NULL) [13:31:17.674] if (is.na(NA_character_)) [13:31:17.674] Sys.unsetenv("R_FUTURE_PLAN") [13:31:17.674] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:31:17.674] future::plan(...future.strategy.old, .cleanup = FALSE, [13:31:17.674] .init = FALSE) [13:31:17.674] } [13:31:17.674] } [13:31:17.674] } [13:31:17.674] }) [13:31:17.674] if (TRUE) { [13:31:17.674] base::sink(type = "output", split = FALSE) [13:31:17.674] if (TRUE) { [13:31:17.674] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:31:17.674] } [13:31:17.674] else { [13:31:17.674] ...future.result["stdout"] <- base::list(NULL) [13:31:17.674] } [13:31:17.674] base::close(...future.stdout) [13:31:17.674] ...future.stdout <- NULL [13:31:17.674] } [13:31:17.674] ...future.result$conditions <- ...future.conditions [13:31:17.674] ...future.result$finished <- base::Sys.time() [13:31:17.674] ...future.result [13:31:17.674] } [13:31:17.678] - Launch lazy future ... done [13:31:17.678] run() for 'MiraiFuture' ... done > print(pid) [1] 181668 > stopifnot(pid != mpid) > > > message("*** plan() ... DONE") *** plan() ... DONE > > source("incl/end.R") > > proc.time() user system elapsed 0.39 0.07 0.92