R version 4.4.0 beta (2024-04-15 r86425 ucrt) -- "Puppy Cup" Copyright (C) 2024 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > source("incl/start,load-only.R") [13:11:11.562] Detected 'R CMD check': - adjusting defaults to be a good citizen [13:11:11.564] Set package option 'parallelly.availableCores.methods' [13:11:11.564] Environment variable 'R_PARALLELLY_AVAILABLECORES_METHODS' not set [13:11:11.564] Set package option 'parallelly.availableCores.fallback' [13:11:11.565] Environment variable 'R_PARALLELLY_AVAILABLECORES_FALLBACK' not set [13:11:11.565] Set package option 'parallelly.availableCores.min' [13:11:11.565] Environment variable 'R_PARALLELLY_AVAILABLECORES_MIN' not set [13:11:11.566] Set package option 'parallelly.availableCores.system' [13:11:11.566] Environment variable 'R_PARALLELLY_AVAILABLECORES_SYSTEM' not set [13:11:11.566] Set package option 'parallelly.availableCores.logical' [13:11:11.566] Environment variable 'R_PARALLELLY_AVAILABLECORES_LOGICAL' not set [13:11:11.567] Set package option 'parallelly.availableCores.omit' [13:11:11.567] Environment variable 'R_PARALLELLY_AVAILABLECORES_OMIT' not set [13:11:11.567] Set package option 'parallelly.availableWorkers.methods' [13:11:11.568] Environment variable 'R_PARALLELLY_AVAILABLEWORKERS_METHODS' not set [13:11:11.568] Set package option 'parallelly.maxWorkers.localhost' [13:11:11.568] Environment variable 'R_PARALLELLY_MAXWORKERS_LOCALHOST' not set [13:11:11.568] Set package option 'parallelly.maxWorkers.localhost.ignore' [13:11:11.569] Environment variable 'R_PARALLELLY_MAXWORKERS_LOCALHOST_IGNORE' not set [13:11:11.569] Set package option 'parallelly.fork.enable' [13:11:11.569] Environment variable 'R_PARALLELLY_FORK_ENABLE' not set [13:11:11.569] Set package option 'parallelly.supportsMulticore.disableOn' [13:11:11.570] Environment variable 'R_PARALLELLY_SUPPORTSMULTICORE_DISABLEON' not set [13:11:11.570] Set package option 'parallelly.supportsMulticore.unstable' [13:11:11.570] Environment variable 'R_PARALLELLY_SUPPORTSMULTICORE_UNSTABLE' not set [13:11:11.570] Set package option 'parallelly.makeNodePSOCK.setup_strategy' [13:11:11.571] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_SETUP_STRATEGY' not set [13:11:11.571] Set package option 'parallelly.makeNodePSOCK.validate' [13:11:11.571] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_VALIDATE' not set [13:11:11.572] Set package option 'parallelly.makeNodePSOCK.connectTimeout' [13:11:11.572] R_PARALLELLY_MAKENODEPSOCK_CONNECTTIMEOUT='120' [13:11:11.572] Coercing from character to numeric: '120' [13:11:11.572] => options("parallelly.makeNodePSOCK.connectTimeout" = '120') [n=1, mode=double] [13:11:11.573] Set package option 'parallelly.makeNodePSOCK.timeout' [13:11:11.573] R_PARALLELLY_MAKENODEPSOCK_TIMEOUT='120' [13:11:11.573] Coercing from character to numeric: '120' [13:11:11.573] => options("parallelly.makeNodePSOCK.timeout" = '120') [n=1, mode=double] [13:11:11.574] Set package option 'parallelly.makeNodePSOCK.useXDR' [13:11:11.574] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_USEXDR' not set [13:11:11.574] Set package option 'parallelly.makeNodePSOCK.socketOptions' [13:11:11.574] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_SOCKETOPTIONS' not set [13:11:11.575] Set package option 'parallelly.makeNodePSOCK.rshcmd' [13:11:11.575] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_RSHCMD' not set [13:11:11.575] Set package option 'parallelly.makeNodePSOCK.rshopts' [13:11:11.576] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_RSHOPTS' not set [13:11:11.576] Set package option 'parallelly.makeNodePSOCK.tries' [13:11:11.576] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_TRIES' not set [13:11:11.576] Set package option 'parallelly.makeNodePSOCK.tries.delay' [13:11:11.577] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_TRIES_DELAY' not set [13:11:11.577] Set package option 'parallelly.makeNodePSOCK.rscript_label' [13:11:11.577] R_PARALLELLY_MAKENODEPSOCK_RSCRIPT_LABEL='TRUE' [13:11:11.577] => options("parallelly.makeNodePSOCK.rscript_label" = 'TRUE') [n=1, mode=character] [13:11:11.578] Set package option 'parallelly.makeNodePSOCK.sessionInfo.pkgs' [13:11:11.578] R_PARALLELLY_MAKENODEPSOCK_SESSIONINFO_PKGS='TRUE' [13:11:11.578] => options("parallelly.makeNodePSOCK.sessionInfo.pkgs" = 'TRUE') [n=1, mode=character] [13:11:11.578] Set package option 'parallelly.makeNodePSOCK.autoKill' [13:11:11.579] R_PARALLELLY_MAKENODEPSOCK_AUTOKILL='TRUE' [13:11:11.579] Coercing from character to logical: 'TRUE' [13:11:11.579] => options("parallelly.makeNodePSOCK.autoKill" = 'TRUE') [n=1, mode=logical] [13:11:11.579] Set package option 'parallelly.makeNodePSOCK.master.localhost.hostname' [13:11:11.580] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_MASTER_LOCALHOST_HOSTNAME' not set [13:11:11.580] Set package option 'parallelly.makeNodePSOCK.port.increment' [13:11:11.580] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_PORT_INCREMENT' not set [13:11:11.581] 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:11:11.590] Future-specific environment variables: [13:11:11.590] Environment variable 'R_FUTURE_DEMO_MANDELBROT_REGION' not set [13:11:11.590] Environment variable 'R_FUTURE_DEMO_MANDELBROT_NROW' not set [13:11:11.590] Environment variable 'R_FUTURE_DEPRECATED_IGNORE' not set [13:11:11.591] Environment variable 'R_FUTURE_DEPRECATED_DEFUNCT' not set [13:11:11.591] Environment variable 'R_FUTURE_FORK_MULTITHREADING_ENABLE' not set [13:11:11.591] Environment variable 'R_FUTURE_GLOBALS_MAXSIZE' not set [13:11:11.591] Environment variable 'R_FUTURE_GLOBALS_ONMISSING' not set [13:11:11.591] Environment variable 'R_FUTURE_GLOBALS_ONREFERENCE' not set [13:11:11.592] Environment variable 'R_FUTURE_GLOBALS_METHOD' not set [13:11:11.592] Environment variable 'R_FUTURE_GLOBALS_RESOLVE' not set [13:11:11.592] Environment variable 'R_FUTURE_LAZY_ASSERTOWNER' not set [13:11:11.592] Environment variable 'R_FUTURE_PLAN' not set [13:11:11.592] Environment variable 'R_FUTURE_PLAN_DISALLOW' not set [13:11:11.592] Environment variable 'R_FUTURE_PSOCK_RELAY_IMMEDIATE' not set [13:11:11.593] Environment variable 'R_FUTURE_RELAY_IMMEDIATE' not set [13:11:11.593] Environment variable 'R_FUTURE_RESOLVE_RECURSIVE' not set [13:11:11.593] Environment variable 'R_FUTURE_ALIVE_TIMEOUT' not set [13:11:11.593] Environment variable 'R_FUTURE_RESOLVED_TIMEOUT' not set [13:11:11.593] Environment variable 'R_FUTURE_CLUSTER_RESOLVED_TIMEOUT' not set [13:11:11.593] Environment variable 'R_FUTURE_MULTICORE_RESOLVED_TIMEOUT' not set [13:11:11.594] Environment variable 'R_FUTURE_ONFUTURECONDITION_KEEPFUTURE' not set [13:11:11.594] Environment variable 'R_FUTURE_RNG_ONMISUSE' not set [13:11:11.594] Environment variable 'R_FUTURE_GLOBALENV_ONMISUSE' not set [13:11:11.594] Environment variable 'R_FUTURE_WAIT_TIMEOUT' not set [13:11:11.594] Environment variable 'R_FUTURE_WAIT_INTERVAL' not set [13:11:11.595] Environment variable 'R_FUTURE_WAIT_ALPHA' not set [13:11:11.595] Environment variable 'R_FUTURE_ASSIGN_GLOBALS_EXCLUDE' not set [13:11:11.595] Environment variable 'R_FUTURE_OUTPUT_WINDOWS_REENCODE' not set [13:11:11.595] Environment variable 'R_FUTURE_GLOBALS_GLOBALSOF_LOCALS' not set [13:11:11.595] Environment variable 'R_FUTURE_STATE_ONINVALID' not set [13:11:11.595] Environment variable 'R_FUTURE_JOURNAL' not set [13:11:11.596] Environment variable 'R_FUTURE_GLOBALS_KEEPWHERE' not set [13:11:11.597] R process uuid: 78e62140-2399-29ab-70cc-466bed4550b4 [13:11:11.597] Setting plan('default') [13:11:11.598] plan(): Setting new future strategy stack: [13:11:11.598] List of future strategies: [13:11:11.598] 1. sequential: [13:11:11.598] - args: function (..., envir = parent.frame(), workers = "") [13:11:11.598] - tweaked: FALSE [13:11:11.598] - call: NULL [13:11:11.599] plan(): nbrOfWorkers() = 1 [13:11:11.653] plan(): Setting new future strategy stack: [13:11:11.653] List of future strategies: [13:11:11.653] 1. mirai_multisession: [13:11:11.653] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:11:11.653] - tweaked: FALSE [13:11:11.653] - call: future::plan(future.mirai::mirai_multisession) [13:11:11.665] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:11:11.665] < mirai | $data > [13:11:11.672] getGlobalsAndPackages() ... [13:11:11.672] Not searching for globals [13:11:11.673] - globals: [0] [13:11:11.673] getGlobalsAndPackages() ... DONE [13:11:11.673] getGlobalsAndPackages() ... [13:11:11.674] [13:11:11.674] - globals: [0] [13:11:11.674] getGlobalsAndPackages() ... DONE [13:11:11.948] Packages needed by the future expression (n = 0): [13:11:11.949] Packages needed by future strategies (n = 0): [13:11:11.950] { [13:11:11.950] { [13:11:11.950] { [13:11:11.950] ...future.startTime <- base::Sys.time() [13:11:11.950] { [13:11:11.950] { [13:11:11.950] { [13:11:11.950] base::local({ [13:11:11.950] has_future <- base::requireNamespace("future", [13:11:11.950] quietly = TRUE) [13:11:11.950] if (has_future) { [13:11:11.950] ns <- base::getNamespace("future") [13:11:11.950] version <- ns[[".package"]][["version"]] [13:11:11.950] if (is.null(version)) [13:11:11.950] version <- utils::packageVersion("future") [13:11:11.950] } [13:11:11.950] else { [13:11:11.950] version <- NULL [13:11:11.950] } [13:11:11.950] if (!has_future || version < "1.8.0") { [13:11:11.950] info <- base::c(r_version = base::gsub("R version ", [13:11:11.950] "", base::R.version$version.string), [13:11:11.950] platform = base::sprintf("%s (%s-bit)", [13:11:11.950] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:11.950] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:11.950] "release", "version")], collapse = " "), [13:11:11.950] hostname = base::Sys.info()[["nodename"]]) [13:11:11.950] info <- base::sprintf("%s: %s", base::names(info), [13:11:11.950] info) [13:11:11.950] info <- base::paste(info, collapse = "; ") [13:11:11.950] if (!has_future) { [13:11:11.950] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:11.950] info) [13:11:11.950] } [13:11:11.950] else { [13:11:11.950] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:11.950] info, version) [13:11:11.950] } [13:11:11.950] base::stop(msg) [13:11:11.950] } [13:11:11.950] }) [13:11:11.950] } [13:11:11.950] ...future.strategy.old <- future::plan("list") [13:11:11.950] options(future.plan = NULL) [13:11:11.950] Sys.unsetenv("R_FUTURE_PLAN") [13:11:11.950] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:11.950] } [13:11:11.950] ...future.workdir <- getwd() [13:11:11.950] } [13:11:11.950] ...future.oldOptions <- base::as.list(base::.Options) [13:11:11.950] ...future.oldEnvVars <- base::Sys.getenv() [13:11:11.950] } [13:11:11.950] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:11.950] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:11.950] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:11.950] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:11.950] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:11.950] future.stdout.windows.reencode = NULL, width = 80L) [13:11:11.950] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:11.950] base::names(...future.oldOptions)) [13:11:11.950] } [13:11:11.950] if (FALSE) { [13:11:11.950] } [13:11:11.950] else { [13:11:11.950] if (TRUE) { [13:11:11.950] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:11.950] open = "w") [13:11:11.950] } [13:11:11.950] else { [13:11:11.950] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:11.950] windows = "NUL", "/dev/null"), open = "w") [13:11:11.950] } [13:11:11.950] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:11.950] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:11.950] base::sink(type = "output", split = FALSE) [13:11:11.950] base::close(...future.stdout) [13:11:11.950] }, add = TRUE) [13:11:11.950] } [13:11:11.950] ...future.frame <- base::sys.nframe() [13:11:11.950] ...future.conditions <- base::list() [13:11:11.950] ...future.rng <- base::globalenv()$.Random.seed [13:11:11.950] if (FALSE) { [13:11:11.950] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:11.950] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:11.950] } [13:11:11.950] ...future.result <- base::tryCatch({ [13:11:11.950] base::withCallingHandlers({ [13:11:11.950] ...future.value <- base::withVisible(base::local(NA)) [13:11:11.950] future::FutureResult(value = ...future.value$value, [13:11:11.950] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:11.950] ...future.rng), globalenv = if (FALSE) [13:11:11.950] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:11.950] ...future.globalenv.names)) [13:11:11.950] else NULL, started = ...future.startTime, version = "1.8") [13:11:11.950] }, condition = base::local({ [13:11:11.950] c <- base::c [13:11:11.950] inherits <- base::inherits [13:11:11.950] invokeRestart <- base::invokeRestart [13:11:11.950] length <- base::length [13:11:11.950] list <- base::list [13:11:11.950] seq.int <- base::seq.int [13:11:11.950] signalCondition <- base::signalCondition [13:11:11.950] sys.calls <- base::sys.calls [13:11:11.950] `[[` <- base::`[[` [13:11:11.950] `+` <- base::`+` [13:11:11.950] `<<-` <- base::`<<-` [13:11:11.950] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:11.950] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:11.950] 3L)] [13:11:11.950] } [13:11:11.950] function(cond) { [13:11:11.950] is_error <- inherits(cond, "error") [13:11:11.950] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:11.950] NULL) [13:11:11.950] if (is_error) { [13:11:11.950] sessionInformation <- function() { [13:11:11.950] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:11.950] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:11.950] search = base::search(), system = base::Sys.info()) [13:11:11.950] } [13:11:11.950] ...future.conditions[[length(...future.conditions) + [13:11:11.950] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:11.950] cond$call), session = sessionInformation(), [13:11:11.950] timestamp = base::Sys.time(), signaled = 0L) [13:11:11.950] signalCondition(cond) [13:11:11.950] } [13:11:11.950] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:11.950] signal <- FALSE && inherits(cond, character(0)) [13:11:11.950] ...future.conditions[[length(...future.conditions) + [13:11:11.950] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:11.950] if (FALSE && !signal) { [13:11:11.950] muffleCondition <- function (cond, pattern = "^muffle") [13:11:11.950] { [13:11:11.950] inherits <- base::inherits [13:11:11.950] invokeRestart <- base::invokeRestart [13:11:11.950] is.null <- base::is.null [13:11:11.950] muffled <- FALSE [13:11:11.950] if (inherits(cond, "message")) { [13:11:11.950] muffled <- grepl(pattern, "muffleMessage") [13:11:11.950] if (muffled) [13:11:11.950] invokeRestart("muffleMessage") [13:11:11.950] } [13:11:11.950] else if (inherits(cond, "warning")) { [13:11:11.950] muffled <- grepl(pattern, "muffleWarning") [13:11:11.950] if (muffled) [13:11:11.950] invokeRestart("muffleWarning") [13:11:11.950] } [13:11:11.950] else if (inherits(cond, "condition")) { [13:11:11.950] if (!is.null(pattern)) { [13:11:11.950] computeRestarts <- base::computeRestarts [13:11:11.950] grepl <- base::grepl [13:11:11.950] restarts <- computeRestarts(cond) [13:11:11.950] for (restart in restarts) { [13:11:11.950] name <- restart$name [13:11:11.950] if (is.null(name)) [13:11:11.950] next [13:11:11.950] if (!grepl(pattern, name)) [13:11:11.950] next [13:11:11.950] invokeRestart(restart) [13:11:11.950] muffled <- TRUE [13:11:11.950] break [13:11:11.950] } [13:11:11.950] } [13:11:11.950] } [13:11:11.950] invisible(muffled) [13:11:11.950] } [13:11:11.950] muffleCondition(cond, pattern = "^muffle") [13:11:11.950] } [13:11:11.950] } [13:11:11.950] else { [13:11:11.950] if (TRUE) { [13:11:11.950] muffleCondition <- function (cond, pattern = "^muffle") [13:11:11.950] { [13:11:11.950] inherits <- base::inherits [13:11:11.950] invokeRestart <- base::invokeRestart [13:11:11.950] is.null <- base::is.null [13:11:11.950] muffled <- FALSE [13:11:11.950] if (inherits(cond, "message")) { [13:11:11.950] muffled <- grepl(pattern, "muffleMessage") [13:11:11.950] if (muffled) [13:11:11.950] invokeRestart("muffleMessage") [13:11:11.950] } [13:11:11.950] else if (inherits(cond, "warning")) { [13:11:11.950] muffled <- grepl(pattern, "muffleWarning") [13:11:11.950] if (muffled) [13:11:11.950] invokeRestart("muffleWarning") [13:11:11.950] } [13:11:11.950] else if (inherits(cond, "condition")) { [13:11:11.950] if (!is.null(pattern)) { [13:11:11.950] computeRestarts <- base::computeRestarts [13:11:11.950] grepl <- base::grepl [13:11:11.950] restarts <- computeRestarts(cond) [13:11:11.950] for (restart in restarts) { [13:11:11.950] name <- restart$name [13:11:11.950] if (is.null(name)) [13:11:11.950] next [13:11:11.950] if (!grepl(pattern, name)) [13:11:11.950] next [13:11:11.950] invokeRestart(restart) [13:11:11.950] muffled <- TRUE [13:11:11.950] break [13:11:11.950] } [13:11:11.950] } [13:11:11.950] } [13:11:11.950] invisible(muffled) [13:11:11.950] } [13:11:11.950] muffleCondition(cond, pattern = "^muffle") [13:11:11.950] } [13:11:11.950] } [13:11:11.950] } [13:11:11.950] })) [13:11:11.950] }, error = function(ex) { [13:11:11.950] base::structure(base::list(value = NULL, visible = NULL, [13:11:11.950] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:11.950] ...future.rng), started = ...future.startTime, [13:11:11.950] finished = Sys.time(), session_uuid = NA_character_, [13:11:11.950] version = "1.8"), class = "FutureResult") [13:11:11.950] }, finally = { [13:11:11.950] if (!identical(...future.workdir, getwd())) [13:11:11.950] setwd(...future.workdir) [13:11:11.950] { [13:11:11.950] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:11.950] ...future.oldOptions$nwarnings <- NULL [13:11:11.950] } [13:11:11.950] base::options(...future.oldOptions) [13:11:11.950] if (.Platform$OS.type == "windows") { [13:11:11.950] old_names <- names(...future.oldEnvVars) [13:11:11.950] envs <- base::Sys.getenv() [13:11:11.950] names <- names(envs) [13:11:11.950] common <- intersect(names, old_names) [13:11:11.950] added <- setdiff(names, old_names) [13:11:11.950] removed <- setdiff(old_names, names) [13:11:11.950] changed <- common[...future.oldEnvVars[common] != [13:11:11.950] envs[common]] [13:11:11.950] NAMES <- toupper(changed) [13:11:11.950] args <- list() [13:11:11.950] for (kk in seq_along(NAMES)) { [13:11:11.950] name <- changed[[kk]] [13:11:11.950] NAME <- NAMES[[kk]] [13:11:11.950] if (name != NAME && is.element(NAME, old_names)) [13:11:11.950] next [13:11:11.950] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:11.950] } [13:11:11.950] NAMES <- toupper(added) [13:11:11.950] for (kk in seq_along(NAMES)) { [13:11:11.950] name <- added[[kk]] [13:11:11.950] NAME <- NAMES[[kk]] [13:11:11.950] if (name != NAME && is.element(NAME, old_names)) [13:11:11.950] next [13:11:11.950] args[[name]] <- "" [13:11:11.950] } [13:11:11.950] NAMES <- toupper(removed) [13:11:11.950] for (kk in seq_along(NAMES)) { [13:11:11.950] name <- removed[[kk]] [13:11:11.950] NAME <- NAMES[[kk]] [13:11:11.950] if (name != NAME && is.element(NAME, old_names)) [13:11:11.950] next [13:11:11.950] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:11.950] } [13:11:11.950] if (length(args) > 0) [13:11:11.950] base::do.call(base::Sys.setenv, args = args) [13:11:11.950] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:11.950] } [13:11:11.950] else { [13:11:11.950] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:11.950] } [13:11:11.950] { [13:11:11.950] if (base::length(...future.futureOptionsAdded) > [13:11:11.950] 0L) { [13:11:11.950] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:11.950] base::names(opts) <- ...future.futureOptionsAdded [13:11:11.950] base::options(opts) [13:11:11.950] } [13:11:11.950] { [13:11:11.950] NULL [13:11:11.950] options(future.plan = NULL) [13:11:11.950] if (is.na(NA_character_)) [13:11:11.950] Sys.unsetenv("R_FUTURE_PLAN") [13:11:11.950] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:11.950] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:11.950] .init = FALSE) [13:11:11.950] } [13:11:11.950] } [13:11:11.950] } [13:11:11.950] }) [13:11:11.950] if (TRUE) { [13:11:11.950] base::sink(type = "output", split = FALSE) [13:11:11.950] if (TRUE) { [13:11:11.950] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:11.950] } [13:11:11.950] else { [13:11:11.950] ...future.result["stdout"] <- base::list(NULL) [13:11:11.950] } [13:11:11.950] base::close(...future.stdout) [13:11:11.950] ...future.stdout <- NULL [13:11:11.950] } [13:11:11.950] ...future.result$conditions <- ...future.conditions [13:11:11.950] ...future.result$finished <- base::Sys.time() [13:11:11.950] ...future.result [13:11:11.950] } [13:11:12.049] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:11:12.050] 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:11:12.050] plan(): Setting new future strategy stack: [13:11:12.051] List of future strategies: [13:11:12.051] 1. mirai_multisession: [13:11:12.051] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:11:12.051] - tweaked: FALSE [13:11:12.051] - call: future::plan(future.mirai::mirai_multisession) [13:11:12.063] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:11:12.064] < mirai | $data > [13:11:12.066] getGlobalsAndPackages() ... [13:11:12.066] Not searching for globals [13:11:12.066] - globals: [0] [13:11:12.066] getGlobalsAndPackages() ... DONE [13:11:12.067] getGlobalsAndPackages() ... [13:11:12.067] [13:11:12.067] - globals: [0] [13:11:12.067] getGlobalsAndPackages() ... DONE [13:11:12.067] Packages needed by the future expression (n = 0): [13:11:12.068] Packages needed by future strategies (n = 0): [13:11:12.068] { [13:11:12.068] { [13:11:12.068] { [13:11:12.068] ...future.startTime <- base::Sys.time() [13:11:12.068] { [13:11:12.068] { [13:11:12.068] { [13:11:12.068] base::local({ [13:11:12.068] has_future <- base::requireNamespace("future", [13:11:12.068] quietly = TRUE) [13:11:12.068] if (has_future) { [13:11:12.068] ns <- base::getNamespace("future") [13:11:12.068] version <- ns[[".package"]][["version"]] [13:11:12.068] if (is.null(version)) [13:11:12.068] version <- utils::packageVersion("future") [13:11:12.068] } [13:11:12.068] else { [13:11:12.068] version <- NULL [13:11:12.068] } [13:11:12.068] if (!has_future || version < "1.8.0") { [13:11:12.068] info <- base::c(r_version = base::gsub("R version ", [13:11:12.068] "", base::R.version$version.string), [13:11:12.068] platform = base::sprintf("%s (%s-bit)", [13:11:12.068] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:12.068] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:12.068] "release", "version")], collapse = " "), [13:11:12.068] hostname = base::Sys.info()[["nodename"]]) [13:11:12.068] info <- base::sprintf("%s: %s", base::names(info), [13:11:12.068] info) [13:11:12.068] info <- base::paste(info, collapse = "; ") [13:11:12.068] if (!has_future) { [13:11:12.068] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:12.068] info) [13:11:12.068] } [13:11:12.068] else { [13:11:12.068] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:12.068] info, version) [13:11:12.068] } [13:11:12.068] base::stop(msg) [13:11:12.068] } [13:11:12.068] }) [13:11:12.068] } [13:11:12.068] ...future.strategy.old <- future::plan("list") [13:11:12.068] options(future.plan = NULL) [13:11:12.068] Sys.unsetenv("R_FUTURE_PLAN") [13:11:12.068] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:12.068] } [13:11:12.068] ...future.workdir <- getwd() [13:11:12.068] } [13:11:12.068] ...future.oldOptions <- base::as.list(base::.Options) [13:11:12.068] ...future.oldEnvVars <- base::Sys.getenv() [13:11:12.068] } [13:11:12.068] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:12.068] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:12.068] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:12.068] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:12.068] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:12.068] future.stdout.windows.reencode = NULL, width = 80L) [13:11:12.068] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:12.068] base::names(...future.oldOptions)) [13:11:12.068] } [13:11:12.068] if (FALSE) { [13:11:12.068] } [13:11:12.068] else { [13:11:12.068] if (TRUE) { [13:11:12.068] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:12.068] open = "w") [13:11:12.068] } [13:11:12.068] else { [13:11:12.068] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:12.068] windows = "NUL", "/dev/null"), open = "w") [13:11:12.068] } [13:11:12.068] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:12.068] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:12.068] base::sink(type = "output", split = FALSE) [13:11:12.068] base::close(...future.stdout) [13:11:12.068] }, add = TRUE) [13:11:12.068] } [13:11:12.068] ...future.frame <- base::sys.nframe() [13:11:12.068] ...future.conditions <- base::list() [13:11:12.068] ...future.rng <- base::globalenv()$.Random.seed [13:11:12.068] if (FALSE) { [13:11:12.068] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:12.068] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:12.068] } [13:11:12.068] ...future.result <- base::tryCatch({ [13:11:12.068] base::withCallingHandlers({ [13:11:12.068] ...future.value <- base::withVisible(base::local(NA)) [13:11:12.068] future::FutureResult(value = ...future.value$value, [13:11:12.068] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:12.068] ...future.rng), globalenv = if (FALSE) [13:11:12.068] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:12.068] ...future.globalenv.names)) [13:11:12.068] else NULL, started = ...future.startTime, version = "1.8") [13:11:12.068] }, condition = base::local({ [13:11:12.068] c <- base::c [13:11:12.068] inherits <- base::inherits [13:11:12.068] invokeRestart <- base::invokeRestart [13:11:12.068] length <- base::length [13:11:12.068] list <- base::list [13:11:12.068] seq.int <- base::seq.int [13:11:12.068] signalCondition <- base::signalCondition [13:11:12.068] sys.calls <- base::sys.calls [13:11:12.068] `[[` <- base::`[[` [13:11:12.068] `+` <- base::`+` [13:11:12.068] `<<-` <- base::`<<-` [13:11:12.068] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:12.068] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:12.068] 3L)] [13:11:12.068] } [13:11:12.068] function(cond) { [13:11:12.068] is_error <- inherits(cond, "error") [13:11:12.068] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:12.068] NULL) [13:11:12.068] if (is_error) { [13:11:12.068] sessionInformation <- function() { [13:11:12.068] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:12.068] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:12.068] search = base::search(), system = base::Sys.info()) [13:11:12.068] } [13:11:12.068] ...future.conditions[[length(...future.conditions) + [13:11:12.068] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:12.068] cond$call), session = sessionInformation(), [13:11:12.068] timestamp = base::Sys.time(), signaled = 0L) [13:11:12.068] signalCondition(cond) [13:11:12.068] } [13:11:12.068] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:12.068] signal <- FALSE && inherits(cond, character(0)) [13:11:12.068] ...future.conditions[[length(...future.conditions) + [13:11:12.068] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:12.068] if (FALSE && !signal) { [13:11:12.068] muffleCondition <- function (cond, pattern = "^muffle") [13:11:12.068] { [13:11:12.068] inherits <- base::inherits [13:11:12.068] invokeRestart <- base::invokeRestart [13:11:12.068] is.null <- base::is.null [13:11:12.068] muffled <- FALSE [13:11:12.068] if (inherits(cond, "message")) { [13:11:12.068] muffled <- grepl(pattern, "muffleMessage") [13:11:12.068] if (muffled) [13:11:12.068] invokeRestart("muffleMessage") [13:11:12.068] } [13:11:12.068] else if (inherits(cond, "warning")) { [13:11:12.068] muffled <- grepl(pattern, "muffleWarning") [13:11:12.068] if (muffled) [13:11:12.068] invokeRestart("muffleWarning") [13:11:12.068] } [13:11:12.068] else if (inherits(cond, "condition")) { [13:11:12.068] if (!is.null(pattern)) { [13:11:12.068] computeRestarts <- base::computeRestarts [13:11:12.068] grepl <- base::grepl [13:11:12.068] restarts <- computeRestarts(cond) [13:11:12.068] for (restart in restarts) { [13:11:12.068] name <- restart$name [13:11:12.068] if (is.null(name)) [13:11:12.068] next [13:11:12.068] if (!grepl(pattern, name)) [13:11:12.068] next [13:11:12.068] invokeRestart(restart) [13:11:12.068] muffled <- TRUE [13:11:12.068] break [13:11:12.068] } [13:11:12.068] } [13:11:12.068] } [13:11:12.068] invisible(muffled) [13:11:12.068] } [13:11:12.068] muffleCondition(cond, pattern = "^muffle") [13:11:12.068] } [13:11:12.068] } [13:11:12.068] else { [13:11:12.068] if (TRUE) { [13:11:12.068] muffleCondition <- function (cond, pattern = "^muffle") [13:11:12.068] { [13:11:12.068] inherits <- base::inherits [13:11:12.068] invokeRestart <- base::invokeRestart [13:11:12.068] is.null <- base::is.null [13:11:12.068] muffled <- FALSE [13:11:12.068] if (inherits(cond, "message")) { [13:11:12.068] muffled <- grepl(pattern, "muffleMessage") [13:11:12.068] if (muffled) [13:11:12.068] invokeRestart("muffleMessage") [13:11:12.068] } [13:11:12.068] else if (inherits(cond, "warning")) { [13:11:12.068] muffled <- grepl(pattern, "muffleWarning") [13:11:12.068] if (muffled) [13:11:12.068] invokeRestart("muffleWarning") [13:11:12.068] } [13:11:12.068] else if (inherits(cond, "condition")) { [13:11:12.068] if (!is.null(pattern)) { [13:11:12.068] computeRestarts <- base::computeRestarts [13:11:12.068] grepl <- base::grepl [13:11:12.068] restarts <- computeRestarts(cond) [13:11:12.068] for (restart in restarts) { [13:11:12.068] name <- restart$name [13:11:12.068] if (is.null(name)) [13:11:12.068] next [13:11:12.068] if (!grepl(pattern, name)) [13:11:12.068] next [13:11:12.068] invokeRestart(restart) [13:11:12.068] muffled <- TRUE [13:11:12.068] break [13:11:12.068] } [13:11:12.068] } [13:11:12.068] } [13:11:12.068] invisible(muffled) [13:11:12.068] } [13:11:12.068] muffleCondition(cond, pattern = "^muffle") [13:11:12.068] } [13:11:12.068] } [13:11:12.068] } [13:11:12.068] })) [13:11:12.068] }, error = function(ex) { [13:11:12.068] base::structure(base::list(value = NULL, visible = NULL, [13:11:12.068] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:12.068] ...future.rng), started = ...future.startTime, [13:11:12.068] finished = Sys.time(), session_uuid = NA_character_, [13:11:12.068] version = "1.8"), class = "FutureResult") [13:11:12.068] }, finally = { [13:11:12.068] if (!identical(...future.workdir, getwd())) [13:11:12.068] setwd(...future.workdir) [13:11:12.068] { [13:11:12.068] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:12.068] ...future.oldOptions$nwarnings <- NULL [13:11:12.068] } [13:11:12.068] base::options(...future.oldOptions) [13:11:12.068] if (.Platform$OS.type == "windows") { [13:11:12.068] old_names <- names(...future.oldEnvVars) [13:11:12.068] envs <- base::Sys.getenv() [13:11:12.068] names <- names(envs) [13:11:12.068] common <- intersect(names, old_names) [13:11:12.068] added <- setdiff(names, old_names) [13:11:12.068] removed <- setdiff(old_names, names) [13:11:12.068] changed <- common[...future.oldEnvVars[common] != [13:11:12.068] envs[common]] [13:11:12.068] NAMES <- toupper(changed) [13:11:12.068] args <- list() [13:11:12.068] for (kk in seq_along(NAMES)) { [13:11:12.068] name <- changed[[kk]] [13:11:12.068] NAME <- NAMES[[kk]] [13:11:12.068] if (name != NAME && is.element(NAME, old_names)) [13:11:12.068] next [13:11:12.068] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:12.068] } [13:11:12.068] NAMES <- toupper(added) [13:11:12.068] for (kk in seq_along(NAMES)) { [13:11:12.068] name <- added[[kk]] [13:11:12.068] NAME <- NAMES[[kk]] [13:11:12.068] if (name != NAME && is.element(NAME, old_names)) [13:11:12.068] next [13:11:12.068] args[[name]] <- "" [13:11:12.068] } [13:11:12.068] NAMES <- toupper(removed) [13:11:12.068] for (kk in seq_along(NAMES)) { [13:11:12.068] name <- removed[[kk]] [13:11:12.068] NAME <- NAMES[[kk]] [13:11:12.068] if (name != NAME && is.element(NAME, old_names)) [13:11:12.068] next [13:11:12.068] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:12.068] } [13:11:12.068] if (length(args) > 0) [13:11:12.068] base::do.call(base::Sys.setenv, args = args) [13:11:12.068] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:12.068] } [13:11:12.068] else { [13:11:12.068] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:12.068] } [13:11:12.068] { [13:11:12.068] if (base::length(...future.futureOptionsAdded) > [13:11:12.068] 0L) { [13:11:12.068] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:12.068] base::names(opts) <- ...future.futureOptionsAdded [13:11:12.068] base::options(opts) [13:11:12.068] } [13:11:12.068] { [13:11:12.068] NULL [13:11:12.068] options(future.plan = NULL) [13:11:12.068] if (is.na(NA_character_)) [13:11:12.068] Sys.unsetenv("R_FUTURE_PLAN") [13:11:12.068] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:12.068] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:12.068] .init = FALSE) [13:11:12.068] } [13:11:12.068] } [13:11:12.068] } [13:11:12.068] }) [13:11:12.068] if (TRUE) { [13:11:12.068] base::sink(type = "output", split = FALSE) [13:11:12.068] if (TRUE) { [13:11:12.068] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:12.068] } [13:11:12.068] else { [13:11:12.068] ...future.result["stdout"] <- base::list(NULL) [13:11:12.068] } [13:11:12.068] base::close(...future.stdout) [13:11:12.068] ...future.stdout <- NULL [13:11:12.068] } [13:11:12.068] ...future.result$conditions <- ...future.conditions [13:11:12.068] ...future.result$finished <- base::Sys.time() [13:11:12.068] ...future.result [13:11:12.068] } [13:11:12.169] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:11:12.170] 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:11:12.170] plan(): Setting new future strategy stack: [13:11:12.170] List of future strategies: [13:11:12.170] 1. mirai_multisession: [13:11:12.170] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:11:12.170] - tweaked: FALSE [13:11:12.170] - call: future::plan(future.mirai::mirai_multisession) [13:11:12.171] 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:11:12.181] Option 'future.startup.script': TRUE [13:11:12.182] Future startup scripts considered: '.future.R', '~/.future.R' [13:11:12.182] Future startup scripts found: > plan(mirai_multisession) [13:11:12.184] plan(): Setting new future strategy stack: [13:11:12.185] List of future strategies: [13:11:12.185] 1. mirai_multisession: [13:11:12.185] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:11:12.185] - tweaked: FALSE [13:11:12.185] - call: plan(mirai_multisession) [13:11:12.185] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:11:12.185] < mirai | $data > [13:11:12.187] getGlobalsAndPackages() ... [13:11:12.187] Not searching for globals [13:11:12.188] - globals: [0] [13:11:12.188] getGlobalsAndPackages() ... DONE [13:11:12.188] getGlobalsAndPackages() ... [13:11:12.188] [13:11:12.188] - globals: [0] [13:11:12.188] getGlobalsAndPackages() ... DONE [13:11:12.189] Packages needed by the future expression (n = 0): [13:11:12.189] Packages needed by future strategies (n = 0): [13:11:12.190] { [13:11:12.190] { [13:11:12.190] { [13:11:12.190] ...future.startTime <- base::Sys.time() [13:11:12.190] { [13:11:12.190] { [13:11:12.190] { [13:11:12.190] base::local({ [13:11:12.190] has_future <- base::requireNamespace("future", [13:11:12.190] quietly = TRUE) [13:11:12.190] if (has_future) { [13:11:12.190] ns <- base::getNamespace("future") [13:11:12.190] version <- ns[[".package"]][["version"]] [13:11:12.190] if (is.null(version)) [13:11:12.190] version <- utils::packageVersion("future") [13:11:12.190] } [13:11:12.190] else { [13:11:12.190] version <- NULL [13:11:12.190] } [13:11:12.190] if (!has_future || version < "1.8.0") { [13:11:12.190] info <- base::c(r_version = base::gsub("R version ", [13:11:12.190] "", base::R.version$version.string), [13:11:12.190] platform = base::sprintf("%s (%s-bit)", [13:11:12.190] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:12.190] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:12.190] "release", "version")], collapse = " "), [13:11:12.190] hostname = base::Sys.info()[["nodename"]]) [13:11:12.190] info <- base::sprintf("%s: %s", base::names(info), [13:11:12.190] info) [13:11:12.190] info <- base::paste(info, collapse = "; ") [13:11:12.190] if (!has_future) { [13:11:12.190] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:12.190] info) [13:11:12.190] } [13:11:12.190] else { [13:11:12.190] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:12.190] info, version) [13:11:12.190] } [13:11:12.190] base::stop(msg) [13:11:12.190] } [13:11:12.190] }) [13:11:12.190] } [13:11:12.190] ...future.strategy.old <- future::plan("list") [13:11:12.190] options(future.plan = NULL) [13:11:12.190] Sys.unsetenv("R_FUTURE_PLAN") [13:11:12.190] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:12.190] } [13:11:12.190] ...future.workdir <- getwd() [13:11:12.190] } [13:11:12.190] ...future.oldOptions <- base::as.list(base::.Options) [13:11:12.190] ...future.oldEnvVars <- base::Sys.getenv() [13:11:12.190] } [13:11:12.190] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:12.190] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:12.190] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:12.190] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:12.190] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:12.190] future.stdout.windows.reencode = NULL, width = 80L) [13:11:12.190] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:12.190] base::names(...future.oldOptions)) [13:11:12.190] } [13:11:12.190] if (FALSE) { [13:11:12.190] } [13:11:12.190] else { [13:11:12.190] if (TRUE) { [13:11:12.190] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:12.190] open = "w") [13:11:12.190] } [13:11:12.190] else { [13:11:12.190] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:12.190] windows = "NUL", "/dev/null"), open = "w") [13:11:12.190] } [13:11:12.190] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:12.190] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:12.190] base::sink(type = "output", split = FALSE) [13:11:12.190] base::close(...future.stdout) [13:11:12.190] }, add = TRUE) [13:11:12.190] } [13:11:12.190] ...future.frame <- base::sys.nframe() [13:11:12.190] ...future.conditions <- base::list() [13:11:12.190] ...future.rng <- base::globalenv()$.Random.seed [13:11:12.190] if (FALSE) { [13:11:12.190] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:12.190] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:12.190] } [13:11:12.190] ...future.result <- base::tryCatch({ [13:11:12.190] base::withCallingHandlers({ [13:11:12.190] ...future.value <- base::withVisible(base::local(NA)) [13:11:12.190] future::FutureResult(value = ...future.value$value, [13:11:12.190] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:12.190] ...future.rng), globalenv = if (FALSE) [13:11:12.190] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:12.190] ...future.globalenv.names)) [13:11:12.190] else NULL, started = ...future.startTime, version = "1.8") [13:11:12.190] }, condition = base::local({ [13:11:12.190] c <- base::c [13:11:12.190] inherits <- base::inherits [13:11:12.190] invokeRestart <- base::invokeRestart [13:11:12.190] length <- base::length [13:11:12.190] list <- base::list [13:11:12.190] seq.int <- base::seq.int [13:11:12.190] signalCondition <- base::signalCondition [13:11:12.190] sys.calls <- base::sys.calls [13:11:12.190] `[[` <- base::`[[` [13:11:12.190] `+` <- base::`+` [13:11:12.190] `<<-` <- base::`<<-` [13:11:12.190] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:12.190] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:12.190] 3L)] [13:11:12.190] } [13:11:12.190] function(cond) { [13:11:12.190] is_error <- inherits(cond, "error") [13:11:12.190] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:12.190] NULL) [13:11:12.190] if (is_error) { [13:11:12.190] sessionInformation <- function() { [13:11:12.190] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:12.190] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:12.190] search = base::search(), system = base::Sys.info()) [13:11:12.190] } [13:11:12.190] ...future.conditions[[length(...future.conditions) + [13:11:12.190] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:12.190] cond$call), session = sessionInformation(), [13:11:12.190] timestamp = base::Sys.time(), signaled = 0L) [13:11:12.190] signalCondition(cond) [13:11:12.190] } [13:11:12.190] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:12.190] signal <- FALSE && inherits(cond, character(0)) [13:11:12.190] ...future.conditions[[length(...future.conditions) + [13:11:12.190] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:12.190] if (FALSE && !signal) { [13:11:12.190] muffleCondition <- function (cond, pattern = "^muffle") [13:11:12.190] { [13:11:12.190] inherits <- base::inherits [13:11:12.190] invokeRestart <- base::invokeRestart [13:11:12.190] is.null <- base::is.null [13:11:12.190] muffled <- FALSE [13:11:12.190] if (inherits(cond, "message")) { [13:11:12.190] muffled <- grepl(pattern, "muffleMessage") [13:11:12.190] if (muffled) [13:11:12.190] invokeRestart("muffleMessage") [13:11:12.190] } [13:11:12.190] else if (inherits(cond, "warning")) { [13:11:12.190] muffled <- grepl(pattern, "muffleWarning") [13:11:12.190] if (muffled) [13:11:12.190] invokeRestart("muffleWarning") [13:11:12.190] } [13:11:12.190] else if (inherits(cond, "condition")) { [13:11:12.190] if (!is.null(pattern)) { [13:11:12.190] computeRestarts <- base::computeRestarts [13:11:12.190] grepl <- base::grepl [13:11:12.190] restarts <- computeRestarts(cond) [13:11:12.190] for (restart in restarts) { [13:11:12.190] name <- restart$name [13:11:12.190] if (is.null(name)) [13:11:12.190] next [13:11:12.190] if (!grepl(pattern, name)) [13:11:12.190] next [13:11:12.190] invokeRestart(restart) [13:11:12.190] muffled <- TRUE [13:11:12.190] break [13:11:12.190] } [13:11:12.190] } [13:11:12.190] } [13:11:12.190] invisible(muffled) [13:11:12.190] } [13:11:12.190] muffleCondition(cond, pattern = "^muffle") [13:11:12.190] } [13:11:12.190] } [13:11:12.190] else { [13:11:12.190] if (TRUE) { [13:11:12.190] muffleCondition <- function (cond, pattern = "^muffle") [13:11:12.190] { [13:11:12.190] inherits <- base::inherits [13:11:12.190] invokeRestart <- base::invokeRestart [13:11:12.190] is.null <- base::is.null [13:11:12.190] muffled <- FALSE [13:11:12.190] if (inherits(cond, "message")) { [13:11:12.190] muffled <- grepl(pattern, "muffleMessage") [13:11:12.190] if (muffled) [13:11:12.190] invokeRestart("muffleMessage") [13:11:12.190] } [13:11:12.190] else if (inherits(cond, "warning")) { [13:11:12.190] muffled <- grepl(pattern, "muffleWarning") [13:11:12.190] if (muffled) [13:11:12.190] invokeRestart("muffleWarning") [13:11:12.190] } [13:11:12.190] else if (inherits(cond, "condition")) { [13:11:12.190] if (!is.null(pattern)) { [13:11:12.190] computeRestarts <- base::computeRestarts [13:11:12.190] grepl <- base::grepl [13:11:12.190] restarts <- computeRestarts(cond) [13:11:12.190] for (restart in restarts) { [13:11:12.190] name <- restart$name [13:11:12.190] if (is.null(name)) [13:11:12.190] next [13:11:12.190] if (!grepl(pattern, name)) [13:11:12.190] next [13:11:12.190] invokeRestart(restart) [13:11:12.190] muffled <- TRUE [13:11:12.190] break [13:11:12.190] } [13:11:12.190] } [13:11:12.190] } [13:11:12.190] invisible(muffled) [13:11:12.190] } [13:11:12.190] muffleCondition(cond, pattern = "^muffle") [13:11:12.190] } [13:11:12.190] } [13:11:12.190] } [13:11:12.190] })) [13:11:12.190] }, error = function(ex) { [13:11:12.190] base::structure(base::list(value = NULL, visible = NULL, [13:11:12.190] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:12.190] ...future.rng), started = ...future.startTime, [13:11:12.190] finished = Sys.time(), session_uuid = NA_character_, [13:11:12.190] version = "1.8"), class = "FutureResult") [13:11:12.190] }, finally = { [13:11:12.190] if (!identical(...future.workdir, getwd())) [13:11:12.190] setwd(...future.workdir) [13:11:12.190] { [13:11:12.190] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:12.190] ...future.oldOptions$nwarnings <- NULL [13:11:12.190] } [13:11:12.190] base::options(...future.oldOptions) [13:11:12.190] if (.Platform$OS.type == "windows") { [13:11:12.190] old_names <- names(...future.oldEnvVars) [13:11:12.190] envs <- base::Sys.getenv() [13:11:12.190] names <- names(envs) [13:11:12.190] common <- intersect(names, old_names) [13:11:12.190] added <- setdiff(names, old_names) [13:11:12.190] removed <- setdiff(old_names, names) [13:11:12.190] changed <- common[...future.oldEnvVars[common] != [13:11:12.190] envs[common]] [13:11:12.190] NAMES <- toupper(changed) [13:11:12.190] args <- list() [13:11:12.190] for (kk in seq_along(NAMES)) { [13:11:12.190] name <- changed[[kk]] [13:11:12.190] NAME <- NAMES[[kk]] [13:11:12.190] if (name != NAME && is.element(NAME, old_names)) [13:11:12.190] next [13:11:12.190] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:12.190] } [13:11:12.190] NAMES <- toupper(added) [13:11:12.190] for (kk in seq_along(NAMES)) { [13:11:12.190] name <- added[[kk]] [13:11:12.190] NAME <- NAMES[[kk]] [13:11:12.190] if (name != NAME && is.element(NAME, old_names)) [13:11:12.190] next [13:11:12.190] args[[name]] <- "" [13:11:12.190] } [13:11:12.190] NAMES <- toupper(removed) [13:11:12.190] for (kk in seq_along(NAMES)) { [13:11:12.190] name <- removed[[kk]] [13:11:12.190] NAME <- NAMES[[kk]] [13:11:12.190] if (name != NAME && is.element(NAME, old_names)) [13:11:12.190] next [13:11:12.190] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:12.190] } [13:11:12.190] if (length(args) > 0) [13:11:12.190] base::do.call(base::Sys.setenv, args = args) [13:11:12.190] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:12.190] } [13:11:12.190] else { [13:11:12.190] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:12.190] } [13:11:12.190] { [13:11:12.190] if (base::length(...future.futureOptionsAdded) > [13:11:12.190] 0L) { [13:11:12.190] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:12.190] base::names(opts) <- ...future.futureOptionsAdded [13:11:12.190] base::options(opts) [13:11:12.190] } [13:11:12.190] { [13:11:12.190] NULL [13:11:12.190] options(future.plan = NULL) [13:11:12.190] if (is.na(NA_character_)) [13:11:12.190] Sys.unsetenv("R_FUTURE_PLAN") [13:11:12.190] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:12.190] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:12.190] .init = FALSE) [13:11:12.190] } [13:11:12.190] } [13:11:12.190] } [13:11:12.190] }) [13:11:12.190] if (TRUE) { [13:11:12.190] base::sink(type = "output", split = FALSE) [13:11:12.190] if (TRUE) { [13:11:12.190] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:12.190] } [13:11:12.190] else { [13:11:12.190] ...future.result["stdout"] <- base::list(NULL) [13:11:12.190] } [13:11:12.190] base::close(...future.stdout) [13:11:12.190] ...future.stdout <- NULL [13:11:12.190] } [13:11:12.190] ...future.result$conditions <- ...future.conditions [13:11:12.190] ...future.result$finished <- base::Sys.time() [13:11:12.190] ...future.result [13:11:12.190] } [13:11:12.196] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:11:12.196] 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:11:12.203] *** plan('mirai_multisession') ...[13:11:12.204] plan(): Setting new future strategy stack: [13:11:12.204] List of future strategies: [13:11:12.204] 1. mirai_multisession: [13:11:12.204] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:11:12.204] - tweaked: FALSE [13:11:12.204] - call: plan(type) [13:11:12.204] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:11:12.205] < mirai | $data > [13:11:12.207] getGlobalsAndPackages() ... [13:11:12.207] Not searching for globals [13:11:12.207] - globals: [0] [13:11:12.207] getGlobalsAndPackages() ... DONE [13:11:12.207] getGlobalsAndPackages() ... [13:11:12.208] [13:11:12.208] - globals: [0] [13:11:12.208] getGlobalsAndPackages() ... DONE [13:11:12.208] Packages needed by the future expression (n = 0): [13:11:12.208] Packages needed by future strategies (n = 0): [13:11:12.209] { [13:11:12.209] { [13:11:12.209] { [13:11:12.209] ...future.startTime <- base::Sys.time() [13:11:12.209] { [13:11:12.209] { [13:11:12.209] { [13:11:12.209] base::local({ [13:11:12.209] has_future <- base::requireNamespace("future", [13:11:12.209] quietly = TRUE) [13:11:12.209] if (has_future) { [13:11:12.209] ns <- base::getNamespace("future") [13:11:12.209] version <- ns[[".package"]][["version"]] [13:11:12.209] if (is.null(version)) [13:11:12.209] version <- utils::packageVersion("future") [13:11:12.209] } [13:11:12.209] else { [13:11:12.209] version <- NULL [13:11:12.209] } [13:11:12.209] if (!has_future || version < "1.8.0") { [13:11:12.209] info <- base::c(r_version = base::gsub("R version ", [13:11:12.209] "", base::R.version$version.string), [13:11:12.209] platform = base::sprintf("%s (%s-bit)", [13:11:12.209] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:12.209] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:12.209] "release", "version")], collapse = " "), [13:11:12.209] hostname = base::Sys.info()[["nodename"]]) [13:11:12.209] info <- base::sprintf("%s: %s", base::names(info), [13:11:12.209] info) [13:11:12.209] info <- base::paste(info, collapse = "; ") [13:11:12.209] if (!has_future) { [13:11:12.209] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:12.209] info) [13:11:12.209] } [13:11:12.209] else { [13:11:12.209] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:12.209] info, version) [13:11:12.209] } [13:11:12.209] base::stop(msg) [13:11:12.209] } [13:11:12.209] }) [13:11:12.209] } [13:11:12.209] ...future.strategy.old <- future::plan("list") [13:11:12.209] options(future.plan = NULL) [13:11:12.209] Sys.unsetenv("R_FUTURE_PLAN") [13:11:12.209] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:12.209] } [13:11:12.209] ...future.workdir <- getwd() [13:11:12.209] } [13:11:12.209] ...future.oldOptions <- base::as.list(base::.Options) [13:11:12.209] ...future.oldEnvVars <- base::Sys.getenv() [13:11:12.209] } [13:11:12.209] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:12.209] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:12.209] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:12.209] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:12.209] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:12.209] future.stdout.windows.reencode = NULL, width = 80L) [13:11:12.209] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:12.209] base::names(...future.oldOptions)) [13:11:12.209] } [13:11:12.209] if (FALSE) { [13:11:12.209] } [13:11:12.209] else { [13:11:12.209] if (TRUE) { [13:11:12.209] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:12.209] open = "w") [13:11:12.209] } [13:11:12.209] else { [13:11:12.209] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:12.209] windows = "NUL", "/dev/null"), open = "w") [13:11:12.209] } [13:11:12.209] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:12.209] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:12.209] base::sink(type = "output", split = FALSE) [13:11:12.209] base::close(...future.stdout) [13:11:12.209] }, add = TRUE) [13:11:12.209] } [13:11:12.209] ...future.frame <- base::sys.nframe() [13:11:12.209] ...future.conditions <- base::list() [13:11:12.209] ...future.rng <- base::globalenv()$.Random.seed [13:11:12.209] if (FALSE) { [13:11:12.209] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:12.209] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:12.209] } [13:11:12.209] ...future.result <- base::tryCatch({ [13:11:12.209] base::withCallingHandlers({ [13:11:12.209] ...future.value <- base::withVisible(base::local(NA)) [13:11:12.209] future::FutureResult(value = ...future.value$value, [13:11:12.209] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:12.209] ...future.rng), globalenv = if (FALSE) [13:11:12.209] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:12.209] ...future.globalenv.names)) [13:11:12.209] else NULL, started = ...future.startTime, version = "1.8") [13:11:12.209] }, condition = base::local({ [13:11:12.209] c <- base::c [13:11:12.209] inherits <- base::inherits [13:11:12.209] invokeRestart <- base::invokeRestart [13:11:12.209] length <- base::length [13:11:12.209] list <- base::list [13:11:12.209] seq.int <- base::seq.int [13:11:12.209] signalCondition <- base::signalCondition [13:11:12.209] sys.calls <- base::sys.calls [13:11:12.209] `[[` <- base::`[[` [13:11:12.209] `+` <- base::`+` [13:11:12.209] `<<-` <- base::`<<-` [13:11:12.209] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:12.209] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:12.209] 3L)] [13:11:12.209] } [13:11:12.209] function(cond) { [13:11:12.209] is_error <- inherits(cond, "error") [13:11:12.209] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:12.209] NULL) [13:11:12.209] if (is_error) { [13:11:12.209] sessionInformation <- function() { [13:11:12.209] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:12.209] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:12.209] search = base::search(), system = base::Sys.info()) [13:11:12.209] } [13:11:12.209] ...future.conditions[[length(...future.conditions) + [13:11:12.209] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:12.209] cond$call), session = sessionInformation(), [13:11:12.209] timestamp = base::Sys.time(), signaled = 0L) [13:11:12.209] signalCondition(cond) [13:11:12.209] } [13:11:12.209] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:12.209] signal <- FALSE && inherits(cond, character(0)) [13:11:12.209] ...future.conditions[[length(...future.conditions) + [13:11:12.209] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:12.209] if (FALSE && !signal) { [13:11:12.209] muffleCondition <- function (cond, pattern = "^muffle") [13:11:12.209] { [13:11:12.209] inherits <- base::inherits [13:11:12.209] invokeRestart <- base::invokeRestart [13:11:12.209] is.null <- base::is.null [13:11:12.209] muffled <- FALSE [13:11:12.209] if (inherits(cond, "message")) { [13:11:12.209] muffled <- grepl(pattern, "muffleMessage") [13:11:12.209] if (muffled) [13:11:12.209] invokeRestart("muffleMessage") [13:11:12.209] } [13:11:12.209] else if (inherits(cond, "warning")) { [13:11:12.209] muffled <- grepl(pattern, "muffleWarning") [13:11:12.209] if (muffled) [13:11:12.209] invokeRestart("muffleWarning") [13:11:12.209] } [13:11:12.209] else if (inherits(cond, "condition")) { [13:11:12.209] if (!is.null(pattern)) { [13:11:12.209] computeRestarts <- base::computeRestarts [13:11:12.209] grepl <- base::grepl [13:11:12.209] restarts <- computeRestarts(cond) [13:11:12.209] for (restart in restarts) { [13:11:12.209] name <- restart$name [13:11:12.209] if (is.null(name)) [13:11:12.209] next [13:11:12.209] if (!grepl(pattern, name)) [13:11:12.209] next [13:11:12.209] invokeRestart(restart) [13:11:12.209] muffled <- TRUE [13:11:12.209] break [13:11:12.209] } [13:11:12.209] } [13:11:12.209] } [13:11:12.209] invisible(muffled) [13:11:12.209] } [13:11:12.209] muffleCondition(cond, pattern = "^muffle") [13:11:12.209] } [13:11:12.209] } [13:11:12.209] else { [13:11:12.209] if (TRUE) { [13:11:12.209] muffleCondition <- function (cond, pattern = "^muffle") [13:11:12.209] { [13:11:12.209] inherits <- base::inherits [13:11:12.209] invokeRestart <- base::invokeRestart [13:11:12.209] is.null <- base::is.null [13:11:12.209] muffled <- FALSE [13:11:12.209] if (inherits(cond, "message")) { [13:11:12.209] muffled <- grepl(pattern, "muffleMessage") [13:11:12.209] if (muffled) [13:11:12.209] invokeRestart("muffleMessage") [13:11:12.209] } [13:11:12.209] else if (inherits(cond, "warning")) { [13:11:12.209] muffled <- grepl(pattern, "muffleWarning") [13:11:12.209] if (muffled) [13:11:12.209] invokeRestart("muffleWarning") [13:11:12.209] } [13:11:12.209] else if (inherits(cond, "condition")) { [13:11:12.209] if (!is.null(pattern)) { [13:11:12.209] computeRestarts <- base::computeRestarts [13:11:12.209] grepl <- base::grepl [13:11:12.209] restarts <- computeRestarts(cond) [13:11:12.209] for (restart in restarts) { [13:11:12.209] name <- restart$name [13:11:12.209] if (is.null(name)) [13:11:12.209] next [13:11:12.209] if (!grepl(pattern, name)) [13:11:12.209] next [13:11:12.209] invokeRestart(restart) [13:11:12.209] muffled <- TRUE [13:11:12.209] break [13:11:12.209] } [13:11:12.209] } [13:11:12.209] } [13:11:12.209] invisible(muffled) [13:11:12.209] } [13:11:12.209] muffleCondition(cond, pattern = "^muffle") [13:11:12.209] } [13:11:12.209] } [13:11:12.209] } [13:11:12.209] })) [13:11:12.209] }, error = function(ex) { [13:11:12.209] base::structure(base::list(value = NULL, visible = NULL, [13:11:12.209] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:12.209] ...future.rng), started = ...future.startTime, [13:11:12.209] finished = Sys.time(), session_uuid = NA_character_, [13:11:12.209] version = "1.8"), class = "FutureResult") [13:11:12.209] }, finally = { [13:11:12.209] if (!identical(...future.workdir, getwd())) [13:11:12.209] setwd(...future.workdir) [13:11:12.209] { [13:11:12.209] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:12.209] ...future.oldOptions$nwarnings <- NULL [13:11:12.209] } [13:11:12.209] base::options(...future.oldOptions) [13:11:12.209] if (.Platform$OS.type == "windows") { [13:11:12.209] old_names <- names(...future.oldEnvVars) [13:11:12.209] envs <- base::Sys.getenv() [13:11:12.209] names <- names(envs) [13:11:12.209] common <- intersect(names, old_names) [13:11:12.209] added <- setdiff(names, old_names) [13:11:12.209] removed <- setdiff(old_names, names) [13:11:12.209] changed <- common[...future.oldEnvVars[common] != [13:11:12.209] envs[common]] [13:11:12.209] NAMES <- toupper(changed) [13:11:12.209] args <- list() [13:11:12.209] for (kk in seq_along(NAMES)) { [13:11:12.209] name <- changed[[kk]] [13:11:12.209] NAME <- NAMES[[kk]] [13:11:12.209] if (name != NAME && is.element(NAME, old_names)) [13:11:12.209] next [13:11:12.209] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:12.209] } [13:11:12.209] NAMES <- toupper(added) [13:11:12.209] for (kk in seq_along(NAMES)) { [13:11:12.209] name <- added[[kk]] [13:11:12.209] NAME <- NAMES[[kk]] [13:11:12.209] if (name != NAME && is.element(NAME, old_names)) [13:11:12.209] next [13:11:12.209] args[[name]] <- "" [13:11:12.209] } [13:11:12.209] NAMES <- toupper(removed) [13:11:12.209] for (kk in seq_along(NAMES)) { [13:11:12.209] name <- removed[[kk]] [13:11:12.209] NAME <- NAMES[[kk]] [13:11:12.209] if (name != NAME && is.element(NAME, old_names)) [13:11:12.209] next [13:11:12.209] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:12.209] } [13:11:12.209] if (length(args) > 0) [13:11:12.209] base::do.call(base::Sys.setenv, args = args) [13:11:12.209] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:12.209] } [13:11:12.209] else { [13:11:12.209] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:12.209] } [13:11:12.209] { [13:11:12.209] if (base::length(...future.futureOptionsAdded) > [13:11:12.209] 0L) { [13:11:12.209] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:12.209] base::names(opts) <- ...future.futureOptionsAdded [13:11:12.209] base::options(opts) [13:11:12.209] } [13:11:12.209] { [13:11:12.209] NULL [13:11:12.209] options(future.plan = NULL) [13:11:12.209] if (is.na(NA_character_)) [13:11:12.209] Sys.unsetenv("R_FUTURE_PLAN") [13:11:12.209] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:12.209] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:12.209] .init = FALSE) [13:11:12.209] } [13:11:12.209] } [13:11:12.209] } [13:11:12.209] }) [13:11:12.209] if (TRUE) { [13:11:12.209] base::sink(type = "output", split = FALSE) [13:11:12.209] if (TRUE) { [13:11:12.209] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:12.209] } [13:11:12.209] else { [13:11:12.209] ...future.result["stdout"] <- base::list(NULL) [13:11:12.209] } [13:11:12.209] base::close(...future.stdout) [13:11:12.209] ...future.stdout <- NULL [13:11:12.209] } [13:11:12.209] ...future.result$conditions <- ...future.conditions [13:11:12.209] ...future.result$finished <- base::Sys.time() [13:11:12.209] ...future.result [13:11:12.209] } [13:11:12.215] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:11:12.215] plan(): nbrOfWorkers() = 2 [13:11:12.215] getGlobalsAndPackages() ... [13:11:12.215] Searching for globals... [13:11:12.225] - globals found: [4] '{', '<-', '*', 'a' [13:11:12.225] Searching for globals ... DONE [13:11:12.225] Resolving globals: FALSE [13:11:12.226] The total size of the 1 globals is 56 bytes (56 bytes) [13:11:12.227] The total size of the 1 globals exported for future expression ('{; b <- 3; c <- 2; a * b * c; }') is 56 bytes.. This exceeds the maximum allowed size of 500.00 MiB (option 'future.globals.maxSize'). There is one global: 'a' (56 bytes of class 'numeric') [13:11:12.227] - globals: [1] 'a' [13:11:12.227] [13:11:12.227] getGlobalsAndPackages() ... DONE [13:11:12.228] run() for 'Future' ... [13:11:12.228] - state: 'created' [13:11:12.228] - Future backend: 'FutureStrategy', 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' [13:11:12.231] - Future class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:11:12.231] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... [13:11:12.231] - Field: 'label' [13:11:12.231] - Field: 'local' [13:11:12.231] - Field: 'owner' [13:11:12.232] - Field: 'envir' [13:11:12.232] - Field: 'packages' [13:11:12.232] - Field: 'gc' [13:11:12.232] - Field: 'conditions' [13:11:12.232] - Field: 'expr' [13:11:12.232] - Field: 'uuid' [13:11:12.233] - Field: 'seed' [13:11:12.233] - Field: 'version' [13:11:12.233] - Field: 'result' [13:11:12.233] - Field: 'asynchronous' [13:11:12.233] - Field: 'calls' [13:11:12.233] - Field: 'globals' [13:11:12.234] - Field: 'stdout' [13:11:12.234] - Field: 'earlySignal' [13:11:12.234] - Field: 'lazy' [13:11:12.234] - Field: 'state' [13:11:12.234] - Field: '.cluster' [13:11:12.234] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... done [13:11:12.235] - Launch lazy future ... [13:11:12.235] Packages needed by the future expression (n = 0): [13:11:12.235] Packages needed by future strategies (n = 0): [13:11:12.235] { [13:11:12.235] { [13:11:12.235] { [13:11:12.235] ...future.startTime <- base::Sys.time() [13:11:12.235] { [13:11:12.235] { [13:11:12.235] { [13:11:12.235] base::local({ [13:11:12.235] has_future <- base::requireNamespace("future", [13:11:12.235] quietly = TRUE) [13:11:12.235] if (has_future) { [13:11:12.235] ns <- base::getNamespace("future") [13:11:12.235] version <- ns[[".package"]][["version"]] [13:11:12.235] if (is.null(version)) [13:11:12.235] version <- utils::packageVersion("future") [13:11:12.235] } [13:11:12.235] else { [13:11:12.235] version <- NULL [13:11:12.235] } [13:11:12.235] if (!has_future || version < "1.8.0") { [13:11:12.235] info <- base::c(r_version = base::gsub("R version ", [13:11:12.235] "", base::R.version$version.string), [13:11:12.235] platform = base::sprintf("%s (%s-bit)", [13:11:12.235] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:12.235] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:12.235] "release", "version")], collapse = " "), [13:11:12.235] hostname = base::Sys.info()[["nodename"]]) [13:11:12.235] info <- base::sprintf("%s: %s", base::names(info), [13:11:12.235] info) [13:11:12.235] info <- base::paste(info, collapse = "; ") [13:11:12.235] if (!has_future) { [13:11:12.235] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:12.235] info) [13:11:12.235] } [13:11:12.235] else { [13:11:12.235] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:12.235] info, version) [13:11:12.235] } [13:11:12.235] base::stop(msg) [13:11:12.235] } [13:11:12.235] }) [13:11:12.235] } [13:11:12.235] ...future.strategy.old <- future::plan("list") [13:11:12.235] options(future.plan = NULL) [13:11:12.235] Sys.unsetenv("R_FUTURE_PLAN") [13:11:12.235] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:12.235] } [13:11:12.235] ...future.workdir <- getwd() [13:11:12.235] } [13:11:12.235] ...future.oldOptions <- base::as.list(base::.Options) [13:11:12.235] ...future.oldEnvVars <- base::Sys.getenv() [13:11:12.235] } [13:11:12.235] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:12.235] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:12.235] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:12.235] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:12.235] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:12.235] future.stdout.windows.reencode = NULL, width = 80L) [13:11:12.235] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:12.235] base::names(...future.oldOptions)) [13:11:12.235] } [13:11:12.235] if (FALSE) { [13:11:12.235] } [13:11:12.235] else { [13:11:12.235] if (TRUE) { [13:11:12.235] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:12.235] open = "w") [13:11:12.235] } [13:11:12.235] else { [13:11:12.235] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:12.235] windows = "NUL", "/dev/null"), open = "w") [13:11:12.235] } [13:11:12.235] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:12.235] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:12.235] base::sink(type = "output", split = FALSE) [13:11:12.235] base::close(...future.stdout) [13:11:12.235] }, add = TRUE) [13:11:12.235] } [13:11:12.235] ...future.frame <- base::sys.nframe() [13:11:12.235] ...future.conditions <- base::list() [13:11:12.235] ...future.rng <- base::globalenv()$.Random.seed [13:11:12.235] if (FALSE) { [13:11:12.235] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:12.235] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:12.235] } [13:11:12.235] ...future.result <- base::tryCatch({ [13:11:12.235] base::withCallingHandlers({ [13:11:12.235] ...future.value <- base::withVisible(base::local({ [13:11:12.235] b <- 3 [13:11:12.235] c <- 2 [13:11:12.235] a * b * c [13:11:12.235] })) [13:11:12.235] future::FutureResult(value = ...future.value$value, [13:11:12.235] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:12.235] ...future.rng), globalenv = if (FALSE) [13:11:12.235] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:12.235] ...future.globalenv.names)) [13:11:12.235] else NULL, started = ...future.startTime, version = "1.8") [13:11:12.235] }, condition = base::local({ [13:11:12.235] c <- base::c [13:11:12.235] inherits <- base::inherits [13:11:12.235] invokeRestart <- base::invokeRestart [13:11:12.235] length <- base::length [13:11:12.235] list <- base::list [13:11:12.235] seq.int <- base::seq.int [13:11:12.235] signalCondition <- base::signalCondition [13:11:12.235] sys.calls <- base::sys.calls [13:11:12.235] `[[` <- base::`[[` [13:11:12.235] `+` <- base::`+` [13:11:12.235] `<<-` <- base::`<<-` [13:11:12.235] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:12.235] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:12.235] 3L)] [13:11:12.235] } [13:11:12.235] function(cond) { [13:11:12.235] is_error <- inherits(cond, "error") [13:11:12.235] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:12.235] NULL) [13:11:12.235] if (is_error) { [13:11:12.235] sessionInformation <- function() { [13:11:12.235] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:12.235] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:12.235] search = base::search(), system = base::Sys.info()) [13:11:12.235] } [13:11:12.235] ...future.conditions[[length(...future.conditions) + [13:11:12.235] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:12.235] cond$call), session = sessionInformation(), [13:11:12.235] timestamp = base::Sys.time(), signaled = 0L) [13:11:12.235] signalCondition(cond) [13:11:12.235] } [13:11:12.235] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:12.235] signal <- FALSE && inherits(cond, character(0)) [13:11:12.235] ...future.conditions[[length(...future.conditions) + [13:11:12.235] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:12.235] if (FALSE && !signal) { [13:11:12.235] muffleCondition <- function (cond, pattern = "^muffle") [13:11:12.235] { [13:11:12.235] inherits <- base::inherits [13:11:12.235] invokeRestart <- base::invokeRestart [13:11:12.235] is.null <- base::is.null [13:11:12.235] muffled <- FALSE [13:11:12.235] if (inherits(cond, "message")) { [13:11:12.235] muffled <- grepl(pattern, "muffleMessage") [13:11:12.235] if (muffled) [13:11:12.235] invokeRestart("muffleMessage") [13:11:12.235] } [13:11:12.235] else if (inherits(cond, "warning")) { [13:11:12.235] muffled <- grepl(pattern, "muffleWarning") [13:11:12.235] if (muffled) [13:11:12.235] invokeRestart("muffleWarning") [13:11:12.235] } [13:11:12.235] else if (inherits(cond, "condition")) { [13:11:12.235] if (!is.null(pattern)) { [13:11:12.235] computeRestarts <- base::computeRestarts [13:11:12.235] grepl <- base::grepl [13:11:12.235] restarts <- computeRestarts(cond) [13:11:12.235] for (restart in restarts) { [13:11:12.235] name <- restart$name [13:11:12.235] if (is.null(name)) [13:11:12.235] next [13:11:12.235] if (!grepl(pattern, name)) [13:11:12.235] next [13:11:12.235] invokeRestart(restart) [13:11:12.235] muffled <- TRUE [13:11:12.235] break [13:11:12.235] } [13:11:12.235] } [13:11:12.235] } [13:11:12.235] invisible(muffled) [13:11:12.235] } [13:11:12.235] muffleCondition(cond, pattern = "^muffle") [13:11:12.235] } [13:11:12.235] } [13:11:12.235] else { [13:11:12.235] if (TRUE) { [13:11:12.235] muffleCondition <- function (cond, pattern = "^muffle") [13:11:12.235] { [13:11:12.235] inherits <- base::inherits [13:11:12.235] invokeRestart <- base::invokeRestart [13:11:12.235] is.null <- base::is.null [13:11:12.235] muffled <- FALSE [13:11:12.235] if (inherits(cond, "message")) { [13:11:12.235] muffled <- grepl(pattern, "muffleMessage") [13:11:12.235] if (muffled) [13:11:12.235] invokeRestart("muffleMessage") [13:11:12.235] } [13:11:12.235] else if (inherits(cond, "warning")) { [13:11:12.235] muffled <- grepl(pattern, "muffleWarning") [13:11:12.235] if (muffled) [13:11:12.235] invokeRestart("muffleWarning") [13:11:12.235] } [13:11:12.235] else if (inherits(cond, "condition")) { [13:11:12.235] if (!is.null(pattern)) { [13:11:12.235] computeRestarts <- base::computeRestarts [13:11:12.235] grepl <- base::grepl [13:11:12.235] restarts <- computeRestarts(cond) [13:11:12.235] for (restart in restarts) { [13:11:12.235] name <- restart$name [13:11:12.235] if (is.null(name)) [13:11:12.235] next [13:11:12.235] if (!grepl(pattern, name)) [13:11:12.235] next [13:11:12.235] invokeRestart(restart) [13:11:12.235] muffled <- TRUE [13:11:12.235] break [13:11:12.235] } [13:11:12.235] } [13:11:12.235] } [13:11:12.235] invisible(muffled) [13:11:12.235] } [13:11:12.235] muffleCondition(cond, pattern = "^muffle") [13:11:12.235] } [13:11:12.235] } [13:11:12.235] } [13:11:12.235] })) [13:11:12.235] }, error = function(ex) { [13:11:12.235] base::structure(base::list(value = NULL, visible = NULL, [13:11:12.235] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:12.235] ...future.rng), started = ...future.startTime, [13:11:12.235] finished = Sys.time(), session_uuid = NA_character_, [13:11:12.235] version = "1.8"), class = "FutureResult") [13:11:12.235] }, finally = { [13:11:12.235] if (!identical(...future.workdir, getwd())) [13:11:12.235] setwd(...future.workdir) [13:11:12.235] { [13:11:12.235] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:12.235] ...future.oldOptions$nwarnings <- NULL [13:11:12.235] } [13:11:12.235] base::options(...future.oldOptions) [13:11:12.235] if (.Platform$OS.type == "windows") { [13:11:12.235] old_names <- names(...future.oldEnvVars) [13:11:12.235] envs <- base::Sys.getenv() [13:11:12.235] names <- names(envs) [13:11:12.235] common <- intersect(names, old_names) [13:11:12.235] added <- setdiff(names, old_names) [13:11:12.235] removed <- setdiff(old_names, names) [13:11:12.235] changed <- common[...future.oldEnvVars[common] != [13:11:12.235] envs[common]] [13:11:12.235] NAMES <- toupper(changed) [13:11:12.235] args <- list() [13:11:12.235] for (kk in seq_along(NAMES)) { [13:11:12.235] name <- changed[[kk]] [13:11:12.235] NAME <- NAMES[[kk]] [13:11:12.235] if (name != NAME && is.element(NAME, old_names)) [13:11:12.235] next [13:11:12.235] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:12.235] } [13:11:12.235] NAMES <- toupper(added) [13:11:12.235] for (kk in seq_along(NAMES)) { [13:11:12.235] name <- added[[kk]] [13:11:12.235] NAME <- NAMES[[kk]] [13:11:12.235] if (name != NAME && is.element(NAME, old_names)) [13:11:12.235] next [13:11:12.235] args[[name]] <- "" [13:11:12.235] } [13:11:12.235] NAMES <- toupper(removed) [13:11:12.235] for (kk in seq_along(NAMES)) { [13:11:12.235] name <- removed[[kk]] [13:11:12.235] NAME <- NAMES[[kk]] [13:11:12.235] if (name != NAME && is.element(NAME, old_names)) [13:11:12.235] next [13:11:12.235] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:12.235] } [13:11:12.235] if (length(args) > 0) [13:11:12.235] base::do.call(base::Sys.setenv, args = args) [13:11:12.235] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:12.235] } [13:11:12.235] else { [13:11:12.235] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:12.235] } [13:11:12.235] { [13:11:12.235] if (base::length(...future.futureOptionsAdded) > [13:11:12.235] 0L) { [13:11:12.235] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:12.235] base::names(opts) <- ...future.futureOptionsAdded [13:11:12.235] base::options(opts) [13:11:12.235] } [13:11:12.235] { [13:11:12.235] NULL [13:11:12.235] options(future.plan = NULL) [13:11:12.235] if (is.na(NA_character_)) [13:11:12.235] Sys.unsetenv("R_FUTURE_PLAN") [13:11:12.235] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:12.235] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:12.235] .init = FALSE) [13:11:12.235] } [13:11:12.235] } [13:11:12.235] } [13:11:12.235] }) [13:11:12.235] if (TRUE) { [13:11:12.235] base::sink(type = "output", split = FALSE) [13:11:12.235] if (TRUE) { [13:11:12.235] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:12.235] } [13:11:12.235] else { [13:11:12.235] ...future.result["stdout"] <- base::list(NULL) [13:11:12.235] } [13:11:12.235] base::close(...future.stdout) [13:11:12.235] ...future.stdout <- NULL [13:11:12.235] } [13:11:12.235] ...future.result$conditions <- ...future.conditions [13:11:12.235] ...future.result$finished <- base::Sys.time() [13:11:12.235] ...future.result [13:11:12.235] } [13:11:12.239] - Launch lazy future ... done [13:11:12.239] run() for 'MiraiFuture' ... done [1] 0 [13:11:12.241] *** 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] 78280 > > plan(mirai_multisession) [13:11:12.242] plan(): Setting new future strategy stack: [13:11:12.242] List of future strategies: [13:11:12.242] 1. mirai_multisession: [13:11:12.242] - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores()) [13:11:12.242] - tweaked: FALSE [13:11:12.242] - call: plan(mirai_multisession) [13:11:12.242] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... [13:11:12.242] < mirai | $data > [13:11:12.245] getGlobalsAndPackages() ... [13:11:12.245] Not searching for globals [13:11:12.245] - globals: [0] [13:11:12.245] getGlobalsAndPackages() ... DONE [13:11:12.245] getGlobalsAndPackages() ... [13:11:12.245] [13:11:12.246] - globals: [0] [13:11:12.246] getGlobalsAndPackages() ... DONE [13:11:12.246] Packages needed by the future expression (n = 0): [13:11:12.246] Packages needed by future strategies (n = 0): [13:11:12.247] { [13:11:12.247] { [13:11:12.247] { [13:11:12.247] ...future.startTime <- base::Sys.time() [13:11:12.247] { [13:11:12.247] { [13:11:12.247] { [13:11:12.247] base::local({ [13:11:12.247] has_future <- base::requireNamespace("future", [13:11:12.247] quietly = TRUE) [13:11:12.247] if (has_future) { [13:11:12.247] ns <- base::getNamespace("future") [13:11:12.247] version <- ns[[".package"]][["version"]] [13:11:12.247] if (is.null(version)) [13:11:12.247] version <- utils::packageVersion("future") [13:11:12.247] } [13:11:12.247] else { [13:11:12.247] version <- NULL [13:11:12.247] } [13:11:12.247] if (!has_future || version < "1.8.0") { [13:11:12.247] info <- base::c(r_version = base::gsub("R version ", [13:11:12.247] "", base::R.version$version.string), [13:11:12.247] platform = base::sprintf("%s (%s-bit)", [13:11:12.247] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:12.247] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:12.247] "release", "version")], collapse = " "), [13:11:12.247] hostname = base::Sys.info()[["nodename"]]) [13:11:12.247] info <- base::sprintf("%s: %s", base::names(info), [13:11:12.247] info) [13:11:12.247] info <- base::paste(info, collapse = "; ") [13:11:12.247] if (!has_future) { [13:11:12.247] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:12.247] info) [13:11:12.247] } [13:11:12.247] else { [13:11:12.247] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:12.247] info, version) [13:11:12.247] } [13:11:12.247] base::stop(msg) [13:11:12.247] } [13:11:12.247] }) [13:11:12.247] } [13:11:12.247] ...future.strategy.old <- future::plan("list") [13:11:12.247] options(future.plan = NULL) [13:11:12.247] Sys.unsetenv("R_FUTURE_PLAN") [13:11:12.247] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:12.247] } [13:11:12.247] ...future.workdir <- getwd() [13:11:12.247] } [13:11:12.247] ...future.oldOptions <- base::as.list(base::.Options) [13:11:12.247] ...future.oldEnvVars <- base::Sys.getenv() [13:11:12.247] } [13:11:12.247] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:12.247] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:12.247] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:12.247] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:12.247] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:12.247] future.stdout.windows.reencode = NULL, width = 80L) [13:11:12.247] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:12.247] base::names(...future.oldOptions)) [13:11:12.247] } [13:11:12.247] if (FALSE) { [13:11:12.247] } [13:11:12.247] else { [13:11:12.247] if (TRUE) { [13:11:12.247] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:12.247] open = "w") [13:11:12.247] } [13:11:12.247] else { [13:11:12.247] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:12.247] windows = "NUL", "/dev/null"), open = "w") [13:11:12.247] } [13:11:12.247] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:12.247] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:12.247] base::sink(type = "output", split = FALSE) [13:11:12.247] base::close(...future.stdout) [13:11:12.247] }, add = TRUE) [13:11:12.247] } [13:11:12.247] ...future.frame <- base::sys.nframe() [13:11:12.247] ...future.conditions <- base::list() [13:11:12.247] ...future.rng <- base::globalenv()$.Random.seed [13:11:12.247] if (FALSE) { [13:11:12.247] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:12.247] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:12.247] } [13:11:12.247] ...future.result <- base::tryCatch({ [13:11:12.247] base::withCallingHandlers({ [13:11:12.247] ...future.value <- base::withVisible(base::local(NA)) [13:11:12.247] future::FutureResult(value = ...future.value$value, [13:11:12.247] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:12.247] ...future.rng), globalenv = if (FALSE) [13:11:12.247] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:12.247] ...future.globalenv.names)) [13:11:12.247] else NULL, started = ...future.startTime, version = "1.8") [13:11:12.247] }, condition = base::local({ [13:11:12.247] c <- base::c [13:11:12.247] inherits <- base::inherits [13:11:12.247] invokeRestart <- base::invokeRestart [13:11:12.247] length <- base::length [13:11:12.247] list <- base::list [13:11:12.247] seq.int <- base::seq.int [13:11:12.247] signalCondition <- base::signalCondition [13:11:12.247] sys.calls <- base::sys.calls [13:11:12.247] `[[` <- base::`[[` [13:11:12.247] `+` <- base::`+` [13:11:12.247] `<<-` <- base::`<<-` [13:11:12.247] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:12.247] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:12.247] 3L)] [13:11:12.247] } [13:11:12.247] function(cond) { [13:11:12.247] is_error <- inherits(cond, "error") [13:11:12.247] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:12.247] NULL) [13:11:12.247] if (is_error) { [13:11:12.247] sessionInformation <- function() { [13:11:12.247] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:12.247] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:12.247] search = base::search(), system = base::Sys.info()) [13:11:12.247] } [13:11:12.247] ...future.conditions[[length(...future.conditions) + [13:11:12.247] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:12.247] cond$call), session = sessionInformation(), [13:11:12.247] timestamp = base::Sys.time(), signaled = 0L) [13:11:12.247] signalCondition(cond) [13:11:12.247] } [13:11:12.247] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:12.247] signal <- FALSE && inherits(cond, character(0)) [13:11:12.247] ...future.conditions[[length(...future.conditions) + [13:11:12.247] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:12.247] if (FALSE && !signal) { [13:11:12.247] muffleCondition <- function (cond, pattern = "^muffle") [13:11:12.247] { [13:11:12.247] inherits <- base::inherits [13:11:12.247] invokeRestart <- base::invokeRestart [13:11:12.247] is.null <- base::is.null [13:11:12.247] muffled <- FALSE [13:11:12.247] if (inherits(cond, "message")) { [13:11:12.247] muffled <- grepl(pattern, "muffleMessage") [13:11:12.247] if (muffled) [13:11:12.247] invokeRestart("muffleMessage") [13:11:12.247] } [13:11:12.247] else if (inherits(cond, "warning")) { [13:11:12.247] muffled <- grepl(pattern, "muffleWarning") [13:11:12.247] if (muffled) [13:11:12.247] invokeRestart("muffleWarning") [13:11:12.247] } [13:11:12.247] else if (inherits(cond, "condition")) { [13:11:12.247] if (!is.null(pattern)) { [13:11:12.247] computeRestarts <- base::computeRestarts [13:11:12.247] grepl <- base::grepl [13:11:12.247] restarts <- computeRestarts(cond) [13:11:12.247] for (restart in restarts) { [13:11:12.247] name <- restart$name [13:11:12.247] if (is.null(name)) [13:11:12.247] next [13:11:12.247] if (!grepl(pattern, name)) [13:11:12.247] next [13:11:12.247] invokeRestart(restart) [13:11:12.247] muffled <- TRUE [13:11:12.247] break [13:11:12.247] } [13:11:12.247] } [13:11:12.247] } [13:11:12.247] invisible(muffled) [13:11:12.247] } [13:11:12.247] muffleCondition(cond, pattern = "^muffle") [13:11:12.247] } [13:11:12.247] } [13:11:12.247] else { [13:11:12.247] if (TRUE) { [13:11:12.247] muffleCondition <- function (cond, pattern = "^muffle") [13:11:12.247] { [13:11:12.247] inherits <- base::inherits [13:11:12.247] invokeRestart <- base::invokeRestart [13:11:12.247] is.null <- base::is.null [13:11:12.247] muffled <- FALSE [13:11:12.247] if (inherits(cond, "message")) { [13:11:12.247] muffled <- grepl(pattern, "muffleMessage") [13:11:12.247] if (muffled) [13:11:12.247] invokeRestart("muffleMessage") [13:11:12.247] } [13:11:12.247] else if (inherits(cond, "warning")) { [13:11:12.247] muffled <- grepl(pattern, "muffleWarning") [13:11:12.247] if (muffled) [13:11:12.247] invokeRestart("muffleWarning") [13:11:12.247] } [13:11:12.247] else if (inherits(cond, "condition")) { [13:11:12.247] if (!is.null(pattern)) { [13:11:12.247] computeRestarts <- base::computeRestarts [13:11:12.247] grepl <- base::grepl [13:11:12.247] restarts <- computeRestarts(cond) [13:11:12.247] for (restart in restarts) { [13:11:12.247] name <- restart$name [13:11:12.247] if (is.null(name)) [13:11:12.247] next [13:11:12.247] if (!grepl(pattern, name)) [13:11:12.247] next [13:11:12.247] invokeRestart(restart) [13:11:12.247] muffled <- TRUE [13:11:12.247] break [13:11:12.247] } [13:11:12.247] } [13:11:12.247] } [13:11:12.247] invisible(muffled) [13:11:12.247] } [13:11:12.247] muffleCondition(cond, pattern = "^muffle") [13:11:12.247] } [13:11:12.247] } [13:11:12.247] } [13:11:12.247] })) [13:11:12.247] }, error = function(ex) { [13:11:12.247] base::structure(base::list(value = NULL, visible = NULL, [13:11:12.247] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:12.247] ...future.rng), started = ...future.startTime, [13:11:12.247] finished = Sys.time(), session_uuid = NA_character_, [13:11:12.247] version = "1.8"), class = "FutureResult") [13:11:12.247] }, finally = { [13:11:12.247] if (!identical(...future.workdir, getwd())) [13:11:12.247] setwd(...future.workdir) [13:11:12.247] { [13:11:12.247] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:12.247] ...future.oldOptions$nwarnings <- NULL [13:11:12.247] } [13:11:12.247] base::options(...future.oldOptions) [13:11:12.247] if (.Platform$OS.type == "windows") { [13:11:12.247] old_names <- names(...future.oldEnvVars) [13:11:12.247] envs <- base::Sys.getenv() [13:11:12.247] names <- names(envs) [13:11:12.247] common <- intersect(names, old_names) [13:11:12.247] added <- setdiff(names, old_names) [13:11:12.247] removed <- setdiff(old_names, names) [13:11:12.247] changed <- common[...future.oldEnvVars[common] != [13:11:12.247] envs[common]] [13:11:12.247] NAMES <- toupper(changed) [13:11:12.247] args <- list() [13:11:12.247] for (kk in seq_along(NAMES)) { [13:11:12.247] name <- changed[[kk]] [13:11:12.247] NAME <- NAMES[[kk]] [13:11:12.247] if (name != NAME && is.element(NAME, old_names)) [13:11:12.247] next [13:11:12.247] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:12.247] } [13:11:12.247] NAMES <- toupper(added) [13:11:12.247] for (kk in seq_along(NAMES)) { [13:11:12.247] name <- added[[kk]] [13:11:12.247] NAME <- NAMES[[kk]] [13:11:12.247] if (name != NAME && is.element(NAME, old_names)) [13:11:12.247] next [13:11:12.247] args[[name]] <- "" [13:11:12.247] } [13:11:12.247] NAMES <- toupper(removed) [13:11:12.247] for (kk in seq_along(NAMES)) { [13:11:12.247] name <- removed[[kk]] [13:11:12.247] NAME <- NAMES[[kk]] [13:11:12.247] if (name != NAME && is.element(NAME, old_names)) [13:11:12.247] next [13:11:12.247] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:12.247] } [13:11:12.247] if (length(args) > 0) [13:11:12.247] base::do.call(base::Sys.setenv, args = args) [13:11:12.247] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:12.247] } [13:11:12.247] else { [13:11:12.247] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:12.247] } [13:11:12.247] { [13:11:12.247] if (base::length(...future.futureOptionsAdded) > [13:11:12.247] 0L) { [13:11:12.247] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:12.247] base::names(opts) <- ...future.futureOptionsAdded [13:11:12.247] base::options(opts) [13:11:12.247] } [13:11:12.247] { [13:11:12.247] NULL [13:11:12.247] options(future.plan = NULL) [13:11:12.247] if (is.na(NA_character_)) [13:11:12.247] Sys.unsetenv("R_FUTURE_PLAN") [13:11:12.247] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:12.247] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:12.247] .init = FALSE) [13:11:12.247] } [13:11:12.247] } [13:11:12.247] } [13:11:12.247] }) [13:11:12.247] if (TRUE) { [13:11:12.247] base::sink(type = "output", split = FALSE) [13:11:12.247] if (TRUE) { [13:11:12.247] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:12.247] } [13:11:12.247] else { [13:11:12.247] ...future.result["stdout"] <- base::list(NULL) [13:11:12.247] } [13:11:12.247] base::close(...future.stdout) [13:11:12.247] ...future.stdout <- NULL [13:11:12.247] } [13:11:12.247] ...future.result$conditions <- ...future.conditions [13:11:12.247] ...future.result$finished <- base::Sys.time() [13:11:12.247] ...future.result [13:11:12.247] } [13:11:12.252] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ... DONE [13:11:12.253] plan(): nbrOfWorkers() = 2 > pid %<-% { Sys.getpid() } [13:11:12.254] getGlobalsAndPackages() ... [13:11:12.254] Searching for globals... [13:11:12.255] - globals found: [2] '{', 'Sys.getpid' [13:11:12.255] Searching for globals ... DONE [13:11:12.255] Resolving globals: FALSE [13:11:12.256] [13:11:12.256] [13:11:12.256] getGlobalsAndPackages() ... DONE [13:11:12.256] run() for 'Future' ... [13:11:12.256] - state: 'created' [13:11:12.257] - Future backend: 'FutureStrategy', 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' [13:11:12.259] - Future class: 'MiraiFuture', 'MultiprocessFuture', 'Future', 'environment' [13:11:12.259] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... [13:11:12.259] - Field: 'label' [13:11:12.259] - Field: 'local' [13:11:12.260] - Field: 'owner' [13:11:12.260] - Field: 'envir' [13:11:12.260] - Field: 'packages' [13:11:12.260] - Field: 'gc' [13:11:12.260] - Field: 'conditions' [13:11:12.260] - Field: 'expr' [13:11:12.261] - Field: 'uuid' [13:11:12.261] - Field: 'seed' [13:11:12.261] - Field: 'version' [13:11:12.261] - Field: 'result' [13:11:12.261] - Field: 'asynchronous' [13:11:12.261] - Field: 'calls' [13:11:12.262] - Field: 'globals' [13:11:12.262] - Field: 'stdout' [13:11:12.262] - Field: 'earlySignal' [13:11:12.262] - Field: 'lazy' [13:11:12.262] - Field: 'state' [13:11:12.262] - Field: '.cluster' [13:11:12.263] - Copy elements of temporary 'MiraiFuture' to final 'Future' object ... done [13:11:12.263] - Launch lazy future ... [13:11:12.263] Packages needed by the future expression (n = 0): [13:11:12.263] Packages needed by future strategies (n = 0): [13:11:12.264] { [13:11:12.264] { [13:11:12.264] { [13:11:12.264] ...future.startTime <- base::Sys.time() [13:11:12.264] { [13:11:12.264] { [13:11:12.264] { [13:11:12.264] base::local({ [13:11:12.264] has_future <- base::requireNamespace("future", [13:11:12.264] quietly = TRUE) [13:11:12.264] if (has_future) { [13:11:12.264] ns <- base::getNamespace("future") [13:11:12.264] version <- ns[[".package"]][["version"]] [13:11:12.264] if (is.null(version)) [13:11:12.264] version <- utils::packageVersion("future") [13:11:12.264] } [13:11:12.264] else { [13:11:12.264] version <- NULL [13:11:12.264] } [13:11:12.264] if (!has_future || version < "1.8.0") { [13:11:12.264] info <- base::c(r_version = base::gsub("R version ", [13:11:12.264] "", base::R.version$version.string), [13:11:12.264] platform = base::sprintf("%s (%s-bit)", [13:11:12.264] base::R.version$platform, 8 * base::.Machine$sizeof.pointer), [13:11:12.264] os = base::paste(base::Sys.info()[base::c("sysname", [13:11:12.264] "release", "version")], collapse = " "), [13:11:12.264] hostname = base::Sys.info()[["nodename"]]) [13:11:12.264] info <- base::sprintf("%s: %s", base::names(info), [13:11:12.264] info) [13:11:12.264] info <- base::paste(info, collapse = "; ") [13:11:12.264] if (!has_future) { [13:11:12.264] msg <- base::sprintf("Package 'future' is not installed on worker (%s)", [13:11:12.264] info) [13:11:12.264] } [13:11:12.264] else { [13:11:12.264] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", [13:11:12.264] info, version) [13:11:12.264] } [13:11:12.264] base::stop(msg) [13:11:12.264] } [13:11:12.264] }) [13:11:12.264] } [13:11:12.264] ...future.strategy.old <- future::plan("list") [13:11:12.264] options(future.plan = NULL) [13:11:12.264] Sys.unsetenv("R_FUTURE_PLAN") [13:11:12.264] future::plan("default", .cleanup = FALSE, .init = FALSE) [13:11:12.264] } [13:11:12.264] ...future.workdir <- getwd() [13:11:12.264] } [13:11:12.264] ...future.oldOptions <- base::as.list(base::.Options) [13:11:12.264] ...future.oldEnvVars <- base::Sys.getenv() [13:11:12.264] } [13:11:12.264] base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, [13:11:12.264] future.globals.maxSize = NULL, future.globals.method = NULL, [13:11:12.264] future.globals.onMissing = NULL, future.globals.onReference = NULL, [13:11:12.264] future.globals.resolve = NULL, future.resolve.recursive = NULL, [13:11:12.264] future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, [13:11:12.264] future.stdout.windows.reencode = NULL, width = 80L) [13:11:12.264] ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), [13:11:12.264] base::names(...future.oldOptions)) [13:11:12.264] } [13:11:12.264] if (FALSE) { [13:11:12.264] } [13:11:12.264] else { [13:11:12.264] if (TRUE) { [13:11:12.264] ...future.stdout <- base::rawConnection(base::raw(0L), [13:11:12.264] open = "w") [13:11:12.264] } [13:11:12.264] else { [13:11:12.264] ...future.stdout <- base::file(base::switch(.Platform$OS.type, [13:11:12.264] windows = "NUL", "/dev/null"), open = "w") [13:11:12.264] } [13:11:12.264] base::sink(...future.stdout, type = "output", split = FALSE) [13:11:12.264] base::on.exit(if (!base::is.null(...future.stdout)) { [13:11:12.264] base::sink(type = "output", split = FALSE) [13:11:12.264] base::close(...future.stdout) [13:11:12.264] }, add = TRUE) [13:11:12.264] } [13:11:12.264] ...future.frame <- base::sys.nframe() [13:11:12.264] ...future.conditions <- base::list() [13:11:12.264] ...future.rng <- base::globalenv()$.Random.seed [13:11:12.264] if (FALSE) { [13:11:12.264] ...future.globalenv.names <- c(base::names(base::.GlobalEnv), [13:11:12.264] "...future.value", "...future.globalenv.names", ".Random.seed") [13:11:12.264] } [13:11:12.264] ...future.result <- base::tryCatch({ [13:11:12.264] base::withCallingHandlers({ [13:11:12.264] ...future.value <- base::withVisible(base::local({ [13:11:12.264] Sys.getpid() [13:11:12.264] })) [13:11:12.264] future::FutureResult(value = ...future.value$value, [13:11:12.264] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, [13:11:12.264] ...future.rng), globalenv = if (FALSE) [13:11:12.264] list(added = base::setdiff(base::names(base::.GlobalEnv), [13:11:12.264] ...future.globalenv.names)) [13:11:12.264] else NULL, started = ...future.startTime, version = "1.8") [13:11:12.264] }, condition = base::local({ [13:11:12.264] c <- base::c [13:11:12.264] inherits <- base::inherits [13:11:12.264] invokeRestart <- base::invokeRestart [13:11:12.264] length <- base::length [13:11:12.264] list <- base::list [13:11:12.264] seq.int <- base::seq.int [13:11:12.264] signalCondition <- base::signalCondition [13:11:12.264] sys.calls <- base::sys.calls [13:11:12.264] `[[` <- base::`[[` [13:11:12.264] `+` <- base::`+` [13:11:12.264] `<<-` <- base::`<<-` [13:11:12.264] sysCalls <- function(calls = sys.calls(), from = 1L) { [13:11:12.264] calls[seq.int(from = from + 12L, to = length(calls) - [13:11:12.264] 3L)] [13:11:12.264] } [13:11:12.264] function(cond) { [13:11:12.264] is_error <- inherits(cond, "error") [13:11:12.264] ignore <- !is_error && !is.null(NULL) && inherits(cond, [13:11:12.264] NULL) [13:11:12.264] if (is_error) { [13:11:12.264] sessionInformation <- function() { [13:11:12.264] list(r = base::R.Version(), locale = base::Sys.getlocale(), [13:11:12.264] rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), [13:11:12.264] search = base::search(), system = base::Sys.info()) [13:11:12.264] } [13:11:12.264] ...future.conditions[[length(...future.conditions) + [13:11:12.264] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), [13:11:12.264] cond$call), session = sessionInformation(), [13:11:12.264] timestamp = base::Sys.time(), signaled = 0L) [13:11:12.264] signalCondition(cond) [13:11:12.264] } [13:11:12.264] else if (!ignore && TRUE && inherits(cond, "condition")) { [13:11:12.264] signal <- FALSE && inherits(cond, character(0)) [13:11:12.264] ...future.conditions[[length(...future.conditions) + [13:11:12.264] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal)) [13:11:12.264] if (FALSE && !signal) { [13:11:12.264] muffleCondition <- function (cond, pattern = "^muffle") [13:11:12.264] { [13:11:12.264] inherits <- base::inherits [13:11:12.264] invokeRestart <- base::invokeRestart [13:11:12.264] is.null <- base::is.null [13:11:12.264] muffled <- FALSE [13:11:12.264] if (inherits(cond, "message")) { [13:11:12.264] muffled <- grepl(pattern, "muffleMessage") [13:11:12.264] if (muffled) [13:11:12.264] invokeRestart("muffleMessage") [13:11:12.264] } [13:11:12.264] else if (inherits(cond, "warning")) { [13:11:12.264] muffled <- grepl(pattern, "muffleWarning") [13:11:12.264] if (muffled) [13:11:12.264] invokeRestart("muffleWarning") [13:11:12.264] } [13:11:12.264] else if (inherits(cond, "condition")) { [13:11:12.264] if (!is.null(pattern)) { [13:11:12.264] computeRestarts <- base::computeRestarts [13:11:12.264] grepl <- base::grepl [13:11:12.264] restarts <- computeRestarts(cond) [13:11:12.264] for (restart in restarts) { [13:11:12.264] name <- restart$name [13:11:12.264] if (is.null(name)) [13:11:12.264] next [13:11:12.264] if (!grepl(pattern, name)) [13:11:12.264] next [13:11:12.264] invokeRestart(restart) [13:11:12.264] muffled <- TRUE [13:11:12.264] break [13:11:12.264] } [13:11:12.264] } [13:11:12.264] } [13:11:12.264] invisible(muffled) [13:11:12.264] } [13:11:12.264] muffleCondition(cond, pattern = "^muffle") [13:11:12.264] } [13:11:12.264] } [13:11:12.264] else { [13:11:12.264] if (TRUE) { [13:11:12.264] muffleCondition <- function (cond, pattern = "^muffle") [13:11:12.264] { [13:11:12.264] inherits <- base::inherits [13:11:12.264] invokeRestart <- base::invokeRestart [13:11:12.264] is.null <- base::is.null [13:11:12.264] muffled <- FALSE [13:11:12.264] if (inherits(cond, "message")) { [13:11:12.264] muffled <- grepl(pattern, "muffleMessage") [13:11:12.264] if (muffled) [13:11:12.264] invokeRestart("muffleMessage") [13:11:12.264] } [13:11:12.264] else if (inherits(cond, "warning")) { [13:11:12.264] muffled <- grepl(pattern, "muffleWarning") [13:11:12.264] if (muffled) [13:11:12.264] invokeRestart("muffleWarning") [13:11:12.264] } [13:11:12.264] else if (inherits(cond, "condition")) { [13:11:12.264] if (!is.null(pattern)) { [13:11:12.264] computeRestarts <- base::computeRestarts [13:11:12.264] grepl <- base::grepl [13:11:12.264] restarts <- computeRestarts(cond) [13:11:12.264] for (restart in restarts) { [13:11:12.264] name <- restart$name [13:11:12.264] if (is.null(name)) [13:11:12.264] next [13:11:12.264] if (!grepl(pattern, name)) [13:11:12.264] next [13:11:12.264] invokeRestart(restart) [13:11:12.264] muffled <- TRUE [13:11:12.264] break [13:11:12.264] } [13:11:12.264] } [13:11:12.264] } [13:11:12.264] invisible(muffled) [13:11:12.264] } [13:11:12.264] muffleCondition(cond, pattern = "^muffle") [13:11:12.264] } [13:11:12.264] } [13:11:12.264] } [13:11:12.264] })) [13:11:12.264] }, error = function(ex) { [13:11:12.264] base::structure(base::list(value = NULL, visible = NULL, [13:11:12.264] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, [13:11:12.264] ...future.rng), started = ...future.startTime, [13:11:12.264] finished = Sys.time(), session_uuid = NA_character_, [13:11:12.264] version = "1.8"), class = "FutureResult") [13:11:12.264] }, finally = { [13:11:12.264] if (!identical(...future.workdir, getwd())) [13:11:12.264] setwd(...future.workdir) [13:11:12.264] { [13:11:12.264] if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) { [13:11:12.264] ...future.oldOptions$nwarnings <- NULL [13:11:12.264] } [13:11:12.264] base::options(...future.oldOptions) [13:11:12.264] if (.Platform$OS.type == "windows") { [13:11:12.264] old_names <- names(...future.oldEnvVars) [13:11:12.264] envs <- base::Sys.getenv() [13:11:12.264] names <- names(envs) [13:11:12.264] common <- intersect(names, old_names) [13:11:12.264] added <- setdiff(names, old_names) [13:11:12.264] removed <- setdiff(old_names, names) [13:11:12.264] changed <- common[...future.oldEnvVars[common] != [13:11:12.264] envs[common]] [13:11:12.264] NAMES <- toupper(changed) [13:11:12.264] args <- list() [13:11:12.264] for (kk in seq_along(NAMES)) { [13:11:12.264] name <- changed[[kk]] [13:11:12.264] NAME <- NAMES[[kk]] [13:11:12.264] if (name != NAME && is.element(NAME, old_names)) [13:11:12.264] next [13:11:12.264] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:12.264] } [13:11:12.264] NAMES <- toupper(added) [13:11:12.264] for (kk in seq_along(NAMES)) { [13:11:12.264] name <- added[[kk]] [13:11:12.264] NAME <- NAMES[[kk]] [13:11:12.264] if (name != NAME && is.element(NAME, old_names)) [13:11:12.264] next [13:11:12.264] args[[name]] <- "" [13:11:12.264] } [13:11:12.264] NAMES <- toupper(removed) [13:11:12.264] for (kk in seq_along(NAMES)) { [13:11:12.264] name <- removed[[kk]] [13:11:12.264] NAME <- NAMES[[kk]] [13:11:12.264] if (name != NAME && is.element(NAME, old_names)) [13:11:12.264] next [13:11:12.264] args[[name]] <- ...future.oldEnvVars[[name]] [13:11:12.264] } [13:11:12.264] if (length(args) > 0) [13:11:12.264] base::do.call(base::Sys.setenv, args = args) [13:11:12.264] args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL [13:11:12.264] } [13:11:12.264] else { [13:11:12.264] base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars)) [13:11:12.264] } [13:11:12.264] { [13:11:12.264] if (base::length(...future.futureOptionsAdded) > [13:11:12.264] 0L) { [13:11:12.264] opts <- base::vector("list", length = base::length(...future.futureOptionsAdded)) [13:11:12.264] base::names(opts) <- ...future.futureOptionsAdded [13:11:12.264] base::options(opts) [13:11:12.264] } [13:11:12.264] { [13:11:12.264] NULL [13:11:12.264] options(future.plan = NULL) [13:11:12.264] if (is.na(NA_character_)) [13:11:12.264] Sys.unsetenv("R_FUTURE_PLAN") [13:11:12.264] else Sys.setenv(R_FUTURE_PLAN = NA_character_) [13:11:12.264] future::plan(...future.strategy.old, .cleanup = FALSE, [13:11:12.264] .init = FALSE) [13:11:12.264] } [13:11:12.264] } [13:11:12.264] } [13:11:12.264] }) [13:11:12.264] if (TRUE) { [13:11:12.264] base::sink(type = "output", split = FALSE) [13:11:12.264] if (TRUE) { [13:11:12.264] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout)) [13:11:12.264] } [13:11:12.264] else { [13:11:12.264] ...future.result["stdout"] <- base::list(NULL) [13:11:12.264] } [13:11:12.264] base::close(...future.stdout) [13:11:12.264] ...future.stdout <- NULL [13:11:12.264] } [13:11:12.264] ...future.result$conditions <- ...future.conditions [13:11:12.264] ...future.result$finished <- base::Sys.time() [13:11:12.264] ...future.result [13:11:12.264] } [13:11:12.268] - Launch lazy future ... done [13:11:12.268] run() for 'MiraiFuture' ... done > print(pid) [1] 19300 > stopifnot(pid != mpid) > > > message("*** plan() ... DONE") *** plan() ... DONE > > source("incl/end.R") > > proc.time() user system elapsed 0.34 0.09 0.90