CRAN Package Check Results for Package future

Last updated on 2020-01-20 01:50:21 CET.

Flavor Version Tinstall Tcheck Ttotal Status Flags
r-devel-linux-x86_64-debian-clang 1.15.1 9.93 214.89 224.82 OK
r-devel-linux-x86_64-debian-gcc 1.16.0 6.96 181.34 188.30 OK
r-devel-linux-x86_64-fedora-clang 1.16.0 293.80 ERROR
r-devel-linux-x86_64-fedora-gcc 1.16.0 237.45 OK
r-devel-windows-ix86+x86_64 1.15.1 20.00 444.00 464.00 OK
r-devel-windows-ix86+x86_64-gcc8 1.16.0 23.00 463.00 486.00 OK
r-patched-linux-x86_64 1.16.0 8.54 212.98 221.52 OK
r-patched-solaris-x86 1.16.0 104.40 OK --no-tests
r-release-linux-x86_64 1.16.0 7.03 213.54 220.57 OK
r-release-windows-ix86+x86_64 1.16.0 16.00 508.00 524.00 OK
r-release-osx-x86_64 1.16.0 OK
r-oldrel-windows-ix86+x86_64 1.16.0 12.00 317.00 329.00 OK
r-oldrel-osx-x86_64 1.16.0 OK

Check Details

Version: 1.16.0
Check: tests
Result: ERROR
     Running ‘000.sessionDetails.R’ [9s/10s]
     Running ‘ClusterRegistry.R’ [4s/63s]
     Running ‘Future-class.R’ [2s/25s]
     Running ‘FutureError.R’
     Running ‘FutureGlobals.R’
     Running ‘FutureRegistry.R’
     Running ‘as.cluster.R’ [2s/22s]
     Running ‘availableCores.R’
     Running ‘availableWorkers.R’
     Running ‘backtrace.R’
     Running ‘cluster-missing-future-pkg.R’
     Running ‘cluster.R’ [9s/143s]
     Running ‘constant.R’
     Running ‘demo.R’ [12s/43s]
     Running ‘dotdotdot.R’ [2s/26s]
     Running ‘early-signaling.R’ [3s/48s]
     Running ‘future,labels.R’
     Running ‘future.R’
     Running ‘futureAssign.R’ [3s/23s]
     Running ‘futureAssign_OP.R’ [4s/27s]
     Running ‘futureAssign_OP_with_environment.R’
     Running ‘futureAssign_OP_with_listenv.R’
     Running ‘futureCall.R’ [5s/38s]
     Running ‘futureOf.R’
     Running ‘futureOf_with_environment.R’
     Running ‘futureOf_with_listenv.R’
     Running ‘futures.R’ [23s/189s]
     Running ‘globals,NSE.R’
     Running ‘globals,formulas.R’ [5s/26s]
     Running ‘globals,manual.R’
     Running ‘globals,resolve.R’ [2s/24s]
     Running ‘globals,subassignment.R’ [4s/26s]
     Running ‘globals,toolarge.R’ [2s/25s]
     Running ‘globals,tricky.R’ [9s/35s]
     Running ‘globals,tricky_recursive.R’
     Running ‘globalsOf,tweaks.R’
     Running ‘immediateCondition.R’
     Running ‘invalid-owner.R’ [2s/24s]
     Running ‘makeClusterPSOCK.R’ [1s/11s]
     Running ‘mandelbrot.R’
     Running ‘mpi.R’
     Running ‘multicore,multithreading.R’
     Running ‘multicore.R’
     Running ‘multiprocess.R’
     Running ‘multisession.R’ [6s/70s]
     Running ‘nbrOfWorkers.R’ [6s/85s]
     Running ‘nested_futures,mc.cores.R’ [7s/148s]
     Running ‘nested_futures.R’
     Running ‘non-exportable,connections.R’ [2s/22s]
     Running ‘objectSize.R’
     Running ‘plan.R’ [9s/22s]
     Running ‘relaying.R’
     Running ‘remote.R’ [2s/22s]
     Running ‘requestCore.R’
     Running ‘requestNode.R’ [2s/37s]
     Running ‘reserved-keyword-functions.R’
     Running ‘resolve.R’
     Running ‘resolved-non-blocking-test.R’ [4s/82s]
     Running ‘rng.R’ [14s/42s]
     Running ‘sequential.R’
     Running ‘sessionDetails.R’
     Running ‘startup.R’ [3s/46s]
     Running ‘stdout.R’ [3s/26s]
     Running ‘transparent.R’
     Running ‘tweak.R’
     Running ‘utils.R’ [9s/13s]
     Running ‘uuid.R’
     Running ‘whichIndex.R’
    Running the tests in ‘tests/multicore,multithreading.R’ failed.
    Complete output:
     > source("incl/start.R")
     [16:30:12.477] plan(): Setting new future strategy stack:
     [16:30:12.479] List of future strategies:
     [16:30:12.479] 1. sequential:
     [16:30:12.479] - args: function (expr, envir = parent.frame(), substitute = TRUE, lazy = FALSE, seed = NULL, globals = TRUE, local = TRUE, earlySignal = FALSE, label = NULL, ...)
     [16:30:12.479] - tweaked: FALSE
     [16:30:12.479] - call: future::plan("sequential")
     [16:30:12.481] plan(): nbrOfWorkers() = 1
     > library("listenv")
     > plan(multicore)
     [16:30:12.529] plan(): Setting new future strategy stack:
     [16:30:12.530] List of future strategies:
     [16:30:12.530] 1. multicore:
     [16:30:12.530] - args: function (expr, envir = parent.frame(), substitute = TRUE, lazy = FALSE, seed = NULL, globals = TRUE, workers = availableCores(constraints = "multicore"), earlySignal = FALSE, label = NULL, ...)
     [16:30:12.530] - tweaked: FALSE
     [16:30:12.530] - call: plan(multicore)
     [16:30:12.628] plan(): nbrOfWorkers() = 2
     >
     > message("*** multicore() and multi-threading ...")
     *** multicore() and multi-threading ...
     >
     > message("supportsMulticore(): ", sQuote(supportsMulticore()))
     supportsMulticore(): 'TRUE'
     > message("availableCores('multicore'): ", sQuote(availableCores("multicore")))
     availableCores('multicore'): '2'
     > message("supports_omp_threads(): ", sQuote(supports_omp_threads()))
     [16:30:12.700] supports_omp_threads() = TRUE
     supports_omp_threads(): 'TRUE'
     >
     > if (supportsMulticore() && availableCores("multicore") >=2 && supports_omp_threads()) {
     + for (enable in c(TRUE, FALSE)) {
     + options(future.fork.multithreading.enable = enable)
     +
     + message(sprintf("'future.fork.multithreading.enable' = %s ...", enable))
     +
     + f <- future(RhpcBLASctl::omp_get_max_threads())
     + nthreads <- value(f)
     + cat(sprintf("Number of OpenMP threads in %s future: %d\n", sQuote(class(f)[1]), nthreads))
     +
     + ## Assert that single-threading was set?
     + if (enable) {
     + stopifnot(enable && nthreads > 1L)
     + } else {
     + stopifnot(!enable && nthreads == 1L)
     + }
     +
     + message(sprintf("'future.fork.multithreading.enable' = %s ... DONE", enable))
     + } ## for (enable ...)
     + } ## if (requireNamespace("RhpcBLASctl", ...)) {
     [16:30:12.704] supports_omp_threads() = TRUE
     'future.fork.multithreading.enable' = TRUE ...
     [16:30:12.764] getGlobalsAndPackages() ...
     [16:30:12.764] Searching for globals...
     [16:30:12.789] - globals found: [1] '::'
     [16:30:12.789] Searching for globals ... DONE
     [16:30:12.790] Resolving globals: FALSE
     [16:30:12.791]
     [16:30:12.792]
     [16:30:12.792] getGlobalsAndPackages() ... DONE
     [16:30:12.807] Packages needed by the future expression (n = 0): <none>
     [16:30:12.808] Packages needed by future strategies (n = 0): <none>
     [16:30:12.815] {
     [16:30:12.815] {
     [16:30:12.815] ...future.startTime <- base::Sys.time()
     [16:30:12.815] ...future.oldOptions <- base::options(future.startup.script = FALSE,
     [16:30:12.815] future.globals.onMissing = "ignore", future.globals.maxSize = NULL,
     [16:30:12.815] future.globals.method = NULL, future.globals.onMissing = NULL,
     [16:30:12.815] future.globals.onReference = NULL, future.globals.resolve = NULL,
     [16:30:12.815] future.resolve.recursive = NULL, width = 80L)
     [16:30:12.815] {
     [16:30:12.815] {
     [16:30:12.815] {
     [16:30:12.815] has_future <- base::requireNamespace("future",
     [16:30:12.815] quietly = TRUE)
     [16:30:12.815] version <- if (has_future)
     [16:30:12.815] utils::packageVersion("future")
     [16:30:12.815] else NULL
     [16:30:12.815] if (!has_future || version < "1.8.0") {
     [16:30:12.815] info <- base::c(r_version = base::gsub("R version ",
     [16:30:12.815] "", base::R.version$version.string), platform = base::sprintf("%s (%s-bit)",
     [16:30:12.815] base::R.version$platform, 8 * base::.Machine$sizeof.pointer),
     [16:30:12.815] os = base::paste(base::Sys.info()[base::c("sysname",
     [16:30:12.815] "release", "version")], collapse = " "),
     [16:30:12.815] hostname = base::Sys.info()[["nodename"]])
     [16:30:12.815] info <- base::sprintf("%s: %s", base::names(info),
     [16:30:12.815] info)
     [16:30:12.815] info <- base::paste(info, collapse = "; ")
     [16:30:12.815] if (!has_future) {
     [16:30:12.815] msg <- base::sprintf("Package 'future' is not installed on worker (%s)",
     [16:30:12.815] info)
     [16:30:12.815] }
     [16:30:12.815] else {
     [16:30:12.815] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s",
     [16:30:12.815] info, version)
     [16:30:12.815] }
     [16:30:12.815] base::stop(msg)
     [16:30:12.815] }
     [16:30:12.815] }
     [16:30:12.815] ...future.mc.cores.old <- base::getOption("mc.cores")
     [16:30:12.815] base::options(mc.cores = 1L)
     [16:30:12.815] }
     [16:30:12.815] future::plan("default", .cleanup = FALSE, .init = FALSE)
     [16:30:12.815] }
     [16:30:12.815] }
     [16:30:12.815] if (base::is.na(TRUE)) {
     [16:30:12.815] }
     [16:30:12.815] else {
     [16:30:12.815] if (TRUE) {
     [16:30:12.815] ...future.stdout <- base::rawConnection(base::raw(0L),
     [16:30:12.815] open = "w")
     [16:30:12.815] }
     [16:30:12.815] else {
     [16:30:12.815] ...future.stdout <- base::file(base::switch(.Platform$OS.type,
     [16:30:12.815] windows = "NUL", "/dev/null"), open = "w")
     [16:30:12.815] }
     [16:30:12.815] base::sink(...future.stdout, type = "output", split = FALSE)
     [16:30:12.815] base::on.exit(if (!base::is.null(...future.stdout)) {
     [16:30:12.815] base::sink(type = "output", split = FALSE)
     [16:30:12.815] base::close(...future.stdout)
     [16:30:12.815] }, add = TRUE)
     [16:30:12.815] }
     [16:30:12.815] ...future.frame <- base::sys.nframe()
     [16:30:12.815] ...future.conditions <- base::list()
     [16:30:12.815] ...future.rng <- base::globalenv()$.Random.seed
     [16:30:12.815] ...future.result <- base::tryCatch({
     [16:30:12.815] base::withCallingHandlers({
     [16:30:12.815] ...future.value <- base::withVisible(base::local(RhpcBLASctl::omp_get_max_threads()))
     [16:30:12.815] future::FutureResult(value = ...future.value$value,
     [16:30:12.815] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed,
     [16:30:12.815] ...future.rng), started = ...future.startTime,
     [16:30:12.815] version = "1.8")
     [16:30:12.815] }, condition = base::local({
     [16:30:12.815] c <- base::c
     [16:30:12.815] inherits <- base::inherits
     [16:30:12.815] invokeRestart <- base::invokeRestart
     [16:30:12.815] length <- base::length
     [16:30:12.815] list <- base::list
     [16:30:12.815] seq.int <- base::seq.int
     [16:30:12.815] signalCondition <- base::signalCondition
     [16:30:12.815] sys.calls <- base::sys.calls
     [16:30:12.815] Sys.time <- base::Sys.time
     [16:30:12.815] `[[` <- base::`[[`
     [16:30:12.815] `+` <- base::`+`
     [16:30:12.815] `<<-` <- base::`<<-`
     [16:30:12.815] sysCalls <- function(calls = sys.calls(), from = 1L) {
     [16:30:12.815] calls[seq.int(from = from + 12L, to = length(calls) -
     [16:30:12.815] 3L)]
     [16:30:12.815] }
     [16:30:12.815] function(cond) {
     [16:30:12.815] if (inherits(cond, "error")) {
     [16:30:12.815] ...future.conditions[[length(...future.conditions) +
     [16:30:12.815] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame),
     [16:30:12.815] cond$call), timestamp = Sys.time(), signaled = 0L)
     [16:30:12.815] signalCondition(cond)
     [16:30:12.815] }
     [16:30:12.815] else if (inherits(cond, "condition")) {
     [16:30:12.815] signal <- FALSE && inherits(cond, character(0))
     [16:30:12.815] ...future.conditions[[length(...future.conditions) +
     [16:30:12.815] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
     [16:30:12.815] if (!signal) {
     [16:30:12.815] muffleCondition <- function (cond)
     [16:30:12.815] {
     [16:30:12.815] inherits <- base::inherits
     [16:30:12.815] invokeRestart <- base::invokeRestart
     [16:30:12.815] muffled <- FALSE
     [16:30:12.815] if (inherits(cond, "message")) {
     [16:30:12.815] invokeRestart("muffleMessage")
     [16:30:12.815] muffled <- TRUE
     [16:30:12.815] }
     [16:30:12.815] else if (inherits(cond, "warning")) {
     [16:30:12.815] invokeRestart("muffleWarning")
     [16:30:12.815] muffled <- TRUE
     [16:30:12.815] }
     [16:30:12.815] else if (inherits(cond, "condition")) {
     [16:30:12.815] computeRestarts <- base::computeRestarts
     [16:30:12.815] grepl <- base::grepl
     [16:30:12.815] is.null <- base::is.null
     [16:30:12.815] restarts <- computeRestarts(cond)
     [16:30:12.815] for (restart in restarts) {
     [16:30:12.815] name <- restart$name
     [16:30:12.815] if (is.null(name))
     [16:30:12.815] next
     [16:30:12.815] if (!grepl("^muffle", name))
     [16:30:12.815] next
     [16:30:12.815] invokeRestart(restart)
     [16:30:12.815] muffled <- TRUE
     [16:30:12.815] break
     [16:30:12.815] }
     [16:30:12.815] }
     [16:30:12.815] invisible(muffled)
     [16:30:12.815] }
     [16:30:12.815] muffleCondition(cond)
     [16:30:12.815] }
     [16:30:12.815] }
     [16:30:12.815] }
     [16:30:12.815] }))
     [16:30:12.815] }, error = function(ex) {
     [16:30:12.815] base::structure(base::list(value = NULL, visible = NULL,
     [16:30:12.815] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed,
     [16:30:12.815] ...future.rng), version = "1.8"), class = "FutureResult")
     [16:30:12.815] }, finally = {
     [16:30:12.815] {
     [16:30:12.815] {
     [16:30:12.815] base::options(mc.cores = ...future.mc.cores.old)
     [16:30:12.815] }
     [16:30:12.815] future::plan(list(function (expr, envir = parent.frame(),
     [16:30:12.815] substitute = TRUE, lazy = FALSE, seed = NULL,
     [16:30:12.815] globals = TRUE, workers = availableCores(constraints = "multicore"),
     [16:30:12.815] earlySignal = FALSE, label = NULL, ...)
     [16:30:12.815] {
     [16:30:12.815] if (substitute)
     [16:30:12.815] expr <- substitute(expr)
     [16:30:12.815] if (is.function(workers))
     [16:30:12.815] workers <- workers()
     [16:30:12.815] workers <- as.integer(workers)
     [16:30:12.815] stop_if_not(is.finite(workers), workers >= 1L)
     [16:30:12.815] if (workers == 1L || !supportsMulticore(warn = TRUE)) {
     [16:30:12.815] return(sequential(expr, envir = envir, substitute = FALSE,
     [16:30:12.815] lazy = lazy, seed = seed, globals = globals,
     [16:30:12.815] local = TRUE, label = label, ...))
     [16:30:12.815] }
     [16:30:12.815] oopts <- options(mc.cores = workers)
     [16:30:12.815] on.exit(options(oopts))
     [16:30:12.815] future <- MulticoreFuture(expr = expr, envir = envir,
     [16:30:12.815] substitute = FALSE, lazy = lazy, seed = seed,
     [16:30:12.815] globals = globals, workers = workers, earlySignal = earlySignal,
     [16:30:12.815] label = label, ...)
     [16:30:12.815] if (!future$lazy)
     [16:30:12.815] future <- run(future)
     [16:30:12.815] invisible(future)
     [16:30:12.815] }), .cleanup = FALSE, .init = FALSE)
     [16:30:12.815] }
     [16:30:12.815] base::options(...future.oldOptions)
     [16:30:12.815] })
     [16:30:12.815] Sys.time
     [16:30:12.815] if (base::is.na(TRUE)) {
     [16:30:12.815] }
     [16:30:12.815] else {
     [16:30:12.815] base::sink(type = "output", split = FALSE)
     [16:30:12.815] if (TRUE) {
     [16:30:12.815] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
     [16:30:12.815] }
     [16:30:12.815] else {
     [16:30:12.815] ...future.result["stdout"] <- base::list(NULL)
     [16:30:12.815] }
     [16:30:12.815] base::close(...future.stdout)
     [16:30:12.815] ...future.stdout <- NULL
     [16:30:12.815] }
     [16:30:12.815] ...future.result$conditions <- ...future.conditions
     [16:30:12.815] ...future.result
     [16:30:12.815] }
     [16:30:12.821] requestCore(): workers = 2
     [16:30:12.831] MulticoreFuture started
     [16:30:12.858] plan(): Setting new future strategy stack:
     [16:30:12.859] List of future strategies:
     [16:30:12.859] 1. sequential:
     [16:30:12.859] - args: function (expr, envir = parent.frame(), substitute = TRUE, lazy = FALSE, seed = NULL, globals = TRUE, local = TRUE, earlySignal = FALSE, label = NULL, ...)
     [16:30:12.859] - tweaked: FALSE
     [16:30:12.859] - call: NULL
     [16:30:12.861] plan(): nbrOfWorkers() = 1
     [16:30:12.867] plan(): Setting new future strategy stack:
     [16:30:12.868] List of future strategies:
     [16:30:12.868] 1. multicore:
     [16:30:12.868] - args: function (expr, envir = parent.frame(), substitute = TRUE, lazy = FALSE, seed = NULL, globals = TRUE, workers = availableCores(constraints = "multicore"), earlySignal = FALSE, label = NULL, ...)
     [16:30:12.868] - tweaked: FALSE
     [16:30:12.868] - call: plan(multicore)
     [16:30:12.871] plan(): nbrOfWorkers() = 2
     Number of OpenMP threads in 'MulticoreFuture' future: 24
     'future.fork.multithreading.enable' = TRUE ... DONE
     'future.fork.multithreading.enable' = FALSE ...
     [16:30:12.889] getGlobalsAndPackages() ...
     [16:30:12.889] Searching for globals...
     [16:30:12.892] - globals found: [1] '::'
     [16:30:12.892] Searching for globals ... DONE
     [16:30:12.892] Resolving globals: FALSE
     [16:30:12.893]
     [16:30:12.894]
     [16:30:12.894] getGlobalsAndPackages() ... DONE
     [16:30:12.895] - Evaluate future in single-threaded mode ...
     [16:30:12.895] supports_omp_threads() = TRUE
     [16:30:12.896] - Force single-threaded processing for OpenMP
     [16:30:12.896] - Evaluate future in single-threaded mode ... DONE
     [16:30:12.899] Packages needed by the future expression (n = 0): <none>
     [16:30:12.900] Packages needed by future strategies (n = 0): <none>
     [16:30:12.907] {
     [16:30:12.907] {
     [16:30:12.907] ...future.startTime <- base::Sys.time()
     [16:30:12.907] ...future.oldOptions <- base::options(future.startup.script = FALSE,
     [16:30:12.907] future.globals.onMissing = "ignore", future.globals.maxSize = NULL,
     [16:30:12.907] future.globals.method = NULL, future.globals.onMissing = NULL,
     [16:30:12.907] future.globals.onReference = NULL, future.globals.resolve = NULL,
     [16:30:12.907] future.resolve.recursive = NULL, width = 80L)
     [16:30:12.907] {
     [16:30:12.907] {
     [16:30:12.907] {
     [16:30:12.907] has_future <- base::requireNamespace("future",
     [16:30:12.907] quietly = TRUE)
     [16:30:12.907] version <- if (has_future)
     [16:30:12.907] utils::packageVersion("future")
     [16:30:12.907] else NULL
     [16:30:12.907] if (!has_future || version < "1.8.0") {
     [16:30:12.907] info <- base::c(r_version = base::gsub("R version ",
     [16:30:12.907] "", base::R.version$version.string), platform = base::sprintf("%s (%s-bit)",
     [16:30:12.907] base::R.version$platform, 8 * base::.Machine$sizeof.pointer),
     [16:30:12.907] os = base::paste(base::Sys.info()[base::c("sysname",
     [16:30:12.907] "release", "version")], collapse = " "),
     [16:30:12.907] hostname = base::Sys.info()[["nodename"]])
     [16:30:12.907] info <- base::sprintf("%s: %s", base::names(info),
     [16:30:12.907] info)
     [16:30:12.907] info <- base::paste(info, collapse = "; ")
     [16:30:12.907] if (!has_future) {
     [16:30:12.907] msg <- base::sprintf("Package 'future' is not installed on worker (%s)",
     [16:30:12.907] info)
     [16:30:12.907] }
     [16:30:12.907] else {
     [16:30:12.907] msg <- base::sprintf("Package 'future' on worker (%s) must be of version >= 1.8.0: %s",
     [16:30:12.907] info, version)
     [16:30:12.907] }
     [16:30:12.907] base::stop(msg)
     [16:30:12.907] }
     [16:30:12.907] }
     [16:30:12.907] ...future.mc.cores.old <- base::getOption("mc.cores")
     [16:30:12.907] base::options(mc.cores = 1L)
     [16:30:12.907] }
     [16:30:12.907] future::plan("default", .cleanup = FALSE, .init = FALSE)
     [16:30:12.907] }
     [16:30:12.907] }
     [16:30:12.907] if (base::is.na(TRUE)) {
     [16:30:12.907] }
     [16:30:12.907] else {
     [16:30:12.907] if (TRUE) {
     [16:30:12.907] ...future.stdout <- base::rawConnection(base::raw(0L),
     [16:30:12.907] open = "w")
     [16:30:12.907] }
     [16:30:12.907] else {
     [16:30:12.907] ...future.stdout <- base::file(base::switch(.Platform$OS.type,
     [16:30:12.907] windows = "NUL", "/dev/null"), open = "w")
     [16:30:12.907] }
     [16:30:12.907] base::sink(...future.stdout, type = "output", split = FALSE)
     [16:30:12.907] base::on.exit(if (!base::is.null(...future.stdout)) {
     [16:30:12.907] base::sink(type = "output", split = FALSE)
     [16:30:12.907] base::close(...future.stdout)
     [16:30:12.907] }, add = TRUE)
     [16:30:12.907] }
     [16:30:12.907] ...future.frame <- base::sys.nframe()
     [16:30:12.907] ...future.conditions <- base::list()
     [16:30:12.907] ...future.rng <- base::globalenv()$.Random.seed
     [16:30:12.907] ...future.result <- base::tryCatch({
     [16:30:12.907] base::withCallingHandlers({
     [16:30:12.907] ...future.value <- base::withVisible(base::local(RhpcBLASctl::omp_get_max_threads()))
     [16:30:12.907] future::FutureResult(value = ...future.value$value,
     [16:30:12.907] visible = ...future.value$visible, rng = !identical(base::globalenv()$.Random.seed,
     [16:30:12.907] ...future.rng), started = ...future.startTime,
     [16:30:12.907] version = "1.8")
     [16:30:12.907] }, condition = base::local({
     [16:30:12.907] c <- base::c
     [16:30:12.907] inherits <- base::inherits
     [16:30:12.907] invokeRestart <- base::invokeRestart
     [16:30:12.907] length <- base::length
     [16:30:12.907] list <- base::list
     [16:30:12.907] seq.int <- base::seq.int
     [16:30:12.907] signalCondition <- base::signalCondition
     [16:30:12.907] sys.calls <- base::sys.calls
     [16:30:12.907] Sys.time <- base::Sys.time
     [16:30:12.907] `[[` <- base::`[[`
     [16:30:12.907] `+` <- base::`+`
     [16:30:12.907] `<<-` <- base::`<<-`
     [16:30:12.907] sysCalls <- function(calls = sys.calls(), from = 1L) {
     [16:30:12.907] calls[seq.int(from = from + 12L, to = length(calls) -
     [16:30:12.907] 3L)]
     [16:30:12.907] }
     [16:30:12.907] function(cond) {
     [16:30:12.907] if (inherits(cond, "error")) {
     [16:30:12.907] ...future.conditions[[length(...future.conditions) +
     [16:30:12.907] 1L]] <<- list(condition = cond, calls = c(sysCalls(from = ...future.frame),
     [16:30:12.907] cond$call), timestamp = Sys.time(), signaled = 0L)
     [16:30:12.907] signalCondition(cond)
     [16:30:12.907] }
     [16:30:12.907] else if (inherits(cond, "condition")) {
     [16:30:12.907] signal <- FALSE && inherits(cond, character(0))
     [16:30:12.907] ...future.conditions[[length(...future.conditions) +
     [16:30:12.907] 1L]] <<- list(condition = cond, signaled = base::as.integer(signal))
     [16:30:12.907] if (!signal) {
     [16:30:12.907] muffleCondition <- function (cond)
     [16:30:12.907] {
     [16:30:12.907] inherits <- base::inherits
     [16:30:12.907] invokeRestart <- base::invokeRestart
     [16:30:12.907] muffled <- FALSE
     [16:30:12.907] if (inherits(cond, "message")) {
     [16:30:12.907] invokeRestart("muffleMessage")
     [16:30:12.907] muffled <- TRUE
     [16:30:12.907] }
     [16:30:12.907] else if (inherits(cond, "warning")) {
     [16:30:12.907] invokeRestart("muffleWarning")
     [16:30:12.907] muffled <- TRUE
     [16:30:12.907] }
     [16:30:12.907] else if (inherits(cond, "condition")) {
     [16:30:12.907] computeRestarts <- base::computeRestarts
     [16:30:12.907] grepl <- base::grepl
     [16:30:12.907] is.null <- base::is.null
     [16:30:12.907] restarts <- computeRestarts(cond)
     [16:30:12.907] for (restart in restarts) {
     [16:30:12.907] name <- restart$name
     [16:30:12.907] if (is.null(name))
     [16:30:12.907] next
     [16:30:12.907] if (!grepl("^muffle", name))
     [16:30:12.907] next
     [16:30:12.907] invokeRestart(restart)
     [16:30:12.907] muffled <- TRUE
     [16:30:12.907] break
     [16:30:12.907] }
     [16:30:12.907] }
     [16:30:12.907] invisible(muffled)
     [16:30:12.907] }
     [16:30:12.907] muffleCondition(cond)
     [16:30:12.907] }
     [16:30:12.907] }
     [16:30:12.907] }
     [16:30:12.907] }))
     [16:30:12.907] }, error = function(ex) {
     [16:30:12.907] base::structure(base::list(value = NULL, visible = NULL,
     [16:30:12.907] conditions = ...future.conditions, rng = !identical(base::globalenv()$.Random.seed,
     [16:30:12.907] ...future.rng), version = "1.8"), class = "FutureResult")
     [16:30:12.907] }, finally = {
     [16:30:12.907] {
     [16:30:12.907] {
     [16:30:12.907] base::options(mc.cores = ...future.mc.cores.old)
     [16:30:12.907] }
     [16:30:12.907] future::plan(list(function (expr, envir = parent.frame(),
     [16:30:12.907] substitute = TRUE, lazy = FALSE, seed = NULL,
     [16:30:12.907] globals = TRUE, workers = availableCores(constraints = "multicore"),
     [16:30:12.907] earlySignal = FALSE, label = NULL, ...)
     [16:30:12.907] {
     [16:30:12.907] if (substitute)
     [16:30:12.907] expr <- substitute(expr)
     [16:30:12.907] if (is.function(workers))
     [16:30:12.907] workers <- workers()
     [16:30:12.907] workers <- as.integer(workers)
     [16:30:12.907] stop_if_not(is.finite(workers), workers >= 1L)
     [16:30:12.907] if (workers == 1L || !supportsMulticore(warn = TRUE)) {
     [16:30:12.907] return(sequential(expr, envir = envir, substitute = FALSE,
     [16:30:12.907] lazy = lazy, seed = seed, globals = globals,
     [16:30:12.907] local = TRUE, label = label, ...))
     [16:30:12.907] }
     [16:30:12.907] oopts <- options(mc.cores = workers)
     [16:30:12.907] on.exit(options(oopts))
     [16:30:12.907] future <- MulticoreFuture(expr = expr, envir = envir,
     [16:30:12.907] substitute = FALSE, lazy = lazy, seed = seed,
     [16:30:12.907] globals = globals, workers = workers, earlySignal = earlySignal,
     [16:30:12.907] label = label, ...)
     [16:30:12.907] if (!future$lazy)
     [16:30:12.907] future <- run(future)
     [16:30:12.907] invisible(future)
     [16:30:12.907] }), .cleanup = FALSE, .init = FALSE)
     [16:30:12.907] }
     [16:30:12.907] base::options(...future.oldOptions)
     [16:30:12.907] })
     [16:30:12.907] Sys.time
     [16:30:12.907] if (base::is.na(TRUE)) {
     [16:30:12.907] }
     [16:30:12.907] else {
     [16:30:12.907] base::sink(type = "output", split = FALSE)
     [16:30:12.907] if (TRUE) {
     [16:30:12.907] ...future.result$stdout <- base::rawToChar(base::rawConnectionValue(...future.stdout))
     [16:30:12.907] }
     [16:30:12.907] else {
     [16:30:12.907] ...future.result["stdout"] <- base::list(NULL)
     [16:30:12.907] }
     [16:30:12.907] base::close(...future.stdout)
     [16:30:12.907] ...future.stdout <- NULL
     [16:30:12.907] }
     [16:30:12.907] ...future.result$conditions <- ...future.conditions
     [16:30:12.907] ...future.result
     [16:30:12.907] }
     [16:30:12.913] requestCore(): workers = 2
     [16:30:12.918] MulticoreFuture started
     [16:30:12.932] plan(): Setting new future strategy stack:
     [16:30:12.933] List of future strategies:
     [16:30:12.933] 1. sequential:
     [16:30:12.933] - args: function (expr, envir = parent.frame(), substitute = TRUE, lazy = FALSE, seed = NULL, globals = TRUE, local = TRUE, earlySignal = FALSE, label = NULL, ...)
     [16:30:12.933] - tweaked: FALSE
     [16:30:12.933] - call: NULL
     [16:30:12.935] plan(): nbrOfWorkers() = 1
     [16:30:12.960] plan(): Setting new future strategy stack:
     [16:30:12.961] List of future strategies:
     [16:30:12.961] 1. multicore:
     [16:30:12.961] - args: function (expr, envir = parent.frame(), substitute = TRUE, lazy = FALSE, seed = NULL, globals = TRUE, workers = availableCores(constraints = "multicore"), earlySignal = FALSE, label = NULL, ...)
     [16:30:12.961] - tweaked: FALSE
     [16:30:12.961] - call: plan(multicore)
     [16:30:12.964] plan(): nbrOfWorkers() = 2
     Number of OpenMP threads in 'MulticoreFuture' future: 24
     Error: !enable && nthreads == 1L is not TRUE
     Execution halted
Flavor: r-devel-linux-x86_64-fedora-clang