Running ‘demo.R’ [1s/2s]
  Running ‘dotdotdot.R’ [1s/2s]
  Running ‘future,labels.R’ [1s/2s]
  Running ‘future,lazy.R’ [1s/2s]
  Running ‘future.tests,mirai_cluster.R’ [5s/20s]
  Running ‘future.tests-mirai_multisession.R’ [2s/5s]
  Running ‘globals,formulas.R’ [1s/2s]
  Running ‘globals,manual.R’ [1s/2s]
  Running ‘globals,nested.R’ [1s/1s]
  Running ‘globals,subassignment.R’ [1s/2s]
  Running ‘globals,tricky.R’ [1s/2s]
  Running ‘mirai_cluster,worker-termination.R’ [1s/2s]
  Running ‘mirai_cluster.R’ [1s/2s]
  Running ‘nbrOfWorkers.R’ [1s/2s]
  Running ‘plan.R’ [1s/2s]
  Running ‘rng.R’ [1s/2s]
  Running ‘stdout.R’ [1s/2s]
  Running ‘zzz,future_lapply.R’ [1s/2s]
Running the tests in ‘tests/demo.R’ failed.
Complete output:
  > source("incl/start.R")
  Loading required package: future
  [22:34:15.274] plan(): Setting new future strategy stack:
  [22:34:15.274] List of future strategies:
  [22:34:15.274] 1. mirai_multisession:
  [22:34:15.274]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:34:15.274]    - tweaked: FALSE
  [22:34:15.274]    - call: future::plan(future.mirai::mirai_multisession)
  [22:34:15.301] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:34:15.301] < mirai [$data] >
  [22:34:15.335] getGlobalsAndPackages() ...
  [22:34:15.336] Not searching for globals
  [22:34:15.336] - globals: [0] <none>
  [22:34:15.337] getGlobalsAndPackages() ... DONE
  [22:34:15.337] getGlobalsAndPackages() ...
  [22:34:15.338] 
  [22:34:15.338] - globals: [0] <none>
  [22:34:15.338] getGlobalsAndPackages() ... DONE
  [22:34:16.362] Packages needed by the future expression (n = 0): <none>
  [22:34:16.363] Packages needed by future strategies (n = 0): <none>
  [22:34:16.364] {
  [22:34:16.364]     {
  [22:34:16.364]         {
  [22:34:16.364]             ...future.startTime <- base::Sys.time()
  [22:34:16.364]             {
  [22:34:16.364]                 {
  [22:34:16.364]                   {
  [22:34:16.364]                     base::local({
  [22:34:16.364]                       has_future <- base::requireNamespace("future", 
  [22:34:16.364]                         quietly = TRUE)
  [22:34:16.364]                       if (has_future) {
  [22:34:16.364]                         ns <- base::getNamespace("future")
  [22:34:16.364]                         version <- ns[[".package"]][["version"]]
  [22:34:16.364]                         if (is.null(version)) 
  [22:34:16.364]                           version <- utils::packageVersion("future")
  [22:34:16.364]                       }
  [22:34:16.364]                       else {
  [22:34:16.364]                         version <- NULL
  [22:34:16.364]                       }
  [22:34:16.364]                       if (!has_future || version < "1.8.0") {
  [22:34:16.364]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:34:16.364]                           "", base::R.version$version.string), 
  [22:34:16.364]                           platform = base::sprintf("%s (%s-bit)", 
  [22:34:16.364]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:34:16.364]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:34:16.364]                             "release", "version")], collapse = " "), 
  [22:34:16.364]                           hostname = base::Sys.info()[["nodename"]])
  [22:34:16.364]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:34:16.364]                           info)
  [22:34:16.364]                         info <- base::paste(info, collapse = "; ")
  [22:34:16.364]                         if (!has_future) {
  [22:34:16.364]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:34:16.364]                             info)
  [22:34:16.364]                         }
  [22:34:16.364]                         else {
  [22:34:16.364]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:34:16.364]                             info, version)
  [22:34:16.364]                         }
  [22:34:16.364]                         base::stop(msg)
  [22:34:16.364]                       }
  [22:34:16.364]                     })
  [22:34:16.364]                   }
  [22:34:16.364]                   ...future.strategy.old <- future::plan("list")
  [22:34:16.364]                   options(future.plan = NULL)
  [22:34:16.364]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:16.364]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:34:16.364]                 }
  [22:34:16.364]                 ...future.workdir <- getwd()
  [22:34:16.364]             }
  [22:34:16.364]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:34:16.364]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:34:16.364]         }
  [22:34:16.364]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:34:16.364]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:34:16.364]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:34:16.364]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:34:16.364]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:34:16.364]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:34:16.364]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:34:16.364]             base::names(...future.oldOptions))
  [22:34:16.364]     }
  [22:34:16.364]     if (FALSE) {
  [22:34:16.364]     }
  [22:34:16.364]     else {
  [22:34:16.364]         if (TRUE) {
  [22:34:16.364]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:34:16.364]                 open = "w")
  [22:34:16.364]         }
  [22:34:16.364]         else {
  [22:34:16.364]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:34:16.364]                 windows = "NUL", "/dev/null"), open = "w")
  [22:34:16.364]         }
  [22:34:16.364]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:34:16.364]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:34:16.364]             base::sink(type = "output", split = FALSE)
  [22:34:16.364]             base::close(...future.stdout)
  [22:34:16.364]         }, add = TRUE)
  [22:34:16.364]     }
  [22:34:16.364]     ...future.frame <- base::sys.nframe()
  [22:34:16.364]     ...future.conditions <- base::list()
  [22:34:16.364]     ...future.rng <- base::globalenv()$.Random.seed
  [22:34:16.364]     if (FALSE) {
  [22:34:16.364]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:34:16.364]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:34:16.364]     }
  [22:34:16.364]     ...future.result <- base::tryCatch({
  [22:34:16.364]         base::withCallingHandlers({
  [22:34:16.364]             ...future.value <- base::withVisible(base::local(NA))
  [22:34:16.364]             future::FutureResult(value = ...future.value$value, 
  [22:34:16.364]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:16.364]                   ...future.rng), globalenv = if (FALSE) 
  [22:34:16.364]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:34:16.364]                     ...future.globalenv.names))
  [22:34:16.364]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:34:16.364]         }, condition = base::local({
  [22:34:16.364]             c <- base::c
  [22:34:16.364]             inherits <- base::inherits
  [22:34:16.364]             invokeRestart <- base::invokeRestart
  [22:34:16.364]             length <- base::length
  [22:34:16.364]             list <- base::list
  [22:34:16.364]             seq.int <- base::seq.int
  [22:34:16.364]             signalCondition <- base::signalCondition
  [22:34:16.364]             sys.calls <- base::sys.calls
  [22:34:16.364]             `[[` <- base::`[[`
  [22:34:16.364]             `+` <- base::`+`
  [22:34:16.364]             `<<-` <- base::`<<-`
  [22:34:16.364]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:34:16.364]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:34:16.364]                   3L)]
  [22:34:16.364]             }
  [22:34:16.364]             function(cond) {
  [22:34:16.364]                 is_error <- inherits(cond, "error")
  [22:34:16.364]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:34:16.364]                   NULL)
  [22:34:16.364]                 if (is_error) {
  [22:34:16.364]                   sessionInformation <- function() {
  [22:34:16.364]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:34:16.364]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:34:16.364]                       search = base::search(), system = base::Sys.info())
  [22:34:16.364]                   }
  [22:34:16.364]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:16.364]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:34:16.364]                     cond$call), session = sessionInformation(), 
  [22:34:16.364]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:34:16.364]                   signalCondition(cond)
  [22:34:16.364]                 }
  [22:34:16.364]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:34:16.364]                   signal <- FALSE && inherits(cond, character(0))
  [22:34:16.364]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:16.364]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:34:16.364]                   if (FALSE && !signal) {
  [22:34:16.364]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:16.364]                     {
  [22:34:16.364]                       inherits <- base::inherits
  [22:34:16.364]                       invokeRestart <- base::invokeRestart
  [22:34:16.364]                       is.null <- base::is.null
  [22:34:16.364]                       muffled <- FALSE
  [22:34:16.364]                       if (inherits(cond, "message")) {
  [22:34:16.364]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:16.364]                         if (muffled) 
  [22:34:16.364]                           invokeRestart("muffleMessage")
  [22:34:16.364]                       }
  [22:34:16.364]                       else if (inherits(cond, "warning")) {
  [22:34:16.364]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:16.364]                         if (muffled) 
  [22:34:16.364]                           invokeRestart("muffleWarning")
  [22:34:16.364]                       }
  [22:34:16.364]                       else if (inherits(cond, "condition")) {
  [22:34:16.364]                         if (!is.null(pattern)) {
  [22:34:16.364]                           computeRestarts <- base::computeRestarts
  [22:34:16.364]                           grepl <- base::grepl
  [22:34:16.364]                           restarts <- computeRestarts(cond)
  [22:34:16.364]                           for (restart in restarts) {
  [22:34:16.364]                             name <- restart$name
  [22:34:16.364]                             if (is.null(name)) 
  [22:34:16.364]                               next
  [22:34:16.364]                             if (!grepl(pattern, name)) 
  [22:34:16.364]                               next
  [22:34:16.364]                             invokeRestart(restart)
  [22:34:16.364]                             muffled <- TRUE
  [22:34:16.364]                             break
  [22:34:16.364]                           }
  [22:34:16.364]                         }
  [22:34:16.364]                       }
  [22:34:16.364]                       invisible(muffled)
  [22:34:16.364]                     }
  [22:34:16.364]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:16.364]                   }
  [22:34:16.364]                 }
  [22:34:16.364]                 else {
  [22:34:16.364]                   if (TRUE) {
  [22:34:16.364]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:16.364]                     {
  [22:34:16.364]                       inherits <- base::inherits
  [22:34:16.364]                       invokeRestart <- base::invokeRestart
  [22:34:16.364]                       is.null <- base::is.null
  [22:34:16.364]                       muffled <- FALSE
  [22:34:16.364]                       if (inherits(cond, "message")) {
  [22:34:16.364]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:16.364]                         if (muffled) 
  [22:34:16.364]                           invokeRestart("muffleMessage")
  [22:34:16.364]                       }
  [22:34:16.364]                       else if (inherits(cond, "warning")) {
  [22:34:16.364]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:16.364]                         if (muffled) 
  [22:34:16.364]                           invokeRestart("muffleWarning")
  [22:34:16.364]                       }
  [22:34:16.364]                       else if (inherits(cond, "condition")) {
  [22:34:16.364]                         if (!is.null(pattern)) {
  [22:34:16.364]                           computeRestarts <- base::computeRestarts
  [22:34:16.364]                           grepl <- base::grepl
  [22:34:16.364]                           restarts <- computeRestarts(cond)
  [22:34:16.364]                           for (restart in restarts) {
  [22:34:16.364]                             name <- restart$name
  [22:34:16.364]                             if (is.null(name)) 
  [22:34:16.364]                               next
  [22:34:16.364]                             if (!grepl(pattern, name)) 
  [22:34:16.364]                               next
  [22:34:16.364]                             invokeRestart(restart)
  [22:34:16.364]                             muffled <- TRUE
  [22:34:16.364]                             break
  [22:34:16.364]                           }
  [22:34:16.364]                         }
  [22:34:16.364]                       }
  [22:34:16.364]                       invisible(muffled)
  [22:34:16.364]                     }
  [22:34:16.364]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:16.364]                   }
  [22:34:16.364]                 }
  [22:34:16.364]             }
  [22:34:16.364]         }))
  [22:34:16.364]     }, error = function(ex) {
  [22:34:16.364]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:34:16.364]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:16.364]                 ...future.rng), started = ...future.startTime, 
  [22:34:16.364]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:34:16.364]             version = "1.8"), class = "FutureResult")
  [22:34:16.364]     }, finally = {
  [22:34:16.364]         if (!identical(...future.workdir, getwd())) 
  [22:34:16.364]             setwd(...future.workdir)
  [22:34:16.364]         {
  [22:34:16.364]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:34:16.364]                 ...future.oldOptions$nwarnings <- NULL
  [22:34:16.364]             }
  [22:34:16.364]             base::options(...future.oldOptions)
  [22:34:16.364]             if (.Platform$OS.type == "windows") {
  [22:34:16.364]                 old_names <- names(...future.oldEnvVars)
  [22:34:16.364]                 envs <- base::Sys.getenv()
  [22:34:16.364]                 names <- names(envs)
  [22:34:16.364]                 common <- intersect(names, old_names)
  [22:34:16.364]                 added <- setdiff(names, old_names)
  [22:34:16.364]                 removed <- setdiff(old_names, names)
  [22:34:16.364]                 changed <- common[...future.oldEnvVars[common] != 
  [22:34:16.364]                   envs[common]]
  [22:34:16.364]                 NAMES <- toupper(changed)
  [22:34:16.364]                 args <- list()
  [22:34:16.364]                 for (kk in seq_along(NAMES)) {
  [22:34:16.364]                   name <- changed[[kk]]
  [22:34:16.364]                   NAME <- NAMES[[kk]]
  [22:34:16.364]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:16.364]                     next
  [22:34:16.364]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:16.364]                 }
  [22:34:16.364]                 NAMES <- toupper(added)
  [22:34:16.364]                 for (kk in seq_along(NAMES)) {
  [22:34:16.364]                   name <- added[[kk]]
  [22:34:16.364]                   NAME <- NAMES[[kk]]
  [22:34:16.364]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:16.364]                     next
  [22:34:16.364]                   args[[name]] <- ""
  [22:34:16.364]                 }
  [22:34:16.364]                 NAMES <- toupper(removed)
  [22:34:16.364]                 for (kk in seq_along(NAMES)) {
  [22:34:16.364]                   name <- removed[[kk]]
  [22:34:16.364]                   NAME <- NAMES[[kk]]
  [22:34:16.364]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:16.364]                     next
  [22:34:16.364]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:16.364]                 }
  [22:34:16.364]                 if (length(args) > 0) 
  [22:34:16.364]                   base::do.call(base::Sys.setenv, args = args)
  [22:34:16.364]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:34:16.364]             }
  [22:34:16.364]             else {
  [22:34:16.364]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:34:16.364]             }
  [22:34:16.364]             {
  [22:34:16.364]                 if (base::length(...future.futureOptionsAdded) > 
  [22:34:16.364]                   0L) {
  [22:34:16.364]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:34:16.364]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:34:16.364]                   base::options(opts)
  [22:34:16.364]                 }
  [22:34:16.364]                 {
  [22:34:16.364]                   NULL
  [22:34:16.364]                   options(future.plan = NULL)
  [22:34:16.364]                   if (is.na(NA_character_)) 
  [22:34:16.364]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:16.364]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:34:16.364]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:34:16.364]                     .init = FALSE)
  [22:34:16.364]                 }
  [22:34:16.364]             }
  [22:34:16.364]         }
  [22:34:16.364]     })
  [22:34:16.364]     if (TRUE) {
  [22:34:16.364]         base::sink(type = "output", split = FALSE)
  [22:34:16.364]         if (TRUE) {
  [22:34:16.364]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:34:16.364]         }
  [22:34:16.364]         else {
  [22:34:16.364]             ...future.result["stdout"] <- base::list(NULL)
  [22:34:16.364]         }
  [22:34:16.364]         base::close(...future.stdout)
  [22:34:16.364]         ...future.stdout <- NULL
  [22:34:16.364]     }
  [22:34:16.364]     ...future.result$conditions <- ...future.conditions
  [22:34:16.364]     ...future.result$finished <- base::Sys.time()
  [22:34:16.364]     ...future.result
  [22:34:16.364] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/dotdotdot.R’ failed.
Complete output:
  > source("incl/start.R")
  Loading required package: future
  [22:34:17.127] plan(): Setting new future strategy stack:
  [22:34:17.127] List of future strategies:
  [22:34:17.127] 1. mirai_multisession:
  [22:34:17.127]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:34:17.127]    - tweaked: FALSE
  [22:34:17.127]    - call: future::plan(future.mirai::mirai_multisession)
  [22:34:17.154] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:34:17.154] < mirai [$data] >
  [22:34:17.212] getGlobalsAndPackages() ...
  [22:34:17.212] Not searching for globals
  [22:34:17.213] - globals: [0] <none>
  [22:34:17.213] getGlobalsAndPackages() ... DONE
  [22:34:17.214] getGlobalsAndPackages() ...
  [22:34:17.214] 
  [22:34:17.214] - globals: [0] <none>
  [22:34:17.214] getGlobalsAndPackages() ... DONE
  [22:34:18.246] Packages needed by the future expression (n = 0): <none>
  [22:34:18.246] Packages needed by future strategies (n = 0): <none>
  [22:34:18.248] {
  [22:34:18.248]     {
  [22:34:18.248]         {
  [22:34:18.248]             ...future.startTime <- base::Sys.time()
  [22:34:18.248]             {
  [22:34:18.248]                 {
  [22:34:18.248]                   {
  [22:34:18.248]                     base::local({
  [22:34:18.248]                       has_future <- base::requireNamespace("future", 
  [22:34:18.248]                         quietly = TRUE)
  [22:34:18.248]                       if (has_future) {
  [22:34:18.248]                         ns <- base::getNamespace("future")
  [22:34:18.248]                         version <- ns[[".package"]][["version"]]
  [22:34:18.248]                         if (is.null(version)) 
  [22:34:18.248]                           version <- utils::packageVersion("future")
  [22:34:18.248]                       }
  [22:34:18.248]                       else {
  [22:34:18.248]                         version <- NULL
  [22:34:18.248]                       }
  [22:34:18.248]                       if (!has_future || version < "1.8.0") {
  [22:34:18.248]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:34:18.248]                           "", base::R.version$version.string), 
  [22:34:18.248]                           platform = base::sprintf("%s (%s-bit)", 
  [22:34:18.248]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:34:18.248]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:34:18.248]                             "release", "version")], collapse = " "), 
  [22:34:18.248]                           hostname = base::Sys.info()[["nodename"]])
  [22:34:18.248]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:34:18.248]                           info)
  [22:34:18.248]                         info <- base::paste(info, collapse = "; ")
  [22:34:18.248]                         if (!has_future) {
  [22:34:18.248]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:34:18.248]                             info)
  [22:34:18.248]                         }
  [22:34:18.248]                         else {
  [22:34:18.248]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:34:18.248]                             info, version)
  [22:34:18.248]                         }
  [22:34:18.248]                         base::stop(msg)
  [22:34:18.248]                       }
  [22:34:18.248]                     })
  [22:34:18.248]                   }
  [22:34:18.248]                   ...future.strategy.old <- future::plan("list")
  [22:34:18.248]                   options(future.plan = NULL)
  [22:34:18.248]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:18.248]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:34:18.248]                 }
  [22:34:18.248]                 ...future.workdir <- getwd()
  [22:34:18.248]             }
  [22:34:18.248]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:34:18.248]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:34:18.248]         }
  [22:34:18.248]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:34:18.248]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:34:18.248]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:34:18.248]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:34:18.248]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:34:18.248]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:34:18.248]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:34:18.248]             base::names(...future.oldOptions))
  [22:34:18.248]     }
  [22:34:18.248]     if (FALSE) {
  [22:34:18.248]     }
  [22:34:18.248]     else {
  [22:34:18.248]         if (TRUE) {
  [22:34:18.248]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:34:18.248]                 open = "w")
  [22:34:18.248]         }
  [22:34:18.248]         else {
  [22:34:18.248]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:34:18.248]                 windows = "NUL", "/dev/null"), open = "w")
  [22:34:18.248]         }
  [22:34:18.248]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:34:18.248]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:34:18.248]             base::sink(type = "output", split = FALSE)
  [22:34:18.248]             base::close(...future.stdout)
  [22:34:18.248]         }, add = TRUE)
  [22:34:18.248]     }
  [22:34:18.248]     ...future.frame <- base::sys.nframe()
  [22:34:18.248]     ...future.conditions <- base::list()
  [22:34:18.248]     ...future.rng <- base::globalenv()$.Random.seed
  [22:34:18.248]     if (FALSE) {
  [22:34:18.248]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:34:18.248]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:34:18.248]     }
  [22:34:18.248]     ...future.result <- base::tryCatch({
  [22:34:18.248]         base::withCallingHandlers({
  [22:34:18.248]             ...future.value <- base::withVisible(base::local(NA))
  [22:34:18.248]             future::FutureResult(value = ...future.value$value, 
  [22:34:18.248]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:18.248]                   ...future.rng), globalenv = if (FALSE) 
  [22:34:18.248]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:34:18.248]                     ...future.globalenv.names))
  [22:34:18.248]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:34:18.248]         }, condition = base::local({
  [22:34:18.248]             c <- base::c
  [22:34:18.248]             inherits <- base::inherits
  [22:34:18.248]             invokeRestart <- base::invokeRestart
  [22:34:18.248]             length <- base::length
  [22:34:18.248]             list <- base::list
  [22:34:18.248]             seq.int <- base::seq.int
  [22:34:18.248]             signalCondition <- base::signalCondition
  [22:34:18.248]             sys.calls <- base::sys.calls
  [22:34:18.248]             `[[` <- base::`[[`
  [22:34:18.248]             `+` <- base::`+`
  [22:34:18.248]             `<<-` <- base::`<<-`
  [22:34:18.248]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:34:18.248]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:34:18.248]                   3L)]
  [22:34:18.248]             }
  [22:34:18.248]             function(cond) {
  [22:34:18.248]                 is_error <- inherits(cond, "error")
  [22:34:18.248]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:34:18.248]                   NULL)
  [22:34:18.248]                 if (is_error) {
  [22:34:18.248]                   sessionInformation <- function() {
  [22:34:18.248]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:34:18.248]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:34:18.248]                       search = base::search(), system = base::Sys.info())
  [22:34:18.248]                   }
  [22:34:18.248]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:18.248]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:34:18.248]                     cond$call), session = sessionInformation(), 
  [22:34:18.248]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:34:18.248]                   signalCondition(cond)
  [22:34:18.248]                 }
  [22:34:18.248]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:34:18.248]                   signal <- FALSE && inherits(cond, character(0))
  [22:34:18.248]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:18.248]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:34:18.248]                   if (FALSE && !signal) {
  [22:34:18.248]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:18.248]                     {
  [22:34:18.248]                       inherits <- base::inherits
  [22:34:18.248]                       invokeRestart <- base::invokeRestart
  [22:34:18.248]                       is.null <- base::is.null
  [22:34:18.248]                       muffled <- FALSE
  [22:34:18.248]                       if (inherits(cond, "message")) {
  [22:34:18.248]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:18.248]                         if (muffled) 
  [22:34:18.248]                           invokeRestart("muffleMessage")
  [22:34:18.248]                       }
  [22:34:18.248]                       else if (inherits(cond, "warning")) {
  [22:34:18.248]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:18.248]                         if (muffled) 
  [22:34:18.248]                           invokeRestart("muffleWarning")
  [22:34:18.248]                       }
  [22:34:18.248]                       else if (inherits(cond, "condition")) {
  [22:34:18.248]                         if (!is.null(pattern)) {
  [22:34:18.248]                           computeRestarts <- base::computeRestarts
  [22:34:18.248]                           grepl <- base::grepl
  [22:34:18.248]                           restarts <- computeRestarts(cond)
  [22:34:18.248]                           for (restart in restarts) {
  [22:34:18.248]                             name <- restart$name
  [22:34:18.248]                             if (is.null(name)) 
  [22:34:18.248]                               next
  [22:34:18.248]                             if (!grepl(pattern, name)) 
  [22:34:18.248]                               next
  [22:34:18.248]                             invokeRestart(restart)
  [22:34:18.248]                             muffled <- TRUE
  [22:34:18.248]                             break
  [22:34:18.248]                           }
  [22:34:18.248]                         }
  [22:34:18.248]                       }
  [22:34:18.248]                       invisible(muffled)
  [22:34:18.248]                     }
  [22:34:18.248]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:18.248]                   }
  [22:34:18.248]                 }
  [22:34:18.248]                 else {
  [22:34:18.248]                   if (TRUE) {
  [22:34:18.248]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:18.248]                     {
  [22:34:18.248]                       inherits <- base::inherits
  [22:34:18.248]                       invokeRestart <- base::invokeRestart
  [22:34:18.248]                       is.null <- base::is.null
  [22:34:18.248]                       muffled <- FALSE
  [22:34:18.248]                       if (inherits(cond, "message")) {
  [22:34:18.248]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:18.248]                         if (muffled) 
  [22:34:18.248]                           invokeRestart("muffleMessage")
  [22:34:18.248]                       }
  [22:34:18.248]                       else if (inherits(cond, "warning")) {
  [22:34:18.248]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:18.248]                         if (muffled) 
  [22:34:18.248]                           invokeRestart("muffleWarning")
  [22:34:18.248]                       }
  [22:34:18.248]                       else if (inherits(cond, "condition")) {
  [22:34:18.248]                         if (!is.null(pattern)) {
  [22:34:18.248]                           computeRestarts <- base::computeRestarts
  [22:34:18.248]                           grepl <- base::grepl
  [22:34:18.248]                           restarts <- computeRestarts(cond)
  [22:34:18.248]                           for (restart in restarts) {
  [22:34:18.248]                             name <- restart$name
  [22:34:18.248]                             if (is.null(name)) 
  [22:34:18.248]                               next
  [22:34:18.248]                             if (!grepl(pattern, name)) 
  [22:34:18.248]                               next
  [22:34:18.248]                             invokeRestart(restart)
  [22:34:18.248]                             muffled <- TRUE
  [22:34:18.248]                             break
  [22:34:18.248]                           }
  [22:34:18.248]                         }
  [22:34:18.248]                       }
  [22:34:18.248]                       invisible(muffled)
  [22:34:18.248]                     }
  [22:34:18.248]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:18.248]                   }
  [22:34:18.248]                 }
  [22:34:18.248]             }
  [22:34:18.248]         }))
  [22:34:18.248]     }, error = function(ex) {
  [22:34:18.248]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:34:18.248]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:18.248]                 ...future.rng), started = ...future.startTime, 
  [22:34:18.248]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:34:18.248]             version = "1.8"), class = "FutureResult")
  [22:34:18.248]     }, finally = {
  [22:34:18.248]         if (!identical(...future.workdir, getwd())) 
  [22:34:18.248]             setwd(...future.workdir)
  [22:34:18.248]         {
  [22:34:18.248]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:34:18.248]                 ...future.oldOptions$nwarnings <- NULL
  [22:34:18.248]             }
  [22:34:18.248]             base::options(...future.oldOptions)
  [22:34:18.248]             if (.Platform$OS.type == "windows") {
  [22:34:18.248]                 old_names <- names(...future.oldEnvVars)
  [22:34:18.248]                 envs <- base::Sys.getenv()
  [22:34:18.248]                 names <- names(envs)
  [22:34:18.248]                 common <- intersect(names, old_names)
  [22:34:18.248]                 added <- setdiff(names, old_names)
  [22:34:18.248]                 removed <- setdiff(old_names, names)
  [22:34:18.248]                 changed <- common[...future.oldEnvVars[common] != 
  [22:34:18.248]                   envs[common]]
  [22:34:18.248]                 NAMES <- toupper(changed)
  [22:34:18.248]                 args <- list()
  [22:34:18.248]                 for (kk in seq_along(NAMES)) {
  [22:34:18.248]                   name <- changed[[kk]]
  [22:34:18.248]                   NAME <- NAMES[[kk]]
  [22:34:18.248]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:18.248]                     next
  [22:34:18.248]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:18.248]                 }
  [22:34:18.248]                 NAMES <- toupper(added)
  [22:34:18.248]                 for (kk in seq_along(NAMES)) {
  [22:34:18.248]                   name <- added[[kk]]
  [22:34:18.248]                   NAME <- NAMES[[kk]]
  [22:34:18.248]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:18.248]                     next
  [22:34:18.248]                   args[[name]] <- ""
  [22:34:18.248]                 }
  [22:34:18.248]                 NAMES <- toupper(removed)
  [22:34:18.248]                 for (kk in seq_along(NAMES)) {
  [22:34:18.248]                   name <- removed[[kk]]
  [22:34:18.248]                   NAME <- NAMES[[kk]]
  [22:34:18.248]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:18.248]                     next
  [22:34:18.248]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:18.248]                 }
  [22:34:18.248]                 if (length(args) > 0) 
  [22:34:18.248]                   base::do.call(base::Sys.setenv, args = args)
  [22:34:18.248]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:34:18.248]             }
  [22:34:18.248]             else {
  [22:34:18.248]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:34:18.248]             }
  [22:34:18.248]             {
  [22:34:18.248]                 if (base::length(...future.futureOptionsAdded) > 
  [22:34:18.248]                   0L) {
  [22:34:18.248]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:34:18.248]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:34:18.248]                   base::options(opts)
  [22:34:18.248]                 }
  [22:34:18.248]                 {
  [22:34:18.248]                   NULL
  [22:34:18.248]                   options(future.plan = NULL)
  [22:34:18.248]                   if (is.na(NA_character_)) 
  [22:34:18.248]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:18.248]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:34:18.248]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:34:18.248]                     .init = FALSE)
  [22:34:18.248]                 }
  [22:34:18.248]             }
  [22:34:18.248]         }
  [22:34:18.248]     })
  [22:34:18.248]     if (TRUE) {
  [22:34:18.248]         base::sink(type = "output", split = FALSE)
  [22:34:18.248]         if (TRUE) {
  [22:34:18.248]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:34:18.248]         }
  [22:34:18.248]         else {
  [22:34:18.248]             ...future.result["stdout"] <- base::list(NULL)
  [22:34:18.248]         }
  [22:34:18.248]         base::close(...future.stdout)
  [22:34:18.248]         ...future.stdout <- NULL
  [22:34:18.248]     }
  [22:34:18.248]     ...future.result$conditions <- ...future.conditions
  [22:34:18.248]     ...future.result$finished <- base::Sys.time()
  [22:34:18.248]     ...future.result
  [22:34:18.248] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/future,labels.R’ failed.
Complete output:
  > source("incl/start.R")
  Loading required package: future
  [22:34:18.994] plan(): Setting new future strategy stack:
  [22:34:18.995] List of future strategies:
  [22:34:18.995] 1. mirai_multisession:
  [22:34:18.995]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:34:18.995]    - tweaked: FALSE
  [22:34:18.995]    - call: future::plan(future.mirai::mirai_multisession)
  [22:34:19.020] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:34:19.021] < mirai [$data] >
  [22:34:19.067] getGlobalsAndPackages() ...
  [22:34:19.068] Not searching for globals
  [22:34:19.068] - globals: [0] <none>
  [22:34:19.068] getGlobalsAndPackages() ... DONE
  [22:34:19.069] getGlobalsAndPackages() ...
  [22:34:19.069] 
  [22:34:19.070] - globals: [0] <none>
  [22:34:19.070] getGlobalsAndPackages() ... DONE
  [22:34:20.313] Packages needed by the future expression (n = 0): <none>
  [22:34:20.313] Packages needed by future strategies (n = 0): <none>
  [22:34:20.315] {
  [22:34:20.315]     {
  [22:34:20.315]         {
  [22:34:20.315]             ...future.startTime <- base::Sys.time()
  [22:34:20.315]             {
  [22:34:20.315]                 {
  [22:34:20.315]                   {
  [22:34:20.315]                     base::local({
  [22:34:20.315]                       has_future <- base::requireNamespace("future", 
  [22:34:20.315]                         quietly = TRUE)
  [22:34:20.315]                       if (has_future) {
  [22:34:20.315]                         ns <- base::getNamespace("future")
  [22:34:20.315]                         version <- ns[[".package"]][["version"]]
  [22:34:20.315]                         if (is.null(version)) 
  [22:34:20.315]                           version <- utils::packageVersion("future")
  [22:34:20.315]                       }
  [22:34:20.315]                       else {
  [22:34:20.315]                         version <- NULL
  [22:34:20.315]                       }
  [22:34:20.315]                       if (!has_future || version < "1.8.0") {
  [22:34:20.315]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:34:20.315]                           "", base::R.version$version.string), 
  [22:34:20.315]                           platform = base::sprintf("%s (%s-bit)", 
  [22:34:20.315]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:34:20.315]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:34:20.315]                             "release", "version")], collapse = " "), 
  [22:34:20.315]                           hostname = base::Sys.info()[["nodename"]])
  [22:34:20.315]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:34:20.315]                           info)
  [22:34:20.315]                         info <- base::paste(info, collapse = "; ")
  [22:34:20.315]                         if (!has_future) {
  [22:34:20.315]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:34:20.315]                             info)
  [22:34:20.315]                         }
  [22:34:20.315]                         else {
  [22:34:20.315]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:34:20.315]                             info, version)
  [22:34:20.315]                         }
  [22:34:20.315]                         base::stop(msg)
  [22:34:20.315]                       }
  [22:34:20.315]                     })
  [22:34:20.315]                   }
  [22:34:20.315]                   ...future.strategy.old <- future::plan("list")
  [22:34:20.315]                   options(future.plan = NULL)
  [22:34:20.315]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:20.315]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:34:20.315]                 }
  [22:34:20.315]                 ...future.workdir <- getwd()
  [22:34:20.315]             }
  [22:34:20.315]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:34:20.315]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:34:20.315]         }
  [22:34:20.315]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:34:20.315]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:34:20.315]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:34:20.315]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:34:20.315]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:34:20.315]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:34:20.315]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:34:20.315]             base::names(...future.oldOptions))
  [22:34:20.315]     }
  [22:34:20.315]     if (FALSE) {
  [22:34:20.315]     }
  [22:34:20.315]     else {
  [22:34:20.315]         if (TRUE) {
  [22:34:20.315]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:34:20.315]                 open = "w")
  [22:34:20.315]         }
  [22:34:20.315]         else {
  [22:34:20.315]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:34:20.315]                 windows = "NUL", "/dev/null"), open = "w")
  [22:34:20.315]         }
  [22:34:20.315]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:34:20.315]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:34:20.315]             base::sink(type = "output", split = FALSE)
  [22:34:20.315]             base::close(...future.stdout)
  [22:34:20.315]         }, add = TRUE)
  [22:34:20.315]     }
  [22:34:20.315]     ...future.frame <- base::sys.nframe()
  [22:34:20.315]     ...future.conditions <- base::list()
  [22:34:20.315]     ...future.rng <- base::globalenv()$.Random.seed
  [22:34:20.315]     if (FALSE) {
  [22:34:20.315]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:34:20.315]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:34:20.315]     }
  [22:34:20.315]     ...future.result <- base::tryCatch({
  [22:34:20.315]         base::withCallingHandlers({
  [22:34:20.315]             ...future.value <- base::withVisible(base::local(NA))
  [22:34:20.315]             future::FutureResult(value = ...future.value$value, 
  [22:34:20.315]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:20.315]                   ...future.rng), globalenv = if (FALSE) 
  [22:34:20.315]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:34:20.315]                     ...future.globalenv.names))
  [22:34:20.315]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:34:20.315]         }, condition = base::local({
  [22:34:20.315]             c <- base::c
  [22:34:20.315]             inherits <- base::inherits
  [22:34:20.315]             invokeRestart <- base::invokeRestart
  [22:34:20.315]             length <- base::length
  [22:34:20.315]             list <- base::list
  [22:34:20.315]             seq.int <- base::seq.int
  [22:34:20.315]             signalCondition <- base::signalCondition
  [22:34:20.315]             sys.calls <- base::sys.calls
  [22:34:20.315]             `[[` <- base::`[[`
  [22:34:20.315]             `+` <- base::`+`
  [22:34:20.315]             `<<-` <- base::`<<-`
  [22:34:20.315]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:34:20.315]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:34:20.315]                   3L)]
  [22:34:20.315]             }
  [22:34:20.315]             function(cond) {
  [22:34:20.315]                 is_error <- inherits(cond, "error")
  [22:34:20.315]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:34:20.315]                   NULL)
  [22:34:20.315]                 if (is_error) {
  [22:34:20.315]                   sessionInformation <- function() {
  [22:34:20.315]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:34:20.315]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:34:20.315]                       search = base::search(), system = base::Sys.info())
  [22:34:20.315]                   }
  [22:34:20.315]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:20.315]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:34:20.315]                     cond$call), session = sessionInformation(), 
  [22:34:20.315]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:34:20.315]                   signalCondition(cond)
  [22:34:20.315]                 }
  [22:34:20.315]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:34:20.315]                   signal <- FALSE && inherits(cond, character(0))
  [22:34:20.315]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:20.315]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:34:20.315]                   if (FALSE && !signal) {
  [22:34:20.315]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:20.315]                     {
  [22:34:20.315]                       inherits <- base::inherits
  [22:34:20.315]                       invokeRestart <- base::invokeRestart
  [22:34:20.315]                       is.null <- base::is.null
  [22:34:20.315]                       muffled <- FALSE
  [22:34:20.315]                       if (inherits(cond, "message")) {
  [22:34:20.315]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:20.315]                         if (muffled) 
  [22:34:20.315]                           invokeRestart("muffleMessage")
  [22:34:20.315]                       }
  [22:34:20.315]                       else if (inherits(cond, "warning")) {
  [22:34:20.315]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:20.315]                         if (muffled) 
  [22:34:20.315]                           invokeRestart("muffleWarning")
  [22:34:20.315]                       }
  [22:34:20.315]                       else if (inherits(cond, "condition")) {
  [22:34:20.315]                         if (!is.null(pattern)) {
  [22:34:20.315]                           computeRestarts <- base::computeRestarts
  [22:34:20.315]                           grepl <- base::grepl
  [22:34:20.315]                           restarts <- computeRestarts(cond)
  [22:34:20.315]                           for (restart in restarts) {
  [22:34:20.315]                             name <- restart$name
  [22:34:20.315]                             if (is.null(name)) 
  [22:34:20.315]                               next
  [22:34:20.315]                             if (!grepl(pattern, name)) 
  [22:34:20.315]                               next
  [22:34:20.315]                             invokeRestart(restart)
  [22:34:20.315]                             muffled <- TRUE
  [22:34:20.315]                             break
  [22:34:20.315]                           }
  [22:34:20.315]                         }
  [22:34:20.315]                       }
  [22:34:20.315]                       invisible(muffled)
  [22:34:20.315]                     }
  [22:34:20.315]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:20.315]                   }
  [22:34:20.315]                 }
  [22:34:20.315]                 else {
  [22:34:20.315]                   if (TRUE) {
  [22:34:20.315]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:20.315]                     {
  [22:34:20.315]                       inherits <- base::inherits
  [22:34:20.315]                       invokeRestart <- base::invokeRestart
  [22:34:20.315]                       is.null <- base::is.null
  [22:34:20.315]                       muffled <- FALSE
  [22:34:20.315]                       if (inherits(cond, "message")) {
  [22:34:20.315]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:20.315]                         if (muffled) 
  [22:34:20.315]                           invokeRestart("muffleMessage")
  [22:34:20.315]                       }
  [22:34:20.315]                       else if (inherits(cond, "warning")) {
  [22:34:20.315]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:20.315]                         if (muffled) 
  [22:34:20.315]                           invokeRestart("muffleWarning")
  [22:34:20.315]                       }
  [22:34:20.315]                       else if (inherits(cond, "condition")) {
  [22:34:20.315]                         if (!is.null(pattern)) {
  [22:34:20.315]                           computeRestarts <- base::computeRestarts
  [22:34:20.315]                           grepl <- base::grepl
  [22:34:20.315]                           restarts <- computeRestarts(cond)
  [22:34:20.315]                           for (restart in restarts) {
  [22:34:20.315]                             name <- restart$name
  [22:34:20.315]                             if (is.null(name)) 
  [22:34:20.315]                               next
  [22:34:20.315]                             if (!grepl(pattern, name)) 
  [22:34:20.315]                               next
  [22:34:20.315]                             invokeRestart(restart)
  [22:34:20.315]                             muffled <- TRUE
  [22:34:20.315]                             break
  [22:34:20.315]                           }
  [22:34:20.315]                         }
  [22:34:20.315]                       }
  [22:34:20.315]                       invisible(muffled)
  [22:34:20.315]                     }
  [22:34:20.315]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:20.315]                   }
  [22:34:20.315]                 }
  [22:34:20.315]             }
  [22:34:20.315]         }))
  [22:34:20.315]     }, error = function(ex) {
  [22:34:20.315]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:34:20.315]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:20.315]                 ...future.rng), started = ...future.startTime, 
  [22:34:20.315]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:34:20.315]             version = "1.8"), class = "FutureResult")
  [22:34:20.315]     }, finally = {
  [22:34:20.315]         if (!identical(...future.workdir, getwd())) 
  [22:34:20.315]             setwd(...future.workdir)
  [22:34:20.315]         {
  [22:34:20.315]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:34:20.315]                 ...future.oldOptions$nwarnings <- NULL
  [22:34:20.315]             }
  [22:34:20.315]             base::options(...future.oldOptions)
  [22:34:20.315]             if (.Platform$OS.type == "windows") {
  [22:34:20.315]                 old_names <- names(...future.oldEnvVars)
  [22:34:20.315]                 envs <- base::Sys.getenv()
  [22:34:20.315]                 names <- names(envs)
  [22:34:20.315]                 common <- intersect(names, old_names)
  [22:34:20.315]                 added <- setdiff(names, old_names)
  [22:34:20.315]                 removed <- setdiff(old_names, names)
  [22:34:20.315]                 changed <- common[...future.oldEnvVars[common] != 
  [22:34:20.315]                   envs[common]]
  [22:34:20.315]                 NAMES <- toupper(changed)
  [22:34:20.315]                 args <- list()
  [22:34:20.315]                 for (kk in seq_along(NAMES)) {
  [22:34:20.315]                   name <- changed[[kk]]
  [22:34:20.315]                   NAME <- NAMES[[kk]]
  [22:34:20.315]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:20.315]                     next
  [22:34:20.315]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:20.315]                 }
  [22:34:20.315]                 NAMES <- toupper(added)
  [22:34:20.315]                 for (kk in seq_along(NAMES)) {
  [22:34:20.315]                   name <- added[[kk]]
  [22:34:20.315]                   NAME <- NAMES[[kk]]
  [22:34:20.315]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:20.315]                     next
  [22:34:20.315]                   args[[name]] <- ""
  [22:34:20.315]                 }
  [22:34:20.315]                 NAMES <- toupper(removed)
  [22:34:20.315]                 for (kk in seq_along(NAMES)) {
  [22:34:20.315]                   name <- removed[[kk]]
  [22:34:20.315]                   NAME <- NAMES[[kk]]
  [22:34:20.315]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:20.315]                     next
  [22:34:20.315]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:20.315]                 }
  [22:34:20.315]                 if (length(args) > 0) 
  [22:34:20.315]                   base::do.call(base::Sys.setenv, args = args)
  [22:34:20.315]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:34:20.315]             }
  [22:34:20.315]             else {
  [22:34:20.315]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:34:20.315]             }
  [22:34:20.315]             {
  [22:34:20.315]                 if (base::length(...future.futureOptionsAdded) > 
  [22:34:20.315]                   0L) {
  [22:34:20.315]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:34:20.315]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:34:20.315]                   base::options(opts)
  [22:34:20.315]                 }
  [22:34:20.315]                 {
  [22:34:20.315]                   NULL
  [22:34:20.315]                   options(future.plan = NULL)
  [22:34:20.315]                   if (is.na(NA_character_)) 
  [22:34:20.315]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:20.315]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:34:20.315]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:34:20.315]                     .init = FALSE)
  [22:34:20.315]                 }
  [22:34:20.315]             }
  [22:34:20.315]         }
  [22:34:20.315]     })
  [22:34:20.315]     if (TRUE) {
  [22:34:20.315]         base::sink(type = "output", split = FALSE)
  [22:34:20.315]         if (TRUE) {
  [22:34:20.315]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:34:20.315]         }
  [22:34:20.315]         else {
  [22:34:20.315]             ...future.result["stdout"] <- base::list(NULL)
  [22:34:20.315]         }
  [22:34:20.315]         base::close(...future.stdout)
  [22:34:20.315]         ...future.stdout <- NULL
  [22:34:20.315]     }
  [22:34:20.315]     ...future.result$conditions <- ...future.conditions
  [22:34:20.315]     ...future.result$finished <- base::Sys.time()
  [22:34:20.315]     ...future.result
  [22:34:20.315] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/future,lazy.R’ failed.
Complete output:
  > source("incl/start.R")
  Loading required package: future
  [22:34:21.328] plan(): Setting new future strategy stack:
  [22:34:21.329] List of future strategies:
  [22:34:21.329] 1. mirai_multisession:
  [22:34:21.329]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:34:21.329]    - tweaked: FALSE
  [22:34:21.329]    - call: future::plan(future.mirai::mirai_multisession)
  [22:34:21.368] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:34:21.368] < mirai [$data] >
  [22:34:21.436] getGlobalsAndPackages() ...
  [22:34:21.436] Not searching for globals
  [22:34:21.436] - globals: [0] <none>
  [22:34:21.437] getGlobalsAndPackages() ... DONE
  [22:34:21.437] getGlobalsAndPackages() ...
  [22:34:21.438] 
  [22:34:21.438] - globals: [0] <none>
  [22:34:21.438] getGlobalsAndPackages() ... DONE
  [22:34:22.541] Packages needed by the future expression (n = 0): <none>
  [22:34:22.541] Packages needed by future strategies (n = 0): <none>
  [22:34:22.543] {
  [22:34:22.543]     {
  [22:34:22.543]         {
  [22:34:22.543]             ...future.startTime <- base::Sys.time()
  [22:34:22.543]             {
  [22:34:22.543]                 {
  [22:34:22.543]                   {
  [22:34:22.543]                     base::local({
  [22:34:22.543]                       has_future <- base::requireNamespace("future", 
  [22:34:22.543]                         quietly = TRUE)
  [22:34:22.543]                       if (has_future) {
  [22:34:22.543]                         ns <- base::getNamespace("future")
  [22:34:22.543]                         version <- ns[[".package"]][["version"]]
  [22:34:22.543]                         if (is.null(version)) 
  [22:34:22.543]                           version <- utils::packageVersion("future")
  [22:34:22.543]                       }
  [22:34:22.543]                       else {
  [22:34:22.543]                         version <- NULL
  [22:34:22.543]                       }
  [22:34:22.543]                       if (!has_future || version < "1.8.0") {
  [22:34:22.543]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:34:22.543]                           "", base::R.version$version.string), 
  [22:34:22.543]                           platform = base::sprintf("%s (%s-bit)", 
  [22:34:22.543]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:34:22.543]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:34:22.543]                             "release", "version")], collapse = " "), 
  [22:34:22.543]                           hostname = base::Sys.info()[["nodename"]])
  [22:34:22.543]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:34:22.543]                           info)
  [22:34:22.543]                         info <- base::paste(info, collapse = "; ")
  [22:34:22.543]                         if (!has_future) {
  [22:34:22.543]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:34:22.543]                             info)
  [22:34:22.543]                         }
  [22:34:22.543]                         else {
  [22:34:22.543]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:34:22.543]                             info, version)
  [22:34:22.543]                         }
  [22:34:22.543]                         base::stop(msg)
  [22:34:22.543]                       }
  [22:34:22.543]                     })
  [22:34:22.543]                   }
  [22:34:22.543]                   ...future.strategy.old <- future::plan("list")
  [22:34:22.543]                   options(future.plan = NULL)
  [22:34:22.543]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:22.543]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:34:22.543]                 }
  [22:34:22.543]                 ...future.workdir <- getwd()
  [22:34:22.543]             }
  [22:34:22.543]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:34:22.543]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:34:22.543]         }
  [22:34:22.543]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:34:22.543]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:34:22.543]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:34:22.543]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:34:22.543]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:34:22.543]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:34:22.543]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:34:22.543]             base::names(...future.oldOptions))
  [22:34:22.543]     }
  [22:34:22.543]     if (FALSE) {
  [22:34:22.543]     }
  [22:34:22.543]     else {
  [22:34:22.543]         if (TRUE) {
  [22:34:22.543]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:34:22.543]                 open = "w")
  [22:34:22.543]         }
  [22:34:22.543]         else {
  [22:34:22.543]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:34:22.543]                 windows = "NUL", "/dev/null"), open = "w")
  [22:34:22.543]         }
  [22:34:22.543]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:34:22.543]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:34:22.543]             base::sink(type = "output", split = FALSE)
  [22:34:22.543]             base::close(...future.stdout)
  [22:34:22.543]         }, add = TRUE)
  [22:34:22.543]     }
  [22:34:22.543]     ...future.frame <- base::sys.nframe()
  [22:34:22.543]     ...future.conditions <- base::list()
  [22:34:22.543]     ...future.rng <- base::globalenv()$.Random.seed
  [22:34:22.543]     if (FALSE) {
  [22:34:22.543]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:34:22.543]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:34:22.543]     }
  [22:34:22.543]     ...future.result <- base::tryCatch({
  [22:34:22.543]         base::withCallingHandlers({
  [22:34:22.543]             ...future.value <- base::withVisible(base::local(NA))
  [22:34:22.543]             future::FutureResult(value = ...future.value$value, 
  [22:34:22.543]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:22.543]                   ...future.rng), globalenv = if (FALSE) 
  [22:34:22.543]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:34:22.543]                     ...future.globalenv.names))
  [22:34:22.543]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:34:22.543]         }, condition = base::local({
  [22:34:22.543]             c <- base::c
  [22:34:22.543]             inherits <- base::inherits
  [22:34:22.543]             invokeRestart <- base::invokeRestart
  [22:34:22.543]             length <- base::length
  [22:34:22.543]             list <- base::list
  [22:34:22.543]             seq.int <- base::seq.int
  [22:34:22.543]             signalCondition <- base::signalCondition
  [22:34:22.543]             sys.calls <- base::sys.calls
  [22:34:22.543]             `[[` <- base::`[[`
  [22:34:22.543]             `+` <- base::`+`
  [22:34:22.543]             `<<-` <- base::`<<-`
  [22:34:22.543]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:34:22.543]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:34:22.543]                   3L)]
  [22:34:22.543]             }
  [22:34:22.543]             function(cond) {
  [22:34:22.543]                 is_error <- inherits(cond, "error")
  [22:34:22.543]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:34:22.543]                   NULL)
  [22:34:22.543]                 if (is_error) {
  [22:34:22.543]                   sessionInformation <- function() {
  [22:34:22.543]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:34:22.543]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:34:22.543]                       search = base::search(), system = base::Sys.info())
  [22:34:22.543]                   }
  [22:34:22.543]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:22.543]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:34:22.543]                     cond$call), session = sessionInformation(), 
  [22:34:22.543]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:34:22.543]                   signalCondition(cond)
  [22:34:22.543]                 }
  [22:34:22.543]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:34:22.543]                   signal <- FALSE && inherits(cond, character(0))
  [22:34:22.543]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:22.543]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:34:22.543]                   if (FALSE && !signal) {
  [22:34:22.543]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:22.543]                     {
  [22:34:22.543]                       inherits <- base::inherits
  [22:34:22.543]                       invokeRestart <- base::invokeRestart
  [22:34:22.543]                       is.null <- base::is.null
  [22:34:22.543]                       muffled <- FALSE
  [22:34:22.543]                       if (inherits(cond, "message")) {
  [22:34:22.543]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:22.543]                         if (muffled) 
  [22:34:22.543]                           invokeRestart("muffleMessage")
  [22:34:22.543]                       }
  [22:34:22.543]                       else if (inherits(cond, "warning")) {
  [22:34:22.543]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:22.543]                         if (muffled) 
  [22:34:22.543]                           invokeRestart("muffleWarning")
  [22:34:22.543]                       }
  [22:34:22.543]                       else if (inherits(cond, "condition")) {
  [22:34:22.543]                         if (!is.null(pattern)) {
  [22:34:22.543]                           computeRestarts <- base::computeRestarts
  [22:34:22.543]                           grepl <- base::grepl
  [22:34:22.543]                           restarts <- computeRestarts(cond)
  [22:34:22.543]                           for (restart in restarts) {
  [22:34:22.543]                             name <- restart$name
  [22:34:22.543]                             if (is.null(name)) 
  [22:34:22.543]                               next
  [22:34:22.543]                             if (!grepl(pattern, name)) 
  [22:34:22.543]                               next
  [22:34:22.543]                             invokeRestart(restart)
  [22:34:22.543]                             muffled <- TRUE
  [22:34:22.543]                             break
  [22:34:22.543]                           }
  [22:34:22.543]                         }
  [22:34:22.543]                       }
  [22:34:22.543]                       invisible(muffled)
  [22:34:22.543]                     }
  [22:34:22.543]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:22.543]                   }
  [22:34:22.543]                 }
  [22:34:22.543]                 else {
  [22:34:22.543]                   if (TRUE) {
  [22:34:22.543]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:22.543]                     {
  [22:34:22.543]                       inherits <- base::inherits
  [22:34:22.543]                       invokeRestart <- base::invokeRestart
  [22:34:22.543]                       is.null <- base::is.null
  [22:34:22.543]                       muffled <- FALSE
  [22:34:22.543]                       if (inherits(cond, "message")) {
  [22:34:22.543]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:22.543]                         if (muffled) 
  [22:34:22.543]                           invokeRestart("muffleMessage")
  [22:34:22.543]                       }
  [22:34:22.543]                       else if (inherits(cond, "warning")) {
  [22:34:22.543]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:22.543]                         if (muffled) 
  [22:34:22.543]                           invokeRestart("muffleWarning")
  [22:34:22.543]                       }
  [22:34:22.543]                       else if (inherits(cond, "condition")) {
  [22:34:22.543]                         if (!is.null(pattern)) {
  [22:34:22.543]                           computeRestarts <- base::computeRestarts
  [22:34:22.543]                           grepl <- base::grepl
  [22:34:22.543]                           restarts <- computeRestarts(cond)
  [22:34:22.543]                           for (restart in restarts) {
  [22:34:22.543]                             name <- restart$name
  [22:34:22.543]                             if (is.null(name)) 
  [22:34:22.543]                               next
  [22:34:22.543]                             if (!grepl(pattern, name)) 
  [22:34:22.543]                               next
  [22:34:22.543]                             invokeRestart(restart)
  [22:34:22.543]                             muffled <- TRUE
  [22:34:22.543]                             break
  [22:34:22.543]                           }
  [22:34:22.543]                         }
  [22:34:22.543]                       }
  [22:34:22.543]                       invisible(muffled)
  [22:34:22.543]                     }
  [22:34:22.543]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:22.543]                   }
  [22:34:22.543]                 }
  [22:34:22.543]             }
  [22:34:22.543]         }))
  [22:34:22.543]     }, error = function(ex) {
  [22:34:22.543]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:34:22.543]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:22.543]                 ...future.rng), started = ...future.startTime, 
  [22:34:22.543]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:34:22.543]             version = "1.8"), class = "FutureResult")
  [22:34:22.543]     }, finally = {
  [22:34:22.543]         if (!identical(...future.workdir, getwd())) 
  [22:34:22.543]             setwd(...future.workdir)
  [22:34:22.543]         {
  [22:34:22.543]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:34:22.543]                 ...future.oldOptions$nwarnings <- NULL
  [22:34:22.543]             }
  [22:34:22.543]             base::options(...future.oldOptions)
  [22:34:22.543]             if (.Platform$OS.type == "windows") {
  [22:34:22.543]                 old_names <- names(...future.oldEnvVars)
  [22:34:22.543]                 envs <- base::Sys.getenv()
  [22:34:22.543]                 names <- names(envs)
  [22:34:22.543]                 common <- intersect(names, old_names)
  [22:34:22.543]                 added <- setdiff(names, old_names)
  [22:34:22.543]                 removed <- setdiff(old_names, names)
  [22:34:22.543]                 changed <- common[...future.oldEnvVars[common] != 
  [22:34:22.543]                   envs[common]]
  [22:34:22.543]                 NAMES <- toupper(changed)
  [22:34:22.543]                 args <- list()
  [22:34:22.543]                 for (kk in seq_along(NAMES)) {
  [22:34:22.543]                   name <- changed[[kk]]
  [22:34:22.543]                   NAME <- NAMES[[kk]]
  [22:34:22.543]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:22.543]                     next
  [22:34:22.543]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:22.543]                 }
  [22:34:22.543]                 NAMES <- toupper(added)
  [22:34:22.543]                 for (kk in seq_along(NAMES)) {
  [22:34:22.543]                   name <- added[[kk]]
  [22:34:22.543]                   NAME <- NAMES[[kk]]
  [22:34:22.543]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:22.543]                     next
  [22:34:22.543]                   args[[name]] <- ""
  [22:34:22.543]                 }
  [22:34:22.543]                 NAMES <- toupper(removed)
  [22:34:22.543]                 for (kk in seq_along(NAMES)) {
  [22:34:22.543]                   name <- removed[[kk]]
  [22:34:22.543]                   NAME <- NAMES[[kk]]
  [22:34:22.543]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:22.543]                     next
  [22:34:22.543]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:22.543]                 }
  [22:34:22.543]                 if (length(args) > 0) 
  [22:34:22.543]                   base::do.call(base::Sys.setenv, args = args)
  [22:34:22.543]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:34:22.543]             }
  [22:34:22.543]             else {
  [22:34:22.543]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:34:22.543]             }
  [22:34:22.543]             {
  [22:34:22.543]                 if (base::length(...future.futureOptionsAdded) > 
  [22:34:22.543]                   0L) {
  [22:34:22.543]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:34:22.543]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:34:22.543]                   base::options(opts)
  [22:34:22.543]                 }
  [22:34:22.543]                 {
  [22:34:22.543]                   NULL
  [22:34:22.543]                   options(future.plan = NULL)
  [22:34:22.543]                   if (is.na(NA_character_)) 
  [22:34:22.543]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:22.543]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:34:22.543]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:34:22.543]                     .init = FALSE)
  [22:34:22.543]                 }
  [22:34:22.543]             }
  [22:34:22.543]         }
  [22:34:22.543]     })
  [22:34:22.543]     if (TRUE) {
  [22:34:22.543]         base::sink(type = "output", split = FALSE)
  [22:34:22.543]         if (TRUE) {
  [22:34:22.543]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:34:22.543]         }
  [22:34:22.543]         else {
  [22:34:22.543]             ...future.result["stdout"] <- base::list(NULL)
  [22:34:22.543]         }
  [22:34:22.543]         base::close(...future.stdout)
  [22:34:22.543]         ...future.stdout <- NULL
  [22:34:22.543]     }
  [22:34:22.543]     ...future.result$conditions <- ...future.conditions
  [22:34:22.543]     ...future.result$finished <- base::Sys.time()
  [22:34:22.543]     ...future.result
  [22:34:22.543] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/future.tests-mirai_multisession.R’ failed.
Complete output:
  > if (requireNamespace("future.tests")) {
  +   mirai::daemons(0)  ## Reset any daemons running
  +   
  +   future.tests::check("future.mirai::mirai_multisession", timeout = 30.0, exit_value = FALSE)
  +   
  +   mirai::daemons(0)  ## Reset any daemons running
  +   gc()
  + }
  Loading required namespace: future.tests
  ── Settings ────────────────────────────────────────────────────────────────────
  - future.tests version      : 0.7.0
  - R_FUTURE_TESTS_ROOT       : 
  - Option 'future.tests.root': NULL
  - Default test set folder   : /home/hornik/tmp/R.check/r-devel-gcc/Work/build/Packages/future.tests/test-db
  - Max number of workers     : 2
  - Timeout                   : 30 seconds
  
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: <Anonymous> ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/globals,formulas.R’ failed.
Complete output:
  > source("incl/start.R")
  Loading required package: future
  [22:34:47.796] plan(): Setting new future strategy stack:
  [22:34:47.796] List of future strategies:
  [22:34:47.796] 1. mirai_multisession:
  [22:34:47.796]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:34:47.796]    - tweaked: FALSE
  [22:34:47.796]    - call: future::plan(future.mirai::mirai_multisession)
  [22:34:47.820] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:34:47.821] < mirai [$data] >
  [22:34:47.884] getGlobalsAndPackages() ...
  [22:34:47.884] Not searching for globals
  [22:34:47.885] - globals: [0] <none>
  [22:34:47.885] getGlobalsAndPackages() ... DONE
  [22:34:47.885] getGlobalsAndPackages() ...
  [22:34:47.886] 
  [22:34:47.886] - globals: [0] <none>
  [22:34:47.886] getGlobalsAndPackages() ... DONE
  [22:34:49.055] Packages needed by the future expression (n = 0): <none>
  [22:34:49.056] Packages needed by future strategies (n = 0): <none>
  [22:34:49.057] {
  [22:34:49.057]     {
  [22:34:49.057]         {
  [22:34:49.057]             ...future.startTime <- base::Sys.time()
  [22:34:49.057]             {
  [22:34:49.057]                 {
  [22:34:49.057]                   {
  [22:34:49.057]                     base::local({
  [22:34:49.057]                       has_future <- base::requireNamespace("future", 
  [22:34:49.057]                         quietly = TRUE)
  [22:34:49.057]                       if (has_future) {
  [22:34:49.057]                         ns <- base::getNamespace("future")
  [22:34:49.057]                         version <- ns[[".package"]][["version"]]
  [22:34:49.057]                         if (is.null(version)) 
  [22:34:49.057]                           version <- utils::packageVersion("future")
  [22:34:49.057]                       }
  [22:34:49.057]                       else {
  [22:34:49.057]                         version <- NULL
  [22:34:49.057]                       }
  [22:34:49.057]                       if (!has_future || version < "1.8.0") {
  [22:34:49.057]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:34:49.057]                           "", base::R.version$version.string), 
  [22:34:49.057]                           platform = base::sprintf("%s (%s-bit)", 
  [22:34:49.057]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:34:49.057]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:34:49.057]                             "release", "version")], collapse = " "), 
  [22:34:49.057]                           hostname = base::Sys.info()[["nodename"]])
  [22:34:49.057]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:34:49.057]                           info)
  [22:34:49.057]                         info <- base::paste(info, collapse = "; ")
  [22:34:49.057]                         if (!has_future) {
  [22:34:49.057]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:34:49.057]                             info)
  [22:34:49.057]                         }
  [22:34:49.057]                         else {
  [22:34:49.057]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:34:49.057]                             info, version)
  [22:34:49.057]                         }
  [22:34:49.057]                         base::stop(msg)
  [22:34:49.057]                       }
  [22:34:49.057]                     })
  [22:34:49.057]                   }
  [22:34:49.057]                   ...future.strategy.old <- future::plan("list")
  [22:34:49.057]                   options(future.plan = NULL)
  [22:34:49.057]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:49.057]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:34:49.057]                 }
  [22:34:49.057]                 ...future.workdir <- getwd()
  [22:34:49.057]             }
  [22:34:49.057]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:34:49.057]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:34:49.057]         }
  [22:34:49.057]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:34:49.057]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:34:49.057]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:34:49.057]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:34:49.057]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:34:49.057]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:34:49.057]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:34:49.057]             base::names(...future.oldOptions))
  [22:34:49.057]     }
  [22:34:49.057]     if (FALSE) {
  [22:34:49.057]     }
  [22:34:49.057]     else {
  [22:34:49.057]         if (TRUE) {
  [22:34:49.057]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:34:49.057]                 open = "w")
  [22:34:49.057]         }
  [22:34:49.057]         else {
  [22:34:49.057]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:34:49.057]                 windows = "NUL", "/dev/null"), open = "w")
  [22:34:49.057]         }
  [22:34:49.057]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:34:49.057]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:34:49.057]             base::sink(type = "output", split = FALSE)
  [22:34:49.057]             base::close(...future.stdout)
  [22:34:49.057]         }, add = TRUE)
  [22:34:49.057]     }
  [22:34:49.057]     ...future.frame <- base::sys.nframe()
  [22:34:49.057]     ...future.conditions <- base::list()
  [22:34:49.057]     ...future.rng <- base::globalenv()$.Random.seed
  [22:34:49.057]     if (FALSE) {
  [22:34:49.057]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:34:49.057]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:34:49.057]     }
  [22:34:49.057]     ...future.result <- base::tryCatch({
  [22:34:49.057]         base::withCallingHandlers({
  [22:34:49.057]             ...future.value <- base::withVisible(base::local(NA))
  [22:34:49.057]             future::FutureResult(value = ...future.value$value, 
  [22:34:49.057]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:49.057]                   ...future.rng), globalenv = if (FALSE) 
  [22:34:49.057]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:34:49.057]                     ...future.globalenv.names))
  [22:34:49.057]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:34:49.057]         }, condition = base::local({
  [22:34:49.057]             c <- base::c
  [22:34:49.057]             inherits <- base::inherits
  [22:34:49.057]             invokeRestart <- base::invokeRestart
  [22:34:49.057]             length <- base::length
  [22:34:49.057]             list <- base::list
  [22:34:49.057]             seq.int <- base::seq.int
  [22:34:49.057]             signalCondition <- base::signalCondition
  [22:34:49.057]             sys.calls <- base::sys.calls
  [22:34:49.057]             `[[` <- base::`[[`
  [22:34:49.057]             `+` <- base::`+`
  [22:34:49.057]             `<<-` <- base::`<<-`
  [22:34:49.057]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:34:49.057]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:34:49.057]                   3L)]
  [22:34:49.057]             }
  [22:34:49.057]             function(cond) {
  [22:34:49.057]                 is_error <- inherits(cond, "error")
  [22:34:49.057]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:34:49.057]                   NULL)
  [22:34:49.057]                 if (is_error) {
  [22:34:49.057]                   sessionInformation <- function() {
  [22:34:49.057]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:34:49.057]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:34:49.057]                       search = base::search(), system = base::Sys.info())
  [22:34:49.057]                   }
  [22:34:49.057]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:49.057]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:34:49.057]                     cond$call), session = sessionInformation(), 
  [22:34:49.057]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:34:49.057]                   signalCondition(cond)
  [22:34:49.057]                 }
  [22:34:49.057]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:34:49.057]                   signal <- FALSE && inherits(cond, character(0))
  [22:34:49.057]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:49.057]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:34:49.057]                   if (FALSE && !signal) {
  [22:34:49.057]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:49.057]                     {
  [22:34:49.057]                       inherits <- base::inherits
  [22:34:49.057]                       invokeRestart <- base::invokeRestart
  [22:34:49.057]                       is.null <- base::is.null
  [22:34:49.057]                       muffled <- FALSE
  [22:34:49.057]                       if (inherits(cond, "message")) {
  [22:34:49.057]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:49.057]                         if (muffled) 
  [22:34:49.057]                           invokeRestart("muffleMessage")
  [22:34:49.057]                       }
  [22:34:49.057]                       else if (inherits(cond, "warning")) {
  [22:34:49.057]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:49.057]                         if (muffled) 
  [22:34:49.057]                           invokeRestart("muffleWarning")
  [22:34:49.057]                       }
  [22:34:49.057]                       else if (inherits(cond, "condition")) {
  [22:34:49.057]                         if (!is.null(pattern)) {
  [22:34:49.057]                           computeRestarts <- base::computeRestarts
  [22:34:49.057]                           grepl <- base::grepl
  [22:34:49.057]                           restarts <- computeRestarts(cond)
  [22:34:49.057]                           for (restart in restarts) {
  [22:34:49.057]                             name <- restart$name
  [22:34:49.057]                             if (is.null(name)) 
  [22:34:49.057]                               next
  [22:34:49.057]                             if (!grepl(pattern, name)) 
  [22:34:49.057]                               next
  [22:34:49.057]                             invokeRestart(restart)
  [22:34:49.057]                             muffled <- TRUE
  [22:34:49.057]                             break
  [22:34:49.057]                           }
  [22:34:49.057]                         }
  [22:34:49.057]                       }
  [22:34:49.057]                       invisible(muffled)
  [22:34:49.057]                     }
  [22:34:49.057]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:49.057]                   }
  [22:34:49.057]                 }
  [22:34:49.057]                 else {
  [22:34:49.057]                   if (TRUE) {
  [22:34:49.057]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:49.057]                     {
  [22:34:49.057]                       inherits <- base::inherits
  [22:34:49.057]                       invokeRestart <- base::invokeRestart
  [22:34:49.057]                       is.null <- base::is.null
  [22:34:49.057]                       muffled <- FALSE
  [22:34:49.057]                       if (inherits(cond, "message")) {
  [22:34:49.057]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:49.057]                         if (muffled) 
  [22:34:49.057]                           invokeRestart("muffleMessage")
  [22:34:49.057]                       }
  [22:34:49.057]                       else if (inherits(cond, "warning")) {
  [22:34:49.057]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:49.057]                         if (muffled) 
  [22:34:49.057]                           invokeRestart("muffleWarning")
  [22:34:49.057]                       }
  [22:34:49.057]                       else if (inherits(cond, "condition")) {
  [22:34:49.057]                         if (!is.null(pattern)) {
  [22:34:49.057]                           computeRestarts <- base::computeRestarts
  [22:34:49.057]                           grepl <- base::grepl
  [22:34:49.057]                           restarts <- computeRestarts(cond)
  [22:34:49.057]                           for (restart in restarts) {
  [22:34:49.057]                             name <- restart$name
  [22:34:49.057]                             if (is.null(name)) 
  [22:34:49.057]                               next
  [22:34:49.057]                             if (!grepl(pattern, name)) 
  [22:34:49.057]                               next
  [22:34:49.057]                             invokeRestart(restart)
  [22:34:49.057]                             muffled <- TRUE
  [22:34:49.057]                             break
  [22:34:49.057]                           }
  [22:34:49.057]                         }
  [22:34:49.057]                       }
  [22:34:49.057]                       invisible(muffled)
  [22:34:49.057]                     }
  [22:34:49.057]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:49.057]                   }
  [22:34:49.057]                 }
  [22:34:49.057]             }
  [22:34:49.057]         }))
  [22:34:49.057]     }, error = function(ex) {
  [22:34:49.057]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:34:49.057]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:49.057]                 ...future.rng), started = ...future.startTime, 
  [22:34:49.057]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:34:49.057]             version = "1.8"), class = "FutureResult")
  [22:34:49.057]     }, finally = {
  [22:34:49.057]         if (!identical(...future.workdir, getwd())) 
  [22:34:49.057]             setwd(...future.workdir)
  [22:34:49.057]         {
  [22:34:49.057]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:34:49.057]                 ...future.oldOptions$nwarnings <- NULL
  [22:34:49.057]             }
  [22:34:49.057]             base::options(...future.oldOptions)
  [22:34:49.057]             if (.Platform$OS.type == "windows") {
  [22:34:49.057]                 old_names <- names(...future.oldEnvVars)
  [22:34:49.057]                 envs <- base::Sys.getenv()
  [22:34:49.057]                 names <- names(envs)
  [22:34:49.057]                 common <- intersect(names, old_names)
  [22:34:49.057]                 added <- setdiff(names, old_names)
  [22:34:49.057]                 removed <- setdiff(old_names, names)
  [22:34:49.057]                 changed <- common[...future.oldEnvVars[common] != 
  [22:34:49.057]                   envs[common]]
  [22:34:49.057]                 NAMES <- toupper(changed)
  [22:34:49.057]                 args <- list()
  [22:34:49.057]                 for (kk in seq_along(NAMES)) {
  [22:34:49.057]                   name <- changed[[kk]]
  [22:34:49.057]                   NAME <- NAMES[[kk]]
  [22:34:49.057]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:49.057]                     next
  [22:34:49.057]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:49.057]                 }
  [22:34:49.057]                 NAMES <- toupper(added)
  [22:34:49.057]                 for (kk in seq_along(NAMES)) {
  [22:34:49.057]                   name <- added[[kk]]
  [22:34:49.057]                   NAME <- NAMES[[kk]]
  [22:34:49.057]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:49.057]                     next
  [22:34:49.057]                   args[[name]] <- ""
  [22:34:49.057]                 }
  [22:34:49.057]                 NAMES <- toupper(removed)
  [22:34:49.057]                 for (kk in seq_along(NAMES)) {
  [22:34:49.057]                   name <- removed[[kk]]
  [22:34:49.057]                   NAME <- NAMES[[kk]]
  [22:34:49.057]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:49.057]                     next
  [22:34:49.057]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:49.057]                 }
  [22:34:49.057]                 if (length(args) > 0) 
  [22:34:49.057]                   base::do.call(base::Sys.setenv, args = args)
  [22:34:49.057]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:34:49.057]             }
  [22:34:49.057]             else {
  [22:34:49.057]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:34:49.057]             }
  [22:34:49.057]             {
  [22:34:49.057]                 if (base::length(...future.futureOptionsAdded) > 
  [22:34:49.057]                   0L) {
  [22:34:49.057]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:34:49.057]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:34:49.057]                   base::options(opts)
  [22:34:49.057]                 }
  [22:34:49.057]                 {
  [22:34:49.057]                   NULL
  [22:34:49.057]                   options(future.plan = NULL)
  [22:34:49.057]                   if (is.na(NA_character_)) 
  [22:34:49.057]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:49.057]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:34:49.057]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:34:49.057]                     .init = FALSE)
  [22:34:49.057]                 }
  [22:34:49.057]             }
  [22:34:49.057]         }
  [22:34:49.057]     })
  [22:34:49.057]     if (TRUE) {
  [22:34:49.057]         base::sink(type = "output", split = FALSE)
  [22:34:49.057]         if (TRUE) {
  [22:34:49.057]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:34:49.057]         }
  [22:34:49.057]         else {
  [22:34:49.057]             ...future.result["stdout"] <- base::list(NULL)
  [22:34:49.057]         }
  [22:34:49.057]         base::close(...future.stdout)
  [22:34:49.057]         ...future.stdout <- NULL
  [22:34:49.057]     }
  [22:34:49.057]     ...future.result$conditions <- ...future.conditions
  [22:34:49.057]     ...future.result$finished <- base::Sys.time()
  [22:34:49.057]     ...future.result
  [22:34:49.057] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/globals,manual.R’ failed.
Complete output:
  > source("incl/start.R")
  Loading required package: future
  [22:34:49.997] plan(): Setting new future strategy stack:
  [22:34:49.997] List of future strategies:
  [22:34:49.997] 1. mirai_multisession:
  [22:34:49.997]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:34:49.997]    - tweaked: FALSE
  [22:34:49.997]    - call: future::plan(future.mirai::mirai_multisession)
  [22:34:50.039] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:34:50.039] < mirai [$data] >
  [22:34:50.116] getGlobalsAndPackages() ...
  [22:34:50.116] Not searching for globals
  [22:34:50.117] - globals: [0] <none>
  [22:34:50.117] getGlobalsAndPackages() ... DONE
  [22:34:50.117] getGlobalsAndPackages() ...
  [22:34:50.118] 
  [22:34:50.118] - globals: [0] <none>
  [22:34:50.118] getGlobalsAndPackages() ... DONE
  [22:34:51.237] Packages needed by the future expression (n = 0): <none>
  [22:34:51.238] Packages needed by future strategies (n = 0): <none>
  [22:34:51.239] {
  [22:34:51.239]     {
  [22:34:51.239]         {
  [22:34:51.239]             ...future.startTime <- base::Sys.time()
  [22:34:51.239]             {
  [22:34:51.239]                 {
  [22:34:51.239]                   {
  [22:34:51.239]                     base::local({
  [22:34:51.239]                       has_future <- base::requireNamespace("future", 
  [22:34:51.239]                         quietly = TRUE)
  [22:34:51.239]                       if (has_future) {
  [22:34:51.239]                         ns <- base::getNamespace("future")
  [22:34:51.239]                         version <- ns[[".package"]][["version"]]
  [22:34:51.239]                         if (is.null(version)) 
  [22:34:51.239]                           version <- utils::packageVersion("future")
  [22:34:51.239]                       }
  [22:34:51.239]                       else {
  [22:34:51.239]                         version <- NULL
  [22:34:51.239]                       }
  [22:34:51.239]                       if (!has_future || version < "1.8.0") {
  [22:34:51.239]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:34:51.239]                           "", base::R.version$version.string), 
  [22:34:51.239]                           platform = base::sprintf("%s (%s-bit)", 
  [22:34:51.239]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:34:51.239]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:34:51.239]                             "release", "version")], collapse = " "), 
  [22:34:51.239]                           hostname = base::Sys.info()[["nodename"]])
  [22:34:51.239]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:34:51.239]                           info)
  [22:34:51.239]                         info <- base::paste(info, collapse = "; ")
  [22:34:51.239]                         if (!has_future) {
  [22:34:51.239]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:34:51.239]                             info)
  [22:34:51.239]                         }
  [22:34:51.239]                         else {
  [22:34:51.239]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:34:51.239]                             info, version)
  [22:34:51.239]                         }
  [22:34:51.239]                         base::stop(msg)
  [22:34:51.239]                       }
  [22:34:51.239]                     })
  [22:34:51.239]                   }
  [22:34:51.239]                   ...future.strategy.old <- future::plan("list")
  [22:34:51.239]                   options(future.plan = NULL)
  [22:34:51.239]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:51.239]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:34:51.239]                 }
  [22:34:51.239]                 ...future.workdir <- getwd()
  [22:34:51.239]             }
  [22:34:51.239]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:34:51.239]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:34:51.239]         }
  [22:34:51.239]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:34:51.239]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:34:51.239]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:34:51.239]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:34:51.239]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:34:51.239]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:34:51.239]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:34:51.239]             base::names(...future.oldOptions))
  [22:34:51.239]     }
  [22:34:51.239]     if (FALSE) {
  [22:34:51.239]     }
  [22:34:51.239]     else {
  [22:34:51.239]         if (TRUE) {
  [22:34:51.239]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:34:51.239]                 open = "w")
  [22:34:51.239]         }
  [22:34:51.239]         else {
  [22:34:51.239]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:34:51.239]                 windows = "NUL", "/dev/null"), open = "w")
  [22:34:51.239]         }
  [22:34:51.239]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:34:51.239]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:34:51.239]             base::sink(type = "output", split = FALSE)
  [22:34:51.239]             base::close(...future.stdout)
  [22:34:51.239]         }, add = TRUE)
  [22:34:51.239]     }
  [22:34:51.239]     ...future.frame <- base::sys.nframe()
  [22:34:51.239]     ...future.conditions <- base::list()
  [22:34:51.239]     ...future.rng <- base::globalenv()$.Random.seed
  [22:34:51.239]     if (FALSE) {
  [22:34:51.239]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:34:51.239]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:34:51.239]     }
  [22:34:51.239]     ...future.result <- base::tryCatch({
  [22:34:51.239]         base::withCallingHandlers({
  [22:34:51.239]             ...future.value <- base::withVisible(base::local(NA))
  [22:34:51.239]             future::FutureResult(value = ...future.value$value, 
  [22:34:51.239]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:51.239]                   ...future.rng), globalenv = if (FALSE) 
  [22:34:51.239]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:34:51.239]                     ...future.globalenv.names))
  [22:34:51.239]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:34:51.239]         }, condition = base::local({
  [22:34:51.239]             c <- base::c
  [22:34:51.239]             inherits <- base::inherits
  [22:34:51.239]             invokeRestart <- base::invokeRestart
  [22:34:51.239]             length <- base::length
  [22:34:51.239]             list <- base::list
  [22:34:51.239]             seq.int <- base::seq.int
  [22:34:51.239]             signalCondition <- base::signalCondition
  [22:34:51.239]             sys.calls <- base::sys.calls
  [22:34:51.239]             `[[` <- base::`[[`
  [22:34:51.239]             `+` <- base::`+`
  [22:34:51.239]             `<<-` <- base::`<<-`
  [22:34:51.239]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:34:51.239]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:34:51.239]                   3L)]
  [22:34:51.239]             }
  [22:34:51.239]             function(cond) {
  [22:34:51.239]                 is_error <- inherits(cond, "error")
  [22:34:51.239]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:34:51.239]                   NULL)
  [22:34:51.239]                 if (is_error) {
  [22:34:51.239]                   sessionInformation <- function() {
  [22:34:51.239]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:34:51.239]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:34:51.239]                       search = base::search(), system = base::Sys.info())
  [22:34:51.239]                   }
  [22:34:51.239]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:51.239]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:34:51.239]                     cond$call), session = sessionInformation(), 
  [22:34:51.239]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:34:51.239]                   signalCondition(cond)
  [22:34:51.239]                 }
  [22:34:51.239]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:34:51.239]                   signal <- FALSE && inherits(cond, character(0))
  [22:34:51.239]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:51.239]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:34:51.239]                   if (FALSE && !signal) {
  [22:34:51.239]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:51.239]                     {
  [22:34:51.239]                       inherits <- base::inherits
  [22:34:51.239]                       invokeRestart <- base::invokeRestart
  [22:34:51.239]                       is.null <- base::is.null
  [22:34:51.239]                       muffled <- FALSE
  [22:34:51.239]                       if (inherits(cond, "message")) {
  [22:34:51.239]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:51.239]                         if (muffled) 
  [22:34:51.239]                           invokeRestart("muffleMessage")
  [22:34:51.239]                       }
  [22:34:51.239]                       else if (inherits(cond, "warning")) {
  [22:34:51.239]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:51.239]                         if (muffled) 
  [22:34:51.239]                           invokeRestart("muffleWarning")
  [22:34:51.239]                       }
  [22:34:51.239]                       else if (inherits(cond, "condition")) {
  [22:34:51.239]                         if (!is.null(pattern)) {
  [22:34:51.239]                           computeRestarts <- base::computeRestarts
  [22:34:51.239]                           grepl <- base::grepl
  [22:34:51.239]                           restarts <- computeRestarts(cond)
  [22:34:51.239]                           for (restart in restarts) {
  [22:34:51.239]                             name <- restart$name
  [22:34:51.239]                             if (is.null(name)) 
  [22:34:51.239]                               next
  [22:34:51.239]                             if (!grepl(pattern, name)) 
  [22:34:51.239]                               next
  [22:34:51.239]                             invokeRestart(restart)
  [22:34:51.239]                             muffled <- TRUE
  [22:34:51.239]                             break
  [22:34:51.239]                           }
  [22:34:51.239]                         }
  [22:34:51.239]                       }
  [22:34:51.239]                       invisible(muffled)
  [22:34:51.239]                     }
  [22:34:51.239]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:51.239]                   }
  [22:34:51.239]                 }
  [22:34:51.239]                 else {
  [22:34:51.239]                   if (TRUE) {
  [22:34:51.239]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:51.239]                     {
  [22:34:51.239]                       inherits <- base::inherits
  [22:34:51.239]                       invokeRestart <- base::invokeRestart
  [22:34:51.239]                       is.null <- base::is.null
  [22:34:51.239]                       muffled <- FALSE
  [22:34:51.239]                       if (inherits(cond, "message")) {
  [22:34:51.239]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:51.239]                         if (muffled) 
  [22:34:51.239]                           invokeRestart("muffleMessage")
  [22:34:51.239]                       }
  [22:34:51.239]                       else if (inherits(cond, "warning")) {
  [22:34:51.239]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:51.239]                         if (muffled) 
  [22:34:51.239]                           invokeRestart("muffleWarning")
  [22:34:51.239]                       }
  [22:34:51.239]                       else if (inherits(cond, "condition")) {
  [22:34:51.239]                         if (!is.null(pattern)) {
  [22:34:51.239]                           computeRestarts <- base::computeRestarts
  [22:34:51.239]                           grepl <- base::grepl
  [22:34:51.239]                           restarts <- computeRestarts(cond)
  [22:34:51.239]                           for (restart in restarts) {
  [22:34:51.239]                             name <- restart$name
  [22:34:51.239]                             if (is.null(name)) 
  [22:34:51.239]                               next
  [22:34:51.239]                             if (!grepl(pattern, name)) 
  [22:34:51.239]                               next
  [22:34:51.239]                             invokeRestart(restart)
  [22:34:51.239]                             muffled <- TRUE
  [22:34:51.239]                             break
  [22:34:51.239]                           }
  [22:34:51.239]                         }
  [22:34:51.239]                       }
  [22:34:51.239]                       invisible(muffled)
  [22:34:51.239]                     }
  [22:34:51.239]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:51.239]                   }
  [22:34:51.239]                 }
  [22:34:51.239]             }
  [22:34:51.239]         }))
  [22:34:51.239]     }, error = function(ex) {
  [22:34:51.239]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:34:51.239]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:51.239]                 ...future.rng), started = ...future.startTime, 
  [22:34:51.239]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:34:51.239]             version = "1.8"), class = "FutureResult")
  [22:34:51.239]     }, finally = {
  [22:34:51.239]         if (!identical(...future.workdir, getwd())) 
  [22:34:51.239]             setwd(...future.workdir)
  [22:34:51.239]         {
  [22:34:51.239]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:34:51.239]                 ...future.oldOptions$nwarnings <- NULL
  [22:34:51.239]             }
  [22:34:51.239]             base::options(...future.oldOptions)
  [22:34:51.239]             if (.Platform$OS.type == "windows") {
  [22:34:51.239]                 old_names <- names(...future.oldEnvVars)
  [22:34:51.239]                 envs <- base::Sys.getenv()
  [22:34:51.239]                 names <- names(envs)
  [22:34:51.239]                 common <- intersect(names, old_names)
  [22:34:51.239]                 added <- setdiff(names, old_names)
  [22:34:51.239]                 removed <- setdiff(old_names, names)
  [22:34:51.239]                 changed <- common[...future.oldEnvVars[common] != 
  [22:34:51.239]                   envs[common]]
  [22:34:51.239]                 NAMES <- toupper(changed)
  [22:34:51.239]                 args <- list()
  [22:34:51.239]                 for (kk in seq_along(NAMES)) {
  [22:34:51.239]                   name <- changed[[kk]]
  [22:34:51.239]                   NAME <- NAMES[[kk]]
  [22:34:51.239]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:51.239]                     next
  [22:34:51.239]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:51.239]                 }
  [22:34:51.239]                 NAMES <- toupper(added)
  [22:34:51.239]                 for (kk in seq_along(NAMES)) {
  [22:34:51.239]                   name <- added[[kk]]
  [22:34:51.239]                   NAME <- NAMES[[kk]]
  [22:34:51.239]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:51.239]                     next
  [22:34:51.239]                   args[[name]] <- ""
  [22:34:51.239]                 }
  [22:34:51.239]                 NAMES <- toupper(removed)
  [22:34:51.239]                 for (kk in seq_along(NAMES)) {
  [22:34:51.239]                   name <- removed[[kk]]
  [22:34:51.239]                   NAME <- NAMES[[kk]]
  [22:34:51.239]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:51.239]                     next
  [22:34:51.239]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:51.239]                 }
  [22:34:51.239]                 if (length(args) > 0) 
  [22:34:51.239]                   base::do.call(base::Sys.setenv, args = args)
  [22:34:51.239]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:34:51.239]             }
  [22:34:51.239]             else {
  [22:34:51.239]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:34:51.239]             }
  [22:34:51.239]             {
  [22:34:51.239]                 if (base::length(...future.futureOptionsAdded) > 
  [22:34:51.239]                   0L) {
  [22:34:51.239]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:34:51.239]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:34:51.239]                   base::options(opts)
  [22:34:51.239]                 }
  [22:34:51.239]                 {
  [22:34:51.239]                   NULL
  [22:34:51.239]                   options(future.plan = NULL)
  [22:34:51.239]                   if (is.na(NA_character_)) 
  [22:34:51.239]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:51.239]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:34:51.239]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:34:51.239]                     .init = FALSE)
  [22:34:51.239]                 }
  [22:34:51.239]             }
  [22:34:51.239]         }
  [22:34:51.239]     })
  [22:34:51.239]     if (TRUE) {
  [22:34:51.239]         base::sink(type = "output", split = FALSE)
  [22:34:51.239]         if (TRUE) {
  [22:34:51.239]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:34:51.239]         }
  [22:34:51.239]         else {
  [22:34:51.239]             ...future.result["stdout"] <- base::list(NULL)
  [22:34:51.239]         }
  [22:34:51.239]         base::close(...future.stdout)
  [22:34:51.239]         ...future.stdout <- NULL
  [22:34:51.239]     }
  [22:34:51.239]     ...future.result$conditions <- ...future.conditions
  [22:34:51.239]     ...future.result$finished <- base::Sys.time()
  [22:34:51.239]     ...future.result
  [22:34:51.239] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/globals,nested.R’ failed.
Complete output:
  > ## This requires mirai (>= 0.13.2)
  > if (packageVersion("mirai") >= "0.13.2") {
  + library(future.mirai)
  + 
  + mirai::daemons(1, dispatcher = FALSE)
  + plan(mirai_cluster)
  + 
  + g <- function() 42
  + h <- function() g()
  + 
  + f <- future(h())
  + v <- value(f)
  + print(v)
  + stopifnot(v == h())
  + 
  + plan(sequential)
  + mirai::daemons(0)  ## Reset any daemons running
  + gc()
  + 
  + }
  Loading required package: future
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: plan ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/globals,subassignment.R’ failed.
Complete output:
  > source("incl/start.R")
  Loading required package: future
  [22:34:53.366] plan(): Setting new future strategy stack:
  [22:34:53.366] List of future strategies:
  [22:34:53.366] 1. mirai_multisession:
  [22:34:53.366]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:34:53.366]    - tweaked: FALSE
  [22:34:53.366]    - call: future::plan(future.mirai::mirai_multisession)
  [22:34:53.393] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:34:53.393] < mirai [$data] >
  [22:34:53.416] getGlobalsAndPackages() ...
  [22:34:53.417] Not searching for globals
  [22:34:53.417] - globals: [0] <none>
  [22:34:53.417] getGlobalsAndPackages() ... DONE
  [22:34:53.418] getGlobalsAndPackages() ...
  [22:34:53.419] 
  [22:34:53.419] - globals: [0] <none>
  [22:34:53.419] getGlobalsAndPackages() ... DONE
  [22:34:54.554] Packages needed by the future expression (n = 0): <none>
  [22:34:54.554] Packages needed by future strategies (n = 0): <none>
  [22:34:54.556] {
  [22:34:54.556]     {
  [22:34:54.556]         {
  [22:34:54.556]             ...future.startTime <- base::Sys.time()
  [22:34:54.556]             {
  [22:34:54.556]                 {
  [22:34:54.556]                   {
  [22:34:54.556]                     base::local({
  [22:34:54.556]                       has_future <- base::requireNamespace("future", 
  [22:34:54.556]                         quietly = TRUE)
  [22:34:54.556]                       if (has_future) {
  [22:34:54.556]                         ns <- base::getNamespace("future")
  [22:34:54.556]                         version <- ns[[".package"]][["version"]]
  [22:34:54.556]                         if (is.null(version)) 
  [22:34:54.556]                           version <- utils::packageVersion("future")
  [22:34:54.556]                       }
  [22:34:54.556]                       else {
  [22:34:54.556]                         version <- NULL
  [22:34:54.556]                       }
  [22:34:54.556]                       if (!has_future || version < "1.8.0") {
  [22:34:54.556]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:34:54.556]                           "", base::R.version$version.string), 
  [22:34:54.556]                           platform = base::sprintf("%s (%s-bit)", 
  [22:34:54.556]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:34:54.556]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:34:54.556]                             "release", "version")], collapse = " "), 
  [22:34:54.556]                           hostname = base::Sys.info()[["nodename"]])
  [22:34:54.556]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:34:54.556]                           info)
  [22:34:54.556]                         info <- base::paste(info, collapse = "; ")
  [22:34:54.556]                         if (!has_future) {
  [22:34:54.556]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:34:54.556]                             info)
  [22:34:54.556]                         }
  [22:34:54.556]                         else {
  [22:34:54.556]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:34:54.556]                             info, version)
  [22:34:54.556]                         }
  [22:34:54.556]                         base::stop(msg)
  [22:34:54.556]                       }
  [22:34:54.556]                     })
  [22:34:54.556]                   }
  [22:34:54.556]                   ...future.strategy.old <- future::plan("list")
  [22:34:54.556]                   options(future.plan = NULL)
  [22:34:54.556]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:54.556]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:34:54.556]                 }
  [22:34:54.556]                 ...future.workdir <- getwd()
  [22:34:54.556]             }
  [22:34:54.556]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:34:54.556]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:34:54.556]         }
  [22:34:54.556]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:34:54.556]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:34:54.556]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:34:54.556]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:34:54.556]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:34:54.556]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:34:54.556]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:34:54.556]             base::names(...future.oldOptions))
  [22:34:54.556]     }
  [22:34:54.556]     if (FALSE) {
  [22:34:54.556]     }
  [22:34:54.556]     else {
  [22:34:54.556]         if (TRUE) {
  [22:34:54.556]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:34:54.556]                 open = "w")
  [22:34:54.556]         }
  [22:34:54.556]         else {
  [22:34:54.556]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:34:54.556]                 windows = "NUL", "/dev/null"), open = "w")
  [22:34:54.556]         }
  [22:34:54.556]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:34:54.556]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:34:54.556]             base::sink(type = "output", split = FALSE)
  [22:34:54.556]             base::close(...future.stdout)
  [22:34:54.556]         }, add = TRUE)
  [22:34:54.556]     }
  [22:34:54.556]     ...future.frame <- base::sys.nframe()
  [22:34:54.556]     ...future.conditions <- base::list()
  [22:34:54.556]     ...future.rng <- base::globalenv()$.Random.seed
  [22:34:54.556]     if (FALSE) {
  [22:34:54.556]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:34:54.556]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:34:54.556]     }
  [22:34:54.556]     ...future.result <- base::tryCatch({
  [22:34:54.556]         base::withCallingHandlers({
  [22:34:54.556]             ...future.value <- base::withVisible(base::local(NA))
  [22:34:54.556]             future::FutureResult(value = ...future.value$value, 
  [22:34:54.556]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:54.556]                   ...future.rng), globalenv = if (FALSE) 
  [22:34:54.556]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:34:54.556]                     ...future.globalenv.names))
  [22:34:54.556]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:34:54.556]         }, condition = base::local({
  [22:34:54.556]             c <- base::c
  [22:34:54.556]             inherits <- base::inherits
  [22:34:54.556]             invokeRestart <- base::invokeRestart
  [22:34:54.556]             length <- base::length
  [22:34:54.556]             list <- base::list
  [22:34:54.556]             seq.int <- base::seq.int
  [22:34:54.556]             signalCondition <- base::signalCondition
  [22:34:54.556]             sys.calls <- base::sys.calls
  [22:34:54.556]             `[[` <- base::`[[`
  [22:34:54.556]             `+` <- base::`+`
  [22:34:54.556]             `<<-` <- base::`<<-`
  [22:34:54.556]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:34:54.556]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:34:54.556]                   3L)]
  [22:34:54.556]             }
  [22:34:54.556]             function(cond) {
  [22:34:54.556]                 is_error <- inherits(cond, "error")
  [22:34:54.556]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:34:54.556]                   NULL)
  [22:34:54.556]                 if (is_error) {
  [22:34:54.556]                   sessionInformation <- function() {
  [22:34:54.556]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:34:54.556]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:34:54.556]                       search = base::search(), system = base::Sys.info())
  [22:34:54.556]                   }
  [22:34:54.556]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:54.556]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:34:54.556]                     cond$call), session = sessionInformation(), 
  [22:34:54.556]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:34:54.556]                   signalCondition(cond)
  [22:34:54.556]                 }
  [22:34:54.556]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:34:54.556]                   signal <- FALSE && inherits(cond, character(0))
  [22:34:54.556]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:54.556]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:34:54.556]                   if (FALSE && !signal) {
  [22:34:54.556]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:54.556]                     {
  [22:34:54.556]                       inherits <- base::inherits
  [22:34:54.556]                       invokeRestart <- base::invokeRestart
  [22:34:54.556]                       is.null <- base::is.null
  [22:34:54.556]                       muffled <- FALSE
  [22:34:54.556]                       if (inherits(cond, "message")) {
  [22:34:54.556]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:54.556]                         if (muffled) 
  [22:34:54.556]                           invokeRestart("muffleMessage")
  [22:34:54.556]                       }
  [22:34:54.556]                       else if (inherits(cond, "warning")) {
  [22:34:54.556]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:54.556]                         if (muffled) 
  [22:34:54.556]                           invokeRestart("muffleWarning")
  [22:34:54.556]                       }
  [22:34:54.556]                       else if (inherits(cond, "condition")) {
  [22:34:54.556]                         if (!is.null(pattern)) {
  [22:34:54.556]                           computeRestarts <- base::computeRestarts
  [22:34:54.556]                           grepl <- base::grepl
  [22:34:54.556]                           restarts <- computeRestarts(cond)
  [22:34:54.556]                           for (restart in restarts) {
  [22:34:54.556]                             name <- restart$name
  [22:34:54.556]                             if (is.null(name)) 
  [22:34:54.556]                               next
  [22:34:54.556]                             if (!grepl(pattern, name)) 
  [22:34:54.556]                               next
  [22:34:54.556]                             invokeRestart(restart)
  [22:34:54.556]                             muffled <- TRUE
  [22:34:54.556]                             break
  [22:34:54.556]                           }
  [22:34:54.556]                         }
  [22:34:54.556]                       }
  [22:34:54.556]                       invisible(muffled)
  [22:34:54.556]                     }
  [22:34:54.556]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:54.556]                   }
  [22:34:54.556]                 }
  [22:34:54.556]                 else {
  [22:34:54.556]                   if (TRUE) {
  [22:34:54.556]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:54.556]                     {
  [22:34:54.556]                       inherits <- base::inherits
  [22:34:54.556]                       invokeRestart <- base::invokeRestart
  [22:34:54.556]                       is.null <- base::is.null
  [22:34:54.556]                       muffled <- FALSE
  [22:34:54.556]                       if (inherits(cond, "message")) {
  [22:34:54.556]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:54.556]                         if (muffled) 
  [22:34:54.556]                           invokeRestart("muffleMessage")
  [22:34:54.556]                       }
  [22:34:54.556]                       else if (inherits(cond, "warning")) {
  [22:34:54.556]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:54.556]                         if (muffled) 
  [22:34:54.556]                           invokeRestart("muffleWarning")
  [22:34:54.556]                       }
  [22:34:54.556]                       else if (inherits(cond, "condition")) {
  [22:34:54.556]                         if (!is.null(pattern)) {
  [22:34:54.556]                           computeRestarts <- base::computeRestarts
  [22:34:54.556]                           grepl <- base::grepl
  [22:34:54.556]                           restarts <- computeRestarts(cond)
  [22:34:54.556]                           for (restart in restarts) {
  [22:34:54.556]                             name <- restart$name
  [22:34:54.556]                             if (is.null(name)) 
  [22:34:54.556]                               next
  [22:34:54.556]                             if (!grepl(pattern, name)) 
  [22:34:54.556]                               next
  [22:34:54.556]                             invokeRestart(restart)
  [22:34:54.556]                             muffled <- TRUE
  [22:34:54.556]                             break
  [22:34:54.556]                           }
  [22:34:54.556]                         }
  [22:34:54.556]                       }
  [22:34:54.556]                       invisible(muffled)
  [22:34:54.556]                     }
  [22:34:54.556]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:54.556]                   }
  [22:34:54.556]                 }
  [22:34:54.556]             }
  [22:34:54.556]         }))
  [22:34:54.556]     }, error = function(ex) {
  [22:34:54.556]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:34:54.556]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:54.556]                 ...future.rng), started = ...future.startTime, 
  [22:34:54.556]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:34:54.556]             version = "1.8"), class = "FutureResult")
  [22:34:54.556]     }, finally = {
  [22:34:54.556]         if (!identical(...future.workdir, getwd())) 
  [22:34:54.556]             setwd(...future.workdir)
  [22:34:54.556]         {
  [22:34:54.556]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:34:54.556]                 ...future.oldOptions$nwarnings <- NULL
  [22:34:54.556]             }
  [22:34:54.556]             base::options(...future.oldOptions)
  [22:34:54.556]             if (.Platform$OS.type == "windows") {
  [22:34:54.556]                 old_names <- names(...future.oldEnvVars)
  [22:34:54.556]                 envs <- base::Sys.getenv()
  [22:34:54.556]                 names <- names(envs)
  [22:34:54.556]                 common <- intersect(names, old_names)
  [22:34:54.556]                 added <- setdiff(names, old_names)
  [22:34:54.556]                 removed <- setdiff(old_names, names)
  [22:34:54.556]                 changed <- common[...future.oldEnvVars[common] != 
  [22:34:54.556]                   envs[common]]
  [22:34:54.556]                 NAMES <- toupper(changed)
  [22:34:54.556]                 args <- list()
  [22:34:54.556]                 for (kk in seq_along(NAMES)) {
  [22:34:54.556]                   name <- changed[[kk]]
  [22:34:54.556]                   NAME <- NAMES[[kk]]
  [22:34:54.556]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:54.556]                     next
  [22:34:54.556]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:54.556]                 }
  [22:34:54.556]                 NAMES <- toupper(added)
  [22:34:54.556]                 for (kk in seq_along(NAMES)) {
  [22:34:54.556]                   name <- added[[kk]]
  [22:34:54.556]                   NAME <- NAMES[[kk]]
  [22:34:54.556]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:54.556]                     next
  [22:34:54.556]                   args[[name]] <- ""
  [22:34:54.556]                 }
  [22:34:54.556]                 NAMES <- toupper(removed)
  [22:34:54.556]                 for (kk in seq_along(NAMES)) {
  [22:34:54.556]                   name <- removed[[kk]]
  [22:34:54.556]                   NAME <- NAMES[[kk]]
  [22:34:54.556]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:54.556]                     next
  [22:34:54.556]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:54.556]                 }
  [22:34:54.556]                 if (length(args) > 0) 
  [22:34:54.556]                   base::do.call(base::Sys.setenv, args = args)
  [22:34:54.556]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:34:54.556]             }
  [22:34:54.556]             else {
  [22:34:54.556]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:34:54.556]             }
  [22:34:54.556]             {
  [22:34:54.556]                 if (base::length(...future.futureOptionsAdded) > 
  [22:34:54.556]                   0L) {
  [22:34:54.556]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:34:54.556]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:34:54.556]                   base::options(opts)
  [22:34:54.556]                 }
  [22:34:54.556]                 {
  [22:34:54.556]                   NULL
  [22:34:54.556]                   options(future.plan = NULL)
  [22:34:54.556]                   if (is.na(NA_character_)) 
  [22:34:54.556]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:54.556]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:34:54.556]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:34:54.556]                     .init = FALSE)
  [22:34:54.556]                 }
  [22:34:54.556]             }
  [22:34:54.556]         }
  [22:34:54.556]     })
  [22:34:54.556]     if (TRUE) {
  [22:34:54.556]         base::sink(type = "output", split = FALSE)
  [22:34:54.556]         if (TRUE) {
  [22:34:54.556]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:34:54.556]         }
  [22:34:54.556]         else {
  [22:34:54.556]             ...future.result["stdout"] <- base::list(NULL)
  [22:34:54.556]         }
  [22:34:54.556]         base::close(...future.stdout)
  [22:34:54.556]         ...future.stdout <- NULL
  [22:34:54.556]     }
  [22:34:54.556]     ...future.result$conditions <- ...future.conditions
  [22:34:54.556]     ...future.result$finished <- base::Sys.time()
  [22:34:54.556]     ...future.result
  [22:34:54.556] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/globals,tricky.R’ failed.
Complete output:
  > source("incl/start.R")
  Loading required package: future
  [22:34:55.286] plan(): Setting new future strategy stack:
  [22:34:55.286] List of future strategies:
  [22:34:55.286] 1. mirai_multisession:
  [22:34:55.286]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:34:55.286]    - tweaked: FALSE
  [22:34:55.286]    - call: future::plan(future.mirai::mirai_multisession)
  [22:34:55.312] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:34:55.313] < mirai [$data] >
  [22:34:55.338] getGlobalsAndPackages() ...
  [22:34:55.339] Not searching for globals
  [22:34:55.340] - globals: [0] <none>
  [22:34:55.340] getGlobalsAndPackages() ... DONE
  [22:34:55.341] getGlobalsAndPackages() ...
  [22:34:55.342] 
  [22:34:55.342] - globals: [0] <none>
  [22:34:55.342] getGlobalsAndPackages() ... DONE
  [22:34:56.350] Packages needed by the future expression (n = 0): <none>
  [22:34:56.350] Packages needed by future strategies (n = 0): <none>
  [22:34:56.352] {
  [22:34:56.352]     {
  [22:34:56.352]         {
  [22:34:56.352]             ...future.startTime <- base::Sys.time()
  [22:34:56.352]             {
  [22:34:56.352]                 {
  [22:34:56.352]                   {
  [22:34:56.352]                     base::local({
  [22:34:56.352]                       has_future <- base::requireNamespace("future", 
  [22:34:56.352]                         quietly = TRUE)
  [22:34:56.352]                       if (has_future) {
  [22:34:56.352]                         ns <- base::getNamespace("future")
  [22:34:56.352]                         version <- ns[[".package"]][["version"]]
  [22:34:56.352]                         if (is.null(version)) 
  [22:34:56.352]                           version <- utils::packageVersion("future")
  [22:34:56.352]                       }
  [22:34:56.352]                       else {
  [22:34:56.352]                         version <- NULL
  [22:34:56.352]                       }
  [22:34:56.352]                       if (!has_future || version < "1.8.0") {
  [22:34:56.352]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:34:56.352]                           "", base::R.version$version.string), 
  [22:34:56.352]                           platform = base::sprintf("%s (%s-bit)", 
  [22:34:56.352]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:34:56.352]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:34:56.352]                             "release", "version")], collapse = " "), 
  [22:34:56.352]                           hostname = base::Sys.info()[["nodename"]])
  [22:34:56.352]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:34:56.352]                           info)
  [22:34:56.352]                         info <- base::paste(info, collapse = "; ")
  [22:34:56.352]                         if (!has_future) {
  [22:34:56.352]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:34:56.352]                             info)
  [22:34:56.352]                         }
  [22:34:56.352]                         else {
  [22:34:56.352]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:34:56.352]                             info, version)
  [22:34:56.352]                         }
  [22:34:56.352]                         base::stop(msg)
  [22:34:56.352]                       }
  [22:34:56.352]                     })
  [22:34:56.352]                   }
  [22:34:56.352]                   ...future.strategy.old <- future::plan("list")
  [22:34:56.352]                   options(future.plan = NULL)
  [22:34:56.352]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:56.352]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:34:56.352]                 }
  [22:34:56.352]                 ...future.workdir <- getwd()
  [22:34:56.352]             }
  [22:34:56.352]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:34:56.352]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:34:56.352]         }
  [22:34:56.352]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:34:56.352]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:34:56.352]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:34:56.352]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:34:56.352]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:34:56.352]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:34:56.352]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:34:56.352]             base::names(...future.oldOptions))
  [22:34:56.352]     }
  [22:34:56.352]     if (FALSE) {
  [22:34:56.352]     }
  [22:34:56.352]     else {
  [22:34:56.352]         if (TRUE) {
  [22:34:56.352]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:34:56.352]                 open = "w")
  [22:34:56.352]         }
  [22:34:56.352]         else {
  [22:34:56.352]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:34:56.352]                 windows = "NUL", "/dev/null"), open = "w")
  [22:34:56.352]         }
  [22:34:56.352]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:34:56.352]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:34:56.352]             base::sink(type = "output", split = FALSE)
  [22:34:56.352]             base::close(...future.stdout)
  [22:34:56.352]         }, add = TRUE)
  [22:34:56.352]     }
  [22:34:56.352]     ...future.frame <- base::sys.nframe()
  [22:34:56.352]     ...future.conditions <- base::list()
  [22:34:56.352]     ...future.rng <- base::globalenv()$.Random.seed
  [22:34:56.352]     if (FALSE) {
  [22:34:56.352]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:34:56.352]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:34:56.352]     }
  [22:34:56.352]     ...future.result <- base::tryCatch({
  [22:34:56.352]         base::withCallingHandlers({
  [22:34:56.352]             ...future.value <- base::withVisible(base::local(NA))
  [22:34:56.352]             future::FutureResult(value = ...future.value$value, 
  [22:34:56.352]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:56.352]                   ...future.rng), globalenv = if (FALSE) 
  [22:34:56.352]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:34:56.352]                     ...future.globalenv.names))
  [22:34:56.352]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:34:56.352]         }, condition = base::local({
  [22:34:56.352]             c <- base::c
  [22:34:56.352]             inherits <- base::inherits
  [22:34:56.352]             invokeRestart <- base::invokeRestart
  [22:34:56.352]             length <- base::length
  [22:34:56.352]             list <- base::list
  [22:34:56.352]             seq.int <- base::seq.int
  [22:34:56.352]             signalCondition <- base::signalCondition
  [22:34:56.352]             sys.calls <- base::sys.calls
  [22:34:56.352]             `[[` <- base::`[[`
  [22:34:56.352]             `+` <- base::`+`
  [22:34:56.352]             `<<-` <- base::`<<-`
  [22:34:56.352]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:34:56.352]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:34:56.352]                   3L)]
  [22:34:56.352]             }
  [22:34:56.352]             function(cond) {
  [22:34:56.352]                 is_error <- inherits(cond, "error")
  [22:34:56.352]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:34:56.352]                   NULL)
  [22:34:56.352]                 if (is_error) {
  [22:34:56.352]                   sessionInformation <- function() {
  [22:34:56.352]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:34:56.352]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:34:56.352]                       search = base::search(), system = base::Sys.info())
  [22:34:56.352]                   }
  [22:34:56.352]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:56.352]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:34:56.352]                     cond$call), session = sessionInformation(), 
  [22:34:56.352]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:34:56.352]                   signalCondition(cond)
  [22:34:56.352]                 }
  [22:34:56.352]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:34:56.352]                   signal <- FALSE && inherits(cond, character(0))
  [22:34:56.352]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:56.352]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:34:56.352]                   if (FALSE && !signal) {
  [22:34:56.352]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:56.352]                     {
  [22:34:56.352]                       inherits <- base::inherits
  [22:34:56.352]                       invokeRestart <- base::invokeRestart
  [22:34:56.352]                       is.null <- base::is.null
  [22:34:56.352]                       muffled <- FALSE
  [22:34:56.352]                       if (inherits(cond, "message")) {
  [22:34:56.352]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:56.352]                         if (muffled) 
  [22:34:56.352]                           invokeRestart("muffleMessage")
  [22:34:56.352]                       }
  [22:34:56.352]                       else if (inherits(cond, "warning")) {
  [22:34:56.352]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:56.352]                         if (muffled) 
  [22:34:56.352]                           invokeRestart("muffleWarning")
  [22:34:56.352]                       }
  [22:34:56.352]                       else if (inherits(cond, "condition")) {
  [22:34:56.352]                         if (!is.null(pattern)) {
  [22:34:56.352]                           computeRestarts <- base::computeRestarts
  [22:34:56.352]                           grepl <- base::grepl
  [22:34:56.352]                           restarts <- computeRestarts(cond)
  [22:34:56.352]                           for (restart in restarts) {
  [22:34:56.352]                             name <- restart$name
  [22:34:56.352]                             if (is.null(name)) 
  [22:34:56.352]                               next
  [22:34:56.352]                             if (!grepl(pattern, name)) 
  [22:34:56.352]                               next
  [22:34:56.352]                             invokeRestart(restart)
  [22:34:56.352]                             muffled <- TRUE
  [22:34:56.352]                             break
  [22:34:56.352]                           }
  [22:34:56.352]                         }
  [22:34:56.352]                       }
  [22:34:56.352]                       invisible(muffled)
  [22:34:56.352]                     }
  [22:34:56.352]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:56.352]                   }
  [22:34:56.352]                 }
  [22:34:56.352]                 else {
  [22:34:56.352]                   if (TRUE) {
  [22:34:56.352]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:56.352]                     {
  [22:34:56.352]                       inherits <- base::inherits
  [22:34:56.352]                       invokeRestart <- base::invokeRestart
  [22:34:56.352]                       is.null <- base::is.null
  [22:34:56.352]                       muffled <- FALSE
  [22:34:56.352]                       if (inherits(cond, "message")) {
  [22:34:56.352]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:56.352]                         if (muffled) 
  [22:34:56.352]                           invokeRestart("muffleMessage")
  [22:34:56.352]                       }
  [22:34:56.352]                       else if (inherits(cond, "warning")) {
  [22:34:56.352]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:56.352]                         if (muffled) 
  [22:34:56.352]                           invokeRestart("muffleWarning")
  [22:34:56.352]                       }
  [22:34:56.352]                       else if (inherits(cond, "condition")) {
  [22:34:56.352]                         if (!is.null(pattern)) {
  [22:34:56.352]                           computeRestarts <- base::computeRestarts
  [22:34:56.352]                           grepl <- base::grepl
  [22:34:56.352]                           restarts <- computeRestarts(cond)
  [22:34:56.352]                           for (restart in restarts) {
  [22:34:56.352]                             name <- restart$name
  [22:34:56.352]                             if (is.null(name)) 
  [22:34:56.352]                               next
  [22:34:56.352]                             if (!grepl(pattern, name)) 
  [22:34:56.352]                               next
  [22:34:56.352]                             invokeRestart(restart)
  [22:34:56.352]                             muffled <- TRUE
  [22:34:56.352]                             break
  [22:34:56.352]                           }
  [22:34:56.352]                         }
  [22:34:56.352]                       }
  [22:34:56.352]                       invisible(muffled)
  [22:34:56.352]                     }
  [22:34:56.352]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:56.352]                   }
  [22:34:56.352]                 }
  [22:34:56.352]             }
  [22:34:56.352]         }))
  [22:34:56.352]     }, error = function(ex) {
  [22:34:56.352]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:34:56.352]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:56.352]                 ...future.rng), started = ...future.startTime, 
  [22:34:56.352]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:34:56.352]             version = "1.8"), class = "FutureResult")
  [22:34:56.352]     }, finally = {
  [22:34:56.352]         if (!identical(...future.workdir, getwd())) 
  [22:34:56.352]             setwd(...future.workdir)
  [22:34:56.352]         {
  [22:34:56.352]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:34:56.352]                 ...future.oldOptions$nwarnings <- NULL
  [22:34:56.352]             }
  [22:34:56.352]             base::options(...future.oldOptions)
  [22:34:56.352]             if (.Platform$OS.type == "windows") {
  [22:34:56.352]                 old_names <- names(...future.oldEnvVars)
  [22:34:56.352]                 envs <- base::Sys.getenv()
  [22:34:56.352]                 names <- names(envs)
  [22:34:56.352]                 common <- intersect(names, old_names)
  [22:34:56.352]                 added <- setdiff(names, old_names)
  [22:34:56.352]                 removed <- setdiff(old_names, names)
  [22:34:56.352]                 changed <- common[...future.oldEnvVars[common] != 
  [22:34:56.352]                   envs[common]]
  [22:34:56.352]                 NAMES <- toupper(changed)
  [22:34:56.352]                 args <- list()
  [22:34:56.352]                 for (kk in seq_along(NAMES)) {
  [22:34:56.352]                   name <- changed[[kk]]
  [22:34:56.352]                   NAME <- NAMES[[kk]]
  [22:34:56.352]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:56.352]                     next
  [22:34:56.352]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:56.352]                 }
  [22:34:56.352]                 NAMES <- toupper(added)
  [22:34:56.352]                 for (kk in seq_along(NAMES)) {
  [22:34:56.352]                   name <- added[[kk]]
  [22:34:56.352]                   NAME <- NAMES[[kk]]
  [22:34:56.352]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:56.352]                     next
  [22:34:56.352]                   args[[name]] <- ""
  [22:34:56.352]                 }
  [22:34:56.352]                 NAMES <- toupper(removed)
  [22:34:56.352]                 for (kk in seq_along(NAMES)) {
  [22:34:56.352]                   name <- removed[[kk]]
  [22:34:56.352]                   NAME <- NAMES[[kk]]
  [22:34:56.352]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:56.352]                     next
  [22:34:56.352]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:56.352]                 }
  [22:34:56.352]                 if (length(args) > 0) 
  [22:34:56.352]                   base::do.call(base::Sys.setenv, args = args)
  [22:34:56.352]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:34:56.352]             }
  [22:34:56.352]             else {
  [22:34:56.352]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:34:56.352]             }
  [22:34:56.352]             {
  [22:34:56.352]                 if (base::length(...future.futureOptionsAdded) > 
  [22:34:56.352]                   0L) {
  [22:34:56.352]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:34:56.352]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:34:56.352]                   base::options(opts)
  [22:34:56.352]                 }
  [22:34:56.352]                 {
  [22:34:56.352]                   NULL
  [22:34:56.352]                   options(future.plan = NULL)
  [22:34:56.352]                   if (is.na(NA_character_)) 
  [22:34:56.352]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:56.352]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:34:56.352]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:34:56.352]                     .init = FALSE)
  [22:34:56.352]                 }
  [22:34:56.352]             }
  [22:34:56.352]         }
  [22:34:56.352]     })
  [22:34:56.352]     if (TRUE) {
  [22:34:56.352]         base::sink(type = "output", split = FALSE)
  [22:34:56.352]         if (TRUE) {
  [22:34:56.352]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:34:56.352]         }
  [22:34:56.352]         else {
  [22:34:56.352]             ...future.result["stdout"] <- base::list(NULL)
  [22:34:56.352]         }
  [22:34:56.352]         base::close(...future.stdout)
  [22:34:56.352]         ...future.stdout <- NULL
  [22:34:56.352]     }
  [22:34:56.352]     ...future.result$conditions <- ...future.conditions
  [22:34:56.352]     ...future.result$finished <- base::Sys.time()
  [22:34:56.352]     ...future.result
  [22:34:56.352] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/mirai_cluster,worker-termination.R’ failed.
Complete output:
  > source("incl/start.R")
  Loading required package: future
  [22:34:57.133] plan(): Setting new future strategy stack:
  [22:34:57.133] List of future strategies:
  [22:34:57.133] 1. mirai_multisession:
  [22:34:57.133]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:34:57.133]    - tweaked: FALSE
  [22:34:57.133]    - call: future::plan(future.mirai::mirai_multisession)
  [22:34:57.192] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:34:57.192] < mirai [$data] >
  [22:34:57.264] getGlobalsAndPackages() ...
  [22:34:57.264] Not searching for globals
  [22:34:57.265] - globals: [0] <none>
  [22:34:57.265] getGlobalsAndPackages() ... DONE
  [22:34:57.266] getGlobalsAndPackages() ...
  [22:34:57.266] 
  [22:34:57.266] - globals: [0] <none>
  [22:34:57.266] getGlobalsAndPackages() ... DONE
  [22:34:58.506] Packages needed by the future expression (n = 0): <none>
  [22:34:58.507] Packages needed by future strategies (n = 0): <none>
  [22:34:58.508] {
  [22:34:58.508]     {
  [22:34:58.508]         {
  [22:34:58.508]             ...future.startTime <- base::Sys.time()
  [22:34:58.508]             {
  [22:34:58.508]                 {
  [22:34:58.508]                   {
  [22:34:58.508]                     base::local({
  [22:34:58.508]                       has_future <- base::requireNamespace("future", 
  [22:34:58.508]                         quietly = TRUE)
  [22:34:58.508]                       if (has_future) {
  [22:34:58.508]                         ns <- base::getNamespace("future")
  [22:34:58.508]                         version <- ns[[".package"]][["version"]]
  [22:34:58.508]                         if (is.null(version)) 
  [22:34:58.508]                           version <- utils::packageVersion("future")
  [22:34:58.508]                       }
  [22:34:58.508]                       else {
  [22:34:58.508]                         version <- NULL
  [22:34:58.508]                       }
  [22:34:58.508]                       if (!has_future || version < "1.8.0") {
  [22:34:58.508]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:34:58.508]                           "", base::R.version$version.string), 
  [22:34:58.508]                           platform = base::sprintf("%s (%s-bit)", 
  [22:34:58.508]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:34:58.508]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:34:58.508]                             "release", "version")], collapse = " "), 
  [22:34:58.508]                           hostname = base::Sys.info()[["nodename"]])
  [22:34:58.508]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:34:58.508]                           info)
  [22:34:58.508]                         info <- base::paste(info, collapse = "; ")
  [22:34:58.508]                         if (!has_future) {
  [22:34:58.508]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:34:58.508]                             info)
  [22:34:58.508]                         }
  [22:34:58.508]                         else {
  [22:34:58.508]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:34:58.508]                             info, version)
  [22:34:58.508]                         }
  [22:34:58.508]                         base::stop(msg)
  [22:34:58.508]                       }
  [22:34:58.508]                     })
  [22:34:58.508]                   }
  [22:34:58.508]                   ...future.strategy.old <- future::plan("list")
  [22:34:58.508]                   options(future.plan = NULL)
  [22:34:58.508]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:58.508]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:34:58.508]                 }
  [22:34:58.508]                 ...future.workdir <- getwd()
  [22:34:58.508]             }
  [22:34:58.508]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:34:58.508]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:34:58.508]         }
  [22:34:58.508]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:34:58.508]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:34:58.508]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:34:58.508]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:34:58.508]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:34:58.508]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:34:58.508]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:34:58.508]             base::names(...future.oldOptions))
  [22:34:58.508]     }
  [22:34:58.508]     if (FALSE) {
  [22:34:58.508]     }
  [22:34:58.508]     else {
  [22:34:58.508]         if (TRUE) {
  [22:34:58.508]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:34:58.508]                 open = "w")
  [22:34:58.508]         }
  [22:34:58.508]         else {
  [22:34:58.508]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:34:58.508]                 windows = "NUL", "/dev/null"), open = "w")
  [22:34:58.508]         }
  [22:34:58.508]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:34:58.508]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:34:58.508]             base::sink(type = "output", split = FALSE)
  [22:34:58.508]             base::close(...future.stdout)
  [22:34:58.508]         }, add = TRUE)
  [22:34:58.508]     }
  [22:34:58.508]     ...future.frame <- base::sys.nframe()
  [22:34:58.508]     ...future.conditions <- base::list()
  [22:34:58.508]     ...future.rng <- base::globalenv()$.Random.seed
  [22:34:58.508]     if (FALSE) {
  [22:34:58.508]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:34:58.508]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:34:58.508]     }
  [22:34:58.508]     ...future.result <- base::tryCatch({
  [22:34:58.508]         base::withCallingHandlers({
  [22:34:58.508]             ...future.value <- base::withVisible(base::local(NA))
  [22:34:58.508]             future::FutureResult(value = ...future.value$value, 
  [22:34:58.508]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:58.508]                   ...future.rng), globalenv = if (FALSE) 
  [22:34:58.508]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:34:58.508]                     ...future.globalenv.names))
  [22:34:58.508]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:34:58.508]         }, condition = base::local({
  [22:34:58.508]             c <- base::c
  [22:34:58.508]             inherits <- base::inherits
  [22:34:58.508]             invokeRestart <- base::invokeRestart
  [22:34:58.508]             length <- base::length
  [22:34:58.508]             list <- base::list
  [22:34:58.508]             seq.int <- base::seq.int
  [22:34:58.508]             signalCondition <- base::signalCondition
  [22:34:58.508]             sys.calls <- base::sys.calls
  [22:34:58.508]             `[[` <- base::`[[`
  [22:34:58.508]             `+` <- base::`+`
  [22:34:58.508]             `<<-` <- base::`<<-`
  [22:34:58.508]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:34:58.508]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:34:58.508]                   3L)]
  [22:34:58.508]             }
  [22:34:58.508]             function(cond) {
  [22:34:58.508]                 is_error <- inherits(cond, "error")
  [22:34:58.508]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:34:58.508]                   NULL)
  [22:34:58.508]                 if (is_error) {
  [22:34:58.508]                   sessionInformation <- function() {
  [22:34:58.508]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:34:58.508]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:34:58.508]                       search = base::search(), system = base::Sys.info())
  [22:34:58.508]                   }
  [22:34:58.508]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:58.508]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:34:58.508]                     cond$call), session = sessionInformation(), 
  [22:34:58.508]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:34:58.508]                   signalCondition(cond)
  [22:34:58.508]                 }
  [22:34:58.508]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:34:58.508]                   signal <- FALSE && inherits(cond, character(0))
  [22:34:58.508]                   ...future.conditions[[length(...future.conditions) + 
  [22:34:58.508]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:34:58.508]                   if (FALSE && !signal) {
  [22:34:58.508]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:58.508]                     {
  [22:34:58.508]                       inherits <- base::inherits
  [22:34:58.508]                       invokeRestart <- base::invokeRestart
  [22:34:58.508]                       is.null <- base::is.null
  [22:34:58.508]                       muffled <- FALSE
  [22:34:58.508]                       if (inherits(cond, "message")) {
  [22:34:58.508]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:58.508]                         if (muffled) 
  [22:34:58.508]                           invokeRestart("muffleMessage")
  [22:34:58.508]                       }
  [22:34:58.508]                       else if (inherits(cond, "warning")) {
  [22:34:58.508]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:58.508]                         if (muffled) 
  [22:34:58.508]                           invokeRestart("muffleWarning")
  [22:34:58.508]                       }
  [22:34:58.508]                       else if (inherits(cond, "condition")) {
  [22:34:58.508]                         if (!is.null(pattern)) {
  [22:34:58.508]                           computeRestarts <- base::computeRestarts
  [22:34:58.508]                           grepl <- base::grepl
  [22:34:58.508]                           restarts <- computeRestarts(cond)
  [22:34:58.508]                           for (restart in restarts) {
  [22:34:58.508]                             name <- restart$name
  [22:34:58.508]                             if (is.null(name)) 
  [22:34:58.508]                               next
  [22:34:58.508]                             if (!grepl(pattern, name)) 
  [22:34:58.508]                               next
  [22:34:58.508]                             invokeRestart(restart)
  [22:34:58.508]                             muffled <- TRUE
  [22:34:58.508]                             break
  [22:34:58.508]                           }
  [22:34:58.508]                         }
  [22:34:58.508]                       }
  [22:34:58.508]                       invisible(muffled)
  [22:34:58.508]                     }
  [22:34:58.508]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:58.508]                   }
  [22:34:58.508]                 }
  [22:34:58.508]                 else {
  [22:34:58.508]                   if (TRUE) {
  [22:34:58.508]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:34:58.508]                     {
  [22:34:58.508]                       inherits <- base::inherits
  [22:34:58.508]                       invokeRestart <- base::invokeRestart
  [22:34:58.508]                       is.null <- base::is.null
  [22:34:58.508]                       muffled <- FALSE
  [22:34:58.508]                       if (inherits(cond, "message")) {
  [22:34:58.508]                         muffled <- grepl(pattern, "muffleMessage")
  [22:34:58.508]                         if (muffled) 
  [22:34:58.508]                           invokeRestart("muffleMessage")
  [22:34:58.508]                       }
  [22:34:58.508]                       else if (inherits(cond, "warning")) {
  [22:34:58.508]                         muffled <- grepl(pattern, "muffleWarning")
  [22:34:58.508]                         if (muffled) 
  [22:34:58.508]                           invokeRestart("muffleWarning")
  [22:34:58.508]                       }
  [22:34:58.508]                       else if (inherits(cond, "condition")) {
  [22:34:58.508]                         if (!is.null(pattern)) {
  [22:34:58.508]                           computeRestarts <- base::computeRestarts
  [22:34:58.508]                           grepl <- base::grepl
  [22:34:58.508]                           restarts <- computeRestarts(cond)
  [22:34:58.508]                           for (restart in restarts) {
  [22:34:58.508]                             name <- restart$name
  [22:34:58.508]                             if (is.null(name)) 
  [22:34:58.508]                               next
  [22:34:58.508]                             if (!grepl(pattern, name)) 
  [22:34:58.508]                               next
  [22:34:58.508]                             invokeRestart(restart)
  [22:34:58.508]                             muffled <- TRUE
  [22:34:58.508]                             break
  [22:34:58.508]                           }
  [22:34:58.508]                         }
  [22:34:58.508]                       }
  [22:34:58.508]                       invisible(muffled)
  [22:34:58.508]                     }
  [22:34:58.508]                     muffleCondition(cond, pattern = "^muffle")
  [22:34:58.508]                   }
  [22:34:58.508]                 }
  [22:34:58.508]             }
  [22:34:58.508]         }))
  [22:34:58.508]     }, error = function(ex) {
  [22:34:58.508]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:34:58.508]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:34:58.508]                 ...future.rng), started = ...future.startTime, 
  [22:34:58.508]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:34:58.508]             version = "1.8"), class = "FutureResult")
  [22:34:58.508]     }, finally = {
  [22:34:58.508]         if (!identical(...future.workdir, getwd())) 
  [22:34:58.508]             setwd(...future.workdir)
  [22:34:58.508]         {
  [22:34:58.508]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:34:58.508]                 ...future.oldOptions$nwarnings <- NULL
  [22:34:58.508]             }
  [22:34:58.508]             base::options(...future.oldOptions)
  [22:34:58.508]             if (.Platform$OS.type == "windows") {
  [22:34:58.508]                 old_names <- names(...future.oldEnvVars)
  [22:34:58.508]                 envs <- base::Sys.getenv()
  [22:34:58.508]                 names <- names(envs)
  [22:34:58.508]                 common <- intersect(names, old_names)
  [22:34:58.508]                 added <- setdiff(names, old_names)
  [22:34:58.508]                 removed <- setdiff(old_names, names)
  [22:34:58.508]                 changed <- common[...future.oldEnvVars[common] != 
  [22:34:58.508]                   envs[common]]
  [22:34:58.508]                 NAMES <- toupper(changed)
  [22:34:58.508]                 args <- list()
  [22:34:58.508]                 for (kk in seq_along(NAMES)) {
  [22:34:58.508]                   name <- changed[[kk]]
  [22:34:58.508]                   NAME <- NAMES[[kk]]
  [22:34:58.508]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:58.508]                     next
  [22:34:58.508]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:58.508]                 }
  [22:34:58.508]                 NAMES <- toupper(added)
  [22:34:58.508]                 for (kk in seq_along(NAMES)) {
  [22:34:58.508]                   name <- added[[kk]]
  [22:34:58.508]                   NAME <- NAMES[[kk]]
  [22:34:58.508]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:58.508]                     next
  [22:34:58.508]                   args[[name]] <- ""
  [22:34:58.508]                 }
  [22:34:58.508]                 NAMES <- toupper(removed)
  [22:34:58.508]                 for (kk in seq_along(NAMES)) {
  [22:34:58.508]                   name <- removed[[kk]]
  [22:34:58.508]                   NAME <- NAMES[[kk]]
  [22:34:58.508]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:34:58.508]                     next
  [22:34:58.508]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:34:58.508]                 }
  [22:34:58.508]                 if (length(args) > 0) 
  [22:34:58.508]                   base::do.call(base::Sys.setenv, args = args)
  [22:34:58.508]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:34:58.508]             }
  [22:34:58.508]             else {
  [22:34:58.508]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:34:58.508]             }
  [22:34:58.508]             {
  [22:34:58.508]                 if (base::length(...future.futureOptionsAdded) > 
  [22:34:58.508]                   0L) {
  [22:34:58.508]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:34:58.508]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:34:58.508]                   base::options(opts)
  [22:34:58.508]                 }
  [22:34:58.508]                 {
  [22:34:58.508]                   NULL
  [22:34:58.508]                   options(future.plan = NULL)
  [22:34:58.508]                   if (is.na(NA_character_)) 
  [22:34:58.508]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:34:58.508]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:34:58.508]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:34:58.508]                     .init = FALSE)
  [22:34:58.508]                 }
  [22:34:58.508]             }
  [22:34:58.508]         }
  [22:34:58.508]     })
  [22:34:58.508]     if (TRUE) {
  [22:34:58.508]         base::sink(type = "output", split = FALSE)
  [22:34:58.508]         if (TRUE) {
  [22:34:58.508]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:34:58.508]         }
  [22:34:58.508]         else {
  [22:34:58.508]             ...future.result["stdout"] <- base::list(NULL)
  [22:34:58.508]         }
  [22:34:58.508]         base::close(...future.stdout)
  [22:34:58.508]         ...future.stdout <- NULL
  [22:34:58.508]     }
  [22:34:58.508]     ...future.result$conditions <- ...future.conditions
  [22:34:58.508]     ...future.result$finished <- base::Sys.time()
  [22:34:58.508]     ...future.result
  [22:34:58.508] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/mirai_cluster.R’ failed.
Complete output:
  > source("incl/start.R")
  Loading required package: future
  [22:34:59.456] plan(): Setting new future strategy stack:
  [22:34:59.457] List of future strategies:
  [22:34:59.457] 1. mirai_multisession:
  [22:34:59.457]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:34:59.457]    - tweaked: FALSE
  [22:34:59.457]    - call: future::plan(future.mirai::mirai_multisession)
  [22:34:59.482] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:34:59.483] < mirai [$data] >
  [22:34:59.504] getGlobalsAndPackages() ...
  [22:34:59.505] Not searching for globals
  [22:34:59.505] - globals: [0] <none>
  [22:34:59.505] getGlobalsAndPackages() ... DONE
  [22:34:59.506] getGlobalsAndPackages() ...
  [22:34:59.506] 
  [22:34:59.507] - globals: [0] <none>
  [22:34:59.507] getGlobalsAndPackages() ... DONE
  [22:35:00.623] Packages needed by the future expression (n = 0): <none>
  [22:35:00.623] Packages needed by future strategies (n = 0): <none>
  [22:35:00.625] {
  [22:35:00.625]     {
  [22:35:00.625]         {
  [22:35:00.625]             ...future.startTime <- base::Sys.time()
  [22:35:00.625]             {
  [22:35:00.625]                 {
  [22:35:00.625]                   {
  [22:35:00.625]                     base::local({
  [22:35:00.625]                       has_future <- base::requireNamespace("future", 
  [22:35:00.625]                         quietly = TRUE)
  [22:35:00.625]                       if (has_future) {
  [22:35:00.625]                         ns <- base::getNamespace("future")
  [22:35:00.625]                         version <- ns[[".package"]][["version"]]
  [22:35:00.625]                         if (is.null(version)) 
  [22:35:00.625]                           version <- utils::packageVersion("future")
  [22:35:00.625]                       }
  [22:35:00.625]                       else {
  [22:35:00.625]                         version <- NULL
  [22:35:00.625]                       }
  [22:35:00.625]                       if (!has_future || version < "1.8.0") {
  [22:35:00.625]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:35:00.625]                           "", base::R.version$version.string), 
  [22:35:00.625]                           platform = base::sprintf("%s (%s-bit)", 
  [22:35:00.625]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:35:00.625]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:35:00.625]                             "release", "version")], collapse = " "), 
  [22:35:00.625]                           hostname = base::Sys.info()[["nodename"]])
  [22:35:00.625]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:35:00.625]                           info)
  [22:35:00.625]                         info <- base::paste(info, collapse = "; ")
  [22:35:00.625]                         if (!has_future) {
  [22:35:00.625]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:35:00.625]                             info)
  [22:35:00.625]                         }
  [22:35:00.625]                         else {
  [22:35:00.625]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:35:00.625]                             info, version)
  [22:35:00.625]                         }
  [22:35:00.625]                         base::stop(msg)
  [22:35:00.625]                       }
  [22:35:00.625]                     })
  [22:35:00.625]                   }
  [22:35:00.625]                   ...future.strategy.old <- future::plan("list")
  [22:35:00.625]                   options(future.plan = NULL)
  [22:35:00.625]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:35:00.625]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:35:00.625]                 }
  [22:35:00.625]                 ...future.workdir <- getwd()
  [22:35:00.625]             }
  [22:35:00.625]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:35:00.625]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:35:00.625]         }
  [22:35:00.625]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:35:00.625]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:35:00.625]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:35:00.625]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:35:00.625]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:35:00.625]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:35:00.625]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:35:00.625]             base::names(...future.oldOptions))
  [22:35:00.625]     }
  [22:35:00.625]     if (FALSE) {
  [22:35:00.625]     }
  [22:35:00.625]     else {
  [22:35:00.625]         if (TRUE) {
  [22:35:00.625]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:35:00.625]                 open = "w")
  [22:35:00.625]         }
  [22:35:00.625]         else {
  [22:35:00.625]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:35:00.625]                 windows = "NUL", "/dev/null"), open = "w")
  [22:35:00.625]         }
  [22:35:00.625]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:35:00.625]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:35:00.625]             base::sink(type = "output", split = FALSE)
  [22:35:00.625]             base::close(...future.stdout)
  [22:35:00.625]         }, add = TRUE)
  [22:35:00.625]     }
  [22:35:00.625]     ...future.frame <- base::sys.nframe()
  [22:35:00.625]     ...future.conditions <- base::list()
  [22:35:00.625]     ...future.rng <- base::globalenv()$.Random.seed
  [22:35:00.625]     if (FALSE) {
  [22:35:00.625]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:35:00.625]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:35:00.625]     }
  [22:35:00.625]     ...future.result <- base::tryCatch({
  [22:35:00.625]         base::withCallingHandlers({
  [22:35:00.625]             ...future.value <- base::withVisible(base::local(NA))
  [22:35:00.625]             future::FutureResult(value = ...future.value$value, 
  [22:35:00.625]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:35:00.625]                   ...future.rng), globalenv = if (FALSE) 
  [22:35:00.625]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:35:00.625]                     ...future.globalenv.names))
  [22:35:00.625]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:35:00.625]         }, condition = base::local({
  [22:35:00.625]             c <- base::c
  [22:35:00.625]             inherits <- base::inherits
  [22:35:00.625]             invokeRestart <- base::invokeRestart
  [22:35:00.625]             length <- base::length
  [22:35:00.625]             list <- base::list
  [22:35:00.625]             seq.int <- base::seq.int
  [22:35:00.625]             signalCondition <- base::signalCondition
  [22:35:00.625]             sys.calls <- base::sys.calls
  [22:35:00.625]             `[[` <- base::`[[`
  [22:35:00.625]             `+` <- base::`+`
  [22:35:00.625]             `<<-` <- base::`<<-`
  [22:35:00.625]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:35:00.625]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:35:00.625]                   3L)]
  [22:35:00.625]             }
  [22:35:00.625]             function(cond) {
  [22:35:00.625]                 is_error <- inherits(cond, "error")
  [22:35:00.625]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:35:00.625]                   NULL)
  [22:35:00.625]                 if (is_error) {
  [22:35:00.625]                   sessionInformation <- function() {
  [22:35:00.625]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:35:00.625]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:35:00.625]                       search = base::search(), system = base::Sys.info())
  [22:35:00.625]                   }
  [22:35:00.625]                   ...future.conditions[[length(...future.conditions) + 
  [22:35:00.625]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:35:00.625]                     cond$call), session = sessionInformation(), 
  [22:35:00.625]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:35:00.625]                   signalCondition(cond)
  [22:35:00.625]                 }
  [22:35:00.625]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:35:00.625]                   signal <- FALSE && inherits(cond, character(0))
  [22:35:00.625]                   ...future.conditions[[length(...future.conditions) + 
  [22:35:00.625]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:35:00.625]                   if (FALSE && !signal) {
  [22:35:00.625]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:35:00.625]                     {
  [22:35:00.625]                       inherits <- base::inherits
  [22:35:00.625]                       invokeRestart <- base::invokeRestart
  [22:35:00.625]                       is.null <- base::is.null
  [22:35:00.625]                       muffled <- FALSE
  [22:35:00.625]                       if (inherits(cond, "message")) {
  [22:35:00.625]                         muffled <- grepl(pattern, "muffleMessage")
  [22:35:00.625]                         if (muffled) 
  [22:35:00.625]                           invokeRestart("muffleMessage")
  [22:35:00.625]                       }
  [22:35:00.625]                       else if (inherits(cond, "warning")) {
  [22:35:00.625]                         muffled <- grepl(pattern, "muffleWarning")
  [22:35:00.625]                         if (muffled) 
  [22:35:00.625]                           invokeRestart("muffleWarning")
  [22:35:00.625]                       }
  [22:35:00.625]                       else if (inherits(cond, "condition")) {
  [22:35:00.625]                         if (!is.null(pattern)) {
  [22:35:00.625]                           computeRestarts <- base::computeRestarts
  [22:35:00.625]                           grepl <- base::grepl
  [22:35:00.625]                           restarts <- computeRestarts(cond)
  [22:35:00.625]                           for (restart in restarts) {
  [22:35:00.625]                             name <- restart$name
  [22:35:00.625]                             if (is.null(name)) 
  [22:35:00.625]                               next
  [22:35:00.625]                             if (!grepl(pattern, name)) 
  [22:35:00.625]                               next
  [22:35:00.625]                             invokeRestart(restart)
  [22:35:00.625]                             muffled <- TRUE
  [22:35:00.625]                             break
  [22:35:00.625]                           }
  [22:35:00.625]                         }
  [22:35:00.625]                       }
  [22:35:00.625]                       invisible(muffled)
  [22:35:00.625]                     }
  [22:35:00.625]                     muffleCondition(cond, pattern = "^muffle")
  [22:35:00.625]                   }
  [22:35:00.625]                 }
  [22:35:00.625]                 else {
  [22:35:00.625]                   if (TRUE) {
  [22:35:00.625]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:35:00.625]                     {
  [22:35:00.625]                       inherits <- base::inherits
  [22:35:00.625]                       invokeRestart <- base::invokeRestart
  [22:35:00.625]                       is.null <- base::is.null
  [22:35:00.625]                       muffled <- FALSE
  [22:35:00.625]                       if (inherits(cond, "message")) {
  [22:35:00.625]                         muffled <- grepl(pattern, "muffleMessage")
  [22:35:00.625]                         if (muffled) 
  [22:35:00.625]                           invokeRestart("muffleMessage")
  [22:35:00.625]                       }
  [22:35:00.625]                       else if (inherits(cond, "warning")) {
  [22:35:00.625]                         muffled <- grepl(pattern, "muffleWarning")
  [22:35:00.625]                         if (muffled) 
  [22:35:00.625]                           invokeRestart("muffleWarning")
  [22:35:00.625]                       }
  [22:35:00.625]                       else if (inherits(cond, "condition")) {
  [22:35:00.625]                         if (!is.null(pattern)) {
  [22:35:00.625]                           computeRestarts <- base::computeRestarts
  [22:35:00.625]                           grepl <- base::grepl
  [22:35:00.625]                           restarts <- computeRestarts(cond)
  [22:35:00.625]                           for (restart in restarts) {
  [22:35:00.625]                             name <- restart$name
  [22:35:00.625]                             if (is.null(name)) 
  [22:35:00.625]                               next
  [22:35:00.625]                             if (!grepl(pattern, name)) 
  [22:35:00.625]                               next
  [22:35:00.625]                             invokeRestart(restart)
  [22:35:00.625]                             muffled <- TRUE
  [22:35:00.625]                             break
  [22:35:00.625]                           }
  [22:35:00.625]                         }
  [22:35:00.625]                       }
  [22:35:00.625]                       invisible(muffled)
  [22:35:00.625]                     }
  [22:35:00.625]                     muffleCondition(cond, pattern = "^muffle")
  [22:35:00.625]                   }
  [22:35:00.625]                 }
  [22:35:00.625]             }
  [22:35:00.625]         }))
  [22:35:00.625]     }, error = function(ex) {
  [22:35:00.625]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:35:00.625]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:35:00.625]                 ...future.rng), started = ...future.startTime, 
  [22:35:00.625]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:35:00.625]             version = "1.8"), class = "FutureResult")
  [22:35:00.625]     }, finally = {
  [22:35:00.625]         if (!identical(...future.workdir, getwd())) 
  [22:35:00.625]             setwd(...future.workdir)
  [22:35:00.625]         {
  [22:35:00.625]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:35:00.625]                 ...future.oldOptions$nwarnings <- NULL
  [22:35:00.625]             }
  [22:35:00.625]             base::options(...future.oldOptions)
  [22:35:00.625]             if (.Platform$OS.type == "windows") {
  [22:35:00.625]                 old_names <- names(...future.oldEnvVars)
  [22:35:00.625]                 envs <- base::Sys.getenv()
  [22:35:00.625]                 names <- names(envs)
  [22:35:00.625]                 common <- intersect(names, old_names)
  [22:35:00.625]                 added <- setdiff(names, old_names)
  [22:35:00.625]                 removed <- setdiff(old_names, names)
  [22:35:00.625]                 changed <- common[...future.oldEnvVars[common] != 
  [22:35:00.625]                   envs[common]]
  [22:35:00.625]                 NAMES <- toupper(changed)
  [22:35:00.625]                 args <- list()
  [22:35:00.625]                 for (kk in seq_along(NAMES)) {
  [22:35:00.625]                   name <- changed[[kk]]
  [22:35:00.625]                   NAME <- NAMES[[kk]]
  [22:35:00.625]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:00.625]                     next
  [22:35:00.625]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:35:00.625]                 }
  [22:35:00.625]                 NAMES <- toupper(added)
  [22:35:00.625]                 for (kk in seq_along(NAMES)) {
  [22:35:00.625]                   name <- added[[kk]]
  [22:35:00.625]                   NAME <- NAMES[[kk]]
  [22:35:00.625]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:00.625]                     next
  [22:35:00.625]                   args[[name]] <- ""
  [22:35:00.625]                 }
  [22:35:00.625]                 NAMES <- toupper(removed)
  [22:35:00.625]                 for (kk in seq_along(NAMES)) {
  [22:35:00.625]                   name <- removed[[kk]]
  [22:35:00.625]                   NAME <- NAMES[[kk]]
  [22:35:00.625]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:00.625]                     next
  [22:35:00.625]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:35:00.625]                 }
  [22:35:00.625]                 if (length(args) > 0) 
  [22:35:00.625]                   base::do.call(base::Sys.setenv, args = args)
  [22:35:00.625]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:35:00.625]             }
  [22:35:00.625]             else {
  [22:35:00.625]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:35:00.625]             }
  [22:35:00.625]             {
  [22:35:00.625]                 if (base::length(...future.futureOptionsAdded) > 
  [22:35:00.625]                   0L) {
  [22:35:00.625]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:35:00.625]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:35:00.625]                   base::options(opts)
  [22:35:00.625]                 }
  [22:35:00.625]                 {
  [22:35:00.625]                   NULL
  [22:35:00.625]                   options(future.plan = NULL)
  [22:35:00.625]                   if (is.na(NA_character_)) 
  [22:35:00.625]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:35:00.625]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:35:00.625]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:35:00.625]                     .init = FALSE)
  [22:35:00.625]                 }
  [22:35:00.625]             }
  [22:35:00.625]         }
  [22:35:00.625]     })
  [22:35:00.625]     if (TRUE) {
  [22:35:00.625]         base::sink(type = "output", split = FALSE)
  [22:35:00.625]         if (TRUE) {
  [22:35:00.625]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:35:00.625]         }
  [22:35:00.625]         else {
  [22:35:00.625]             ...future.result["stdout"] <- base::list(NULL)
  [22:35:00.625]         }
  [22:35:00.625]         base::close(...future.stdout)
  [22:35:00.625]         ...future.stdout <- NULL
  [22:35:00.625]     }
  [22:35:00.625]     ...future.result$conditions <- ...future.conditions
  [22:35:00.625]     ...future.result$finished <- base::Sys.time()
  [22:35:00.625]     ...future.result
  [22:35:00.625] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/nbrOfWorkers.R’ failed.
Complete output:
  > source("incl/start.R")
  Loading required package: future
  [22:35:01.369] plan(): Setting new future strategy stack:
  [22:35:01.370] List of future strategies:
  [22:35:01.370] 1. mirai_multisession:
  [22:35:01.370]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:35:01.370]    - tweaked: FALSE
  [22:35:01.370]    - call: future::plan(future.mirai::mirai_multisession)
  [22:35:01.396] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:35:01.396] < mirai [$data] >
  [22:35:01.466] getGlobalsAndPackages() ...
  [22:35:01.467] Not searching for globals
  [22:35:01.467] - globals: [0] <none>
  [22:35:01.467] getGlobalsAndPackages() ... DONE
  [22:35:01.468] getGlobalsAndPackages() ...
  [22:35:01.468] 
  [22:35:01.469] - globals: [0] <none>
  [22:35:01.469] getGlobalsAndPackages() ... DONE
  [22:35:02.456] Packages needed by the future expression (n = 0): <none>
  [22:35:02.457] Packages needed by future strategies (n = 0): <none>
  [22:35:02.458] {
  [22:35:02.458]     {
  [22:35:02.458]         {
  [22:35:02.458]             ...future.startTime <- base::Sys.time()
  [22:35:02.458]             {
  [22:35:02.458]                 {
  [22:35:02.458]                   {
  [22:35:02.458]                     base::local({
  [22:35:02.458]                       has_future <- base::requireNamespace("future", 
  [22:35:02.458]                         quietly = TRUE)
  [22:35:02.458]                       if (has_future) {
  [22:35:02.458]                         ns <- base::getNamespace("future")
  [22:35:02.458]                         version <- ns[[".package"]][["version"]]
  [22:35:02.458]                         if (is.null(version)) 
  [22:35:02.458]                           version <- utils::packageVersion("future")
  [22:35:02.458]                       }
  [22:35:02.458]                       else {
  [22:35:02.458]                         version <- NULL
  [22:35:02.458]                       }
  [22:35:02.458]                       if (!has_future || version < "1.8.0") {
  [22:35:02.458]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:35:02.458]                           "", base::R.version$version.string), 
  [22:35:02.458]                           platform = base::sprintf("%s (%s-bit)", 
  [22:35:02.458]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:35:02.458]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:35:02.458]                             "release", "version")], collapse = " "), 
  [22:35:02.458]                           hostname = base::Sys.info()[["nodename"]])
  [22:35:02.458]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:35:02.458]                           info)
  [22:35:02.458]                         info <- base::paste(info, collapse = "; ")
  [22:35:02.458]                         if (!has_future) {
  [22:35:02.458]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:35:02.458]                             info)
  [22:35:02.458]                         }
  [22:35:02.458]                         else {
  [22:35:02.458]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:35:02.458]                             info, version)
  [22:35:02.458]                         }
  [22:35:02.458]                         base::stop(msg)
  [22:35:02.458]                       }
  [22:35:02.458]                     })
  [22:35:02.458]                   }
  [22:35:02.458]                   ...future.strategy.old <- future::plan("list")
  [22:35:02.458]                   options(future.plan = NULL)
  [22:35:02.458]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:35:02.458]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:35:02.458]                 }
  [22:35:02.458]                 ...future.workdir <- getwd()
  [22:35:02.458]             }
  [22:35:02.458]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:35:02.458]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:35:02.458]         }
  [22:35:02.458]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:35:02.458]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:35:02.458]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:35:02.458]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:35:02.458]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:35:02.458]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:35:02.458]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:35:02.458]             base::names(...future.oldOptions))
  [22:35:02.458]     }
  [22:35:02.458]     if (FALSE) {
  [22:35:02.458]     }
  [22:35:02.458]     else {
  [22:35:02.458]         if (TRUE) {
  [22:35:02.458]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:35:02.458]                 open = "w")
  [22:35:02.458]         }
  [22:35:02.458]         else {
  [22:35:02.458]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:35:02.458]                 windows = "NUL", "/dev/null"), open = "w")
  [22:35:02.458]         }
  [22:35:02.458]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:35:02.458]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:35:02.458]             base::sink(type = "output", split = FALSE)
  [22:35:02.458]             base::close(...future.stdout)
  [22:35:02.458]         }, add = TRUE)
  [22:35:02.458]     }
  [22:35:02.458]     ...future.frame <- base::sys.nframe()
  [22:35:02.458]     ...future.conditions <- base::list()
  [22:35:02.458]     ...future.rng <- base::globalenv()$.Random.seed
  [22:35:02.458]     if (FALSE) {
  [22:35:02.458]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:35:02.458]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:35:02.458]     }
  [22:35:02.458]     ...future.result <- base::tryCatch({
  [22:35:02.458]         base::withCallingHandlers({
  [22:35:02.458]             ...future.value <- base::withVisible(base::local(NA))
  [22:35:02.458]             future::FutureResult(value = ...future.value$value, 
  [22:35:02.458]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:35:02.458]                   ...future.rng), globalenv = if (FALSE) 
  [22:35:02.458]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:35:02.458]                     ...future.globalenv.names))
  [22:35:02.458]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:35:02.458]         }, condition = base::local({
  [22:35:02.458]             c <- base::c
  [22:35:02.458]             inherits <- base::inherits
  [22:35:02.458]             invokeRestart <- base::invokeRestart
  [22:35:02.458]             length <- base::length
  [22:35:02.458]             list <- base::list
  [22:35:02.458]             seq.int <- base::seq.int
  [22:35:02.458]             signalCondition <- base::signalCondition
  [22:35:02.458]             sys.calls <- base::sys.calls
  [22:35:02.458]             `[[` <- base::`[[`
  [22:35:02.458]             `+` <- base::`+`
  [22:35:02.458]             `<<-` <- base::`<<-`
  [22:35:02.458]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:35:02.458]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:35:02.458]                   3L)]
  [22:35:02.458]             }
  [22:35:02.458]             function(cond) {
  [22:35:02.458]                 is_error <- inherits(cond, "error")
  [22:35:02.458]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:35:02.458]                   NULL)
  [22:35:02.458]                 if (is_error) {
  [22:35:02.458]                   sessionInformation <- function() {
  [22:35:02.458]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:35:02.458]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:35:02.458]                       search = base::search(), system = base::Sys.info())
  [22:35:02.458]                   }
  [22:35:02.458]                   ...future.conditions[[length(...future.conditions) + 
  [22:35:02.458]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:35:02.458]                     cond$call), session = sessionInformation(), 
  [22:35:02.458]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:35:02.458]                   signalCondition(cond)
  [22:35:02.458]                 }
  [22:35:02.458]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:35:02.458]                   signal <- FALSE && inherits(cond, character(0))
  [22:35:02.458]                   ...future.conditions[[length(...future.conditions) + 
  [22:35:02.458]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:35:02.458]                   if (FALSE && !signal) {
  [22:35:02.458]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:35:02.458]                     {
  [22:35:02.458]                       inherits <- base::inherits
  [22:35:02.458]                       invokeRestart <- base::invokeRestart
  [22:35:02.458]                       is.null <- base::is.null
  [22:35:02.458]                       muffled <- FALSE
  [22:35:02.458]                       if (inherits(cond, "message")) {
  [22:35:02.458]                         muffled <- grepl(pattern, "muffleMessage")
  [22:35:02.458]                         if (muffled) 
  [22:35:02.458]                           invokeRestart("muffleMessage")
  [22:35:02.458]                       }
  [22:35:02.458]                       else if (inherits(cond, "warning")) {
  [22:35:02.458]                         muffled <- grepl(pattern, "muffleWarning")
  [22:35:02.458]                         if (muffled) 
  [22:35:02.458]                           invokeRestart("muffleWarning")
  [22:35:02.458]                       }
  [22:35:02.458]                       else if (inherits(cond, "condition")) {
  [22:35:02.458]                         if (!is.null(pattern)) {
  [22:35:02.458]                           computeRestarts <- base::computeRestarts
  [22:35:02.458]                           grepl <- base::grepl
  [22:35:02.458]                           restarts <- computeRestarts(cond)
  [22:35:02.458]                           for (restart in restarts) {
  [22:35:02.458]                             name <- restart$name
  [22:35:02.458]                             if (is.null(name)) 
  [22:35:02.458]                               next
  [22:35:02.458]                             if (!grepl(pattern, name)) 
  [22:35:02.458]                               next
  [22:35:02.458]                             invokeRestart(restart)
  [22:35:02.458]                             muffled <- TRUE
  [22:35:02.458]                             break
  [22:35:02.458]                           }
  [22:35:02.458]                         }
  [22:35:02.458]                       }
  [22:35:02.458]                       invisible(muffled)
  [22:35:02.458]                     }
  [22:35:02.458]                     muffleCondition(cond, pattern = "^muffle")
  [22:35:02.458]                   }
  [22:35:02.458]                 }
  [22:35:02.458]                 else {
  [22:35:02.458]                   if (TRUE) {
  [22:35:02.458]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:35:02.458]                     {
  [22:35:02.458]                       inherits <- base::inherits
  [22:35:02.458]                       invokeRestart <- base::invokeRestart
  [22:35:02.458]                       is.null <- base::is.null
  [22:35:02.458]                       muffled <- FALSE
  [22:35:02.458]                       if (inherits(cond, "message")) {
  [22:35:02.458]                         muffled <- grepl(pattern, "muffleMessage")
  [22:35:02.458]                         if (muffled) 
  [22:35:02.458]                           invokeRestart("muffleMessage")
  [22:35:02.458]                       }
  [22:35:02.458]                       else if (inherits(cond, "warning")) {
  [22:35:02.458]                         muffled <- grepl(pattern, "muffleWarning")
  [22:35:02.458]                         if (muffled) 
  [22:35:02.458]                           invokeRestart("muffleWarning")
  [22:35:02.458]                       }
  [22:35:02.458]                       else if (inherits(cond, "condition")) {
  [22:35:02.458]                         if (!is.null(pattern)) {
  [22:35:02.458]                           computeRestarts <- base::computeRestarts
  [22:35:02.458]                           grepl <- base::grepl
  [22:35:02.458]                           restarts <- computeRestarts(cond)
  [22:35:02.458]                           for (restart in restarts) {
  [22:35:02.458]                             name <- restart$name
  [22:35:02.458]                             if (is.null(name)) 
  [22:35:02.458]                               next
  [22:35:02.458]                             if (!grepl(pattern, name)) 
  [22:35:02.458]                               next
  [22:35:02.458]                             invokeRestart(restart)
  [22:35:02.458]                             muffled <- TRUE
  [22:35:02.458]                             break
  [22:35:02.458]                           }
  [22:35:02.458]                         }
  [22:35:02.458]                       }
  [22:35:02.458]                       invisible(muffled)
  [22:35:02.458]                     }
  [22:35:02.458]                     muffleCondition(cond, pattern = "^muffle")
  [22:35:02.458]                   }
  [22:35:02.458]                 }
  [22:35:02.458]             }
  [22:35:02.458]         }))
  [22:35:02.458]     }, error = function(ex) {
  [22:35:02.458]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:35:02.458]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:35:02.458]                 ...future.rng), started = ...future.startTime, 
  [22:35:02.458]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:35:02.458]             version = "1.8"), class = "FutureResult")
  [22:35:02.458]     }, finally = {
  [22:35:02.458]         if (!identical(...future.workdir, getwd())) 
  [22:35:02.458]             setwd(...future.workdir)
  [22:35:02.458]         {
  [22:35:02.458]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:35:02.458]                 ...future.oldOptions$nwarnings <- NULL
  [22:35:02.458]             }
  [22:35:02.458]             base::options(...future.oldOptions)
  [22:35:02.458]             if (.Platform$OS.type == "windows") {
  [22:35:02.458]                 old_names <- names(...future.oldEnvVars)
  [22:35:02.458]                 envs <- base::Sys.getenv()
  [22:35:02.458]                 names <- names(envs)
  [22:35:02.458]                 common <- intersect(names, old_names)
  [22:35:02.458]                 added <- setdiff(names, old_names)
  [22:35:02.458]                 removed <- setdiff(old_names, names)
  [22:35:02.458]                 changed <- common[...future.oldEnvVars[common] != 
  [22:35:02.458]                   envs[common]]
  [22:35:02.458]                 NAMES <- toupper(changed)
  [22:35:02.458]                 args <- list()
  [22:35:02.458]                 for (kk in seq_along(NAMES)) {
  [22:35:02.458]                   name <- changed[[kk]]
  [22:35:02.458]                   NAME <- NAMES[[kk]]
  [22:35:02.458]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:02.458]                     next
  [22:35:02.458]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:35:02.458]                 }
  [22:35:02.458]                 NAMES <- toupper(added)
  [22:35:02.458]                 for (kk in seq_along(NAMES)) {
  [22:35:02.458]                   name <- added[[kk]]
  [22:35:02.458]                   NAME <- NAMES[[kk]]
  [22:35:02.458]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:02.458]                     next
  [22:35:02.458]                   args[[name]] <- ""
  [22:35:02.458]                 }
  [22:35:02.458]                 NAMES <- toupper(removed)
  [22:35:02.458]                 for (kk in seq_along(NAMES)) {
  [22:35:02.458]                   name <- removed[[kk]]
  [22:35:02.458]                   NAME <- NAMES[[kk]]
  [22:35:02.458]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:02.458]                     next
  [22:35:02.458]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:35:02.458]                 }
  [22:35:02.458]                 if (length(args) > 0) 
  [22:35:02.458]                   base::do.call(base::Sys.setenv, args = args)
  [22:35:02.458]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:35:02.458]             }
  [22:35:02.458]             else {
  [22:35:02.458]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:35:02.458]             }
  [22:35:02.458]             {
  [22:35:02.458]                 if (base::length(...future.futureOptionsAdded) > 
  [22:35:02.458]                   0L) {
  [22:35:02.458]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:35:02.458]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:35:02.458]                   base::options(opts)
  [22:35:02.458]                 }
  [22:35:02.458]                 {
  [22:35:02.458]                   NULL
  [22:35:02.458]                   options(future.plan = NULL)
  [22:35:02.458]                   if (is.na(NA_character_)) 
  [22:35:02.458]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:35:02.458]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:35:02.458]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:35:02.458]                     .init = FALSE)
  [22:35:02.458]                 }
  [22:35:02.458]             }
  [22:35:02.458]         }
  [22:35:02.458]     })
  [22:35:02.458]     if (TRUE) {
  [22:35:02.458]         base::sink(type = "output", split = FALSE)
  [22:35:02.458]         if (TRUE) {
  [22:35:02.458]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:35:02.458]         }
  [22:35:02.458]         else {
  [22:35:02.458]             ...future.result["stdout"] <- base::list(NULL)
  [22:35:02.458]         }
  [22:35:02.458]         base::close(...future.stdout)
  [22:35:02.458]         ...future.stdout <- NULL
  [22:35:02.458]     }
  [22:35:02.458]     ...future.result$conditions <- ...future.conditions
  [22:35:02.458]     ...future.result$finished <- base::Sys.time()
  [22:35:02.458]     ...future.result
  [22:35:02.458] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/plan.R’ failed.
Complete output:
  > source("incl/start,load-only.R")
  [22:35:03.153] Detected 'R CMD check':
   - adjusting defaults to be a good citizen
  [22:35:03.155] Set package option 'parallelly.availableCores.methods'
  [22:35:03.156] Environment variable 'R_PARALLELLY_AVAILABLECORES_METHODS' not set
  [22:35:03.156] Set package option 'parallelly.availableCores.fallback'
  [22:35:03.157] Environment variable 'R_PARALLELLY_AVAILABLECORES_FALLBACK' not set
  [22:35:03.157] Set package option 'parallelly.availableCores.min'
  [22:35:03.158] Environment variable 'R_PARALLELLY_AVAILABLECORES_MIN' not set
  [22:35:03.158] Set package option 'parallelly.availableCores.system'
  [22:35:03.158] Environment variable 'R_PARALLELLY_AVAILABLECORES_SYSTEM' not set
  [22:35:03.159] Set package option 'parallelly.availableCores.logical'
  [22:35:03.159] Environment variable 'R_PARALLELLY_AVAILABLECORES_LOGICAL' not set
  [22:35:03.160] Set package option 'parallelly.availableCores.omit'
  [22:35:03.160] Environment variable 'R_PARALLELLY_AVAILABLECORES_OMIT' not set
  [22:35:03.160] Set package option 'parallelly.availableWorkers.methods'
  [22:35:03.161] Environment variable 'R_PARALLELLY_AVAILABLEWORKERS_METHODS' not set
  [22:35:03.161] Set package option 'parallelly.maxWorkers.localhost'
  [22:35:03.162] Environment variable 'R_PARALLELLY_MAXWORKERS_LOCALHOST' not set
  [22:35:03.162] Set package option 'parallelly.maxWorkers.localhost.ignore'
  [22:35:03.162] Environment variable 'R_PARALLELLY_MAXWORKERS_LOCALHOST_IGNORE' not set
  [22:35:03.163] Set package option 'parallelly.fork.enable'
  [22:35:03.163] Environment variable 'R_PARALLELLY_FORK_ENABLE' not set
  [22:35:03.164] Set package option 'parallelly.supportsMulticore.disableOn'
  [22:35:03.164] Environment variable 'R_PARALLELLY_SUPPORTSMULTICORE_DISABLEON' not set
  [22:35:03.164] Set package option 'parallelly.supportsMulticore.unstable'
  [22:35:03.165] Environment variable 'R_PARALLELLY_SUPPORTSMULTICORE_UNSTABLE' not set
  [22:35:03.165] Set package option 'parallelly.makeNodePSOCK.setup_strategy'
  [22:35:03.166] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_SETUP_STRATEGY' not set
  [22:35:03.166] Set package option 'parallelly.makeNodePSOCK.validate'
  [22:35:03.166] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_VALIDATE' not set
  [22:35:03.167] Set package option 'parallelly.makeNodePSOCK.connectTimeout'
  [22:35:03.167] R_PARALLELLY_MAKENODEPSOCK_CONNECTTIMEOUT='120'
  [22:35:03.168] Coercing from character to numeric: '120'
  [22:35:03.168] => options("parallelly.makeNodePSOCK.connectTimeout" = '120') [n=1, mode=double]
  [22:35:03.168] Set package option 'parallelly.makeNodePSOCK.timeout'
  [22:35:03.169] R_PARALLELLY_MAKENODEPSOCK_TIMEOUT='120'
  [22:35:03.169] Coercing from character to numeric: '120'
  [22:35:03.169] => options("parallelly.makeNodePSOCK.timeout" = '120') [n=1, mode=double]
  [22:35:03.170] Set package option 'parallelly.makeNodePSOCK.useXDR'
  [22:35:03.170] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_USEXDR' not set
  [22:35:03.171] Set package option 'parallelly.makeNodePSOCK.socketOptions'
  [22:35:03.171] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_SOCKETOPTIONS' not set
  [22:35:03.171] Set package option 'parallelly.makeNodePSOCK.rshcmd'
  [22:35:03.172] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_RSHCMD' not set
  [22:35:03.172] Set package option 'parallelly.makeNodePSOCK.rshopts'
  [22:35:03.173] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_RSHOPTS' not set
  [22:35:03.173] Set package option 'parallelly.makeNodePSOCK.tries'
  [22:35:03.173] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_TRIES' not set
  [22:35:03.174] Set package option 'parallelly.makeNodePSOCK.tries.delay'
  [22:35:03.174] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_TRIES_DELAY' not set
  [22:35:03.175] Set package option 'parallelly.makeNodePSOCK.rscript_label'
  [22:35:03.175] R_PARALLELLY_MAKENODEPSOCK_RSCRIPT_LABEL='TRUE'
  [22:35:03.175] => options("parallelly.makeNodePSOCK.rscript_label" = 'TRUE') [n=1, mode=character]
  [22:35:03.176] Set package option 'parallelly.makeNodePSOCK.sessionInfo.pkgs'
  [22:35:03.176] R_PARALLELLY_MAKENODEPSOCK_SESSIONINFO_PKGS='TRUE'
  [22:35:03.176] => options("parallelly.makeNodePSOCK.sessionInfo.pkgs" = 'TRUE') [n=1, mode=character]
  [22:35:03.177] Set package option 'parallelly.makeNodePSOCK.autoKill'
  [22:35:03.177] R_PARALLELLY_MAKENODEPSOCK_AUTOKILL='TRUE'
  [22:35:03.177] Coercing from character to logical: 'TRUE'
  [22:35:03.178] => options("parallelly.makeNodePSOCK.autoKill" = 'TRUE') [n=1, mode=logical]
  [22:35:03.178] Set package option 'parallelly.makeNodePSOCK.master.localhost.hostname'
  [22:35:03.178] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_MASTER_LOCALHOST_HOSTNAME' not set
  [22:35:03.179] Set package option 'parallelly.makeNodePSOCK.port.increment'
  [22:35:03.179] Environment variable 'R_PARALLELLY_MAKENODEPSOCK_PORT_INCREMENT' not set
  [22:35:03.181] 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'
  [22:35:03.193] Future-specific environment variables:
  [22:35:03.193] Environment variable 'R_FUTURE_DEMO_MANDELBROT_REGION' not set
  [22:35:03.193] Environment variable 'R_FUTURE_DEMO_MANDELBROT_NROW' not set
  [22:35:03.194] Environment variable 'R_FUTURE_DEPRECATED_IGNORE' not set
  [22:35:03.194] Environment variable 'R_FUTURE_DEPRECATED_DEFUNCT' not set
  [22:35:03.194] Environment variable 'R_FUTURE_FORK_MULTITHREADING_ENABLE' not set
  [22:35:03.194] Environment variable 'R_FUTURE_GLOBALS_MAXSIZE' not set
  [22:35:03.195] Environment variable 'R_FUTURE_GLOBALS_ONMISSING' not set
  [22:35:03.195] Environment variable 'R_FUTURE_GLOBALS_ONREFERENCE' not set
  [22:35:03.195] Environment variable 'R_FUTURE_GLOBALS_METHOD' not set
  [22:35:03.196] Environment variable 'R_FUTURE_GLOBALS_RESOLVE' not set
  [22:35:03.196] Environment variable 'R_FUTURE_LAZY_ASSERTOWNER' not set
  [22:35:03.196] Environment variable 'R_FUTURE_PLAN' not set
  [22:35:03.197] Environment variable 'R_FUTURE_PLAN_DISALLOW' not set
  [22:35:03.197] Environment variable 'R_FUTURE_PSOCK_RELAY_IMMEDIATE' not set
  [22:35:03.197] Environment variable 'R_FUTURE_RELAY_IMMEDIATE' not set
  [22:35:03.197] Environment variable 'R_FUTURE_RESOLVE_RECURSIVE' not set
  [22:35:03.198] Environment variable 'R_FUTURE_ALIVE_TIMEOUT' not set
  [22:35:03.198] Environment variable 'R_FUTURE_RESOLVED_TIMEOUT' not set
  [22:35:03.198] Environment variable 'R_FUTURE_CLUSTER_RESOLVED_TIMEOUT' not set
  [22:35:03.198] Environment variable 'R_FUTURE_MULTICORE_RESOLVED_TIMEOUT' not set
  [22:35:03.199] Environment variable 'R_FUTURE_ONFUTURECONDITION_KEEPFUTURE' not set
  [22:35:03.199] Environment variable 'R_FUTURE_RNG_ONMISUSE' not set
  [22:35:03.199] Environment variable 'R_FUTURE_GLOBALENV_ONMISUSE' not set
  [22:35:03.199] Environment variable 'R_FUTURE_WAIT_TIMEOUT' not set
  [22:35:03.200] Environment variable 'R_FUTURE_WAIT_INTERVAL' not set
  [22:35:03.200] Environment variable 'R_FUTURE_WAIT_ALPHA' not set
  [22:35:03.200] Environment variable 'R_FUTURE_ASSIGN_GLOBALS_EXCLUDE' not set
  [22:35:03.200] Environment variable 'R_FUTURE_OUTPUT_WINDOWS_REENCODE' not set
  [22:35:03.201] Environment variable 'R_FUTURE_GLOBALS_GLOBALSOF_LOCALS' not set
  [22:35:03.201] Environment variable 'R_FUTURE_STATE_ONINVALID' not set
  [22:35:03.201] Environment variable 'R_FUTURE_JOURNAL' not set
  [22:35:03.201] Environment variable 'R_FUTURE_GLOBALS_KEEPWHERE' not set
  [22:35:03.203] R process uuid: f335ed43-b455-ff42-68ce-5dc60fd5a7d1
  [22:35:03.203] Setting plan('default')
  [22:35:03.204] plan(): Setting new future strategy stack:
  [22:35:03.204] List of future strategies:
  [22:35:03.204] 1. sequential:
  [22:35:03.204]    - args: function (..., envir = parent.frame(), workers = "<NULL>")
  [22:35:03.204]    - tweaked: FALSE
  [22:35:03.204]    - call: NULL
  [22:35:03.207] plan(): nbrOfWorkers() = 1
  [22:35:03.296] plan(): Setting new future strategy stack:
  [22:35:03.297] List of future strategies:
  [22:35:03.297] 1. mirai_multisession:
  [22:35:03.297]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:35:03.297]    - tweaked: FALSE
  [22:35:03.297]    - call: future::plan(future.mirai::mirai_multisession)
  [22:35:03.322] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:35:03.322] < mirai [$data] >
  [22:35:03.375] getGlobalsAndPackages() ...
  [22:35:03.375] Not searching for globals
  [22:35:03.376] - globals: [0] <none>
  [22:35:03.376] getGlobalsAndPackages() ... DONE
  [22:35:03.377] getGlobalsAndPackages() ...
  [22:35:03.377] 
  [22:35:03.377] - globals: [0] <none>
  [22:35:03.377] getGlobalsAndPackages() ... DONE
  [22:35:04.545] Packages needed by the future expression (n = 0): <none>
  [22:35:04.545] Packages needed by future strategies (n = 0): <none>
  [22:35:04.547] {
  [22:35:04.547]     {
  [22:35:04.547]         {
  [22:35:04.547]             ...future.startTime <- base::Sys.time()
  [22:35:04.547]             {
  [22:35:04.547]                 {
  [22:35:04.547]                   {
  [22:35:04.547]                     base::local({
  [22:35:04.547]                       has_future <- base::requireNamespace("future", 
  [22:35:04.547]                         quietly = TRUE)
  [22:35:04.547]                       if (has_future) {
  [22:35:04.547]                         ns <- base::getNamespace("future")
  [22:35:04.547]                         version <- ns[[".package"]][["version"]]
  [22:35:04.547]                         if (is.null(version)) 
  [22:35:04.547]                           version <- utils::packageVersion("future")
  [22:35:04.547]                       }
  [22:35:04.547]                       else {
  [22:35:04.547]                         version <- NULL
  [22:35:04.547]                       }
  [22:35:04.547]                       if (!has_future || version < "1.8.0") {
  [22:35:04.547]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:35:04.547]                           "", base::R.version$version.string), 
  [22:35:04.547]                           platform = base::sprintf("%s (%s-bit)", 
  [22:35:04.547]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:35:04.547]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:35:04.547]                             "release", "version")], collapse = " "), 
  [22:35:04.547]                           hostname = base::Sys.info()[["nodename"]])
  [22:35:04.547]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:35:04.547]                           info)
  [22:35:04.547]                         info <- base::paste(info, collapse = "; ")
  [22:35:04.547]                         if (!has_future) {
  [22:35:04.547]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:35:04.547]                             info)
  [22:35:04.547]                         }
  [22:35:04.547]                         else {
  [22:35:04.547]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:35:04.547]                             info, version)
  [22:35:04.547]                         }
  [22:35:04.547]                         base::stop(msg)
  [22:35:04.547]                       }
  [22:35:04.547]                     })
  [22:35:04.547]                   }
  [22:35:04.547]                   ...future.strategy.old <- future::plan("list")
  [22:35:04.547]                   options(future.plan = NULL)
  [22:35:04.547]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:35:04.547]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:35:04.547]                 }
  [22:35:04.547]                 ...future.workdir <- getwd()
  [22:35:04.547]             }
  [22:35:04.547]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:35:04.547]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:35:04.547]         }
  [22:35:04.547]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:35:04.547]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:35:04.547]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:35:04.547]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:35:04.547]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:35:04.547]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:35:04.547]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:35:04.547]             base::names(...future.oldOptions))
  [22:35:04.547]     }
  [22:35:04.547]     if (FALSE) {
  [22:35:04.547]     }
  [22:35:04.547]     else {
  [22:35:04.547]         if (TRUE) {
  [22:35:04.547]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:35:04.547]                 open = "w")
  [22:35:04.547]         }
  [22:35:04.547]         else {
  [22:35:04.547]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:35:04.547]                 windows = "NUL", "/dev/null"), open = "w")
  [22:35:04.547]         }
  [22:35:04.547]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:35:04.547]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:35:04.547]             base::sink(type = "output", split = FALSE)
  [22:35:04.547]             base::close(...future.stdout)
  [22:35:04.547]         }, add = TRUE)
  [22:35:04.547]     }
  [22:35:04.547]     ...future.frame <- base::sys.nframe()
  [22:35:04.547]     ...future.conditions <- base::list()
  [22:35:04.547]     ...future.rng <- base::globalenv()$.Random.seed
  [22:35:04.547]     if (FALSE) {
  [22:35:04.547]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:35:04.547]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:35:04.547]     }
  [22:35:04.547]     ...future.result <- base::tryCatch({
  [22:35:04.547]         base::withCallingHandlers({
  [22:35:04.547]             ...future.value <- base::withVisible(base::local(NA))
  [22:35:04.547]             future::FutureResult(value = ...future.value$value, 
  [22:35:04.547]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:35:04.547]                   ...future.rng), globalenv = if (FALSE) 
  [22:35:04.547]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:35:04.547]                     ...future.globalenv.names))
  [22:35:04.547]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:35:04.547]         }, condition = base::local({
  [22:35:04.547]             c <- base::c
  [22:35:04.547]             inherits <- base::inherits
  [22:35:04.547]             invokeRestart <- base::invokeRestart
  [22:35:04.547]             length <- base::length
  [22:35:04.547]             list <- base::list
  [22:35:04.547]             seq.int <- base::seq.int
  [22:35:04.547]             signalCondition <- base::signalCondition
  [22:35:04.547]             sys.calls <- base::sys.calls
  [22:35:04.547]             `[[` <- base::`[[`
  [22:35:04.547]             `+` <- base::`+`
  [22:35:04.547]             `<<-` <- base::`<<-`
  [22:35:04.547]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:35:04.547]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:35:04.547]                   3L)]
  [22:35:04.547]             }
  [22:35:04.547]             function(cond) {
  [22:35:04.547]                 is_error <- inherits(cond, "error")
  [22:35:04.547]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:35:04.547]                   NULL)
  [22:35:04.547]                 if (is_error) {
  [22:35:04.547]                   sessionInformation <- function() {
  [22:35:04.547]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:35:04.547]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:35:04.547]                       search = base::search(), system = base::Sys.info())
  [22:35:04.547]                   }
  [22:35:04.547]                   ...future.conditions[[length(...future.conditions) + 
  [22:35:04.547]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:35:04.547]                     cond$call), session = sessionInformation(), 
  [22:35:04.547]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:35:04.547]                   signalCondition(cond)
  [22:35:04.547]                 }
  [22:35:04.547]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:35:04.547]                   signal <- FALSE && inherits(cond, character(0))
  [22:35:04.547]                   ...future.conditions[[length(...future.conditions) + 
  [22:35:04.547]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:35:04.547]                   if (FALSE && !signal) {
  [22:35:04.547]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:35:04.547]                     {
  [22:35:04.547]                       inherits <- base::inherits
  [22:35:04.547]                       invokeRestart <- base::invokeRestart
  [22:35:04.547]                       is.null <- base::is.null
  [22:35:04.547]                       muffled <- FALSE
  [22:35:04.547]                       if (inherits(cond, "message")) {
  [22:35:04.547]                         muffled <- grepl(pattern, "muffleMessage")
  [22:35:04.547]                         if (muffled) 
  [22:35:04.547]                           invokeRestart("muffleMessage")
  [22:35:04.547]                       }
  [22:35:04.547]                       else if (inherits(cond, "warning")) {
  [22:35:04.547]                         muffled <- grepl(pattern, "muffleWarning")
  [22:35:04.547]                         if (muffled) 
  [22:35:04.547]                           invokeRestart("muffleWarning")
  [22:35:04.547]                       }
  [22:35:04.547]                       else if (inherits(cond, "condition")) {
  [22:35:04.547]                         if (!is.null(pattern)) {
  [22:35:04.547]                           computeRestarts <- base::computeRestarts
  [22:35:04.547]                           grepl <- base::grepl
  [22:35:04.547]                           restarts <- computeRestarts(cond)
  [22:35:04.547]                           for (restart in restarts) {
  [22:35:04.547]                             name <- restart$name
  [22:35:04.547]                             if (is.null(name)) 
  [22:35:04.547]                               next
  [22:35:04.547]                             if (!grepl(pattern, name)) 
  [22:35:04.547]                               next
  [22:35:04.547]                             invokeRestart(restart)
  [22:35:04.547]                             muffled <- TRUE
  [22:35:04.547]                             break
  [22:35:04.547]                           }
  [22:35:04.547]                         }
  [22:35:04.547]                       }
  [22:35:04.547]                       invisible(muffled)
  [22:35:04.547]                     }
  [22:35:04.547]                     muffleCondition(cond, pattern = "^muffle")
  [22:35:04.547]                   }
  [22:35:04.547]                 }
  [22:35:04.547]                 else {
  [22:35:04.547]                   if (TRUE) {
  [22:35:04.547]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:35:04.547]                     {
  [22:35:04.547]                       inherits <- base::inherits
  [22:35:04.547]                       invokeRestart <- base::invokeRestart
  [22:35:04.547]                       is.null <- base::is.null
  [22:35:04.547]                       muffled <- FALSE
  [22:35:04.547]                       if (inherits(cond, "message")) {
  [22:35:04.547]                         muffled <- grepl(pattern, "muffleMessage")
  [22:35:04.547]                         if (muffled) 
  [22:35:04.547]                           invokeRestart("muffleMessage")
  [22:35:04.547]                       }
  [22:35:04.547]                       else if (inherits(cond, "warning")) {
  [22:35:04.547]                         muffled <- grepl(pattern, "muffleWarning")
  [22:35:04.547]                         if (muffled) 
  [22:35:04.547]                           invokeRestart("muffleWarning")
  [22:35:04.547]                       }
  [22:35:04.547]                       else if (inherits(cond, "condition")) {
  [22:35:04.547]                         if (!is.null(pattern)) {
  [22:35:04.547]                           computeRestarts <- base::computeRestarts
  [22:35:04.547]                           grepl <- base::grepl
  [22:35:04.547]                           restarts <- computeRestarts(cond)
  [22:35:04.547]                           for (restart in restarts) {
  [22:35:04.547]                             name <- restart$name
  [22:35:04.547]                             if (is.null(name)) 
  [22:35:04.547]                               next
  [22:35:04.547]                             if (!grepl(pattern, name)) 
  [22:35:04.547]                               next
  [22:35:04.547]                             invokeRestart(restart)
  [22:35:04.547]                             muffled <- TRUE
  [22:35:04.547]                             break
  [22:35:04.547]                           }
  [22:35:04.547]                         }
  [22:35:04.547]                       }
  [22:35:04.547]                       invisible(muffled)
  [22:35:04.547]                     }
  [22:35:04.547]                     muffleCondition(cond, pattern = "^muffle")
  [22:35:04.547]                   }
  [22:35:04.547]                 }
  [22:35:04.547]             }
  [22:35:04.547]         }))
  [22:35:04.547]     }, error = function(ex) {
  [22:35:04.547]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:35:04.547]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:35:04.547]                 ...future.rng), started = ...future.startTime, 
  [22:35:04.547]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:35:04.547]             version = "1.8"), class = "FutureResult")
  [22:35:04.547]     }, finally = {
  [22:35:04.547]         if (!identical(...future.workdir, getwd())) 
  [22:35:04.547]             setwd(...future.workdir)
  [22:35:04.547]         {
  [22:35:04.547]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:35:04.547]                 ...future.oldOptions$nwarnings <- NULL
  [22:35:04.547]             }
  [22:35:04.547]             base::options(...future.oldOptions)
  [22:35:04.547]             if (.Platform$OS.type == "windows") {
  [22:35:04.547]                 old_names <- names(...future.oldEnvVars)
  [22:35:04.547]                 envs <- base::Sys.getenv()
  [22:35:04.547]                 names <- names(envs)
  [22:35:04.547]                 common <- intersect(names, old_names)
  [22:35:04.547]                 added <- setdiff(names, old_names)
  [22:35:04.547]                 removed <- setdiff(old_names, names)
  [22:35:04.547]                 changed <- common[...future.oldEnvVars[common] != 
  [22:35:04.547]                   envs[common]]
  [22:35:04.547]                 NAMES <- toupper(changed)
  [22:35:04.547]                 args <- list()
  [22:35:04.547]                 for (kk in seq_along(NAMES)) {
  [22:35:04.547]                   name <- changed[[kk]]
  [22:35:04.547]                   NAME <- NAMES[[kk]]
  [22:35:04.547]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:04.547]                     next
  [22:35:04.547]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:35:04.547]                 }
  [22:35:04.547]                 NAMES <- toupper(added)
  [22:35:04.547]                 for (kk in seq_along(NAMES)) {
  [22:35:04.547]                   name <- added[[kk]]
  [22:35:04.547]                   NAME <- NAMES[[kk]]
  [22:35:04.547]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:04.547]                     next
  [22:35:04.547]                   args[[name]] <- ""
  [22:35:04.547]                 }
  [22:35:04.547]                 NAMES <- toupper(removed)
  [22:35:04.547]                 for (kk in seq_along(NAMES)) {
  [22:35:04.547]                   name <- removed[[kk]]
  [22:35:04.547]                   NAME <- NAMES[[kk]]
  [22:35:04.547]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:04.547]                     next
  [22:35:04.547]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:35:04.547]                 }
  [22:35:04.547]                 if (length(args) > 0) 
  [22:35:04.547]                   base::do.call(base::Sys.setenv, args = args)
  [22:35:04.547]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:35:04.547]             }
  [22:35:04.547]             else {
  [22:35:04.547]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:35:04.547]             }
  [22:35:04.547]             {
  [22:35:04.547]                 if (base::length(...future.futureOptionsAdded) > 
  [22:35:04.547]                   0L) {
  [22:35:04.547]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:35:04.547]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:35:04.547]                   base::options(opts)
  [22:35:04.547]                 }
  [22:35:04.547]                 {
  [22:35:04.547]                   NULL
  [22:35:04.547]                   options(future.plan = NULL)
  [22:35:04.547]                   if (is.na(NA_character_)) 
  [22:35:04.547]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:35:04.547]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:35:04.547]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:35:04.547]                     .init = FALSE)
  [22:35:04.547]                 }
  [22:35:04.547]             }
  [22:35:04.547]         }
  [22:35:04.547]     })
  [22:35:04.547]     if (TRUE) {
  [22:35:04.547]         base::sink(type = "output", split = FALSE)
  [22:35:04.547]         if (TRUE) {
  [22:35:04.547]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:35:04.547]         }
  [22:35:04.547]         else {
  [22:35:04.547]             ...future.result["stdout"] <- base::list(NULL)
  [22:35:04.547]         }
  [22:35:04.547]         base::close(...future.stdout)
  [22:35:04.547]         ...future.stdout <- NULL
  [22:35:04.547]     }
  [22:35:04.547]     ...future.result$conditions <- ...future.conditions
  [22:35:04.547]     ...future.result$finished <- base::Sys.time()
  [22:35:04.547]     ...future.result
  [22:35:04.547] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/rng.R’ failed.
Complete output:
  > source("incl/start.R")
  Loading required package: future
  [22:35:05.246] plan(): Setting new future strategy stack:
  [22:35:05.247] List of future strategies:
  [22:35:05.247] 1. mirai_multisession:
  [22:35:05.247]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:35:05.247]    - tweaked: FALSE
  [22:35:05.247]    - call: future::plan(future.mirai::mirai_multisession)
  [22:35:05.272] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:35:05.272] < mirai [$data] >
  [22:35:05.340] getGlobalsAndPackages() ...
  [22:35:05.340] Not searching for globals
  [22:35:05.341] - globals: [0] <none>
  [22:35:05.341] getGlobalsAndPackages() ... DONE
  [22:35:05.342] getGlobalsAndPackages() ...
  [22:35:05.342] 
  [22:35:05.342] - globals: [0] <none>
  [22:35:05.342] getGlobalsAndPackages() ... DONE
  [22:35:06.503] Packages needed by the future expression (n = 0): <none>
  [22:35:06.503] Packages needed by future strategies (n = 0): <none>
  [22:35:06.505] {
  [22:35:06.505]     {
  [22:35:06.505]         {
  [22:35:06.505]             ...future.startTime <- base::Sys.time()
  [22:35:06.505]             {
  [22:35:06.505]                 {
  [22:35:06.505]                   {
  [22:35:06.505]                     base::local({
  [22:35:06.505]                       has_future <- base::requireNamespace("future", 
  [22:35:06.505]                         quietly = TRUE)
  [22:35:06.505]                       if (has_future) {
  [22:35:06.505]                         ns <- base::getNamespace("future")
  [22:35:06.505]                         version <- ns[[".package"]][["version"]]
  [22:35:06.505]                         if (is.null(version)) 
  [22:35:06.505]                           version <- utils::packageVersion("future")
  [22:35:06.505]                       }
  [22:35:06.505]                       else {
  [22:35:06.505]                         version <- NULL
  [22:35:06.505]                       }
  [22:35:06.505]                       if (!has_future || version < "1.8.0") {
  [22:35:06.505]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:35:06.505]                           "", base::R.version$version.string), 
  [22:35:06.505]                           platform = base::sprintf("%s (%s-bit)", 
  [22:35:06.505]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:35:06.505]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:35:06.505]                             "release", "version")], collapse = " "), 
  [22:35:06.505]                           hostname = base::Sys.info()[["nodename"]])
  [22:35:06.505]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:35:06.505]                           info)
  [22:35:06.505]                         info <- base::paste(info, collapse = "; ")
  [22:35:06.505]                         if (!has_future) {
  [22:35:06.505]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:35:06.505]                             info)
  [22:35:06.505]                         }
  [22:35:06.505]                         else {
  [22:35:06.505]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:35:06.505]                             info, version)
  [22:35:06.505]                         }
  [22:35:06.505]                         base::stop(msg)
  [22:35:06.505]                       }
  [22:35:06.505]                     })
  [22:35:06.505]                   }
  [22:35:06.505]                   ...future.strategy.old <- future::plan("list")
  [22:35:06.505]                   options(future.plan = NULL)
  [22:35:06.505]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:35:06.505]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:35:06.505]                 }
  [22:35:06.505]                 ...future.workdir <- getwd()
  [22:35:06.505]             }
  [22:35:06.505]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:35:06.505]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:35:06.505]         }
  [22:35:06.505]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:35:06.505]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:35:06.505]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:35:06.505]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:35:06.505]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:35:06.505]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:35:06.505]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:35:06.505]             base::names(...future.oldOptions))
  [22:35:06.505]     }
  [22:35:06.505]     if (FALSE) {
  [22:35:06.505]     }
  [22:35:06.505]     else {
  [22:35:06.505]         if (TRUE) {
  [22:35:06.505]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:35:06.505]                 open = "w")
  [22:35:06.505]         }
  [22:35:06.505]         else {
  [22:35:06.505]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:35:06.505]                 windows = "NUL", "/dev/null"), open = "w")
  [22:35:06.505]         }
  [22:35:06.505]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:35:06.505]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:35:06.505]             base::sink(type = "output", split = FALSE)
  [22:35:06.505]             base::close(...future.stdout)
  [22:35:06.505]         }, add = TRUE)
  [22:35:06.505]     }
  [22:35:06.505]     ...future.frame <- base::sys.nframe()
  [22:35:06.505]     ...future.conditions <- base::list()
  [22:35:06.505]     ...future.rng <- base::globalenv()$.Random.seed
  [22:35:06.505]     if (FALSE) {
  [22:35:06.505]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:35:06.505]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:35:06.505]     }
  [22:35:06.505]     ...future.result <- base::tryCatch({
  [22:35:06.505]         base::withCallingHandlers({
  [22:35:06.505]             ...future.value <- base::withVisible(base::local(NA))
  [22:35:06.505]             future::FutureResult(value = ...future.value$value, 
  [22:35:06.505]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:35:06.505]                   ...future.rng), globalenv = if (FALSE) 
  [22:35:06.505]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:35:06.505]                     ...future.globalenv.names))
  [22:35:06.505]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:35:06.505]         }, condition = base::local({
  [22:35:06.505]             c <- base::c
  [22:35:06.505]             inherits <- base::inherits
  [22:35:06.505]             invokeRestart <- base::invokeRestart
  [22:35:06.505]             length <- base::length
  [22:35:06.505]             list <- base::list
  [22:35:06.505]             seq.int <- base::seq.int
  [22:35:06.505]             signalCondition <- base::signalCondition
  [22:35:06.505]             sys.calls <- base::sys.calls
  [22:35:06.505]             `[[` <- base::`[[`
  [22:35:06.505]             `+` <- base::`+`
  [22:35:06.505]             `<<-` <- base::`<<-`
  [22:35:06.505]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:35:06.505]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:35:06.505]                   3L)]
  [22:35:06.505]             }
  [22:35:06.505]             function(cond) {
  [22:35:06.505]                 is_error <- inherits(cond, "error")
  [22:35:06.505]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:35:06.505]                   NULL)
  [22:35:06.505]                 if (is_error) {
  [22:35:06.505]                   sessionInformation <- function() {
  [22:35:06.505]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:35:06.505]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:35:06.505]                       search = base::search(), system = base::Sys.info())
  [22:35:06.505]                   }
  [22:35:06.505]                   ...future.conditions[[length(...future.conditions) + 
  [22:35:06.505]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:35:06.505]                     cond$call), session = sessionInformation(), 
  [22:35:06.505]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:35:06.505]                   signalCondition(cond)
  [22:35:06.505]                 }
  [22:35:06.505]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:35:06.505]                   signal <- FALSE && inherits(cond, character(0))
  [22:35:06.505]                   ...future.conditions[[length(...future.conditions) + 
  [22:35:06.505]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:35:06.505]                   if (FALSE && !signal) {
  [22:35:06.505]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:35:06.505]                     {
  [22:35:06.505]                       inherits <- base::inherits
  [22:35:06.505]                       invokeRestart <- base::invokeRestart
  [22:35:06.505]                       is.null <- base::is.null
  [22:35:06.505]                       muffled <- FALSE
  [22:35:06.505]                       if (inherits(cond, "message")) {
  [22:35:06.505]                         muffled <- grepl(pattern, "muffleMessage")
  [22:35:06.505]                         if (muffled) 
  [22:35:06.505]                           invokeRestart("muffleMessage")
  [22:35:06.505]                       }
  [22:35:06.505]                       else if (inherits(cond, "warning")) {
  [22:35:06.505]                         muffled <- grepl(pattern, "muffleWarning")
  [22:35:06.505]                         if (muffled) 
  [22:35:06.505]                           invokeRestart("muffleWarning")
  [22:35:06.505]                       }
  [22:35:06.505]                       else if (inherits(cond, "condition")) {
  [22:35:06.505]                         if (!is.null(pattern)) {
  [22:35:06.505]                           computeRestarts <- base::computeRestarts
  [22:35:06.505]                           grepl <- base::grepl
  [22:35:06.505]                           restarts <- computeRestarts(cond)
  [22:35:06.505]                           for (restart in restarts) {
  [22:35:06.505]                             name <- restart$name
  [22:35:06.505]                             if (is.null(name)) 
  [22:35:06.505]                               next
  [22:35:06.505]                             if (!grepl(pattern, name)) 
  [22:35:06.505]                               next
  [22:35:06.505]                             invokeRestart(restart)
  [22:35:06.505]                             muffled <- TRUE
  [22:35:06.505]                             break
  [22:35:06.505]                           }
  [22:35:06.505]                         }
  [22:35:06.505]                       }
  [22:35:06.505]                       invisible(muffled)
  [22:35:06.505]                     }
  [22:35:06.505]                     muffleCondition(cond, pattern = "^muffle")
  [22:35:06.505]                   }
  [22:35:06.505]                 }
  [22:35:06.505]                 else {
  [22:35:06.505]                   if (TRUE) {
  [22:35:06.505]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:35:06.505]                     {
  [22:35:06.505]                       inherits <- base::inherits
  [22:35:06.505]                       invokeRestart <- base::invokeRestart
  [22:35:06.505]                       is.null <- base::is.null
  [22:35:06.505]                       muffled <- FALSE
  [22:35:06.505]                       if (inherits(cond, "message")) {
  [22:35:06.505]                         muffled <- grepl(pattern, "muffleMessage")
  [22:35:06.505]                         if (muffled) 
  [22:35:06.505]                           invokeRestart("muffleMessage")
  [22:35:06.505]                       }
  [22:35:06.505]                       else if (inherits(cond, "warning")) {
  [22:35:06.505]                         muffled <- grepl(pattern, "muffleWarning")
  [22:35:06.505]                         if (muffled) 
  [22:35:06.505]                           invokeRestart("muffleWarning")
  [22:35:06.505]                       }
  [22:35:06.505]                       else if (inherits(cond, "condition")) {
  [22:35:06.505]                         if (!is.null(pattern)) {
  [22:35:06.505]                           computeRestarts <- base::computeRestarts
  [22:35:06.505]                           grepl <- base::grepl
  [22:35:06.505]                           restarts <- computeRestarts(cond)
  [22:35:06.505]                           for (restart in restarts) {
  [22:35:06.505]                             name <- restart$name
  [22:35:06.505]                             if (is.null(name)) 
  [22:35:06.505]                               next
  [22:35:06.505]                             if (!grepl(pattern, name)) 
  [22:35:06.505]                               next
  [22:35:06.505]                             invokeRestart(restart)
  [22:35:06.505]                             muffled <- TRUE
  [22:35:06.505]                             break
  [22:35:06.505]                           }
  [22:35:06.505]                         }
  [22:35:06.505]                       }
  [22:35:06.505]                       invisible(muffled)
  [22:35:06.505]                     }
  [22:35:06.505]                     muffleCondition(cond, pattern = "^muffle")
  [22:35:06.505]                   }
  [22:35:06.505]                 }
  [22:35:06.505]             }
  [22:35:06.505]         }))
  [22:35:06.505]     }, error = function(ex) {
  [22:35:06.505]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:35:06.505]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:35:06.505]                 ...future.rng), started = ...future.startTime, 
  [22:35:06.505]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:35:06.505]             version = "1.8"), class = "FutureResult")
  [22:35:06.505]     }, finally = {
  [22:35:06.505]         if (!identical(...future.workdir, getwd())) 
  [22:35:06.505]             setwd(...future.workdir)
  [22:35:06.505]         {
  [22:35:06.505]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:35:06.505]                 ...future.oldOptions$nwarnings <- NULL
  [22:35:06.505]             }
  [22:35:06.505]             base::options(...future.oldOptions)
  [22:35:06.505]             if (.Platform$OS.type == "windows") {
  [22:35:06.505]                 old_names <- names(...future.oldEnvVars)
  [22:35:06.505]                 envs <- base::Sys.getenv()
  [22:35:06.505]                 names <- names(envs)
  [22:35:06.505]                 common <- intersect(names, old_names)
  [22:35:06.505]                 added <- setdiff(names, old_names)
  [22:35:06.505]                 removed <- setdiff(old_names, names)
  [22:35:06.505]                 changed <- common[...future.oldEnvVars[common] != 
  [22:35:06.505]                   envs[common]]
  [22:35:06.505]                 NAMES <- toupper(changed)
  [22:35:06.505]                 args <- list()
  [22:35:06.505]                 for (kk in seq_along(NAMES)) {
  [22:35:06.505]                   name <- changed[[kk]]
  [22:35:06.505]                   NAME <- NAMES[[kk]]
  [22:35:06.505]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:06.505]                     next
  [22:35:06.505]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:35:06.505]                 }
  [22:35:06.505]                 NAMES <- toupper(added)
  [22:35:06.505]                 for (kk in seq_along(NAMES)) {
  [22:35:06.505]                   name <- added[[kk]]
  [22:35:06.505]                   NAME <- NAMES[[kk]]
  [22:35:06.505]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:06.505]                     next
  [22:35:06.505]                   args[[name]] <- ""
  [22:35:06.505]                 }
  [22:35:06.505]                 NAMES <- toupper(removed)
  [22:35:06.505]                 for (kk in seq_along(NAMES)) {
  [22:35:06.505]                   name <- removed[[kk]]
  [22:35:06.505]                   NAME <- NAMES[[kk]]
  [22:35:06.505]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:06.505]                     next
  [22:35:06.505]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:35:06.505]                 }
  [22:35:06.505]                 if (length(args) > 0) 
  [22:35:06.505]                   base::do.call(base::Sys.setenv, args = args)
  [22:35:06.505]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:35:06.505]             }
  [22:35:06.505]             else {
  [22:35:06.505]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:35:06.505]             }
  [22:35:06.505]             {
  [22:35:06.505]                 if (base::length(...future.futureOptionsAdded) > 
  [22:35:06.505]                   0L) {
  [22:35:06.505]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:35:06.505]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:35:06.505]                   base::options(opts)
  [22:35:06.505]                 }
  [22:35:06.505]                 {
  [22:35:06.505]                   NULL
  [22:35:06.505]                   options(future.plan = NULL)
  [22:35:06.505]                   if (is.na(NA_character_)) 
  [22:35:06.505]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:35:06.505]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:35:06.505]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:35:06.505]                     .init = FALSE)
  [22:35:06.505]                 }
  [22:35:06.505]             }
  [22:35:06.505]         }
  [22:35:06.505]     })
  [22:35:06.505]     if (TRUE) {
  [22:35:06.505]         base::sink(type = "output", split = FALSE)
  [22:35:06.505]         if (TRUE) {
  [22:35:06.505]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:35:06.505]         }
  [22:35:06.505]         else {
  [22:35:06.505]             ...future.result["stdout"] <- base::list(NULL)
  [22:35:06.505]         }
  [22:35:06.505]         base::close(...future.stdout)
  [22:35:06.505]         ...future.stdout <- NULL
  [22:35:06.505]     }
  [22:35:06.505]     ...future.result$conditions <- ...future.conditions
  [22:35:06.505]     ...future.result$finished <- base::Sys.time()
  [22:35:06.505]     ...future.result
  [22:35:06.505] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/stdout.R’ failed.
Complete output:
  > source("incl/start.R")
  Loading required package: future
  [22:35:07.508] plan(): Setting new future strategy stack:
  [22:35:07.508] List of future strategies:
  [22:35:07.508] 1. mirai_multisession:
  [22:35:07.508]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:35:07.508]    - tweaked: FALSE
  [22:35:07.508]    - call: future::plan(future.mirai::mirai_multisession)
  [22:35:07.535] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:35:07.535] < mirai [$data] >
  [22:35:07.624] getGlobalsAndPackages() ...
  [22:35:07.624] Not searching for globals
  [22:35:07.624] - globals: [0] <none>
  [22:35:07.625] getGlobalsAndPackages() ... DONE
  [22:35:07.625] getGlobalsAndPackages() ...
  [22:35:07.626] 
  [22:35:07.626] - globals: [0] <none>
  [22:35:07.626] getGlobalsAndPackages() ... DONE
  [22:35:08.703] Packages needed by the future expression (n = 0): <none>
  [22:35:08.703] Packages needed by future strategies (n = 0): <none>
  [22:35:08.705] {
  [22:35:08.705]     {
  [22:35:08.705]         {
  [22:35:08.705]             ...future.startTime <- base::Sys.time()
  [22:35:08.705]             {
  [22:35:08.705]                 {
  [22:35:08.705]                   {
  [22:35:08.705]                     base::local({
  [22:35:08.705]                       has_future <- base::requireNamespace("future", 
  [22:35:08.705]                         quietly = TRUE)
  [22:35:08.705]                       if (has_future) {
  [22:35:08.705]                         ns <- base::getNamespace("future")
  [22:35:08.705]                         version <- ns[[".package"]][["version"]]
  [22:35:08.705]                         if (is.null(version)) 
  [22:35:08.705]                           version <- utils::packageVersion("future")
  [22:35:08.705]                       }
  [22:35:08.705]                       else {
  [22:35:08.705]                         version <- NULL
  [22:35:08.705]                       }
  [22:35:08.705]                       if (!has_future || version < "1.8.0") {
  [22:35:08.705]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:35:08.705]                           "", base::R.version$version.string), 
  [22:35:08.705]                           platform = base::sprintf("%s (%s-bit)", 
  [22:35:08.705]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:35:08.705]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:35:08.705]                             "release", "version")], collapse = " "), 
  [22:35:08.705]                           hostname = base::Sys.info()[["nodename"]])
  [22:35:08.705]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:35:08.705]                           info)
  [22:35:08.705]                         info <- base::paste(info, collapse = "; ")
  [22:35:08.705]                         if (!has_future) {
  [22:35:08.705]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:35:08.705]                             info)
  [22:35:08.705]                         }
  [22:35:08.705]                         else {
  [22:35:08.705]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:35:08.705]                             info, version)
  [22:35:08.705]                         }
  [22:35:08.705]                         base::stop(msg)
  [22:35:08.705]                       }
  [22:35:08.705]                     })
  [22:35:08.705]                   }
  [22:35:08.705]                   ...future.strategy.old <- future::plan("list")
  [22:35:08.705]                   options(future.plan = NULL)
  [22:35:08.705]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:35:08.705]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:35:08.705]                 }
  [22:35:08.705]                 ...future.workdir <- getwd()
  [22:35:08.705]             }
  [22:35:08.705]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:35:08.705]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:35:08.705]         }
  [22:35:08.705]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:35:08.705]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:35:08.705]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:35:08.705]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:35:08.705]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:35:08.705]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:35:08.705]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:35:08.705]             base::names(...future.oldOptions))
  [22:35:08.705]     }
  [22:35:08.705]     if (FALSE) {
  [22:35:08.705]     }
  [22:35:08.705]     else {
  [22:35:08.705]         if (TRUE) {
  [22:35:08.705]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:35:08.705]                 open = "w")
  [22:35:08.705]         }
  [22:35:08.705]         else {
  [22:35:08.705]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:35:08.705]                 windows = "NUL", "/dev/null"), open = "w")
  [22:35:08.705]         }
  [22:35:08.705]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:35:08.705]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:35:08.705]             base::sink(type = "output", split = FALSE)
  [22:35:08.705]             base::close(...future.stdout)
  [22:35:08.705]         }, add = TRUE)
  [22:35:08.705]     }
  [22:35:08.705]     ...future.frame <- base::sys.nframe()
  [22:35:08.705]     ...future.conditions <- base::list()
  [22:35:08.705]     ...future.rng <- base::globalenv()$.Random.seed
  [22:35:08.705]     if (FALSE) {
  [22:35:08.705]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:35:08.705]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:35:08.705]     }
  [22:35:08.705]     ...future.result <- base::tryCatch({
  [22:35:08.705]         base::withCallingHandlers({
  [22:35:08.705]             ...future.value <- base::withVisible(base::local(NA))
  [22:35:08.705]             future::FutureResult(value = ...future.value$value, 
  [22:35:08.705]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:35:08.705]                   ...future.rng), globalenv = if (FALSE) 
  [22:35:08.705]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:35:08.705]                     ...future.globalenv.names))
  [22:35:08.705]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:35:08.705]         }, condition = base::local({
  [22:35:08.705]             c <- base::c
  [22:35:08.705]             inherits <- base::inherits
  [22:35:08.705]             invokeRestart <- base::invokeRestart
  [22:35:08.705]             length <- base::length
  [22:35:08.705]             list <- base::list
  [22:35:08.705]             seq.int <- base::seq.int
  [22:35:08.705]             signalCondition <- base::signalCondition
  [22:35:08.705]             sys.calls <- base::sys.calls
  [22:35:08.705]             `[[` <- base::`[[`
  [22:35:08.705]             `+` <- base::`+`
  [22:35:08.705]             `<<-` <- base::`<<-`
  [22:35:08.705]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:35:08.705]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:35:08.705]                   3L)]
  [22:35:08.705]             }
  [22:35:08.705]             function(cond) {
  [22:35:08.705]                 is_error <- inherits(cond, "error")
  [22:35:08.705]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:35:08.705]                   NULL)
  [22:35:08.705]                 if (is_error) {
  [22:35:08.705]                   sessionInformation <- function() {
  [22:35:08.705]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:35:08.705]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:35:08.705]                       search = base::search(), system = base::Sys.info())
  [22:35:08.705]                   }
  [22:35:08.705]                   ...future.conditions[[length(...future.conditions) + 
  [22:35:08.705]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:35:08.705]                     cond$call), session = sessionInformation(), 
  [22:35:08.705]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:35:08.705]                   signalCondition(cond)
  [22:35:08.705]                 }
  [22:35:08.705]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:35:08.705]                   signal <- FALSE && inherits(cond, character(0))
  [22:35:08.705]                   ...future.conditions[[length(...future.conditions) + 
  [22:35:08.705]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:35:08.705]                   if (FALSE && !signal) {
  [22:35:08.705]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:35:08.705]                     {
  [22:35:08.705]                       inherits <- base::inherits
  [22:35:08.705]                       invokeRestart <- base::invokeRestart
  [22:35:08.705]                       is.null <- base::is.null
  [22:35:08.705]                       muffled <- FALSE
  [22:35:08.705]                       if (inherits(cond, "message")) {
  [22:35:08.705]                         muffled <- grepl(pattern, "muffleMessage")
  [22:35:08.705]                         if (muffled) 
  [22:35:08.705]                           invokeRestart("muffleMessage")
  [22:35:08.705]                       }
  [22:35:08.705]                       else if (inherits(cond, "warning")) {
  [22:35:08.705]                         muffled <- grepl(pattern, "muffleWarning")
  [22:35:08.705]                         if (muffled) 
  [22:35:08.705]                           invokeRestart("muffleWarning")
  [22:35:08.705]                       }
  [22:35:08.705]                       else if (inherits(cond, "condition")) {
  [22:35:08.705]                         if (!is.null(pattern)) {
  [22:35:08.705]                           computeRestarts <- base::computeRestarts
  [22:35:08.705]                           grepl <- base::grepl
  [22:35:08.705]                           restarts <- computeRestarts(cond)
  [22:35:08.705]                           for (restart in restarts) {
  [22:35:08.705]                             name <- restart$name
  [22:35:08.705]                             if (is.null(name)) 
  [22:35:08.705]                               next
  [22:35:08.705]                             if (!grepl(pattern, name)) 
  [22:35:08.705]                               next
  [22:35:08.705]                             invokeRestart(restart)
  [22:35:08.705]                             muffled <- TRUE
  [22:35:08.705]                             break
  [22:35:08.705]                           }
  [22:35:08.705]                         }
  [22:35:08.705]                       }
  [22:35:08.705]                       invisible(muffled)
  [22:35:08.705]                     }
  [22:35:08.705]                     muffleCondition(cond, pattern = "^muffle")
  [22:35:08.705]                   }
  [22:35:08.705]                 }
  [22:35:08.705]                 else {
  [22:35:08.705]                   if (TRUE) {
  [22:35:08.705]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:35:08.705]                     {
  [22:35:08.705]                       inherits <- base::inherits
  [22:35:08.705]                       invokeRestart <- base::invokeRestart
  [22:35:08.705]                       is.null <- base::is.null
  [22:35:08.705]                       muffled <- FALSE
  [22:35:08.705]                       if (inherits(cond, "message")) {
  [22:35:08.705]                         muffled <- grepl(pattern, "muffleMessage")
  [22:35:08.705]                         if (muffled) 
  [22:35:08.705]                           invokeRestart("muffleMessage")
  [22:35:08.705]                       }
  [22:35:08.705]                       else if (inherits(cond, "warning")) {
  [22:35:08.705]                         muffled <- grepl(pattern, "muffleWarning")
  [22:35:08.705]                         if (muffled) 
  [22:35:08.705]                           invokeRestart("muffleWarning")
  [22:35:08.705]                       }
  [22:35:08.705]                       else if (inherits(cond, "condition")) {
  [22:35:08.705]                         if (!is.null(pattern)) {
  [22:35:08.705]                           computeRestarts <- base::computeRestarts
  [22:35:08.705]                           grepl <- base::grepl
  [22:35:08.705]                           restarts <- computeRestarts(cond)
  [22:35:08.705]                           for (restart in restarts) {
  [22:35:08.705]                             name <- restart$name
  [22:35:08.705]                             if (is.null(name)) 
  [22:35:08.705]                               next
  [22:35:08.705]                             if (!grepl(pattern, name)) 
  [22:35:08.705]                               next
  [22:35:08.705]                             invokeRestart(restart)
  [22:35:08.705]                             muffled <- TRUE
  [22:35:08.705]                             break
  [22:35:08.705]                           }
  [22:35:08.705]                         }
  [22:35:08.705]                       }
  [22:35:08.705]                       invisible(muffled)
  [22:35:08.705]                     }
  [22:35:08.705]                     muffleCondition(cond, pattern = "^muffle")
  [22:35:08.705]                   }
  [22:35:08.705]                 }
  [22:35:08.705]             }
  [22:35:08.705]         }))
  [22:35:08.705]     }, error = function(ex) {
  [22:35:08.705]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:35:08.705]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:35:08.705]                 ...future.rng), started = ...future.startTime, 
  [22:35:08.705]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:35:08.705]             version = "1.8"), class = "FutureResult")
  [22:35:08.705]     }, finally = {
  [22:35:08.705]         if (!identical(...future.workdir, getwd())) 
  [22:35:08.705]             setwd(...future.workdir)
  [22:35:08.705]         {
  [22:35:08.705]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:35:08.705]                 ...future.oldOptions$nwarnings <- NULL
  [22:35:08.705]             }
  [22:35:08.705]             base::options(...future.oldOptions)
  [22:35:08.705]             if (.Platform$OS.type == "windows") {
  [22:35:08.705]                 old_names <- names(...future.oldEnvVars)
  [22:35:08.705]                 envs <- base::Sys.getenv()
  [22:35:08.705]                 names <- names(envs)
  [22:35:08.705]                 common <- intersect(names, old_names)
  [22:35:08.705]                 added <- setdiff(names, old_names)
  [22:35:08.705]                 removed <- setdiff(old_names, names)
  [22:35:08.705]                 changed <- common[...future.oldEnvVars[common] != 
  [22:35:08.705]                   envs[common]]
  [22:35:08.705]                 NAMES <- toupper(changed)
  [22:35:08.705]                 args <- list()
  [22:35:08.705]                 for (kk in seq_along(NAMES)) {
  [22:35:08.705]                   name <- changed[[kk]]
  [22:35:08.705]                   NAME <- NAMES[[kk]]
  [22:35:08.705]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:08.705]                     next
  [22:35:08.705]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:35:08.705]                 }
  [22:35:08.705]                 NAMES <- toupper(added)
  [22:35:08.705]                 for (kk in seq_along(NAMES)) {
  [22:35:08.705]                   name <- added[[kk]]
  [22:35:08.705]                   NAME <- NAMES[[kk]]
  [22:35:08.705]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:08.705]                     next
  [22:35:08.705]                   args[[name]] <- ""
  [22:35:08.705]                 }
  [22:35:08.705]                 NAMES <- toupper(removed)
  [22:35:08.705]                 for (kk in seq_along(NAMES)) {
  [22:35:08.705]                   name <- removed[[kk]]
  [22:35:08.705]                   NAME <- NAMES[[kk]]
  [22:35:08.705]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:08.705]                     next
  [22:35:08.705]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:35:08.705]                 }
  [22:35:08.705]                 if (length(args) > 0) 
  [22:35:08.705]                   base::do.call(base::Sys.setenv, args = args)
  [22:35:08.705]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:35:08.705]             }
  [22:35:08.705]             else {
  [22:35:08.705]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:35:08.705]             }
  [22:35:08.705]             {
  [22:35:08.705]                 if (base::length(...future.futureOptionsAdded) > 
  [22:35:08.705]                   0L) {
  [22:35:08.705]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:35:08.705]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:35:08.705]                   base::options(opts)
  [22:35:08.705]                 }
  [22:35:08.705]                 {
  [22:35:08.705]                   NULL
  [22:35:08.705]                   options(future.plan = NULL)
  [22:35:08.705]                   if (is.na(NA_character_)) 
  [22:35:08.705]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:35:08.705]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:35:08.705]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:35:08.705]                     .init = FALSE)
  [22:35:08.705]                 }
  [22:35:08.705]             }
  [22:35:08.705]         }
  [22:35:08.705]     })
  [22:35:08.705]     if (TRUE) {
  [22:35:08.705]         base::sink(type = "output", split = FALSE)
  [22:35:08.705]         if (TRUE) {
  [22:35:08.705]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:35:08.705]         }
  [22:35:08.705]         else {
  [22:35:08.705]             ...future.result["stdout"] <- base::list(NULL)
  [22:35:08.705]         }
  [22:35:08.705]         base::close(...future.stdout)
  [22:35:08.705]         ...future.stdout <- NULL
  [22:35:08.705]     }
  [22:35:08.705]     ...future.result$conditions <- ...future.conditions
  [22:35:08.705]     ...future.result$finished <- base::Sys.time()
  [22:35:08.705]     ...future.result
  [22:35:08.705] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted
Running the tests in ‘tests/zzz,future_lapply.R’ failed.
Complete output:
  > ## This requires mirai (>= 0.13.2)
  > if (packageVersion("mirai") >= "0.13.2") {
  + 
  + source("incl/start.R")
  + library("listenv")
  + 
  + if (requireNamespace("future.apply", quietly = TRUE)) {
  +   future_lapply <- future.apply::future_lapply
  +   
  +   strategies <- c("mirai_multisession")
  +   
  +   message("*** future_lapply() ...")
  +   
  +   message("- future_lapply(x, FUN = vector, ...) ...")
  +   
  +   x <- list(a = "integer", c = "character", c = "list")
  +   str(list(x = x))
  +   
  +   y0 <- lapply(x, FUN = vector, length = 2L)
  +   str(list(y0 = y0))
  +   
  +   for (strategy in strategies) {
  +     mprintf("- plan('%s') ...", strategy)
  +     plan(strategy)
  +     stopifnot(nbrOfWorkers() < Inf)
  +     
  +     for (scheduling in list(FALSE, TRUE)) {
  +       y <- future_lapply(x, FUN = vector, length = 2L,
  +                          future.scheduling = scheduling)
  +       str(list(y = y))
  +       stopifnot(identical(y, y0))
  +     }
  +   }
  +   
  +   
  +   message("- future_lapply(x, FUN = base::vector, ...) ...")
  +   
  +   x <- list(a = "integer", c = "character", c = "list")
  +   str(list(x = x))
  +   
  +   y0 <- lapply(x, FUN = base::vector, length = 2L)
  +   str(list(y0 = y0))
  +   
  +   for (strategy in strategies) {
  +     mprintf("- plan('%s') ...", strategy)
  +     plan(strategy)
  +     stopifnot(nbrOfWorkers() < Inf)
  +   
  +     for (scheduling in list(FALSE, TRUE)) {
  +       y <- future_lapply(x, FUN = base::vector, length = 2L,
  +                          future.scheduling = scheduling)
  +       str(list(y = y))
  +       stopifnot(identical(y, y0))
  +     }
  +   }
  +   
  +   message("- future_lapply(x, FUN = future:::hpaste, ...) ...")
  +   
  +   x <- list(a = c("hello", b = 1:100))
  +   str(list(x = x))
  +   
  +   y0 <- lapply(x, FUN = future:::hpaste, collapse = "; ", maxHead = 3L)
  +   str(list(y0 = y0))
  +   
  +   for (strategy in strategies) {
  +     mprintf("- plan('%s') ...", strategy)
  +     plan(strategy)
  +     stopifnot(nbrOfWorkers() < Inf)
  +   
  +     for (scheduling in list(FALSE, TRUE)) {
  +       y <- future_lapply(x, FUN = future:::hpaste, collapse = "; ",
  +                          maxHead = 3L, future.scheduling = scheduling)
  +       str(list(y = y))
  +       stopifnot(identical(y, y0))
  +     }
  +   }
  +   
  +   
  +   message("- future_lapply(x, FUN = listenv::listenv, ...) ...")
  +   
  +   x <- list()
  +   
  +   y <- listenv()
  +   y$A <- 3L
  +   x$a <- y
  +   
  +   y <- listenv()
  +   y$A <- 3L
  +   y$B <- c("hello", b = 1:100)
  +   x$b <- y
  +   
  +   print(x)
  +   
  +   y0 <- lapply(x, FUN = listenv::mapping)
  +   str(list(y0 = y0))
  +   
  +   for (strategy in strategies) {
  +     mprintf("- plan('%s') ...", strategy)
  +     plan(strategy)
  +     stopifnot(nbrOfWorkers() < Inf)
  +   
  +     for (scheduling in list(FALSE, TRUE)) {
  +       y <- future_lapply(x, FUN = listenv::mapping, future.scheduling = scheduling)
  +       str(list(y = y))
  +       stopifnot(identical(y, y0))
  +     }
  +   }
  +   
  +   
  +   message("- future_lapply(x, FUN, ...) for large length(x) ...")
  +   a <- 3.14
  +   x <- 1:1e6
  +   
  +   y <- future_lapply(x, FUN = function(z) sqrt(z + a))
  +   y <- unlist(y, use.names = FALSE)
  +   
  +   stopifnot(all.equal(y, sqrt(x + a)))
  +   
  +   
  +   message("- future_lapply() with global in non-attached package ...")
  +   library("tools")
  +   my_ext <- function(x) file_ext(x)
  +   y_truth <- lapply("abc.txt", FUN = my_ext)
  +   
  +   for (strategy in strategies) {
  +     plan(strategy)
  +     y <- future_lapply("abc.txt", FUN = my_ext)
  +     stopifnot(identical(y, y_truth))
  +   }
  +   
  +   message("*** future_lapply() ... DONE")
  + }
  + 
  + source("incl/end.R")
  + 
  + }
  Loading required package: future
  [22:35:09.449] plan(): Setting new future strategy stack:
  [22:35:09.449] List of future strategies:
  [22:35:09.449] 1. mirai_multisession:
  [22:35:09.449]    - args: function (expr, substitute = TRUE, envir = parent.frame(), ..., workers = availableCores())
  [22:35:09.449]    - tweaked: FALSE
  [22:35:09.449]    - call: future::plan(future.mirai::mirai_multisession)
  [22:35:09.474] plan(): plan_init() of 'mirai_multisession', 'mirai_cluster', 'mirai', 'multiprocess', 'future', 'function' ...
  [22:35:09.475] < mirai [$data] >
  [22:35:09.524] getGlobalsAndPackages() ...
  [22:35:09.525] Not searching for globals
  [22:35:09.525] - globals: [0] <none>
  [22:35:09.526] getGlobalsAndPackages() ... DONE
  [22:35:09.526] getGlobalsAndPackages() ...
  [22:35:09.526] 
  [22:35:09.527] - globals: [0] <none>
  [22:35:09.527] getGlobalsAndPackages() ... DONE
  [22:35:10.401] Packages needed by the future expression (n = 0): <none>
  [22:35:10.401] Packages needed by future strategies (n = 0): <none>
  [22:35:10.403] {
  [22:35:10.403]     {
  [22:35:10.403]         {
  [22:35:10.403]             ...future.startTime <- base::Sys.time()
  [22:35:10.403]             {
  [22:35:10.403]                 {
  [22:35:10.403]                   {
  [22:35:10.403]                     base::local({
  [22:35:10.403]                       has_future <- base::requireNamespace("future", 
  [22:35:10.403]                         quietly = TRUE)
  [22:35:10.403]                       if (has_future) {
  [22:35:10.403]                         ns <- base::getNamespace("future")
  [22:35:10.403]                         version <- ns[[".package"]][["version"]]
  [22:35:10.403]                         if (is.null(version)) 
  [22:35:10.403]                           version <- utils::packageVersion("future")
  [22:35:10.403]                       }
  [22:35:10.403]                       else {
  [22:35:10.403]                         version <- NULL
  [22:35:10.403]                       }
  [22:35:10.403]                       if (!has_future || version < "1.8.0") {
  [22:35:10.403]                         info <- base::c(r_version = base::gsub("R version ", 
  [22:35:10.403]                           "", base::R.version$version.string), 
  [22:35:10.403]                           platform = base::sprintf("%s (%s-bit)", 
  [22:35:10.403]                             base::R.version$platform, 8 * base::.Machine$sizeof.pointer), 
  [22:35:10.403]                           os = base::paste(base::Sys.info()[base::c("sysname", 
  [22:35:10.403]                             "release", "version")], collapse = " "), 
  [22:35:10.403]                           hostname = base::Sys.info()[["nodename"]])
  [22:35:10.403]                         info <- base::sprintf("%s: %s", base::names(info), 
  [22:35:10.403]                           info)
  [22:35:10.403]                         info <- base::paste(info, collapse = "; ")
  [22:35:10.403]                         if (!has_future) {
  [22:35:10.403]                           msg <- base::sprintf("Package 'future' is not installed on worker (%s)", 
  [22:35:10.403]                             info)
  [22:35:10.403]                         }
  [22:35:10.403]                         else {
  [22:35:10.403]                           msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s", 
  [22:35:10.403]                             info, version)
  [22:35:10.403]                         }
  [22:35:10.403]                         base::stop(msg)
  [22:35:10.403]                       }
  [22:35:10.403]                     })
  [22:35:10.403]                   }
  [22:35:10.403]                   ...future.strategy.old <- future::plan("list")
  [22:35:10.403]                   options(future.plan = NULL)
  [22:35:10.403]                   Sys.unsetenv("R_FUTURE_PLAN")
  [22:35:10.403]                   future::plan("default", .cleanup = FALSE, .init = FALSE)
  [22:35:10.403]                 }
  [22:35:10.403]                 ...future.workdir <- getwd()
  [22:35:10.403]             }
  [22:35:10.403]             ...future.oldOptions <- base::as.list(base::.Options)
  [22:35:10.403]             ...future.oldEnvVars <- base::Sys.getenv()
  [22:35:10.403]         }
  [22:35:10.403]         base::options(future.startup.script = FALSE, future.globals.onMissing = NULL, 
  [22:35:10.403]             future.globals.maxSize = NULL, future.globals.method = NULL, 
  [22:35:10.403]             future.globals.onMissing = NULL, future.globals.onReference = NULL, 
  [22:35:10.403]             future.globals.resolve = NULL, future.resolve.recursive = NULL, 
  [22:35:10.403]             future.rng.onMisuse = NULL, future.rng.onMisuse.keepFuture = NULL, 
  [22:35:10.403]             future.stdout.windows.reencode = NULL, width = 80L)
  [22:35:10.403]         ...future.futureOptionsAdded <- base::setdiff(base::names(base::.Options), 
  [22:35:10.403]             base::names(...future.oldOptions))
  [22:35:10.403]     }
  [22:35:10.403]     if (FALSE) {
  [22:35:10.403]     }
  [22:35:10.403]     else {
  [22:35:10.403]         if (TRUE) {
  [22:35:10.403]             ...future.stdout <- base::rawConnection(base::raw(0L), 
  [22:35:10.403]                 open = "w")
  [22:35:10.403]         }
  [22:35:10.403]         else {
  [22:35:10.403]             ...future.stdout <- base::file(base::switch(.Platform$OS.type, 
  [22:35:10.403]                 windows = "NUL", "/dev/null"), open = "w")
  [22:35:10.403]         }
  [22:35:10.403]         base::sink(...future.stdout, type = "output", split = FALSE)
  [22:35:10.403]         base::on.exit(if (!base::is.null(...future.stdout)) {
  [22:35:10.403]             base::sink(type = "output", split = FALSE)
  [22:35:10.403]             base::close(...future.stdout)
  [22:35:10.403]         }, add = TRUE)
  [22:35:10.403]     }
  [22:35:10.403]     ...future.frame <- base::sys.nframe()
  [22:35:10.403]     ...future.conditions <- base::list()
  [22:35:10.403]     ...future.rng <- base::globalenv()$.Random.seed
  [22:35:10.403]     if (FALSE) {
  [22:35:10.403]         ...future.globalenv.names <- c(base::names(base::.GlobalEnv), 
  [22:35:10.403]             "...future.value", "...future.globalenv.names", ".Random.seed")
  [22:35:10.403]     }
  [22:35:10.403]     ...future.result <- base::tryCatch({
  [22:35:10.403]         base::withCallingHandlers({
  [22:35:10.403]             ...future.value <- base::withVisible(base::local(NA))
  [22:35:10.403]             future::FutureResult(value = ...future.value$value, 
  [22:35:10.403]                 visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed, 
  [22:35:10.403]                   ...future.rng), globalenv = if (FALSE) 
  [22:35:10.403]                   list(added = base::setdiff(base::names(base::.GlobalEnv), 
  [22:35:10.403]                     ...future.globalenv.names))
  [22:35:10.403]                 else NULL, started = ...future.startTime, version = "1.8")
  [22:35:10.403]         }, condition = base::local({
  [22:35:10.403]             c <- base::c
  [22:35:10.403]             inherits <- base::inherits
  [22:35:10.403]             invokeRestart <- base::invokeRestart
  [22:35:10.403]             length <- base::length
  [22:35:10.403]             list <- base::list
  [22:35:10.403]             seq.int <- base::seq.int
  [22:35:10.403]             signalCondition <- base::signalCondition
  [22:35:10.403]             sys.calls <- base::sys.calls
  [22:35:10.403]             `[[` <- base::`[[`
  [22:35:10.403]             `+` <- base::`+`
  [22:35:10.403]             `<<-` <- base::`<<-`
  [22:35:10.403]             sysCalls <- function(calls = sys.calls(), from = 1L) {
  [22:35:10.403]                 calls[seq.int(from = from + 12L, to = length(calls) - 
  [22:35:10.403]                   3L)]
  [22:35:10.403]             }
  [22:35:10.403]             function(cond) {
  [22:35:10.403]                 is_error <- inherits(cond, "error")
  [22:35:10.403]                 ignore <- !is_error && !is.null(NULL) && inherits(cond, 
  [22:35:10.403]                   NULL)
  [22:35:10.403]                 if (is_error) {
  [22:35:10.403]                   sessionInformation <- function() {
  [22:35:10.403]                     list(r = base::R.Version(), locale = base::Sys.getlocale(), 
  [22:35:10.403]                       rngkind = base::RNGkind(), namespaces = base::loadedNamespaces(), 
  [22:35:10.403]                       search = base::search(), system = base::Sys.info())
  [22:35:10.403]                   }
  [22:35:10.403]                   ...future.conditions[[length(...future.conditions) + 
  [22:35:10.403]                     1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame), 
  [22:35:10.403]                     cond$call), session = sessionInformation(), 
  [22:35:10.403]                     timestamp = base::Sys.time(), signaled = 0L)
  [22:35:10.403]                   signalCondition(cond)
  [22:35:10.403]                 }
  [22:35:10.403]                 else if (!ignore && TRUE && inherits(cond, "condition")) {
  [22:35:10.403]                   signal <- FALSE && inherits(cond, character(0))
  [22:35:10.403]                   ...future.conditions[[length(...future.conditions) + 
  [22:35:10.403]                     1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
  [22:35:10.403]                   if (FALSE && !signal) {
  [22:35:10.403]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:35:10.403]                     {
  [22:35:10.403]                       inherits <- base::inherits
  [22:35:10.403]                       invokeRestart <- base::invokeRestart
  [22:35:10.403]                       is.null <- base::is.null
  [22:35:10.403]                       muffled <- FALSE
  [22:35:10.403]                       if (inherits(cond, "message")) {
  [22:35:10.403]                         muffled <- grepl(pattern, "muffleMessage")
  [22:35:10.403]                         if (muffled) 
  [22:35:10.403]                           invokeRestart("muffleMessage")
  [22:35:10.403]                       }
  [22:35:10.403]                       else if (inherits(cond, "warning")) {
  [22:35:10.403]                         muffled <- grepl(pattern, "muffleWarning")
  [22:35:10.403]                         if (muffled) 
  [22:35:10.403]                           invokeRestart("muffleWarning")
  [22:35:10.403]                       }
  [22:35:10.403]                       else if (inherits(cond, "condition")) {
  [22:35:10.403]                         if (!is.null(pattern)) {
  [22:35:10.403]                           computeRestarts <- base::computeRestarts
  [22:35:10.403]                           grepl <- base::grepl
  [22:35:10.403]                           restarts <- computeRestarts(cond)
  [22:35:10.403]                           for (restart in restarts) {
  [22:35:10.403]                             name <- restart$name
  [22:35:10.403]                             if (is.null(name)) 
  [22:35:10.403]                               next
  [22:35:10.403]                             if (!grepl(pattern, name)) 
  [22:35:10.403]                               next
  [22:35:10.403]                             invokeRestart(restart)
  [22:35:10.403]                             muffled <- TRUE
  [22:35:10.403]                             break
  [22:35:10.403]                           }
  [22:35:10.403]                         }
  [22:35:10.403]                       }
  [22:35:10.403]                       invisible(muffled)
  [22:35:10.403]                     }
  [22:35:10.403]                     muffleCondition(cond, pattern = "^muffle")
  [22:35:10.403]                   }
  [22:35:10.403]                 }
  [22:35:10.403]                 else {
  [22:35:10.403]                   if (TRUE) {
  [22:35:10.403]                     muffleCondition <- function (cond, pattern = "^muffle") 
  [22:35:10.403]                     {
  [22:35:10.403]                       inherits <- base::inherits
  [22:35:10.403]                       invokeRestart <- base::invokeRestart
  [22:35:10.403]                       is.null <- base::is.null
  [22:35:10.403]                       muffled <- FALSE
  [22:35:10.403]                       if (inherits(cond, "message")) {
  [22:35:10.403]                         muffled <- grepl(pattern, "muffleMessage")
  [22:35:10.403]                         if (muffled) 
  [22:35:10.403]                           invokeRestart("muffleMessage")
  [22:35:10.403]                       }
  [22:35:10.403]                       else if (inherits(cond, "warning")) {
  [22:35:10.403]                         muffled <- grepl(pattern, "muffleWarning")
  [22:35:10.403]                         if (muffled) 
  [22:35:10.403]                           invokeRestart("muffleWarning")
  [22:35:10.403]                       }
  [22:35:10.403]                       else if (inherits(cond, "condition")) {
  [22:35:10.403]                         if (!is.null(pattern)) {
  [22:35:10.403]                           computeRestarts <- base::computeRestarts
  [22:35:10.403]                           grepl <- base::grepl
  [22:35:10.403]                           restarts <- computeRestarts(cond)
  [22:35:10.403]                           for (restart in restarts) {
  [22:35:10.403]                             name <- restart$name
  [22:35:10.403]                             if (is.null(name)) 
  [22:35:10.403]                               next
  [22:35:10.403]                             if (!grepl(pattern, name)) 
  [22:35:10.403]                               next
  [22:35:10.403]                             invokeRestart(restart)
  [22:35:10.403]                             muffled <- TRUE
  [22:35:10.403]                             break
  [22:35:10.403]                           }
  [22:35:10.403]                         }
  [22:35:10.403]                       }
  [22:35:10.403]                       invisible(muffled)
  [22:35:10.403]                     }
  [22:35:10.403]                     muffleCondition(cond, pattern = "^muffle")
  [22:35:10.403]                   }
  [22:35:10.403]                 }
  [22:35:10.403]             }
  [22:35:10.403]         }))
  [22:35:10.403]     }, error = function(ex) {
  [22:35:10.403]         base::structure(base::list(value = NULL, visible = NULL, 
  [22:35:10.403]             conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed, 
  [22:35:10.403]                 ...future.rng), started = ...future.startTime, 
  [22:35:10.403]             finished = Sys.time(), session_uuid = NA_character_, 
  [22:35:10.403]             version = "1.8"), class = "FutureResult")
  [22:35:10.403]     }, finally = {
  [22:35:10.403]         if (!identical(...future.workdir, getwd())) 
  [22:35:10.403]             setwd(...future.workdir)
  [22:35:10.403]         {
  [22:35:10.403]             if (identical(getOption("nwarnings"), ...future.oldOptions$nwarnings)) {
  [22:35:10.403]                 ...future.oldOptions$nwarnings <- NULL
  [22:35:10.403]             }
  [22:35:10.403]             base::options(...future.oldOptions)
  [22:35:10.403]             if (.Platform$OS.type == "windows") {
  [22:35:10.403]                 old_names <- names(...future.oldEnvVars)
  [22:35:10.403]                 envs <- base::Sys.getenv()
  [22:35:10.403]                 names <- names(envs)
  [22:35:10.403]                 common <- intersect(names, old_names)
  [22:35:10.403]                 added <- setdiff(names, old_names)
  [22:35:10.403]                 removed <- setdiff(old_names, names)
  [22:35:10.403]                 changed <- common[...future.oldEnvVars[common] != 
  [22:35:10.403]                   envs[common]]
  [22:35:10.403]                 NAMES <- toupper(changed)
  [22:35:10.403]                 args <- list()
  [22:35:10.403]                 for (kk in seq_along(NAMES)) {
  [22:35:10.403]                   name <- changed[[kk]]
  [22:35:10.403]                   NAME <- NAMES[[kk]]
  [22:35:10.403]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:10.403]                     next
  [22:35:10.403]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:35:10.403]                 }
  [22:35:10.403]                 NAMES <- toupper(added)
  [22:35:10.403]                 for (kk in seq_along(NAMES)) {
  [22:35:10.403]                   name <- added[[kk]]
  [22:35:10.403]                   NAME <- NAMES[[kk]]
  [22:35:10.403]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:10.403]                     next
  [22:35:10.403]                   args[[name]] <- ""
  [22:35:10.403]                 }
  [22:35:10.403]                 NAMES <- toupper(removed)
  [22:35:10.403]                 for (kk in seq_along(NAMES)) {
  [22:35:10.403]                   name <- removed[[kk]]
  [22:35:10.403]                   NAME <- NAMES[[kk]]
  [22:35:10.403]                   if (name != NAME && is.element(NAME, old_names)) 
  [22:35:10.403]                     next
  [22:35:10.403]                   args[[name]] <- ...future.oldEnvVars[[name]]
  [22:35:10.403]                 }
  [22:35:10.403]                 if (length(args) > 0) 
  [22:35:10.403]                   base::do.call(base::Sys.setenv, args = args)
  [22:35:10.403]                 args <- names <- old_names <- NAMES <- envs <- common <- added <- removed <- NULL
  [22:35:10.403]             }
  [22:35:10.403]             else {
  [22:35:10.403]                 base::do.call(base::Sys.setenv, args = base::as.list(...future.oldEnvVars))
  [22:35:10.403]             }
  [22:35:10.403]             {
  [22:35:10.403]                 if (base::length(...future.futureOptionsAdded) > 
  [22:35:10.403]                   0L) {
  [22:35:10.403]                   opts <- base::vector("list", length = base::length(...future.futureOptionsAdded))
  [22:35:10.403]                   base::names(opts) <- ...future.futureOptionsAdded
  [22:35:10.403]                   base::options(opts)
  [22:35:10.403]                 }
  [22:35:10.403]                 {
  [22:35:10.403]                   NULL
  [22:35:10.403]                   options(future.plan = NULL)
  [22:35:10.403]                   if (is.na(NA_character_)) 
  [22:35:10.403]                     Sys.unsetenv("R_FUTURE_PLAN")
  [22:35:10.403]                   else Sys.setenv(R_FUTURE_PLAN = NA_character_)
  [22:35:10.403]                   future::plan(...future.strategy.old, .cleanup = FALSE, 
  [22:35:10.403]                     .init = FALSE)
  [22:35:10.403]                 }
  [22:35:10.403]             }
  [22:35:10.403]         }
  [22:35:10.403]     })
  [22:35:10.403]     if (TRUE) {
  [22:35:10.403]         base::sink(type = "output", split = FALSE)
  [22:35:10.403]         if (TRUE) {
  [22:35:10.403]             ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
  [22:35:10.403]         }
  [22:35:10.403]         else {
  [22:35:10.403]             ...future.result["stdout"] <- base::list(NULL)
  [22:35:10.403]         }
  [22:35:10.403]         base::close(...future.stdout)
  [22:35:10.403]         ...future.stdout <- NULL
  [22:35:10.403]     }
  [22:35:10.403]     ...future.result$conditions <- ...future.conditions
  [22:35:10.403]     ...future.result$finished <- base::Sys.time()
  [22:35:10.403]     ...future.result
  [22:35:10.403] }
  Error in request(.context(envir[["sock"]]), data = data, send_mode = 3L,  : 
    R_ExternalPtrTag: argument of type NILSXP is not an external pointer
  Calls: source ... run.MiraiFuture -> do.call -> <Anonymous> -> request
  Execution halted