R Under development (unstable) (2026-03-17 r89645 ucrt) -- "Unsuffered Consequences" Copyright (C) 2026 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > #! /usr/bin/env Rscript > ## This runs testme test script inst/testme/test-futurize-base-stats.R > ## Don't edit - it was autogenerated by inst/testme/deploy.R > futurize:::testme("futurize-base-stats") Test 'futurize-base-stats' ... chr "none" > if (requireNamespace("future.apply")) { + library(futurize) + library(stats) + library(datasets) + options(future.rng.onMisuse = "er ..." ... [TRUNCATED] Loading required package: future [16:18:57.271] futurize() ... [16:18:57.273] | transpile() ... [16:18:57.275] | : get_transpiler() ... [16:18:57.276] | : . Finding call to be transpiled ... [16:18:57.277] | : . | descend_wrappers() ... [16:18:57.278] | : . | : Call: [16:18:57.279] | : . | : lapply [16:18:57.281] | : . | : parse_call() ... [16:18:57.281] | : . | : . Function: lapply(...) [16:18:57.282] | : . | : . Locate function ... [16:18:57.283] | : . | : . | Function located in: 'base' [16:18:57.284] | : . | : . Locate function ... done [16:18:57.285] | : . | : parse_call() ... done [16:18:57.286] | : . | descend_wrappers() ... done [16:18:57.287] | : . | parse_call() ... [16:18:57.288] | : . | : Function: lapply(...) [16:18:57.289] | : . | : Locate function ... [16:18:57.290] | : . | : . Function located in: 'base' [16:18:57.290] | : . | : Locate function ... done [16:18:57.291] | : . | parse_call() ... done [16:18:57.292] | : . | Position of call to be transpiled in expression: c(1) [16:18:57.293] | : . | lapply [16:18:57.294] | : . Finding call to be transpiled ... done [16:18:57.295] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:18:57.296] | : . | transpilers_for_package(action = 'make', type = 'futurize::add-on') ... [16:18:57.297] | : . | : - package: 'base' [16:18:57.298] | : . | : $fcns [16:18:57.298] | : . | : $fcns[[1]] [16:18:57.298] | : . | : function () [16:18:57.298] | : . | : { [16:18:57.298] | : . | : append_transpilers("futurize::add-on", make_addon_transpilers("base", [16:18:57.298] | : . | : "future.apply", make_options = make_options_for_future.apply)) [16:18:57.298] | : . | : append_transpilers("futurize::add-on", make_addon_transpilers("stats", [16:18:57.298] | : . | : "future.apply", make_options = make_options_for_future.apply)) [16:18:57.298] | : . | : c("future.apply") [16:18:57.298] | : . | : } [16:18:57.298] | : . | : [16:18:57.298] | : . | : [16:18:57.298] | : . | : [16:18:57.298] | : . | : [16:18:57.310] | : . | transpilers_for_package(action = 'make', type = 'futurize::add-on') ... done [16:18:57.311] | : . | Required packages: [n=1] 'future.apply' [16:18:57.312] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:57.313] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:18:57.314] | : . | Transpiler function: [16:18:57.315] | : . | function (expr, options = NULL) [16:18:57.315] | : . | { [16:18:57.315] | : . | call <- make_call("future_lapply") [16:18:57.315] | : . | fcn <- eval(call) [16:18:57.315] | : . | expr[[1]] <- call [16:18:57.315] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:57.315] | : . | { [16:18:57.315] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:57.315] | : . | if (is.null(defaults_base)) { [16:18:57.315] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:57.315] | : . | } [16:18:57.315] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:57.315] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:57.315] | : . | defaults <- defaults[keep] [16:18:57.315] | : . | specified <- attr(options, "specified") [16:18:57.315] | : . | if (length(specified) > 0) { [16:18:57.315] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:57.315] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:57.315] | : . | names(options)) [16:18:57.315] | : . | } [16:18:57.315] | : . | specified <- sprintf("future.%s", specified) [16:18:57.315] | : . | names <- setdiff(names(defaults), specified) [16:18:57.315] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:57.315] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:57.315] | : . | keep <- intersect(names(options), names(defaults)) [16:18:57.315] | : . | options <- options[keep] [16:18:57.315] | : . | options [16:18:57.315] | : . | })(options, fcn)) [16:18:57.315] | : . | expr <- as.call(parts) [16:18:57.315] | : . | expr [16:18:57.315] | : . | } [16:18:57.315] | : . | [16:18:57.317] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:18:57.318] | : get_transpiler() ... done [16:18:57.319] | : Transpile call expression ... [16:18:57.321] | : . future.apply::future_lapply(X = 1:3, FUN = function(x) { [16:18:57.321] | : . print(x) [16:18:57.321] | : . }, future.seed = FALSE, future.globals = TRUE, future.stdout = FALSE, [16:18:57.321] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_lapply-%d") [16:18:57.324] | : Transpile call expression ... done [16:18:57.325] | : Evaluate transpiled call expression [16:18:57.521] | transpile() ... done [16:18:57.523] futurize() ... done Futures created: 2 [[1]] [1] 1 [[2]] [1] 2 [[3]] [1] 3 === lapply ========================== lapply(X = xs, FUN = FUN) --------------------------------- [16:18:57.606] futurize() ... [16:18:57.607] | transpile() ... [16:18:57.608] | : get_transpiler() ... [16:18:57.609] | : . Finding call to be transpiled ... [16:18:57.610] | : . | descend_wrappers() ... [16:18:57.611] | : . | : Call: [16:18:57.611] | : . | : lapply [16:18:57.612] | : . | : parse_call() ... [16:18:57.613] | : . | : . Function: lapply(...) [16:18:57.614] | : . | : . Locate function ... [16:18:57.615] | : . | : . | Function located in: 'base' [16:18:57.616] | : . | : . Locate function ... done [16:18:57.616] | : . | : parse_call() ... done [16:18:57.617] | : . | descend_wrappers() ... done [16:18:57.618] | : . | parse_call() ... [16:18:57.619] | : . | : Function: lapply(...) [16:18:57.620] | : . | : Locate function ... [16:18:57.620] | : . | : . Function located in: 'base' [16:18:57.621] | : . | : Locate function ... done [16:18:57.622] | : . | parse_call() ... done [16:18:57.623] | : . | Position of call to be transpiled in expression: c(1) [16:18:57.624] | : . | lapply [16:18:57.625] | : . Finding call to be transpiled ... done [16:18:57.626] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:18:57.626] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:57.627] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:18:57.628] | : . | Transpiler function: [16:18:57.629] | : . | function (expr, options = NULL) [16:18:57.629] | : . | { [16:18:57.629] | : . | call <- make_call("future_lapply") [16:18:57.629] | : . | fcn <- eval(call) [16:18:57.629] | : . | expr[[1]] <- call [16:18:57.629] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:57.629] | : . | { [16:18:57.629] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:57.629] | : . | if (is.null(defaults_base)) { [16:18:57.629] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:57.629] | : . | } [16:18:57.629] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:57.629] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:57.629] | : . | defaults <- defaults[keep] [16:18:57.629] | : . | specified <- attr(options, "specified") [16:18:57.629] | : . | if (length(specified) > 0) { [16:18:57.629] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:57.629] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:57.629] | : . | names(options)) [16:18:57.629] | : . | } [16:18:57.629] | : . | specified <- sprintf("future.%s", specified) [16:18:57.629] | : . | names <- setdiff(names(defaults), specified) [16:18:57.629] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:57.629] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:57.629] | : . | keep <- intersect(names(options), names(defaults)) [16:18:57.629] | : . | options <- options[keep] [16:18:57.629] | : . | options [16:18:57.629] | : . | })(options, fcn)) [16:18:57.629] | : . | expr <- as.call(parts) [16:18:57.629] | : . | expr [16:18:57.629] | : . | } [16:18:57.629] | : . | [16:18:57.631] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:18:57.631] | : get_transpiler() ... done [16:18:57.632] | : Transpile call expression ... [16:18:57.634] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = FALSE, [16:18:57.634] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:18:57.634] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:18:57.635] | : Transpile call expression ... done [16:18:57.636] | : Evaluate transpiled call expression [16:18:57.695] | transpile() ... done [16:18:57.696] futurize() ... done Futures created: 2 [16:18:57.698] futurize() ... [16:18:57.699] | transpile() ... [16:18:57.700] | : get_transpiler() ... [16:18:57.701] | : . Finding call to be transpiled ... [16:18:57.701] | : . | descend_wrappers() ... [16:18:57.702] | : . | : Call: [16:18:57.703] | : . | : lapply [16:18:57.704] | : . | : parse_call() ... [16:18:57.705] | : . | : . Function: lapply(...) [16:18:57.706] | : . | : . Locate function ... [16:18:57.707] | : . | : . | Function located in: 'base' [16:18:57.708] | : . | : . Locate function ... done [16:18:57.709] | : . | : parse_call() ... done [16:18:57.710] | : . | descend_wrappers() ... done [16:18:57.711] | : . | parse_call() ... [16:18:57.712] | : . | : Function: lapply(...) [16:18:57.713] | : . | : Locate function ... [16:18:57.714] | : . | : . Function located in: 'base' [16:18:57.714] | : . | : Locate function ... done [16:18:57.715] | : . | parse_call() ... done [16:18:57.716] | : . | Position of call to be transpiled in expression: c(1) [16:18:57.717] | : . | lapply [16:18:57.718] | : . Finding call to be transpiled ... done [16:18:57.719] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:18:57.720] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:57.721] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:18:57.722] | : . | Transpiler function: [16:18:57.723] | : . | function (expr, options = NULL) [16:18:57.723] | : . | { [16:18:57.723] | : . | call <- make_call("future_lapply") [16:18:57.723] | : . | fcn <- eval(call) [16:18:57.723] | : . | expr[[1]] <- call [16:18:57.723] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:57.723] | : . | { [16:18:57.723] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:57.723] | : . | if (is.null(defaults_base)) { [16:18:57.723] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:57.723] | : . | } [16:18:57.723] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:57.723] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:57.723] | : . | defaults <- defaults[keep] [16:18:57.723] | : . | specified <- attr(options, "specified") [16:18:57.723] | : . | if (length(specified) > 0) { [16:18:57.723] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:57.723] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:57.723] | : . | names(options)) [16:18:57.723] | : . | } [16:18:57.723] | : . | specified <- sprintf("future.%s", specified) [16:18:57.723] | : . | names <- setdiff(names(defaults), specified) [16:18:57.723] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:57.723] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:57.723] | : . | keep <- intersect(names(options), names(defaults)) [16:18:57.723] | : . | options <- options[keep] [16:18:57.723] | : . | options [16:18:57.723] | : . | })(options, fcn)) [16:18:57.723] | : . | expr <- as.call(parts) [16:18:57.723] | : . | expr [16:18:57.723] | : . | } [16:18:57.723] | : . | [16:18:57.725] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:18:57.725] | : get_transpiler() ... done [16:18:57.726] | : Transpile call expression ... [16:18:57.728] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = FALSE, [16:18:57.728] | : . future.globals = TRUE, future.stdout = FALSE, future.conditions = character(0), [16:18:57.728] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:18:57.730] | : Transpile call expression ... done [16:18:57.731] | : Evaluate transpiled call expression [16:18:57.797] | transpile() ... done [16:18:57.798] futurize() ... done character(0) [16:18:57.800] futurize() ... [16:18:57.801] | transpile() ... [16:18:57.802] | : get_transpiler() ... [16:18:57.803] | : . Finding call to be transpiled ... [16:18:57.804] | : . | descend_wrappers() ... [16:18:57.805] | : . | : Call: [16:18:57.806] | : . | : lapply [16:18:57.808] | : . | : parse_call() ... [16:18:57.809] | : . | : . Function: lapply(...) [16:18:57.810] | : . | : . Locate function ... [16:18:57.811] | : . | : . | Function located in: 'base' [16:18:57.812] | : . | : . Locate function ... done [16:18:57.813] | : . | : parse_call() ... done [16:18:57.814] | : . | descend_wrappers() ... done [16:18:57.815] | : . | parse_call() ... [16:18:57.816] | : . | : Function: lapply(...) [16:18:57.817] | : . | : Locate function ... [16:18:57.818] | : . | : . Function located in: 'base' [16:18:57.819] | : . | : Locate function ... done [16:18:57.820] | : . | parse_call() ... done [16:18:57.821] | : . | Position of call to be transpiled in expression: c(1) [16:18:57.822] | : . | lapply [16:18:57.823] | : . Finding call to be transpiled ... done [16:18:57.824] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:18:57.825] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:57.826] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:18:57.827] | : . | Transpiler function: [16:18:57.828] | : . | function (expr, options = NULL) [16:18:57.828] | : . | { [16:18:57.828] | : . | call <- make_call("future_lapply") [16:18:57.828] | : . | fcn <- eval(call) [16:18:57.828] | : . | expr[[1]] <- call [16:18:57.828] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:57.828] | : . | { [16:18:57.828] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:57.828] | : . | if (is.null(defaults_base)) { [16:18:57.828] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:57.828] | : . | } [16:18:57.828] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:57.828] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:57.828] | : . | defaults <- defaults[keep] [16:18:57.828] | : . | specified <- attr(options, "specified") [16:18:57.828] | : . | if (length(specified) > 0) { [16:18:57.828] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:57.828] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:57.828] | : . | names(options)) [16:18:57.828] | : . | } [16:18:57.828] | : . | specified <- sprintf("future.%s", specified) [16:18:57.828] | : . | names <- setdiff(names(defaults), specified) [16:18:57.828] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:57.828] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:57.828] | : . | keep <- intersect(names(options), names(defaults)) [16:18:57.828] | : . | options <- options[keep] [16:18:57.828] | : . | options [16:18:57.828] | : . | })(options, fcn)) [16:18:57.828] | : . | expr <- as.call(parts) [16:18:57.828] | : . | expr [16:18:57.828] | : . | } [16:18:57.828] | : . | [16:18:57.831] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:18:57.832] | : get_transpiler() ... done [16:18:57.833] | : Transpile call expression ... [16:18:57.834] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = FALSE, [16:18:57.834] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:18:57.834] | : . future.scheduling = 1, future.chunk.size = 1L, future.label = "future_lapply-%d") [16:18:57.837] | : Transpile call expression ... done [16:18:57.838] | : Evaluate transpiled call expression [16:18:58.044] | transpile() ... done [16:18:58.046] futurize() ... done Test with RNG: futurize(lapply(X = xs, FUN = FUN), seed = TRUE, flavor = "add-on") [16:18:58.047] futurize() ... [16:18:58.048] | transpile() ... [16:18:58.049] | : get_transpiler() ... [16:18:58.050] | : . Finding call to be transpiled ... [16:18:58.050] | : . | descend_wrappers() ... [16:18:58.051] | : . | : Call: [16:18:58.051] | : . | : lapply [16:18:58.054] | : . | : parse_call() ... [16:18:58.055] | : . | : . Function: lapply(...) [16:18:58.055] | : . | : . Locate function ... [16:18:58.056] | : . | : . | Function located in: 'base' [16:18:58.057] | : . | : . Locate function ... done [16:18:58.058] | : . | : parse_call() ... done [16:18:58.059] | : . | descend_wrappers() ... done [16:18:58.060] | : . | parse_call() ... [16:18:58.060] | : . | : Function: lapply(...) [16:18:58.061] | : . | : Locate function ... [16:18:58.062] | : . | : . Function located in: 'base' [16:18:58.063] | : . | : Locate function ... done [16:18:58.063] | : . | parse_call() ... done [16:18:58.064] | : . | Position of call to be transpiled in expression: c(1) [16:18:58.064] | : . | lapply [16:18:58.065] | : . Finding call to be transpiled ... done [16:18:58.066] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:18:58.066] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:58.067] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:18:58.067] | : . | Transpiler function: [16:18:58.068] | : . | function (expr, options = NULL) [16:18:58.068] | : . | { [16:18:58.068] | : . | call <- make_call("future_lapply") [16:18:58.068] | : . | fcn <- eval(call) [16:18:58.068] | : . | expr[[1]] <- call [16:18:58.068] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:58.068] | : . | { [16:18:58.068] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:58.068] | : . | if (is.null(defaults_base)) { [16:18:58.068] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:58.068] | : . | } [16:18:58.068] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:58.068] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:58.068] | : . | defaults <- defaults[keep] [16:18:58.068] | : . | specified <- attr(options, "specified") [16:18:58.068] | : . | if (length(specified) > 0) { [16:18:58.068] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:58.068] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:58.068] | : . | names(options)) [16:18:58.068] | : . | } [16:18:58.068] | : . | specified <- sprintf("future.%s", specified) [16:18:58.068] | : . | names <- setdiff(names(defaults), specified) [16:18:58.068] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:58.068] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:58.068] | : . | keep <- intersect(names(options), names(defaults)) [16:18:58.068] | : . | options <- options[keep] [16:18:58.068] | : . | options [16:18:58.068] | : . | })(options, fcn)) [16:18:58.068] | : . | expr <- as.call(parts) [16:18:58.068] | : . | expr [16:18:58.068] | : . | } [16:18:58.068] | : . | [16:18:58.069] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:18:58.069] | : get_transpiler() ... done [16:18:58.070] | : Transpile call expression ... [16:18:58.071] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = TRUE, [16:18:58.071] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:18:58.071] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:18:58.072] | : Transpile call expression ... done [16:18:58.073] | : Evaluate transpiled call expression [16:18:58.124] | transpile() ... done [16:18:58.126] futurize() ... done === lapply ========================== base::lapply(X = xs, FUN = FUN) --------------------------------- [16:18:58.128] futurize() ... [16:18:58.130] | transpile() ... [16:18:58.131] | : get_transpiler() ... [16:18:58.132] | : . Finding call to be transpiled ... [16:18:58.133] | : . | descend_wrappers() ... [16:18:58.135] | : . | : Call: [16:18:58.136] | : . | : base::lapply [16:18:58.137] | : . | : parse_call() ... [16:18:58.138] | : . | : . Function: base::lapply(...) [16:18:58.140] | : . | : parse_call() ... done [16:18:58.141] | : . | descend_wrappers() ... done [16:18:58.142] | : . | parse_call() ... [16:18:58.143] | : . | : Function: base::lapply(...) [16:18:58.144] | : . | parse_call() ... done [16:18:58.146] | : . | Position of call to be transpiled in expression: c(1) [16:18:58.147] | : . | base::lapply [16:18:58.148] | : . Finding call to be transpiled ... done [16:18:58.149] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:18:58.151] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:58.152] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:18:58.153] | : . | Transpiler function: [16:18:58.154] | : . | function (expr, options = NULL) [16:18:58.154] | : . | { [16:18:58.154] | : . | call <- make_call("future_lapply") [16:18:58.154] | : . | fcn <- eval(call) [16:18:58.154] | : . | expr[[1]] <- call [16:18:58.154] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:58.154] | : . | { [16:18:58.154] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:58.154] | : . | if (is.null(defaults_base)) { [16:18:58.154] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:58.154] | : . | } [16:18:58.154] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:58.154] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:58.154] | : . | defaults <- defaults[keep] [16:18:58.154] | : . | specified <- attr(options, "specified") [16:18:58.154] | : . | if (length(specified) > 0) { [16:18:58.154] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:58.154] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:58.154] | : . | names(options)) [16:18:58.154] | : . | } [16:18:58.154] | : . | specified <- sprintf("future.%s", specified) [16:18:58.154] | : . | names <- setdiff(names(defaults), specified) [16:18:58.154] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:58.154] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:58.154] | : . | keep <- intersect(names(options), names(defaults)) [16:18:58.154] | : . | options <- options[keep] [16:18:58.154] | : . | options [16:18:58.154] | : . | })(options, fcn)) [16:18:58.154] | : . | expr <- as.call(parts) [16:18:58.154] | : . | expr [16:18:58.154] | : . | } [16:18:58.154] | : . | [16:18:58.156] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:18:58.157] | : get_transpiler() ... done [16:18:58.159] | : Transpile call expression ... [16:18:58.160] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = FALSE, [16:18:58.160] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:18:58.160] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:18:58.163] | : Transpile call expression ... done [16:18:58.164] | : Evaluate transpiled call expression [16:18:58.245] | transpile() ... done [16:18:58.246] futurize() ... done Futures created: 2 [16:18:58.247] futurize() ... [16:18:58.248] | transpile() ... [16:18:58.249] | : get_transpiler() ... [16:18:58.250] | : . Finding call to be transpiled ... [16:18:58.251] | : . | descend_wrappers() ... [16:18:58.252] | : . | : Call: [16:18:58.253] | : . | : base::lapply [16:18:58.254] | : . | : parse_call() ... [16:18:58.255] | : . | : . Function: base::lapply(...) [16:18:58.256] | : . | : parse_call() ... done [16:18:58.257] | : . | descend_wrappers() ... done [16:18:58.258] | : . | parse_call() ... [16:18:58.259] | : . | : Function: base::lapply(...) [16:18:58.260] | : . | parse_call() ... done [16:18:58.261] | : . | Position of call to be transpiled in expression: c(1) [16:18:58.262] | : . | base::lapply [16:18:58.263] | : . Finding call to be transpiled ... done [16:18:58.264] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:18:58.265] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:58.266] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:18:58.267] | : . | Transpiler function: [16:18:58.267] | : . | function (expr, options = NULL) [16:18:58.267] | : . | { [16:18:58.267] | : . | call <- make_call("future_lapply") [16:18:58.267] | : . | fcn <- eval(call) [16:18:58.267] | : . | expr[[1]] <- call [16:18:58.267] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:58.267] | : . | { [16:18:58.267] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:58.267] | : . | if (is.null(defaults_base)) { [16:18:58.267] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:58.267] | : . | } [16:18:58.267] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:58.267] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:58.267] | : . | defaults <- defaults[keep] [16:18:58.267] | : . | specified <- attr(options, "specified") [16:18:58.267] | : . | if (length(specified) > 0) { [16:18:58.267] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:58.267] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:58.267] | : . | names(options)) [16:18:58.267] | : . | } [16:18:58.267] | : . | specified <- sprintf("future.%s", specified) [16:18:58.267] | : . | names <- setdiff(names(defaults), specified) [16:18:58.267] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:58.267] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:58.267] | : . | keep <- intersect(names(options), names(defaults)) [16:18:58.267] | : . | options <- options[keep] [16:18:58.267] | : . | options [16:18:58.267] | : . | })(options, fcn)) [16:18:58.267] | : . | expr <- as.call(parts) [16:18:58.267] | : . | expr [16:18:58.267] | : . | } [16:18:58.267] | : . | [16:18:58.269] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:18:58.270] | : get_transpiler() ... done [16:18:58.271] | : Transpile call expression ... [16:18:58.272] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = FALSE, [16:18:58.272] | : . future.globals = TRUE, future.stdout = FALSE, future.conditions = character(0), [16:18:58.272] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:18:58.275] | : Transpile call expression ... done [16:18:58.276] | : Evaluate transpiled call expression [16:18:58.341] | transpile() ... done [16:18:58.343] futurize() ... done character(0) [16:18:58.344] futurize() ... [16:18:58.345] | transpile() ... [16:18:58.346] | : get_transpiler() ... [16:18:58.347] | : . Finding call to be transpiled ... [16:18:58.348] | : . | descend_wrappers() ... [16:18:58.349] | : . | : Call: [16:18:58.350] | : . | : base::lapply [16:18:58.351] | : . | : parse_call() ... [16:18:58.351] | : . | : . Function: base::lapply(...) [16:18:58.352] | : . | : parse_call() ... done [16:18:58.353] | : . | descend_wrappers() ... done [16:18:58.354] | : . | parse_call() ... [16:18:58.355] | : . | : Function: base::lapply(...) [16:18:58.356] | : . | parse_call() ... done [16:18:58.357] | : . | Position of call to be transpiled in expression: c(1) [16:18:58.358] | : . | base::lapply [16:18:58.359] | : . Finding call to be transpiled ... done [16:18:58.360] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:18:58.361] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:58.362] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:18:58.362] | : . | Transpiler function: [16:18:58.363] | : . | function (expr, options = NULL) [16:18:58.363] | : . | { [16:18:58.363] | : . | call <- make_call("future_lapply") [16:18:58.363] | : . | fcn <- eval(call) [16:18:58.363] | : . | expr[[1]] <- call [16:18:58.363] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:58.363] | : . | { [16:18:58.363] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:58.363] | : . | if (is.null(defaults_base)) { [16:18:58.363] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:58.363] | : . | } [16:18:58.363] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:58.363] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:58.363] | : . | defaults <- defaults[keep] [16:18:58.363] | : . | specified <- attr(options, "specified") [16:18:58.363] | : . | if (length(specified) > 0) { [16:18:58.363] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:58.363] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:58.363] | : . | names(options)) [16:18:58.363] | : . | } [16:18:58.363] | : . | specified <- sprintf("future.%s", specified) [16:18:58.363] | : . | names <- setdiff(names(defaults), specified) [16:18:58.363] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:58.363] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:58.363] | : . | keep <- intersect(names(options), names(defaults)) [16:18:58.363] | : . | options <- options[keep] [16:18:58.363] | : . | options [16:18:58.363] | : . | })(options, fcn)) [16:18:58.363] | : . | expr <- as.call(parts) [16:18:58.363] | : . | expr [16:18:58.363] | : . | } [16:18:58.363] | : . | [16:18:58.365] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:18:58.366] | : get_transpiler() ... done [16:18:58.367] | : Transpile call expression ... [16:18:58.368] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = FALSE, [16:18:58.368] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:18:58.368] | : . future.scheduling = 1, future.chunk.size = 1L, future.label = "future_lapply-%d") [16:18:58.370] | : Transpile call expression ... done [16:18:58.371] | : Evaluate transpiled call expression [16:18:58.517] | transpile() ... done [16:18:58.519] futurize() ... done Test with RNG: futurize(base::lapply(X = xs, FUN = FUN), seed = TRUE, flavor = "add-on") [16:18:58.520] futurize() ... [16:18:58.521] | transpile() ... [16:18:58.522] | : get_transpiler() ... [16:18:58.523] | : . Finding call to be transpiled ... [16:18:58.524] | : . | descend_wrappers() ... [16:18:58.525] | : . | : Call: [16:18:58.526] | : . | : base::lapply [16:18:58.527] | : . | : parse_call() ... [16:18:58.529] | : . | : . Function: base::lapply(...) [16:18:58.530] | : . | : parse_call() ... done [16:18:58.531] | : . | descend_wrappers() ... done [16:18:58.532] | : . | parse_call() ... [16:18:58.533] | : . | : Function: base::lapply(...) [16:18:58.534] | : . | parse_call() ... done [16:18:58.535] | : . | Position of call to be transpiled in expression: c(1) [16:18:58.537] | : . | base::lapply [16:18:58.538] | : . Finding call to be transpiled ... done [16:18:58.539] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:18:58.540] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:58.541] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:18:58.542] | : . | Transpiler function: [16:18:58.543] | : . | function (expr, options = NULL) [16:18:58.543] | : . | { [16:18:58.543] | : . | call <- make_call("future_lapply") [16:18:58.543] | : . | fcn <- eval(call) [16:18:58.543] | : . | expr[[1]] <- call [16:18:58.543] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:58.543] | : . | { [16:18:58.543] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:58.543] | : . | if (is.null(defaults_base)) { [16:18:58.543] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:58.543] | : . | } [16:18:58.543] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:58.543] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:58.543] | : . | defaults <- defaults[keep] [16:18:58.543] | : . | specified <- attr(options, "specified") [16:18:58.543] | : . | if (length(specified) > 0) { [16:18:58.543] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:58.543] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:58.543] | : . | names(options)) [16:18:58.543] | : . | } [16:18:58.543] | : . | specified <- sprintf("future.%s", specified) [16:18:58.543] | : . | names <- setdiff(names(defaults), specified) [16:18:58.543] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:58.543] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:58.543] | : . | keep <- intersect(names(options), names(defaults)) [16:18:58.543] | : . | options <- options[keep] [16:18:58.543] | : . | options [16:18:58.543] | : . | })(options, fcn)) [16:18:58.543] | : . | expr <- as.call(parts) [16:18:58.543] | : . | expr [16:18:58.543] | : . | } [16:18:58.543] | : . | [16:18:58.545] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:18:58.546] | : get_transpiler() ... done [16:18:58.546] | : Transpile call expression ... [16:18:58.548] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = TRUE, [16:18:58.548] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:18:58.548] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:18:58.550] | : Transpile call expression ... done [16:18:58.551] | : Evaluate transpiled call expression [16:18:58.617] | transpile() ... done [16:18:58.617] futurize() ... done === sapply ========================== sapply(X = xs, FUN = FUN) --------------------------------- [16:18:58.619] futurize() ... [16:18:58.619] | transpile() ... [16:18:58.620] | : get_transpiler() ... [16:18:58.620] | : . Finding call to be transpiled ... [16:18:58.621] | : . | descend_wrappers() ... [16:18:58.622] | : . | : Call: [16:18:58.622] | : . | : sapply [16:18:58.623] | : . | : parse_call() ... [16:18:58.623] | : . | : . Function: sapply(...) [16:18:58.624] | : . | : . Locate function ... [16:18:58.624] | : . | : . | Function located in: 'base' [16:18:58.625] | : . | : . Locate function ... done [16:18:58.626] | : . | : parse_call() ... done [16:18:58.627] | : . | descend_wrappers() ... done [16:18:58.628] | : . | parse_call() ... [16:18:58.629] | : . | : Function: sapply(...) [16:18:58.630] | : . | : Locate function ... [16:18:58.630] | : . | : . Function located in: 'base' [16:18:58.631] | : . | : Locate function ... done [16:18:58.632] | : . | parse_call() ... done [16:18:58.633] | : . | Position of call to be transpiled in expression: c(1) [16:18:58.634] | : . | sapply [16:18:58.636] | : . Finding call to be transpiled ... done [16:18:58.637] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:18:58.637] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:58.638] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:18:58.639] | : . | Transpiler function: [16:18:58.640] | : . | function (expr, options = NULL) [16:18:58.640] | : . | { [16:18:58.640] | : . | call <- make_call("future_sapply") [16:18:58.640] | : . | fcn <- eval(call) [16:18:58.640] | : . | expr[[1]] <- call [16:18:58.640] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:58.640] | : . | { [16:18:58.640] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:58.640] | : . | if (is.null(defaults_base)) { [16:18:58.640] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:58.640] | : . | } [16:18:58.640] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:58.640] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:58.640] | : . | defaults <- defaults[keep] [16:18:58.640] | : . | specified <- attr(options, "specified") [16:18:58.640] | : . | if (length(specified) > 0) { [16:18:58.640] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:58.640] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:58.640] | : . | names(options)) [16:18:58.640] | : . | } [16:18:58.640] | : . | specified <- sprintf("future.%s", specified) [16:18:58.640] | : . | names <- setdiff(names(defaults), specified) [16:18:58.640] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:58.640] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:58.640] | : . | keep <- intersect(names(options), names(defaults)) [16:18:58.640] | : . | options <- options[keep] [16:18:58.640] | : . | options [16:18:58.640] | : . | })(options, fcn)) [16:18:58.640] | : . | expr <- as.call(parts) [16:18:58.640] | : . | expr [16:18:58.640] | : . | } [16:18:58.640] | : . | [16:18:58.642] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:18:58.643] | : get_transpiler() ... done [16:18:58.644] | : Transpile call expression ... [16:18:58.646] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = FALSE, [16:18:58.646] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:18:58.646] | : . future.scheduling = 1, future.label = "future_sapply-%d") [16:18:58.648] | : Transpile call expression ... done [16:18:58.649] | : Evaluate transpiled call expression [16:18:58.711] | transpile() ... done [16:18:58.712] futurize() ... done Futures created: 2 [16:18:58.713] futurize() ... [16:18:58.715] | transpile() ... [16:18:58.716] | : get_transpiler() ... [16:18:58.717] | : . Finding call to be transpiled ... [16:18:58.718] | : . | descend_wrappers() ... [16:18:58.719] | : . | : Call: [16:18:58.720] | : . | : sapply [16:18:58.721] | : . | : parse_call() ... [16:18:58.722] | : . | : . Function: sapply(...) [16:18:58.723] | : . | : . Locate function ... [16:18:58.724] | : . | : . | Function located in: 'base' [16:18:58.725] | : . | : . Locate function ... done [16:18:58.726] | : . | : parse_call() ... done [16:18:58.727] | : . | descend_wrappers() ... done [16:18:58.728] | : . | parse_call() ... [16:18:58.729] | : . | : Function: sapply(...) [16:18:58.730] | : . | : Locate function ... [16:18:58.731] | : . | : . Function located in: 'base' [16:18:58.732] | : . | : Locate function ... done [16:18:58.732] | : . | parse_call() ... done [16:18:58.733] | : . | Position of call to be transpiled in expression: c(1) [16:18:58.734] | : . | sapply [16:18:58.735] | : . Finding call to be transpiled ... done [16:18:58.736] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:18:58.737] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:58.738] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:18:58.738] | : . | Transpiler function: [16:18:58.739] | : . | function (expr, options = NULL) [16:18:58.739] | : . | { [16:18:58.739] | : . | call <- make_call("future_sapply") [16:18:58.739] | : . | fcn <- eval(call) [16:18:58.739] | : . | expr[[1]] <- call [16:18:58.739] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:58.739] | : . | { [16:18:58.739] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:58.739] | : . | if (is.null(defaults_base)) { [16:18:58.739] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:58.739] | : . | } [16:18:58.739] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:58.739] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:58.739] | : . | defaults <- defaults[keep] [16:18:58.739] | : . | specified <- attr(options, "specified") [16:18:58.739] | : . | if (length(specified) > 0) { [16:18:58.739] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:58.739] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:58.739] | : . | names(options)) [16:18:58.739] | : . | } [16:18:58.739] | : . | specified <- sprintf("future.%s", specified) [16:18:58.739] | : . | names <- setdiff(names(defaults), specified) [16:18:58.739] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:58.739] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:58.739] | : . | keep <- intersect(names(options), names(defaults)) [16:18:58.739] | : . | options <- options[keep] [16:18:58.739] | : . | options [16:18:58.739] | : . | })(options, fcn)) [16:18:58.739] | : . | expr <- as.call(parts) [16:18:58.739] | : . | expr [16:18:58.739] | : . | } [16:18:58.739] | : . | [16:18:58.741] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:18:58.742] | : get_transpiler() ... done [16:18:58.743] | : Transpile call expression ... [16:18:58.744] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = FALSE, [16:18:58.744] | : . future.globals = TRUE, future.stdout = FALSE, future.conditions = character(0), [16:18:58.744] | : . future.scheduling = 1, future.label = "future_sapply-%d") [16:18:58.746] | : Transpile call expression ... done [16:18:58.747] | : Evaluate transpiled call expression [16:18:58.816] | transpile() ... done [16:18:58.817] futurize() ... done character(0) [16:18:58.818] futurize() ... [16:18:58.818] | transpile() ... [16:18:58.819] | : get_transpiler() ... [16:18:58.820] | : . Finding call to be transpiled ... [16:18:58.820] | : . | descend_wrappers() ... [16:18:58.821] | : . | : Call: [16:18:58.821] | : . | : sapply [16:18:58.822] | : . | : parse_call() ... [16:18:58.823] | : . | : . Function: sapply(...) [16:18:58.823] | : . | : . Locate function ... [16:18:58.824] | : . | : . | Function located in: 'base' [16:18:58.825] | : . | : . Locate function ... done [16:18:58.825] | : . | : parse_call() ... done [16:18:58.826] | : . | descend_wrappers() ... done [16:18:58.827] | : . | parse_call() ... [16:18:58.827] | : . | : Function: sapply(...) [16:18:58.828] | : . | : Locate function ... [16:18:58.829] | : . | : . Function located in: 'base' [16:18:58.830] | : . | : Locate function ... done [16:18:58.831] | : . | parse_call() ... done [16:18:58.831] | : . | Position of call to be transpiled in expression: c(1) [16:18:58.832] | : . | sapply [16:18:58.833] | : . Finding call to be transpiled ... done [16:18:58.833] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:18:58.834] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:58.835] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:18:58.835] | : . | Transpiler function: [16:18:58.836] | : . | function (expr, options = NULL) [16:18:58.836] | : . | { [16:18:58.836] | : . | call <- make_call("future_sapply") [16:18:58.836] | : . | fcn <- eval(call) [16:18:58.836] | : . | expr[[1]] <- call [16:18:58.836] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:58.836] | : . | { [16:18:58.836] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:58.836] | : . | if (is.null(defaults_base)) { [16:18:58.836] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:58.836] | : . | } [16:18:58.836] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:58.836] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:58.836] | : . | defaults <- defaults[keep] [16:18:58.836] | : . | specified <- attr(options, "specified") [16:18:58.836] | : . | if (length(specified) > 0) { [16:18:58.836] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:58.836] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:58.836] | : . | names(options)) [16:18:58.836] | : . | } [16:18:58.836] | : . | specified <- sprintf("future.%s", specified) [16:18:58.836] | : . | names <- setdiff(names(defaults), specified) [16:18:58.836] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:58.836] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:58.836] | : . | keep <- intersect(names(options), names(defaults)) [16:18:58.836] | : . | options <- options[keep] [16:18:58.836] | : . | options [16:18:58.836] | : . | })(options, fcn)) [16:18:58.836] | : . | expr <- as.call(parts) [16:18:58.836] | : . | expr [16:18:58.836] | : . | } [16:18:58.836] | : . | [16:18:58.837] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:18:58.838] | : get_transpiler() ... done [16:18:58.838] | : Transpile call expression ... [16:18:58.839] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = FALSE, [16:18:58.839] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:18:58.839] | : . future.scheduling = 1, future.chunk.size = 1L, future.label = "future_sapply-%d") [16:18:58.842] | : Transpile call expression ... done [16:18:58.843] | : Evaluate transpiled call expression [16:18:58.983] | transpile() ... done [16:18:58.985] futurize() ... done Test with RNG: futurize(sapply(X = xs, FUN = FUN), seed = TRUE, flavor = "add-on") [16:18:58.986] futurize() ... [16:18:58.988] | transpile() ... [16:18:58.989] | : get_transpiler() ... [16:18:58.990] | : . Finding call to be transpiled ... [16:18:58.991] | : . | descend_wrappers() ... [16:18:58.992] | : . | : Call: [16:18:58.994] | : . | : sapply [16:18:58.995] | : . | : parse_call() ... [16:18:58.996] | : . | : . Function: sapply(...) [16:18:58.997] | : . | : . Locate function ... [16:18:58.999] | : . | : . | Function located in: 'base' [16:18:59.000] | : . | : . Locate function ... done [16:18:59.001] | : . | : parse_call() ... done [16:18:59.001] | : . | descend_wrappers() ... done [16:18:59.002] | : . | parse_call() ... [16:18:59.003] | : . | : Function: sapply(...) [16:18:59.003] | : . | : Locate function ... [16:18:59.004] | : . | : . Function located in: 'base' [16:18:59.005] | : . | : Locate function ... done [16:18:59.005] | : . | parse_call() ... done [16:18:59.006] | : . | Position of call to be transpiled in expression: c(1) [16:18:59.006] | : . | sapply [16:18:59.007] | : . Finding call to be transpiled ... done [16:18:59.008] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:18:59.009] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:59.009] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:18:59.010] | : . | Transpiler function: [16:18:59.011] | : . | function (expr, options = NULL) [16:18:59.011] | : . | { [16:18:59.011] | : . | call <- make_call("future_sapply") [16:18:59.011] | : . | fcn <- eval(call) [16:18:59.011] | : . | expr[[1]] <- call [16:18:59.011] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:59.011] | : . | { [16:18:59.011] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:59.011] | : . | if (is.null(defaults_base)) { [16:18:59.011] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:59.011] | : . | } [16:18:59.011] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:59.011] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:59.011] | : . | defaults <- defaults[keep] [16:18:59.011] | : . | specified <- attr(options, "specified") [16:18:59.011] | : . | if (length(specified) > 0) { [16:18:59.011] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:59.011] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:59.011] | : . | names(options)) [16:18:59.011] | : . | } [16:18:59.011] | : . | specified <- sprintf("future.%s", specified) [16:18:59.011] | : . | names <- setdiff(names(defaults), specified) [16:18:59.011] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:59.011] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:59.011] | : . | keep <- intersect(names(options), names(defaults)) [16:18:59.011] | : . | options <- options[keep] [16:18:59.011] | : . | options [16:18:59.011] | : . | })(options, fcn)) [16:18:59.011] | : . | expr <- as.call(parts) [16:18:59.011] | : . | expr [16:18:59.011] | : . | } [16:18:59.011] | : . | [16:18:59.012] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:18:59.013] | : get_transpiler() ... done [16:18:59.013] | : Transpile call expression ... [16:18:59.014] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = TRUE, [16:18:59.014] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:18:59.014] | : . future.scheduling = 1, future.label = "future_sapply-%d") [16:18:59.016] | : Transpile call expression ... done [16:18:59.016] | : Evaluate transpiled call expression [16:18:59.068] | transpile() ... done [16:18:59.069] futurize() ... done === sapply ========================== base::sapply(X = xs, FUN = FUN) --------------------------------- [16:18:59.071] futurize() ... [16:18:59.072] | transpile() ... [16:18:59.073] | : get_transpiler() ... [16:18:59.073] | : . Finding call to be transpiled ... [16:18:59.074] | : . | descend_wrappers() ... [16:18:59.075] | : . | : Call: [16:18:59.076] | : . | : base::sapply [16:18:59.077] | : . | : parse_call() ... [16:18:59.078] | : . | : . Function: base::sapply(...) [16:18:59.079] | : . | : parse_call() ... done [16:18:59.080] | : . | descend_wrappers() ... done [16:18:59.080] | : . | parse_call() ... [16:18:59.081] | : . | : Function: base::sapply(...) [16:18:59.082] | : . | parse_call() ... done [16:18:59.083] | : . | Position of call to be transpiled in expression: c(1) [16:18:59.084] | : . | base::sapply [16:18:59.085] | : . Finding call to be transpiled ... done [16:18:59.086] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:18:59.087] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:59.087] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:18:59.088] | : . | Transpiler function: [16:18:59.089] | : . | function (expr, options = NULL) [16:18:59.089] | : . | { [16:18:59.089] | : . | call <- make_call("future_sapply") [16:18:59.089] | : . | fcn <- eval(call) [16:18:59.089] | : . | expr[[1]] <- call [16:18:59.089] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:59.089] | : . | { [16:18:59.089] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:59.089] | : . | if (is.null(defaults_base)) { [16:18:59.089] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:59.089] | : . | } [16:18:59.089] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:59.089] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:59.089] | : . | defaults <- defaults[keep] [16:18:59.089] | : . | specified <- attr(options, "specified") [16:18:59.089] | : . | if (length(specified) > 0) { [16:18:59.089] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:59.089] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:59.089] | : . | names(options)) [16:18:59.089] | : . | } [16:18:59.089] | : . | specified <- sprintf("future.%s", specified) [16:18:59.089] | : . | names <- setdiff(names(defaults), specified) [16:18:59.089] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:59.089] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:59.089] | : . | keep <- intersect(names(options), names(defaults)) [16:18:59.089] | : . | options <- options[keep] [16:18:59.089] | : . | options [16:18:59.089] | : . | })(options, fcn)) [16:18:59.089] | : . | expr <- as.call(parts) [16:18:59.089] | : . | expr [16:18:59.089] | : . | } [16:18:59.089] | : . | [16:18:59.091] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:18:59.092] | : get_transpiler() ... done [16:18:59.092] | : Transpile call expression ... [16:18:59.094] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = FALSE, [16:18:59.094] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:18:59.094] | : . future.scheduling = 1, future.label = "future_sapply-%d") [16:18:59.096] | : Transpile call expression ... done [16:18:59.096] | : Evaluate transpiled call expression [16:18:59.148] | transpile() ... done [16:18:59.150] futurize() ... done Futures created: 2 [16:18:59.151] futurize() ... [16:18:59.152] | transpile() ... [16:18:59.153] | : get_transpiler() ... [16:18:59.154] | : . Finding call to be transpiled ... [16:18:59.155] | : . | descend_wrappers() ... [16:18:59.156] | : . | : Call: [16:18:59.157] | : . | : base::sapply [16:18:59.158] | : . | : parse_call() ... [16:18:59.159] | : . | : . Function: base::sapply(...) [16:18:59.159] | : . | : parse_call() ... done [16:18:59.160] | : . | descend_wrappers() ... done [16:18:59.161] | : . | parse_call() ... [16:18:59.161] | : . | : Function: base::sapply(...) [16:18:59.162] | : . | parse_call() ... done [16:18:59.162] | : . | Position of call to be transpiled in expression: c(1) [16:18:59.163] | : . | base::sapply [16:18:59.164] | : . Finding call to be transpiled ... done [16:18:59.165] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:18:59.166] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:59.166] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:18:59.167] | : . | Transpiler function: [16:18:59.168] | : . | function (expr, options = NULL) [16:18:59.168] | : . | { [16:18:59.168] | : . | call <- make_call("future_sapply") [16:18:59.168] | : . | fcn <- eval(call) [16:18:59.168] | : . | expr[[1]] <- call [16:18:59.168] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:59.168] | : . | { [16:18:59.168] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:59.168] | : . | if (is.null(defaults_base)) { [16:18:59.168] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:59.168] | : . | } [16:18:59.168] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:59.168] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:59.168] | : . | defaults <- defaults[keep] [16:18:59.168] | : . | specified <- attr(options, "specified") [16:18:59.168] | : . | if (length(specified) > 0) { [16:18:59.168] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:59.168] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:59.168] | : . | names(options)) [16:18:59.168] | : . | } [16:18:59.168] | : . | specified <- sprintf("future.%s", specified) [16:18:59.168] | : . | names <- setdiff(names(defaults), specified) [16:18:59.168] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:59.168] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:59.168] | : . | keep <- intersect(names(options), names(defaults)) [16:18:59.168] | : . | options <- options[keep] [16:18:59.168] | : . | options [16:18:59.168] | : . | })(options, fcn)) [16:18:59.168] | : . | expr <- as.call(parts) [16:18:59.168] | : . | expr [16:18:59.168] | : . | } [16:18:59.168] | : . | [16:18:59.170] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:18:59.171] | : get_transpiler() ... done [16:18:59.171] | : Transpile call expression ... [16:18:59.173] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = FALSE, [16:18:59.173] | : . future.globals = TRUE, future.stdout = FALSE, future.conditions = character(0), [16:18:59.173] | : . future.scheduling = 1, future.label = "future_sapply-%d") [16:18:59.175] | : Transpile call expression ... done [16:18:59.176] | : Evaluate transpiled call expression [16:18:59.248] | transpile() ... done [16:18:59.249] futurize() ... done character(0) [16:18:59.251] futurize() ... [16:18:59.252] | transpile() ... [16:18:59.253] | : get_transpiler() ... [16:18:59.254] | : . Finding call to be transpiled ... [16:18:59.255] | : . | descend_wrappers() ... [16:18:59.256] | : . | : Call: [16:18:59.257] | : . | : base::sapply [16:18:59.259] | : . | : parse_call() ... [16:18:59.260] | : . | : . Function: base::sapply(...) [16:18:59.261] | : . | : parse_call() ... done [16:18:59.262] | : . | descend_wrappers() ... done [16:18:59.263] | : . | parse_call() ... [16:18:59.264] | : . | : Function: base::sapply(...) [16:18:59.265] | : . | parse_call() ... done [16:18:59.266] | : . | Position of call to be transpiled in expression: c(1) [16:18:59.267] | : . | base::sapply [16:18:59.268] | : . Finding call to be transpiled ... done [16:18:59.269] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:18:59.270] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:59.271] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:18:59.272] | : . | Transpiler function: [16:18:59.273] | : . | function (expr, options = NULL) [16:18:59.273] | : . | { [16:18:59.273] | : . | call <- make_call("future_sapply") [16:18:59.273] | : . | fcn <- eval(call) [16:18:59.273] | : . | expr[[1]] <- call [16:18:59.273] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:59.273] | : . | { [16:18:59.273] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:59.273] | : . | if (is.null(defaults_base)) { [16:18:59.273] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:59.273] | : . | } [16:18:59.273] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:59.273] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:59.273] | : . | defaults <- defaults[keep] [16:18:59.273] | : . | specified <- attr(options, "specified") [16:18:59.273] | : . | if (length(specified) > 0) { [16:18:59.273] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:59.273] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:59.273] | : . | names(options)) [16:18:59.273] | : . | } [16:18:59.273] | : . | specified <- sprintf("future.%s", specified) [16:18:59.273] | : . | names <- setdiff(names(defaults), specified) [16:18:59.273] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:59.273] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:59.273] | : . | keep <- intersect(names(options), names(defaults)) [16:18:59.273] | : . | options <- options[keep] [16:18:59.273] | : . | options [16:18:59.273] | : . | })(options, fcn)) [16:18:59.273] | : . | expr <- as.call(parts) [16:18:59.273] | : . | expr [16:18:59.273] | : . | } [16:18:59.273] | : . | [16:18:59.275] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:18:59.276] | : get_transpiler() ... done [16:18:59.276] | : Transpile call expression ... [16:18:59.278] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = FALSE, [16:18:59.278] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:18:59.278] | : . future.scheduling = 1, future.chunk.size = 1L, future.label = "future_sapply-%d") [16:18:59.280] | : Transpile call expression ... done [16:18:59.281] | : Evaluate transpiled call expression [16:18:59.434] | transpile() ... done [16:18:59.435] futurize() ... done Test with RNG: futurize(base::sapply(X = xs, FUN = FUN), seed = TRUE, flavor = "add-on") [16:18:59.436] futurize() ... [16:18:59.437] | transpile() ... [16:18:59.441] | : get_transpiler() ... [16:18:59.441] | : . Finding call to be transpiled ... [16:18:59.442] | : . | descend_wrappers() ... [16:18:59.443] | : . | : Call: [16:18:59.444] | : . | : base::sapply [16:18:59.445] | : . | : parse_call() ... [16:18:59.446] | : . | : . Function: base::sapply(...) [16:18:59.446] | : . | : parse_call() ... done [16:18:59.447] | : . | descend_wrappers() ... done [16:18:59.448] | : . | parse_call() ... [16:18:59.449] | : . | : Function: base::sapply(...) [16:18:59.450] | : . | parse_call() ... done [16:18:59.450] | : . | Position of call to be transpiled in expression: c(1) [16:18:59.451] | : . | base::sapply [16:18:59.452] | : . Finding call to be transpiled ... done [16:18:59.453] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:18:59.453] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:59.454] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:18:59.454] | : . | Transpiler function: [16:18:59.455] | : . | function (expr, options = NULL) [16:18:59.455] | : . | { [16:18:59.455] | : . | call <- make_call("future_sapply") [16:18:59.455] | : . | fcn <- eval(call) [16:18:59.455] | : . | expr[[1]] <- call [16:18:59.455] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:59.455] | : . | { [16:18:59.455] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:59.455] | : . | if (is.null(defaults_base)) { [16:18:59.455] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:59.455] | : . | } [16:18:59.455] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:59.455] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:59.455] | : . | defaults <- defaults[keep] [16:18:59.455] | : . | specified <- attr(options, "specified") [16:18:59.455] | : . | if (length(specified) > 0) { [16:18:59.455] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:59.455] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:59.455] | : . | names(options)) [16:18:59.455] | : . | } [16:18:59.455] | : . | specified <- sprintf("future.%s", specified) [16:18:59.455] | : . | names <- setdiff(names(defaults), specified) [16:18:59.455] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:59.455] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:59.455] | : . | keep <- intersect(names(options), names(defaults)) [16:18:59.455] | : . | options <- options[keep] [16:18:59.455] | : . | options [16:18:59.455] | : . | })(options, fcn)) [16:18:59.455] | : . | expr <- as.call(parts) [16:18:59.455] | : . | expr [16:18:59.455] | : . | } [16:18:59.455] | : . | [16:18:59.456] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:18:59.457] | : get_transpiler() ... done [16:18:59.457] | : Transpile call expression ... [16:18:59.458] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = TRUE, [16:18:59.458] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:18:59.458] | : . future.scheduling = 1, future.label = "future_sapply-%d") [16:18:59.459] | : Transpile call expression ... done [16:18:59.460] | : Evaluate transpiled call expression [16:18:59.527] | transpile() ... done [16:18:59.528] futurize() ... done === sapply ========================== base::sapply(X = xs, FUN = FUN, simplify = FALSE) --------------------------------- [16:18:59.530] futurize() ... [16:18:59.531] | transpile() ... [16:18:59.532] | : get_transpiler() ... [16:18:59.533] | : . Finding call to be transpiled ... [16:18:59.534] | : . | descend_wrappers() ... [16:18:59.535] | : . | : Call: [16:18:59.535] | : . | : base::sapply [16:18:59.536] | : . | : parse_call() ... [16:18:59.537] | : . | : . Function: base::sapply(...) [16:18:59.538] | : . | : parse_call() ... done [16:18:59.539] | : . | descend_wrappers() ... done [16:18:59.540] | : . | parse_call() ... [16:18:59.541] | : . | : Function: base::sapply(...) [16:18:59.541] | : . | parse_call() ... done [16:18:59.542] | : . | Position of call to be transpiled in expression: c(1) [16:18:59.543] | : . | base::sapply [16:18:59.544] | : . Finding call to be transpiled ... done [16:18:59.545] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:18:59.545] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:59.546] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:18:59.547] | : . | Transpiler function: [16:18:59.547] | : . | function (expr, options = NULL) [16:18:59.547] | : . | { [16:18:59.547] | : . | call <- make_call("future_sapply") [16:18:59.547] | : . | fcn <- eval(call) [16:18:59.547] | : . | expr[[1]] <- call [16:18:59.547] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:59.547] | : . | { [16:18:59.547] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:59.547] | : . | if (is.null(defaults_base)) { [16:18:59.547] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:59.547] | : . | } [16:18:59.547] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:59.547] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:59.547] | : . | defaults <- defaults[keep] [16:18:59.547] | : . | specified <- attr(options, "specified") [16:18:59.547] | : . | if (length(specified) > 0) { [16:18:59.547] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:59.547] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:59.547] | : . | names(options)) [16:18:59.547] | : . | } [16:18:59.547] | : . | specified <- sprintf("future.%s", specified) [16:18:59.547] | : . | names <- setdiff(names(defaults), specified) [16:18:59.547] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:59.547] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:59.547] | : . | keep <- intersect(names(options), names(defaults)) [16:18:59.547] | : . | options <- options[keep] [16:18:59.547] | : . | options [16:18:59.547] | : . | })(options, fcn)) [16:18:59.547] | : . | expr <- as.call(parts) [16:18:59.547] | : . | expr [16:18:59.547] | : . | } [16:18:59.547] | : . | [16:18:59.549] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:18:59.550] | : get_transpiler() ... done [16:18:59.550] | : Transpile call expression ... [16:18:59.552] | : . future.apply::future_sapply(X = xs, FUN = FUN, simplify = FALSE, [16:18:59.552] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:18:59.552] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_sapply-%d") [16:18:59.553] | : Transpile call expression ... done [16:18:59.554] | : Evaluate transpiled call expression [16:18:59.607] | transpile() ... done [16:18:59.608] futurize() ... done Futures created: 2 [16:18:59.609] futurize() ... [16:18:59.610] | transpile() ... [16:18:59.610] | : get_transpiler() ... [16:18:59.611] | : . Finding call to be transpiled ... [16:18:59.611] | : . | descend_wrappers() ... [16:18:59.612] | : . | : Call: [16:18:59.613] | : . | : base::sapply [16:18:59.613] | : . | : parse_call() ... [16:18:59.614] | : . | : . Function: base::sapply(...) [16:18:59.614] | : . | : parse_call() ... done [16:18:59.615] | : . | descend_wrappers() ... done [16:18:59.616] | : . | parse_call() ... [16:18:59.616] | : . | : Function: base::sapply(...) [16:18:59.617] | : . | parse_call() ... done [16:18:59.617] | : . | Position of call to be transpiled in expression: c(1) [16:18:59.618] | : . | base::sapply [16:18:59.619] | : . Finding call to be transpiled ... done [16:18:59.619] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:18:59.620] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:59.620] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:18:59.621] | : . | Transpiler function: [16:18:59.621] | : . | function (expr, options = NULL) [16:18:59.621] | : . | { [16:18:59.621] | : . | call <- make_call("future_sapply") [16:18:59.621] | : . | fcn <- eval(call) [16:18:59.621] | : . | expr[[1]] <- call [16:18:59.621] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:59.621] | : . | { [16:18:59.621] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:59.621] | : . | if (is.null(defaults_base)) { [16:18:59.621] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:59.621] | : . | } [16:18:59.621] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:59.621] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:59.621] | : . | defaults <- defaults[keep] [16:18:59.621] | : . | specified <- attr(options, "specified") [16:18:59.621] | : . | if (length(specified) > 0) { [16:18:59.621] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:59.621] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:59.621] | : . | names(options)) [16:18:59.621] | : . | } [16:18:59.621] | : . | specified <- sprintf("future.%s", specified) [16:18:59.621] | : . | names <- setdiff(names(defaults), specified) [16:18:59.621] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:59.621] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:59.621] | : . | keep <- intersect(names(options), names(defaults)) [16:18:59.621] | : . | options <- options[keep] [16:18:59.621] | : . | options [16:18:59.621] | : . | })(options, fcn)) [16:18:59.621] | : . | expr <- as.call(parts) [16:18:59.621] | : . | expr [16:18:59.621] | : . | } [16:18:59.621] | : . | [16:18:59.622] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:18:59.623] | : get_transpiler() ... done [16:18:59.624] | : Transpile call expression ... [16:18:59.625] | : . future.apply::future_sapply(X = xs, FUN = FUN, simplify = FALSE, [16:18:59.625] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = FALSE, [16:18:59.625] | : . future.conditions = character(0), future.scheduling = 1, [16:18:59.625] | : . future.label = "future_sapply-%d") [16:18:59.626] | : Transpile call expression ... done [16:18:59.626] | : Evaluate transpiled call expression [16:18:59.679] | transpile() ... done [16:18:59.681] futurize() ... done character(0) [16:18:59.682] futurize() ... [16:18:59.683] | transpile() ... [16:18:59.684] | : get_transpiler() ... [16:18:59.685] | : . Finding call to be transpiled ... [16:18:59.686] | : . | descend_wrappers() ... [16:18:59.687] | : . | : Call: [16:18:59.688] | : . | : base::sapply [16:18:59.689] | : . | : parse_call() ... [16:18:59.690] | : . | : . Function: base::sapply(...) [16:18:59.691] | : . | : parse_call() ... done [16:18:59.692] | : . | descend_wrappers() ... done [16:18:59.693] | : . | parse_call() ... [16:18:59.694] | : . | : Function: base::sapply(...) [16:18:59.695] | : . | parse_call() ... done [16:18:59.696] | : . | Position of call to be transpiled in expression: c(1) [16:18:59.697] | : . | base::sapply [16:18:59.698] | : . Finding call to be transpiled ... done [16:18:59.699] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:18:59.700] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:59.701] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:18:59.701] | : . | Transpiler function: [16:18:59.702] | : . | function (expr, options = NULL) [16:18:59.702] | : . | { [16:18:59.702] | : . | call <- make_call("future_sapply") [16:18:59.702] | : . | fcn <- eval(call) [16:18:59.702] | : . | expr[[1]] <- call [16:18:59.702] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:59.702] | : . | { [16:18:59.702] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:59.702] | : . | if (is.null(defaults_base)) { [16:18:59.702] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:59.702] | : . | } [16:18:59.702] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:59.702] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:59.702] | : . | defaults <- defaults[keep] [16:18:59.702] | : . | specified <- attr(options, "specified") [16:18:59.702] | : . | if (length(specified) > 0) { [16:18:59.702] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:59.702] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:59.702] | : . | names(options)) [16:18:59.702] | : . | } [16:18:59.702] | : . | specified <- sprintf("future.%s", specified) [16:18:59.702] | : . | names <- setdiff(names(defaults), specified) [16:18:59.702] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:59.702] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:59.702] | : . | keep <- intersect(names(options), names(defaults)) [16:18:59.702] | : . | options <- options[keep] [16:18:59.702] | : . | options [16:18:59.702] | : . | })(options, fcn)) [16:18:59.702] | : . | expr <- as.call(parts) [16:18:59.702] | : . | expr [16:18:59.702] | : . | } [16:18:59.702] | : . | [16:18:59.704] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:18:59.705] | : get_transpiler() ... done [16:18:59.706] | : Transpile call expression ... [16:18:59.707] | : . future.apply::future_sapply(X = xs, FUN = FUN, simplify = FALSE, [16:18:59.707] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:18:59.707] | : . future.conditions = "condition", future.scheduling = 1, future.chunk.size = 1L, [16:18:59.707] | : . future.label = "future_sapply-%d") [16:18:59.709] | : Transpile call expression ... done [16:18:59.710] | : Evaluate transpiled call expression [16:18:59.842] | transpile() ... done [16:18:59.843] futurize() ... done Test with RNG: futurize(base::sapply(X = xs, FUN = FUN, simplify = FALSE), seed = TRUE, flavor = "add-on") [16:18:59.844] futurize() ... [16:18:59.845] | transpile() ... [16:18:59.846] | : get_transpiler() ... [16:18:59.847] | : . Finding call to be transpiled ... [16:18:59.848] | : . | descend_wrappers() ... [16:18:59.849] | : . | : Call: [16:18:59.850] | : . | : base::sapply [16:18:59.851] | : . | : parse_call() ... [16:18:59.851] | : . | : . Function: base::sapply(...) [16:18:59.852] | : . | : parse_call() ... done [16:18:59.853] | : . | descend_wrappers() ... done [16:18:59.854] | : . | parse_call() ... [16:18:59.855] | : . | : Function: base::sapply(...) [16:18:59.856] | : . | parse_call() ... done [16:18:59.857] | : . | Position of call to be transpiled in expression: c(1) [16:18:59.857] | : . | base::sapply [16:18:59.858] | : . Finding call to be transpiled ... done [16:18:59.859] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:18:59.861] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:59.862] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:18:59.863] | : . | Transpiler function: [16:18:59.864] | : . | function (expr, options = NULL) [16:18:59.864] | : . | { [16:18:59.864] | : . | call <- make_call("future_sapply") [16:18:59.864] | : . | fcn <- eval(call) [16:18:59.864] | : . | expr[[1]] <- call [16:18:59.864] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:59.864] | : . | { [16:18:59.864] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:59.864] | : . | if (is.null(defaults_base)) { [16:18:59.864] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:59.864] | : . | } [16:18:59.864] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:59.864] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:59.864] | : . | defaults <- defaults[keep] [16:18:59.864] | : . | specified <- attr(options, "specified") [16:18:59.864] | : . | if (length(specified) > 0) { [16:18:59.864] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:59.864] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:59.864] | : . | names(options)) [16:18:59.864] | : . | } [16:18:59.864] | : . | specified <- sprintf("future.%s", specified) [16:18:59.864] | : . | names <- setdiff(names(defaults), specified) [16:18:59.864] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:59.864] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:59.864] | : . | keep <- intersect(names(options), names(defaults)) [16:18:59.864] | : . | options <- options[keep] [16:18:59.864] | : . | options [16:18:59.864] | : . | })(options, fcn)) [16:18:59.864] | : . | expr <- as.call(parts) [16:18:59.864] | : . | expr [16:18:59.864] | : . | } [16:18:59.864] | : . | [16:18:59.866] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:18:59.867] | : get_transpiler() ... done [16:18:59.867] | : Transpile call expression ... [16:18:59.869] | : . future.apply::future_sapply(X = xs, FUN = FUN, simplify = FALSE, [16:18:59.869] | : . future.seed = TRUE, future.globals = TRUE, future.stdout = TRUE, [16:18:59.869] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_sapply-%d") [16:18:59.871] | : Transpile call expression ... done [16:18:59.872] | : Evaluate transpiled call expression [16:18:59.939] | transpile() ... done [16:18:59.940] futurize() ... done === sapply ========================== base::sapply(X = xs, FUN = FUN, USE.NAMES = FALSE) --------------------------------- [16:18:59.941] futurize() ... [16:18:59.942] | transpile() ... [16:18:59.943] | : get_transpiler() ... [16:18:59.943] | : . Finding call to be transpiled ... [16:18:59.944] | : . | descend_wrappers() ... [16:18:59.944] | : . | : Call: [16:18:59.945] | : . | : base::sapply [16:18:59.946] | : . | : parse_call() ... [16:18:59.946] | : . | : . Function: base::sapply(...) [16:18:59.947] | : . | : parse_call() ... done [16:18:59.947] | : . | descend_wrappers() ... done [16:18:59.948] | : . | parse_call() ... [16:18:59.949] | : . | : Function: base::sapply(...) [16:18:59.949] | : . | parse_call() ... done [16:18:59.950] | : . | Position of call to be transpiled in expression: c(1) [16:18:59.950] | : . | base::sapply [16:18:59.951] | : . Finding call to be transpiled ... done [16:18:59.952] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:18:59.952] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:18:59.953] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:18:59.953] | : . | Transpiler function: [16:18:59.954] | : . | function (expr, options = NULL) [16:18:59.954] | : . | { [16:18:59.954] | : . | call <- make_call("future_sapply") [16:18:59.954] | : . | fcn <- eval(call) [16:18:59.954] | : . | expr[[1]] <- call [16:18:59.954] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:18:59.954] | : . | { [16:18:59.954] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:18:59.954] | : . | if (is.null(defaults_base)) { [16:18:59.954] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:18:59.954] | : . | } [16:18:59.954] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:18:59.954] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:18:59.954] | : . | defaults <- defaults[keep] [16:18:59.954] | : . | specified <- attr(options, "specified") [16:18:59.954] | : . | if (length(specified) > 0) { [16:18:59.954] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:18:59.954] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:18:59.954] | : . | names(options)) [16:18:59.954] | : . | } [16:18:59.954] | : . | specified <- sprintf("future.%s", specified) [16:18:59.954] | : . | names <- setdiff(names(defaults), specified) [16:18:59.954] | : . | names(options) <- sprintf("future.%s", names(options)) [16:18:59.954] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:18:59.954] | : . | keep <- intersect(names(options), names(defaults)) [16:18:59.954] | : . | options <- options[keep] [16:18:59.954] | : . | options [16:18:59.954] | : . | })(options, fcn)) [16:18:59.954] | : . | expr <- as.call(parts) [16:18:59.954] | : . | expr [16:18:59.954] | : . | } [16:18:59.954] | : . | [16:18:59.955] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:18:59.956] | : get_transpiler() ... done [16:18:59.956] | : Transpile call expression ... [16:18:59.957] | : . future.apply::future_sapply(X = xs, FUN = FUN, USE.NAMES = FALSE, [16:18:59.957] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:18:59.957] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_sapply-%d") [16:18:59.959] | : Transpile call expression ... done [16:18:59.959] | : Evaluate transpiled call expression [16:19:00.009] | transpile() ... done [16:19:00.010] futurize() ... done Futures created: 2 [16:19:00.011] futurize() ... [16:19:00.012] | transpile() ... [16:19:00.013] | : get_transpiler() ... [16:19:00.013] | : . Finding call to be transpiled ... [16:19:00.014] | : . | descend_wrappers() ... [16:19:00.015] | : . | : Call: [16:19:00.016] | : . | : base::sapply [16:19:00.017] | : . | : parse_call() ... [16:19:00.018] | : . | : . Function: base::sapply(...) [16:19:00.019] | : . | : parse_call() ... done [16:19:00.020] | : . | descend_wrappers() ... done [16:19:00.021] | : . | parse_call() ... [16:19:00.022] | : . | : Function: base::sapply(...) [16:19:00.022] | : . | parse_call() ... done [16:19:00.023] | : . | Position of call to be transpiled in expression: c(1) [16:19:00.024] | : . | base::sapply [16:19:00.025] | : . Finding call to be transpiled ... done [16:19:00.026] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:00.027] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:00.028] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:00.029] | : . | Transpiler function: [16:19:00.030] | : . | function (expr, options = NULL) [16:19:00.030] | : . | { [16:19:00.030] | : . | call <- make_call("future_sapply") [16:19:00.030] | : . | fcn <- eval(call) [16:19:00.030] | : . | expr[[1]] <- call [16:19:00.030] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:00.030] | : . | { [16:19:00.030] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:00.030] | : . | if (is.null(defaults_base)) { [16:19:00.030] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:00.030] | : . | } [16:19:00.030] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:00.030] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:00.030] | : . | defaults <- defaults[keep] [16:19:00.030] | : . | specified <- attr(options, "specified") [16:19:00.030] | : . | if (length(specified) > 0) { [16:19:00.030] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:00.030] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:00.030] | : . | names(options)) [16:19:00.030] | : . | } [16:19:00.030] | : . | specified <- sprintf("future.%s", specified) [16:19:00.030] | : . | names <- setdiff(names(defaults), specified) [16:19:00.030] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:00.030] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:00.030] | : . | keep <- intersect(names(options), names(defaults)) [16:19:00.030] | : . | options <- options[keep] [16:19:00.030] | : . | options [16:19:00.030] | : . | })(options, fcn)) [16:19:00.030] | : . | expr <- as.call(parts) [16:19:00.030] | : . | expr [16:19:00.030] | : . | } [16:19:00.030] | : . | [16:19:00.031] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:00.032] | : get_transpiler() ... done [16:19:00.033] | : Transpile call expression ... [16:19:00.035] | : . future.apply::future_sapply(X = xs, FUN = FUN, USE.NAMES = FALSE, [16:19:00.035] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = FALSE, [16:19:00.035] | : . future.conditions = character(0), future.scheduling = 1, [16:19:00.035] | : . future.label = "future_sapply-%d") [16:19:00.036] | : Transpile call expression ... done [16:19:00.037] | : Evaluate transpiled call expression [16:19:00.096] | transpile() ... done [16:19:00.097] futurize() ... done character(0) [16:19:00.098] futurize() ... [16:19:00.099] | transpile() ... [16:19:00.099] | : get_transpiler() ... [16:19:00.100] | : . Finding call to be transpiled ... [16:19:00.100] | : . | descend_wrappers() ... [16:19:00.101] | : . | : Call: [16:19:00.102] | : . | : base::sapply [16:19:00.102] | : . | : parse_call() ... [16:19:00.103] | : . | : . Function: base::sapply(...) [16:19:00.104] | : . | : parse_call() ... done [16:19:00.104] | : . | descend_wrappers() ... done [16:19:00.105] | : . | parse_call() ... [16:19:00.105] | : . | : Function: base::sapply(...) [16:19:00.106] | : . | parse_call() ... done [16:19:00.107] | : . | Position of call to be transpiled in expression: c(1) [16:19:00.107] | : . | base::sapply [16:19:00.108] | : . Finding call to be transpiled ... done [16:19:00.109] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:00.109] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:00.110] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:00.111] | : . | Transpiler function: [16:19:00.112] | : . | function (expr, options = NULL) [16:19:00.112] | : . | { [16:19:00.112] | : . | call <- make_call("future_sapply") [16:19:00.112] | : . | fcn <- eval(call) [16:19:00.112] | : . | expr[[1]] <- call [16:19:00.112] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:00.112] | : . | { [16:19:00.112] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:00.112] | : . | if (is.null(defaults_base)) { [16:19:00.112] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:00.112] | : . | } [16:19:00.112] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:00.112] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:00.112] | : . | defaults <- defaults[keep] [16:19:00.112] | : . | specified <- attr(options, "specified") [16:19:00.112] | : . | if (length(specified) > 0) { [16:19:00.112] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:00.112] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:00.112] | : . | names(options)) [16:19:00.112] | : . | } [16:19:00.112] | : . | specified <- sprintf("future.%s", specified) [16:19:00.112] | : . | names <- setdiff(names(defaults), specified) [16:19:00.112] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:00.112] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:00.112] | : . | keep <- intersect(names(options), names(defaults)) [16:19:00.112] | : . | options <- options[keep] [16:19:00.112] | : . | options [16:19:00.112] | : . | })(options, fcn)) [16:19:00.112] | : . | expr <- as.call(parts) [16:19:00.112] | : . | expr [16:19:00.112] | : . | } [16:19:00.112] | : . | [16:19:00.114] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:00.115] | : get_transpiler() ... done [16:19:00.116] | : Transpile call expression ... [16:19:00.118] | : . future.apply::future_sapply(X = xs, FUN = FUN, USE.NAMES = FALSE, [16:19:00.118] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:00.118] | : . future.conditions = "condition", future.scheduling = 1, future.chunk.size = 1L, [16:19:00.118] | : . future.label = "future_sapply-%d") [16:19:00.121] | : Transpile call expression ... done [16:19:00.122] | : Evaluate transpiled call expression [16:19:00.279] | transpile() ... done [16:19:00.281] futurize() ... done Test with RNG: futurize(base::sapply(X = xs, FUN = FUN, USE.NAMES = FALSE), seed = TRUE, flavor = "add-on") [16:19:00.282] futurize() ... [16:19:00.284] | transpile() ... [16:19:00.285] | : get_transpiler() ... [16:19:00.286] | : . Finding call to be transpiled ... [16:19:00.287] | : . | descend_wrappers() ... [16:19:00.288] | : . | : Call: [16:19:00.289] | : . | : base::sapply [16:19:00.291] | : . | : parse_call() ... [16:19:00.292] | : . | : . Function: base::sapply(...) [16:19:00.293] | : . | : parse_call() ... done [16:19:00.294] | : . | descend_wrappers() ... done [16:19:00.295] | : . | parse_call() ... [16:19:00.296] | : . | : Function: base::sapply(...) [16:19:00.297] | : . | parse_call() ... done [16:19:00.298] | : . | Position of call to be transpiled in expression: c(1) [16:19:00.299] | : . | base::sapply [16:19:00.300] | : . Finding call to be transpiled ... done [16:19:00.301] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:00.302] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:00.303] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:00.303] | : . | Transpiler function: [16:19:00.304] | : . | function (expr, options = NULL) [16:19:00.304] | : . | { [16:19:00.304] | : . | call <- make_call("future_sapply") [16:19:00.304] | : . | fcn <- eval(call) [16:19:00.304] | : . | expr[[1]] <- call [16:19:00.304] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:00.304] | : . | { [16:19:00.304] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:00.304] | : . | if (is.null(defaults_base)) { [16:19:00.304] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:00.304] | : . | } [16:19:00.304] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:00.304] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:00.304] | : . | defaults <- defaults[keep] [16:19:00.304] | : . | specified <- attr(options, "specified") [16:19:00.304] | : . | if (length(specified) > 0) { [16:19:00.304] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:00.304] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:00.304] | : . | names(options)) [16:19:00.304] | : . | } [16:19:00.304] | : . | specified <- sprintf("future.%s", specified) [16:19:00.304] | : . | names <- setdiff(names(defaults), specified) [16:19:00.304] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:00.304] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:00.304] | : . | keep <- intersect(names(options), names(defaults)) [16:19:00.304] | : . | options <- options[keep] [16:19:00.304] | : . | options [16:19:00.304] | : . | })(options, fcn)) [16:19:00.304] | : . | expr <- as.call(parts) [16:19:00.304] | : . | expr [16:19:00.304] | : . | } [16:19:00.304] | : . | [16:19:00.306] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:00.307] | : get_transpiler() ... done [16:19:00.308] | : Transpile call expression ... [16:19:00.309] | : . future.apply::future_sapply(X = xs, FUN = FUN, USE.NAMES = FALSE, [16:19:00.309] | : . future.seed = TRUE, future.globals = TRUE, future.stdout = TRUE, [16:19:00.309] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_sapply-%d") [16:19:00.312] | : Transpile call expression ... done [16:19:00.313] | : Evaluate transpiled call expression [16:19:00.360] | transpile() ... done [16:19:00.362] futurize() ... done === vapply ========================== base::vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN) --------------------------------- [16:19:00.364] futurize() ... [16:19:00.365] | transpile() ... [16:19:00.366] | : get_transpiler() ... [16:19:00.367] | : . Finding call to be transpiled ... [16:19:00.368] | : . | descend_wrappers() ... [16:19:00.369] | : . | : Call: [16:19:00.369] | : . | : base::vapply [16:19:00.371] | : . | : parse_call() ... [16:19:00.372] | : . | : . Function: base::vapply(...) [16:19:00.372] | : . | : parse_call() ... done [16:19:00.373] | : . | descend_wrappers() ... done [16:19:00.374] | : . | parse_call() ... [16:19:00.375] | : . | : Function: base::vapply(...) [16:19:00.376] | : . | parse_call() ... done [16:19:00.377] | : . | Position of call to be transpiled in expression: c(1) [16:19:00.378] | : . | base::vapply [16:19:00.379] | : . Finding call to be transpiled ... done [16:19:00.380] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:00.381] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:00.382] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:00.382] | : . | Transpiler function: [16:19:00.383] | : . | function (expr, options = NULL) [16:19:00.383] | : . | { [16:19:00.383] | : . | call <- make_call("future_vapply") [16:19:00.383] | : . | fcn <- eval(call) [16:19:00.383] | : . | expr[[1]] <- call [16:19:00.383] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:00.383] | : . | { [16:19:00.383] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:00.383] | : . | if (is.null(defaults_base)) { [16:19:00.383] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:00.383] | : . | } [16:19:00.383] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:00.383] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:00.383] | : . | defaults <- defaults[keep] [16:19:00.383] | : . | specified <- attr(options, "specified") [16:19:00.383] | : . | if (length(specified) > 0) { [16:19:00.383] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:00.383] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:00.383] | : . | names(options)) [16:19:00.383] | : . | } [16:19:00.383] | : . | specified <- sprintf("future.%s", specified) [16:19:00.383] | : . | names <- setdiff(names(defaults), specified) [16:19:00.383] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:00.383] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:00.383] | : . | keep <- intersect(names(options), names(defaults)) [16:19:00.383] | : . | options <- options[keep] [16:19:00.383] | : . | options [16:19:00.383] | : . | })(options, fcn)) [16:19:00.383] | : . | expr <- as.call(parts) [16:19:00.383] | : . | expr [16:19:00.383] | : . | } [16:19:00.383] | : . | [16:19:00.385] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:00.386] | : get_transpiler() ... done [16:19:00.387] | : Transpile call expression ... [16:19:00.388] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:00.388] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:00.388] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_vapply-%d") [16:19:00.390] | : Transpile call expression ... done [16:19:00.391] | : Evaluate transpiled call expression [16:19:00.473] | transpile() ... done [16:19:00.474] futurize() ... done Futures created: 2 [16:19:00.475] futurize() ... [16:19:00.476] | transpile() ... [16:19:00.477] | : get_transpiler() ... [16:19:00.477] | : . Finding call to be transpiled ... [16:19:00.478] | : . | descend_wrappers() ... [16:19:00.479] | : . | : Call: [16:19:00.479] | : . | : base::vapply [16:19:00.480] | : . | : parse_call() ... [16:19:00.481] | : . | : . Function: base::vapply(...) [16:19:00.482] | : . | : parse_call() ... done [16:19:00.482] | : . | descend_wrappers() ... done [16:19:00.483] | : . | parse_call() ... [16:19:00.484] | : . | : Function: base::vapply(...) [16:19:00.484] | : . | parse_call() ... done [16:19:00.485] | : . | Position of call to be transpiled in expression: c(1) [16:19:00.486] | : . | base::vapply [16:19:00.486] | : . Finding call to be transpiled ... done [16:19:00.487] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:00.488] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:00.489] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:00.489] | : . | Transpiler function: [16:19:00.490] | : . | function (expr, options = NULL) [16:19:00.490] | : . | { [16:19:00.490] | : . | call <- make_call("future_vapply") [16:19:00.490] | : . | fcn <- eval(call) [16:19:00.490] | : . | expr[[1]] <- call [16:19:00.490] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:00.490] | : . | { [16:19:00.490] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:00.490] | : . | if (is.null(defaults_base)) { [16:19:00.490] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:00.490] | : . | } [16:19:00.490] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:00.490] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:00.490] | : . | defaults <- defaults[keep] [16:19:00.490] | : . | specified <- attr(options, "specified") [16:19:00.490] | : . | if (length(specified) > 0) { [16:19:00.490] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:00.490] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:00.490] | : . | names(options)) [16:19:00.490] | : . | } [16:19:00.490] | : . | specified <- sprintf("future.%s", specified) [16:19:00.490] | : . | names <- setdiff(names(defaults), specified) [16:19:00.490] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:00.490] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:00.490] | : . | keep <- intersect(names(options), names(defaults)) [16:19:00.490] | : . | options <- options[keep] [16:19:00.490] | : . | options [16:19:00.490] | : . | })(options, fcn)) [16:19:00.490] | : . | expr <- as.call(parts) [16:19:00.490] | : . | expr [16:19:00.490] | : . | } [16:19:00.490] | : . | [16:19:00.491] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:00.492] | : get_transpiler() ... done [16:19:00.493] | : Transpile call expression ... [16:19:00.494] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:00.494] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = FALSE, [16:19:00.494] | : . future.conditions = character(0), future.scheduling = 1, [16:19:00.494] | : . future.label = "future_vapply-%d") [16:19:00.496] | : Transpile call expression ... done [16:19:00.497] | : Evaluate transpiled call expression [16:19:00.602] | transpile() ... done [16:19:00.604] futurize() ... done character(0) [16:19:00.605] futurize() ... [16:19:00.606] | transpile() ... [16:19:00.607] | : get_transpiler() ... [16:19:00.608] | : . Finding call to be transpiled ... [16:19:00.609] | : . | descend_wrappers() ... [16:19:00.610] | : . | : Call: [16:19:00.611] | : . | : base::vapply [16:19:00.612] | : . | : parse_call() ... [16:19:00.613] | : . | : . Function: base::vapply(...) [16:19:00.614] | : . | : parse_call() ... done [16:19:00.615] | : . | descend_wrappers() ... done [16:19:00.616] | : . | parse_call() ... [16:19:00.621] | : . | : Function: base::vapply(...) [16:19:00.622] | : . | parse_call() ... done [16:19:00.623] | : . | Position of call to be transpiled in expression: c(1) [16:19:00.624] | : . | base::vapply [16:19:00.625] | : . Finding call to be transpiled ... done [16:19:00.626] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:00.627] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:00.628] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:00.629] | : . | Transpiler function: [16:19:00.630] | : . | function (expr, options = NULL) [16:19:00.630] | : . | { [16:19:00.630] | : . | call <- make_call("future_vapply") [16:19:00.630] | : . | fcn <- eval(call) [16:19:00.630] | : . | expr[[1]] <- call [16:19:00.630] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:00.630] | : . | { [16:19:00.630] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:00.630] | : . | if (is.null(defaults_base)) { [16:19:00.630] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:00.630] | : . | } [16:19:00.630] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:00.630] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:00.630] | : . | defaults <- defaults[keep] [16:19:00.630] | : . | specified <- attr(options, "specified") [16:19:00.630] | : . | if (length(specified) > 0) { [16:19:00.630] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:00.630] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:00.630] | : . | names(options)) [16:19:00.630] | : . | } [16:19:00.630] | : . | specified <- sprintf("future.%s", specified) [16:19:00.630] | : . | names <- setdiff(names(defaults), specified) [16:19:00.630] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:00.630] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:00.630] | : . | keep <- intersect(names(options), names(defaults)) [16:19:00.630] | : . | options <- options[keep] [16:19:00.630] | : . | options [16:19:00.630] | : . | })(options, fcn)) [16:19:00.630] | : . | expr <- as.call(parts) [16:19:00.630] | : . | expr [16:19:00.630] | : . | } [16:19:00.630] | : . | [16:19:00.632] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:00.633] | : get_transpiler() ... done [16:19:00.634] | : Transpile call expression ... [16:19:00.635] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:00.635] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:00.635] | : . future.conditions = "condition", future.scheduling = 1, future.chunk.size = 1L, [16:19:00.635] | : . future.label = "future_vapply-%d") [16:19:00.638] | : Transpile call expression ... done [16:19:00.639] | : Evaluate transpiled call expression [16:19:00.824] | transpile() ... done [16:19:00.825] futurize() ... done Test with RNG: futurize(base::vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN), seed = TRUE, flavor = "add-on") [16:19:00.826] futurize() ... [16:19:00.827] | transpile() ... [16:19:00.828] | : get_transpiler() ... [16:19:00.828] | : . Finding call to be transpiled ... [16:19:00.829] | : . | descend_wrappers() ... [16:19:00.830] | : . | : Call: [16:19:00.831] | : . | : base::vapply [16:19:00.832] | : . | : parse_call() ... [16:19:00.832] | : . | : . Function: base::vapply(...) [16:19:00.833] | : . | : parse_call() ... done [16:19:00.834] | : . | descend_wrappers() ... done [16:19:00.835] | : . | parse_call() ... [16:19:00.836] | : . | : Function: base::vapply(...) [16:19:00.836] | : . | parse_call() ... done [16:19:00.837] | : . | Position of call to be transpiled in expression: c(1) [16:19:00.838] | : . | base::vapply [16:19:00.839] | : . Finding call to be transpiled ... done [16:19:00.840] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:00.840] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:00.841] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:00.842] | : . | Transpiler function: [16:19:00.843] | : . | function (expr, options = NULL) [16:19:00.843] | : . | { [16:19:00.843] | : . | call <- make_call("future_vapply") [16:19:00.843] | : . | fcn <- eval(call) [16:19:00.843] | : . | expr[[1]] <- call [16:19:00.843] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:00.843] | : . | { [16:19:00.843] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:00.843] | : . | if (is.null(defaults_base)) { [16:19:00.843] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:00.843] | : . | } [16:19:00.843] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:00.843] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:00.843] | : . | defaults <- defaults[keep] [16:19:00.843] | : . | specified <- attr(options, "specified") [16:19:00.843] | : . | if (length(specified) > 0) { [16:19:00.843] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:00.843] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:00.843] | : . | names(options)) [16:19:00.843] | : . | } [16:19:00.843] | : . | specified <- sprintf("future.%s", specified) [16:19:00.843] | : . | names <- setdiff(names(defaults), specified) [16:19:00.843] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:00.843] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:00.843] | : . | keep <- intersect(names(options), names(defaults)) [16:19:00.843] | : . | options <- options[keep] [16:19:00.843] | : . | options [16:19:00.843] | : . | })(options, fcn)) [16:19:00.843] | : . | expr <- as.call(parts) [16:19:00.843] | : . | expr [16:19:00.843] | : . | } [16:19:00.843] | : . | [16:19:00.844] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:00.845] | : get_transpiler() ... done [16:19:00.846] | : Transpile call expression ... [16:19:00.847] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:00.847] | : . future.seed = TRUE, future.globals = TRUE, future.stdout = TRUE, [16:19:00.847] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_vapply-%d") [16:19:00.848] | : Transpile call expression ... done [16:19:00.849] | : Evaluate transpiled call expression [16:19:00.951] | transpile() ... done [16:19:00.952] futurize() ... done === vapply ========================== base::vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, USE.NAMES = FALSE) --------------------------------- [16:19:00.954] futurize() ... [16:19:00.955] | transpile() ... [16:19:00.955] | : get_transpiler() ... [16:19:00.956] | : . Finding call to be transpiled ... [16:19:00.957] | : . | descend_wrappers() ... [16:19:00.958] | : . | : Call: [16:19:00.959] | : . | : base::vapply [16:19:00.960] | : . | : parse_call() ... [16:19:00.961] | : . | : . Function: base::vapply(...) [16:19:00.962] | : . | : parse_call() ... done [16:19:00.962] | : . | descend_wrappers() ... done [16:19:00.963] | : . | parse_call() ... [16:19:00.964] | : . | : Function: base::vapply(...) [16:19:00.965] | : . | parse_call() ... done [16:19:00.966] | : . | Position of call to be transpiled in expression: c(1) [16:19:00.966] | : . | base::vapply [16:19:00.967] | : . Finding call to be transpiled ... done [16:19:00.968] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:00.969] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:00.970] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:00.971] | : . | Transpiler function: [16:19:00.972] | : . | function (expr, options = NULL) [16:19:00.972] | : . | { [16:19:00.972] | : . | call <- make_call("future_vapply") [16:19:00.972] | : . | fcn <- eval(call) [16:19:00.972] | : . | expr[[1]] <- call [16:19:00.972] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:00.972] | : . | { [16:19:00.972] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:00.972] | : . | if (is.null(defaults_base)) { [16:19:00.972] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:00.972] | : . | } [16:19:00.972] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:00.972] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:00.972] | : . | defaults <- defaults[keep] [16:19:00.972] | : . | specified <- attr(options, "specified") [16:19:00.972] | : . | if (length(specified) > 0) { [16:19:00.972] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:00.972] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:00.972] | : . | names(options)) [16:19:00.972] | : . | } [16:19:00.972] | : . | specified <- sprintf("future.%s", specified) [16:19:00.972] | : . | names <- setdiff(names(defaults), specified) [16:19:00.972] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:00.972] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:00.972] | : . | keep <- intersect(names(options), names(defaults)) [16:19:00.972] | : . | options <- options[keep] [16:19:00.972] | : . | options [16:19:00.972] | : . | })(options, fcn)) [16:19:00.972] | : . | expr <- as.call(parts) [16:19:00.972] | : . | expr [16:19:00.972] | : . | } [16:19:00.972] | : . | [16:19:00.973] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:00.974] | : get_transpiler() ... done [16:19:00.975] | : Transpile call expression ... [16:19:00.976] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:00.976] | : . USE.NAMES = FALSE, future.seed = FALSE, future.globals = TRUE, [16:19:00.976] | : . future.stdout = TRUE, future.conditions = "condition", future.scheduling = 1, [16:19:00.976] | : . future.label = "future_vapply-%d") [16:19:00.978] | : Transpile call expression ... done [16:19:00.979] | : Evaluate transpiled call expression [16:19:01.081] | transpile() ... done [16:19:01.082] futurize() ... done Futures created: 2 [16:19:01.084] futurize() ... [16:19:01.085] | transpile() ... [16:19:01.086] | : get_transpiler() ... [16:19:01.087] | : . Finding call to be transpiled ... [16:19:01.088] | : . | descend_wrappers() ... [16:19:01.089] | : . | : Call: [16:19:01.090] | : . | : base::vapply [16:19:01.091] | : . | : parse_call() ... [16:19:01.092] | : . | : . Function: base::vapply(...) [16:19:01.092] | : . | : parse_call() ... done [16:19:01.093] | : . | descend_wrappers() ... done [16:19:01.094] | : . | parse_call() ... [16:19:01.095] | : . | : Function: base::vapply(...) [16:19:01.096] | : . | parse_call() ... done [16:19:01.097] | : . | Position of call to be transpiled in expression: c(1) [16:19:01.098] | : . | base::vapply [16:19:01.099] | : . Finding call to be transpiled ... done [16:19:01.100] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:01.100] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:01.101] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:01.102] | : . | Transpiler function: [16:19:01.103] | : . | function (expr, options = NULL) [16:19:01.103] | : . | { [16:19:01.103] | : . | call <- make_call("future_vapply") [16:19:01.103] | : . | fcn <- eval(call) [16:19:01.103] | : . | expr[[1]] <- call [16:19:01.103] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:01.103] | : . | { [16:19:01.103] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:01.103] | : . | if (is.null(defaults_base)) { [16:19:01.103] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:01.103] | : . | } [16:19:01.103] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:01.103] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:01.103] | : . | defaults <- defaults[keep] [16:19:01.103] | : . | specified <- attr(options, "specified") [16:19:01.103] | : . | if (length(specified) > 0) { [16:19:01.103] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:01.103] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:01.103] | : . | names(options)) [16:19:01.103] | : . | } [16:19:01.103] | : . | specified <- sprintf("future.%s", specified) [16:19:01.103] | : . | names <- setdiff(names(defaults), specified) [16:19:01.103] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:01.103] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:01.103] | : . | keep <- intersect(names(options), names(defaults)) [16:19:01.103] | : . | options <- options[keep] [16:19:01.103] | : . | options [16:19:01.103] | : . | })(options, fcn)) [16:19:01.103] | : . | expr <- as.call(parts) [16:19:01.103] | : . | expr [16:19:01.103] | : . | } [16:19:01.103] | : . | [16:19:01.104] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:01.105] | : get_transpiler() ... done [16:19:01.106] | : Transpile call expression ... [16:19:01.107] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:01.107] | : . USE.NAMES = FALSE, future.seed = FALSE, future.globals = TRUE, [16:19:01.107] | : . future.stdout = FALSE, future.conditions = character(0), [16:19:01.107] | : . future.scheduling = 1, future.label = "future_vapply-%d") [16:19:01.109] | : Transpile call expression ... done [16:19:01.109] | : Evaluate transpiled call expression [16:19:01.203] | transpile() ... done [16:19:01.204] futurize() ... done character(0) [16:19:01.205] futurize() ... [16:19:01.206] | transpile() ... [16:19:01.207] | : get_transpiler() ... [16:19:01.208] | : . Finding call to be transpiled ... [16:19:01.208] | : . | descend_wrappers() ... [16:19:01.209] | : . | : Call: [16:19:01.210] | : . | : base::vapply [16:19:01.211] | : . | : parse_call() ... [16:19:01.212] | : . | : . Function: base::vapply(...) [16:19:01.213] | : . | : parse_call() ... done [16:19:01.214] | : . | descend_wrappers() ... done [16:19:01.214] | : . | parse_call() ... [16:19:01.215] | : . | : Function: base::vapply(...) [16:19:01.216] | : . | parse_call() ... done [16:19:01.217] | : . | Position of call to be transpiled in expression: c(1) [16:19:01.218] | : . | base::vapply [16:19:01.219] | : . Finding call to be transpiled ... done [16:19:01.219] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:01.220] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:01.221] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:01.222] | : . | Transpiler function: [16:19:01.223] | : . | function (expr, options = NULL) [16:19:01.223] | : . | { [16:19:01.223] | : . | call <- make_call("future_vapply") [16:19:01.223] | : . | fcn <- eval(call) [16:19:01.223] | : . | expr[[1]] <- call [16:19:01.223] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:01.223] | : . | { [16:19:01.223] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:01.223] | : . | if (is.null(defaults_base)) { [16:19:01.223] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:01.223] | : . | } [16:19:01.223] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:01.223] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:01.223] | : . | defaults <- defaults[keep] [16:19:01.223] | : . | specified <- attr(options, "specified") [16:19:01.223] | : . | if (length(specified) > 0) { [16:19:01.223] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:01.223] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:01.223] | : . | names(options)) [16:19:01.223] | : . | } [16:19:01.223] | : . | specified <- sprintf("future.%s", specified) [16:19:01.223] | : . | names <- setdiff(names(defaults), specified) [16:19:01.223] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:01.223] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:01.223] | : . | keep <- intersect(names(options), names(defaults)) [16:19:01.223] | : . | options <- options[keep] [16:19:01.223] | : . | options [16:19:01.223] | : . | })(options, fcn)) [16:19:01.223] | : . | expr <- as.call(parts) [16:19:01.223] | : . | expr [16:19:01.223] | : . | } [16:19:01.223] | : . | [16:19:01.224] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:01.225] | : get_transpiler() ... done [16:19:01.226] | : Transpile call expression ... [16:19:01.227] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:01.227] | : . USE.NAMES = FALSE, future.seed = FALSE, future.globals = TRUE, [16:19:01.227] | : . future.stdout = TRUE, future.conditions = "condition", future.scheduling = 1, [16:19:01.227] | : . future.chunk.size = 1L, future.label = "future_vapply-%d") [16:19:01.229] | : Transpile call expression ... done [16:19:01.230] | : Evaluate transpiled call expression [16:19:01.403] | transpile() ... done [16:19:01.404] futurize() ... done Test with RNG: futurize(base::vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, USE.NAMES = FALSE), seed = TRUE, flavor = "add-on") [16:19:01.404] futurize() ... [16:19:01.405] | transpile() ... [16:19:01.405] | : get_transpiler() ... [16:19:01.406] | : . Finding call to be transpiled ... [16:19:01.407] | : . | descend_wrappers() ... [16:19:01.407] | : . | : Call: [16:19:01.408] | : . | : base::vapply [16:19:01.408] | : . | : parse_call() ... [16:19:01.409] | : . | : . Function: base::vapply(...) [16:19:01.409] | : . | : parse_call() ... done [16:19:01.410] | : . | descend_wrappers() ... done [16:19:01.410] | : . | parse_call() ... [16:19:01.411] | : . | : Function: base::vapply(...) [16:19:01.411] | : . | parse_call() ... done [16:19:01.412] | : . | Position of call to be transpiled in expression: c(1) [16:19:01.412] | : . | base::vapply [16:19:01.413] | : . Finding call to be transpiled ... done [16:19:01.413] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:01.414] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:01.414] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:01.415] | : . | Transpiler function: [16:19:01.415] | : . | function (expr, options = NULL) [16:19:01.415] | : . | { [16:19:01.415] | : . | call <- make_call("future_vapply") [16:19:01.415] | : . | fcn <- eval(call) [16:19:01.415] | : . | expr[[1]] <- call [16:19:01.415] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:01.415] | : . | { [16:19:01.415] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:01.415] | : . | if (is.null(defaults_base)) { [16:19:01.415] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:01.415] | : . | } [16:19:01.415] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:01.415] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:01.415] | : . | defaults <- defaults[keep] [16:19:01.415] | : . | specified <- attr(options, "specified") [16:19:01.415] | : . | if (length(specified) > 0) { [16:19:01.415] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:01.415] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:01.415] | : . | names(options)) [16:19:01.415] | : . | } [16:19:01.415] | : . | specified <- sprintf("future.%s", specified) [16:19:01.415] | : . | names <- setdiff(names(defaults), specified) [16:19:01.415] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:01.415] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:01.415] | : . | keep <- intersect(names(options), names(defaults)) [16:19:01.415] | : . | options <- options[keep] [16:19:01.415] | : . | options [16:19:01.415] | : . | })(options, fcn)) [16:19:01.415] | : . | expr <- as.call(parts) [16:19:01.415] | : . | expr [16:19:01.415] | : . | } [16:19:01.415] | : . | [16:19:01.416] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:01.417] | : get_transpiler() ... done [16:19:01.417] | : Transpile call expression ... [16:19:01.418] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:01.418] | : . USE.NAMES = FALSE, future.seed = TRUE, future.globals = TRUE, [16:19:01.418] | : . future.stdout = TRUE, future.conditions = "condition", future.scheduling = 1, [16:19:01.418] | : . future.label = "future_vapply-%d") [16:19:01.419] | : Transpile call expression ... done [16:19:01.420] | : Evaluate transpiled call expression [16:19:01.497] | transpile() ... done [16:19:01.499] futurize() ... done === eapply ========================== base::eapply(env = es, FUN = FUN) --------------------------------- [16:19:01.501] futurize() ... [16:19:01.502] | transpile() ... [16:19:01.503] | : get_transpiler() ... [16:19:01.504] | : . Finding call to be transpiled ... [16:19:01.505] | : . | descend_wrappers() ... [16:19:01.506] | : . | : Call: [16:19:01.507] | : . | : base::eapply [16:19:01.508] | : . | : parse_call() ... [16:19:01.509] | : . | : . Function: base::eapply(...) [16:19:01.510] | : . | : parse_call() ... done [16:19:01.511] | : . | descend_wrappers() ... done [16:19:01.512] | : . | parse_call() ... [16:19:01.513] | : . | : Function: base::eapply(...) [16:19:01.514] | : . | parse_call() ... done [16:19:01.515] | : . | Position of call to be transpiled in expression: c(1) [16:19:01.517] | : . | base::eapply [16:19:01.518] | : . Finding call to be transpiled ... done [16:19:01.519] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:01.520] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:01.521] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:01.524] | : . | Transpiler function: [16:19:01.525] | : . | function (expr, options = NULL) [16:19:01.525] | : . | { [16:19:01.525] | : . | call <- make_call("future_eapply") [16:19:01.525] | : . | fcn <- eval(call) [16:19:01.525] | : . | expr[[1]] <- call [16:19:01.525] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:01.525] | : . | { [16:19:01.525] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:01.525] | : . | if (is.null(defaults_base)) { [16:19:01.525] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:01.525] | : . | } [16:19:01.525] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:01.525] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:01.525] | : . | defaults <- defaults[keep] [16:19:01.525] | : . | specified <- attr(options, "specified") [16:19:01.525] | : . | if (length(specified) > 0) { [16:19:01.525] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:01.525] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:01.525] | : . | names(options)) [16:19:01.525] | : . | } [16:19:01.525] | : . | specified <- sprintf("future.%s", specified) [16:19:01.525] | : . | names <- setdiff(names(defaults), specified) [16:19:01.525] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:01.525] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:01.525] | : . | keep <- intersect(names(options), names(defaults)) [16:19:01.525] | : . | options <- options[keep] [16:19:01.525] | : . | options [16:19:01.525] | : . | })(options, fcn)) [16:19:01.525] | : . | expr <- as.call(parts) [16:19:01.525] | : . | expr [16:19:01.525] | : . | } [16:19:01.525] | : . | [16:19:01.526] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:01.527] | : get_transpiler() ... done [16:19:01.528] | : Transpile call expression ... [16:19:01.529] | : . future.apply::future_eapply(env = es, FUN = FUN, future.seed = FALSE, [16:19:01.529] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:01.529] | : . future.scheduling = 1, future.label = "future_eapply-%d") [16:19:01.534] | : Transpile call expression ... done [16:19:01.535] | : Evaluate transpiled call expression [16:19:01.588] | transpile() ... done [16:19:01.589] futurize() ... done Futures created: 2 [16:19:01.590] futurize() ... [16:19:01.590] | transpile() ... [16:19:01.591] | : get_transpiler() ... [16:19:01.592] | : . Finding call to be transpiled ... [16:19:01.592] | : . | descend_wrappers() ... [16:19:01.593] | : . | : Call: [16:19:01.593] | : . | : base::eapply [16:19:01.594] | : . | : parse_call() ... [16:19:01.595] | : . | : . Function: base::eapply(...) [16:19:01.595] | : . | : parse_call() ... done [16:19:01.596] | : . | descend_wrappers() ... done [16:19:01.596] | : . | parse_call() ... [16:19:01.597] | : . | : Function: base::eapply(...) [16:19:01.598] | : . | parse_call() ... done [16:19:01.598] | : . | Position of call to be transpiled in expression: c(1) [16:19:01.599] | : . | base::eapply [16:19:01.599] | : . Finding call to be transpiled ... done [16:19:01.600] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:01.601] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:01.601] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:01.602] | : . | Transpiler function: [16:19:01.602] | : . | function (expr, options = NULL) [16:19:01.602] | : . | { [16:19:01.602] | : . | call <- make_call("future_eapply") [16:19:01.602] | : . | fcn <- eval(call) [16:19:01.602] | : . | expr[[1]] <- call [16:19:01.602] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:01.602] | : . | { [16:19:01.602] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:01.602] | : . | if (is.null(defaults_base)) { [16:19:01.602] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:01.602] | : . | } [16:19:01.602] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:01.602] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:01.602] | : . | defaults <- defaults[keep] [16:19:01.602] | : . | specified <- attr(options, "specified") [16:19:01.602] | : . | if (length(specified) > 0) { [16:19:01.602] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:01.602] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:01.602] | : . | names(options)) [16:19:01.602] | : . | } [16:19:01.602] | : . | specified <- sprintf("future.%s", specified) [16:19:01.602] | : . | names <- setdiff(names(defaults), specified) [16:19:01.602] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:01.602] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:01.602] | : . | keep <- intersect(names(options), names(defaults)) [16:19:01.602] | : . | options <- options[keep] [16:19:01.602] | : . | options [16:19:01.602] | : . | })(options, fcn)) [16:19:01.602] | : . | expr <- as.call(parts) [16:19:01.602] | : . | expr [16:19:01.602] | : . | } [16:19:01.602] | : . | [16:19:01.604] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:01.604] | : get_transpiler() ... done [16:19:01.605] | : Transpile call expression ... [16:19:01.606] | : . future.apply::future_eapply(env = es, FUN = FUN, future.seed = FALSE, [16:19:01.606] | : . future.globals = TRUE, future.stdout = FALSE, future.conditions = character(0), [16:19:01.606] | : . future.scheduling = 1, future.label = "future_eapply-%d") [16:19:01.607] | : Transpile call expression ... done [16:19:01.607] | : Evaluate transpiled call expression [16:19:01.662] | transpile() ... done [16:19:01.663] futurize() ... done character(0) [16:19:01.664] futurize() ... [16:19:01.665] | transpile() ... [16:19:01.666] | : get_transpiler() ... [16:19:01.667] | : . Finding call to be transpiled ... [16:19:01.668] | : . | descend_wrappers() ... [16:19:01.668] | : . | : Call: [16:19:01.669] | : . | : base::eapply [16:19:01.670] | : . | : parse_call() ... [16:19:01.671] | : . | : . Function: base::eapply(...) [16:19:01.672] | : . | : parse_call() ... done [16:19:01.673] | : . | descend_wrappers() ... done [16:19:01.674] | : . | parse_call() ... [16:19:01.675] | : . | : Function: base::eapply(...) [16:19:01.676] | : . | parse_call() ... done [16:19:01.677] | : . | Position of call to be transpiled in expression: c(1) [16:19:01.677] | : . | base::eapply [16:19:01.679] | : . Finding call to be transpiled ... done [16:19:01.679] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:01.680] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:01.681] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:01.682] | : . | Transpiler function: [16:19:01.683] | : . | function (expr, options = NULL) [16:19:01.683] | : . | { [16:19:01.683] | : . | call <- make_call("future_eapply") [16:19:01.683] | : . | fcn <- eval(call) [16:19:01.683] | : . | expr[[1]] <- call [16:19:01.683] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:01.683] | : . | { [16:19:01.683] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:01.683] | : . | if (is.null(defaults_base)) { [16:19:01.683] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:01.683] | : . | } [16:19:01.683] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:01.683] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:01.683] | : . | defaults <- defaults[keep] [16:19:01.683] | : . | specified <- attr(options, "specified") [16:19:01.683] | : . | if (length(specified) > 0) { [16:19:01.683] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:01.683] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:01.683] | : . | names(options)) [16:19:01.683] | : . | } [16:19:01.683] | : . | specified <- sprintf("future.%s", specified) [16:19:01.683] | : . | names <- setdiff(names(defaults), specified) [16:19:01.683] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:01.683] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:01.683] | : . | keep <- intersect(names(options), names(defaults)) [16:19:01.683] | : . | options <- options[keep] [16:19:01.683] | : . | options [16:19:01.683] | : . | })(options, fcn)) [16:19:01.683] | : . | expr <- as.call(parts) [16:19:01.683] | : . | expr [16:19:01.683] | : . | } [16:19:01.683] | : . | [16:19:01.685] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:01.686] | : get_transpiler() ... done [16:19:01.687] | : Transpile call expression ... [16:19:01.688] | : . future.apply::future_eapply(env = es, FUN = FUN, future.seed = FALSE, [16:19:01.688] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:01.688] | : . future.scheduling = 1, future.chunk.size = 1L, future.label = "future_eapply-%d") [16:19:01.690] | : Transpile call expression ... done [16:19:01.691] | : Evaluate transpiled call expression [16:19:01.811] | transpile() ... done [16:19:01.812] futurize() ... done Test with RNG: futurize(base::eapply(env = es, FUN = FUN), seed = TRUE, flavor = "add-on") [16:19:01.814] futurize() ... [16:19:01.815] | transpile() ... [16:19:01.816] | : get_transpiler() ... [16:19:01.817] | : . Finding call to be transpiled ... [16:19:01.818] | : . | descend_wrappers() ... [16:19:01.819] | : . | : Call: [16:19:01.820] | : . | : base::eapply [16:19:01.821] | : . | : parse_call() ... [16:19:01.822] | : . | : . Function: base::eapply(...) [16:19:01.823] | : . | : parse_call() ... done [16:19:01.824] | : . | descend_wrappers() ... done [16:19:01.825] | : . | parse_call() ... [16:19:01.826] | : . | : Function: base::eapply(...) [16:19:01.827] | : . | parse_call() ... done [16:19:01.828] | : . | Position of call to be transpiled in expression: c(1) [16:19:01.829] | : . | base::eapply [16:19:01.831] | : . Finding call to be transpiled ... done [16:19:01.832] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:01.833] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:01.834] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:01.835] | : . | Transpiler function: [16:19:01.835] | : . | function (expr, options = NULL) [16:19:01.835] | : . | { [16:19:01.835] | : . | call <- make_call("future_eapply") [16:19:01.835] | : . | fcn <- eval(call) [16:19:01.835] | : . | expr[[1]] <- call [16:19:01.835] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:01.835] | : . | { [16:19:01.835] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:01.835] | : . | if (is.null(defaults_base)) { [16:19:01.835] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:01.835] | : . | } [16:19:01.835] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:01.835] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:01.835] | : . | defaults <- defaults[keep] [16:19:01.835] | : . | specified <- attr(options, "specified") [16:19:01.835] | : . | if (length(specified) > 0) { [16:19:01.835] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:01.835] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:01.835] | : . | names(options)) [16:19:01.835] | : . | } [16:19:01.835] | : . | specified <- sprintf("future.%s", specified) [16:19:01.835] | : . | names <- setdiff(names(defaults), specified) [16:19:01.835] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:01.835] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:01.835] | : . | keep <- intersect(names(options), names(defaults)) [16:19:01.835] | : . | options <- options[keep] [16:19:01.835] | : . | options [16:19:01.835] | : . | })(options, fcn)) [16:19:01.835] | : . | expr <- as.call(parts) [16:19:01.835] | : . | expr [16:19:01.835] | : . | } [16:19:01.835] | : . | [16:19:01.837] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:01.838] | : get_transpiler() ... done [16:19:01.839] | : Transpile call expression ... [16:19:01.840] | : . future.apply::future_eapply(env = es, FUN = FUN, future.seed = TRUE, [16:19:01.840] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:01.840] | : . future.scheduling = 1, future.label = "future_eapply-%d") [16:19:01.842] | : Transpile call expression ... done [16:19:01.843] | : Evaluate transpiled call expression [16:19:01.918] | transpile() ... done [16:19:01.919] futurize() ... done === eapply ========================== base::eapply(env = es, FUN = FUN, all.names = TRUE) --------------------------------- [16:19:01.921] futurize() ... [16:19:01.922] | transpile() ... [16:19:01.923] | : get_transpiler() ... [16:19:01.924] | : . Finding call to be transpiled ... [16:19:01.925] | : . | descend_wrappers() ... [16:19:01.926] | : . | : Call: [16:19:01.927] | : . | : base::eapply [16:19:01.928] | : . | : parse_call() ... [16:19:01.929] | : . | : . Function: base::eapply(...) [16:19:01.930] | : . | : parse_call() ... done [16:19:01.931] | : . | descend_wrappers() ... done [16:19:01.932] | : . | parse_call() ... [16:19:01.933] | : . | : Function: base::eapply(...) [16:19:01.934] | : . | parse_call() ... done [16:19:01.935] | : . | Position of call to be transpiled in expression: c(1) [16:19:01.936] | : . | base::eapply [16:19:01.937] | : . Finding call to be transpiled ... done [16:19:01.938] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:01.939] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:01.940] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:01.941] | : . | Transpiler function: [16:19:01.942] | : . | function (expr, options = NULL) [16:19:01.942] | : . | { [16:19:01.942] | : . | call <- make_call("future_eapply") [16:19:01.942] | : . | fcn <- eval(call) [16:19:01.942] | : . | expr[[1]] <- call [16:19:01.942] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:01.942] | : . | { [16:19:01.942] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:01.942] | : . | if (is.null(defaults_base)) { [16:19:01.942] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:01.942] | : . | } [16:19:01.942] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:01.942] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:01.942] | : . | defaults <- defaults[keep] [16:19:01.942] | : . | specified <- attr(options, "specified") [16:19:01.942] | : . | if (length(specified) > 0) { [16:19:01.942] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:01.942] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:01.942] | : . | names(options)) [16:19:01.942] | : . | } [16:19:01.942] | : . | specified <- sprintf("future.%s", specified) [16:19:01.942] | : . | names <- setdiff(names(defaults), specified) [16:19:01.942] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:01.942] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:01.942] | : . | keep <- intersect(names(options), names(defaults)) [16:19:01.942] | : . | options <- options[keep] [16:19:01.942] | : . | options [16:19:01.942] | : . | })(options, fcn)) [16:19:01.942] | : . | expr <- as.call(parts) [16:19:01.942] | : . | expr [16:19:01.942] | : . | } [16:19:01.942] | : . | [16:19:01.943] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:01.944] | : get_transpiler() ... done [16:19:01.945] | : Transpile call expression ... [16:19:01.946] | : . future.apply::future_eapply(env = es, FUN = FUN, all.names = TRUE, [16:19:01.946] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:01.946] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_eapply-%d") [16:19:01.949] | : Transpile call expression ... done [16:19:01.950] | : Evaluate transpiled call expression [16:19:02.004] | transpile() ... done [16:19:02.004] futurize() ... done Futures created: 2 [16:19:02.005] futurize() ... [16:19:02.006] | transpile() ... [16:19:02.006] | : get_transpiler() ... [16:19:02.007] | : . Finding call to be transpiled ... [16:19:02.007] | : . | descend_wrappers() ... [16:19:02.008] | : . | : Call: [16:19:02.009] | : . | : base::eapply [16:19:02.009] | : . | : parse_call() ... [16:19:02.010] | : . | : . Function: base::eapply(...) [16:19:02.011] | : . | : parse_call() ... done [16:19:02.011] | : . | descend_wrappers() ... done [16:19:02.012] | : . | parse_call() ... [16:19:02.013] | : . | : Function: base::eapply(...) [16:19:02.013] | : . | parse_call() ... done [16:19:02.014] | : . | Position of call to be transpiled in expression: c(1) [16:19:02.014] | : . | base::eapply [16:19:02.015] | : . Finding call to be transpiled ... done [16:19:02.015] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:02.016] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:02.016] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:02.017] | : . | Transpiler function: [16:19:02.017] | : . | function (expr, options = NULL) [16:19:02.017] | : . | { [16:19:02.017] | : . | call <- make_call("future_eapply") [16:19:02.017] | : . | fcn <- eval(call) [16:19:02.017] | : . | expr[[1]] <- call [16:19:02.017] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:02.017] | : . | { [16:19:02.017] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:02.017] | : . | if (is.null(defaults_base)) { [16:19:02.017] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:02.017] | : . | } [16:19:02.017] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:02.017] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:02.017] | : . | defaults <- defaults[keep] [16:19:02.017] | : . | specified <- attr(options, "specified") [16:19:02.017] | : . | if (length(specified) > 0) { [16:19:02.017] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:02.017] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:02.017] | : . | names(options)) [16:19:02.017] | : . | } [16:19:02.017] | : . | specified <- sprintf("future.%s", specified) [16:19:02.017] | : . | names <- setdiff(names(defaults), specified) [16:19:02.017] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:02.017] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:02.017] | : . | keep <- intersect(names(options), names(defaults)) [16:19:02.017] | : . | options <- options[keep] [16:19:02.017] | : . | options [16:19:02.017] | : . | })(options, fcn)) [16:19:02.017] | : . | expr <- as.call(parts) [16:19:02.017] | : . | expr [16:19:02.017] | : . | } [16:19:02.017] | : . | [16:19:02.019] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:02.019] | : get_transpiler() ... done [16:19:02.020] | : Transpile call expression ... [16:19:02.021] | : . future.apply::future_eapply(env = es, FUN = FUN, all.names = TRUE, [16:19:02.021] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = FALSE, [16:19:02.021] | : . future.conditions = character(0), future.scheduling = 1, [16:19:02.021] | : . future.label = "future_eapply-%d") [16:19:02.022] | : Transpile call expression ... done [16:19:02.022] | : Evaluate transpiled call expression [16:19:02.064] | transpile() ... done [16:19:02.065] futurize() ... done character(0) [16:19:02.066] futurize() ... [16:19:02.067] | transpile() ... [16:19:02.068] | : get_transpiler() ... [16:19:02.069] | : . Finding call to be transpiled ... [16:19:02.070] | : . | descend_wrappers() ... [16:19:02.070] | : . | : Call: [16:19:02.071] | : . | : base::eapply [16:19:02.072] | : . | : parse_call() ... [16:19:02.073] | : . | : . Function: base::eapply(...) [16:19:02.074] | : . | : parse_call() ... done [16:19:02.074] | : . | descend_wrappers() ... done [16:19:02.075] | : . | parse_call() ... [16:19:02.075] | : . | : Function: base::eapply(...) [16:19:02.076] | : . | parse_call() ... done [16:19:02.077] | : . | Position of call to be transpiled in expression: c(1) [16:19:02.077] | : . | base::eapply [16:19:02.078] | : . Finding call to be transpiled ... done [16:19:02.078] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:02.079] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:02.079] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:02.080] | : . | Transpiler function: [16:19:02.081] | : . | function (expr, options = NULL) [16:19:02.081] | : . | { [16:19:02.081] | : . | call <- make_call("future_eapply") [16:19:02.081] | : . | fcn <- eval(call) [16:19:02.081] | : . | expr[[1]] <- call [16:19:02.081] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:02.081] | : . | { [16:19:02.081] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:02.081] | : . | if (is.null(defaults_base)) { [16:19:02.081] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:02.081] | : . | } [16:19:02.081] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:02.081] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:02.081] | : . | defaults <- defaults[keep] [16:19:02.081] | : . | specified <- attr(options, "specified") [16:19:02.081] | : . | if (length(specified) > 0) { [16:19:02.081] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:02.081] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:02.081] | : . | names(options)) [16:19:02.081] | : . | } [16:19:02.081] | : . | specified <- sprintf("future.%s", specified) [16:19:02.081] | : . | names <- setdiff(names(defaults), specified) [16:19:02.081] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:02.081] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:02.081] | : . | keep <- intersect(names(options), names(defaults)) [16:19:02.081] | : . | options <- options[keep] [16:19:02.081] | : . | options [16:19:02.081] | : . | })(options, fcn)) [16:19:02.081] | : . | expr <- as.call(parts) [16:19:02.081] | : . | expr [16:19:02.081] | : . | } [16:19:02.081] | : . | [16:19:02.083] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:02.084] | : get_transpiler() ... done [16:19:02.084] | : Transpile call expression ... [16:19:02.086] | : . future.apply::future_eapply(env = es, FUN = FUN, all.names = TRUE, [16:19:02.086] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:02.086] | : . future.conditions = "condition", future.scheduling = 1, future.chunk.size = 1L, [16:19:02.086] | : . future.label = "future_eapply-%d") [16:19:02.088] | : Transpile call expression ... done [16:19:02.089] | : Evaluate transpiled call expression [16:19:02.230] | transpile() ... done [16:19:02.231] futurize() ... done Test with RNG: futurize(base::eapply(env = es, FUN = FUN, all.names = TRUE), seed = TRUE, flavor = "add-on") [16:19:02.232] futurize() ... [16:19:02.232] | transpile() ... [16:19:02.233] | : get_transpiler() ... [16:19:02.234] | : . Finding call to be transpiled ... [16:19:02.235] | : . | descend_wrappers() ... [16:19:02.236] | : . | : Call: [16:19:02.237] | : . | : base::eapply [16:19:02.238] | : . | : parse_call() ... [16:19:02.239] | : . | : . Function: base::eapply(...) [16:19:02.240] | : . | : parse_call() ... done [16:19:02.240] | : . | descend_wrappers() ... done [16:19:02.241] | : . | parse_call() ... [16:19:02.242] | : . | : Function: base::eapply(...) [16:19:02.242] | : . | parse_call() ... done [16:19:02.243] | : . | Position of call to be transpiled in expression: c(1) [16:19:02.244] | : . | base::eapply [16:19:02.244] | : . Finding call to be transpiled ... done [16:19:02.245] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:02.246] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:02.247] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:02.248] | : . | Transpiler function: [16:19:02.248] | : . | function (expr, options = NULL) [16:19:02.248] | : . | { [16:19:02.248] | : . | call <- make_call("future_eapply") [16:19:02.248] | : . | fcn <- eval(call) [16:19:02.248] | : . | expr[[1]] <- call [16:19:02.248] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:02.248] | : . | { [16:19:02.248] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:02.248] | : . | if (is.null(defaults_base)) { [16:19:02.248] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:02.248] | : . | } [16:19:02.248] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:02.248] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:02.248] | : . | defaults <- defaults[keep] [16:19:02.248] | : . | specified <- attr(options, "specified") [16:19:02.248] | : . | if (length(specified) > 0) { [16:19:02.248] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:02.248] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:02.248] | : . | names(options)) [16:19:02.248] | : . | } [16:19:02.248] | : . | specified <- sprintf("future.%s", specified) [16:19:02.248] | : . | names <- setdiff(names(defaults), specified) [16:19:02.248] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:02.248] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:02.248] | : . | keep <- intersect(names(options), names(defaults)) [16:19:02.248] | : . | options <- options[keep] [16:19:02.248] | : . | options [16:19:02.248] | : . | })(options, fcn)) [16:19:02.248] | : . | expr <- as.call(parts) [16:19:02.248] | : . | expr [16:19:02.248] | : . | } [16:19:02.248] | : . | [16:19:02.250] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:02.251] | : get_transpiler() ... done [16:19:02.251] | : Transpile call expression ... [16:19:02.253] | : . future.apply::future_eapply(env = es, FUN = FUN, all.names = TRUE, [16:19:02.253] | : . future.seed = TRUE, future.globals = TRUE, future.stdout = TRUE, [16:19:02.253] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_eapply-%d") [16:19:02.255] | : Transpile call expression ... done [16:19:02.255] | : Evaluate transpiled call expression [16:19:02.326] | transpile() ... done [16:19:02.327] futurize() ... done === eapply ========================== base::eapply(env = es, FUN = FUN, USE.NAMES = FALSE) --------------------------------- [16:19:02.328] futurize() ... [16:19:02.329] | transpile() ... [16:19:02.330] | : get_transpiler() ... [16:19:02.330] | : . Finding call to be transpiled ... [16:19:02.331] | : . | descend_wrappers() ... [16:19:02.331] | : . | : Call: [16:19:02.332] | : . | : base::eapply [16:19:02.332] | : . | : parse_call() ... [16:19:02.333] | : . | : . Function: base::eapply(...) [16:19:02.334] | : . | : parse_call() ... done [16:19:02.334] | : . | descend_wrappers() ... done [16:19:02.335] | : . | parse_call() ... [16:19:02.335] | : . | : Function: base::eapply(...) [16:19:02.336] | : . | parse_call() ... done [16:19:02.337] | : . | Position of call to be transpiled in expression: c(1) [16:19:02.337] | : . | base::eapply [16:19:02.338] | : . Finding call to be transpiled ... done [16:19:02.339] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:02.339] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:02.340] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:02.340] | : . | Transpiler function: [16:19:02.341] | : . | function (expr, options = NULL) [16:19:02.341] | : . | { [16:19:02.341] | : . | call <- make_call("future_eapply") [16:19:02.341] | : . | fcn <- eval(call) [16:19:02.341] | : . | expr[[1]] <- call [16:19:02.341] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:02.341] | : . | { [16:19:02.341] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:02.341] | : . | if (is.null(defaults_base)) { [16:19:02.341] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:02.341] | : . | } [16:19:02.341] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:02.341] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:02.341] | : . | defaults <- defaults[keep] [16:19:02.341] | : . | specified <- attr(options, "specified") [16:19:02.341] | : . | if (length(specified) > 0) { [16:19:02.341] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:02.341] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:02.341] | : . | names(options)) [16:19:02.341] | : . | } [16:19:02.341] | : . | specified <- sprintf("future.%s", specified) [16:19:02.341] | : . | names <- setdiff(names(defaults), specified) [16:19:02.341] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:02.341] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:02.341] | : . | keep <- intersect(names(options), names(defaults)) [16:19:02.341] | : . | options <- options[keep] [16:19:02.341] | : . | options [16:19:02.341] | : . | })(options, fcn)) [16:19:02.341] | : . | expr <- as.call(parts) [16:19:02.341] | : . | expr [16:19:02.341] | : . | } [16:19:02.341] | : . | [16:19:02.342] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:02.343] | : get_transpiler() ... done [16:19:02.343] | : Transpile call expression ... [16:19:02.344] | : . future.apply::future_eapply(env = es, FUN = FUN, USE.NAMES = FALSE, [16:19:02.344] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:02.344] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_eapply-%d") [16:19:02.346] | : Transpile call expression ... done [16:19:02.346] | : Evaluate transpiled call expression [16:19:02.390] | transpile() ... done [16:19:02.390] futurize() ... done Futures created: 2 [16:19:02.391] futurize() ... [16:19:02.392] | transpile() ... [16:19:02.393] | : get_transpiler() ... [16:19:02.394] | : . Finding call to be transpiled ... [16:19:02.395] | : . | descend_wrappers() ... [16:19:02.395] | : . | : Call: [16:19:02.396] | : . | : base::eapply [16:19:02.397] | : . | : parse_call() ... [16:19:02.397] | : . | : . Function: base::eapply(...) [16:19:02.398] | : . | : parse_call() ... done [16:19:02.399] | : . | descend_wrappers() ... done [16:19:02.399] | : . | parse_call() ... [16:19:02.400] | : . | : Function: base::eapply(...) [16:19:02.401] | : . | parse_call() ... done [16:19:02.401] | : . | Position of call to be transpiled in expression: c(1) [16:19:02.402] | : . | base::eapply [16:19:02.403] | : . Finding call to be transpiled ... done [16:19:02.403] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:02.404] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:02.405] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:02.405] | : . | Transpiler function: [16:19:02.406] | : . | function (expr, options = NULL) [16:19:02.406] | : . | { [16:19:02.406] | : . | call <- make_call("future_eapply") [16:19:02.406] | : . | fcn <- eval(call) [16:19:02.406] | : . | expr[[1]] <- call [16:19:02.406] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:02.406] | : . | { [16:19:02.406] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:02.406] | : . | if (is.null(defaults_base)) { [16:19:02.406] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:02.406] | : . | } [16:19:02.406] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:02.406] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:02.406] | : . | defaults <- defaults[keep] [16:19:02.406] | : . | specified <- attr(options, "specified") [16:19:02.406] | : . | if (length(specified) > 0) { [16:19:02.406] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:02.406] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:02.406] | : . | names(options)) [16:19:02.406] | : . | } [16:19:02.406] | : . | specified <- sprintf("future.%s", specified) [16:19:02.406] | : . | names <- setdiff(names(defaults), specified) [16:19:02.406] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:02.406] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:02.406] | : . | keep <- intersect(names(options), names(defaults)) [16:19:02.406] | : . | options <- options[keep] [16:19:02.406] | : . | options [16:19:02.406] | : . | })(options, fcn)) [16:19:02.406] | : . | expr <- as.call(parts) [16:19:02.406] | : . | expr [16:19:02.406] | : . | } [16:19:02.406] | : . | [16:19:02.407] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:02.408] | : get_transpiler() ... done [16:19:02.408] | : Transpile call expression ... [16:19:02.409] | : . future.apply::future_eapply(env = es, FUN = FUN, USE.NAMES = FALSE, [16:19:02.409] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = FALSE, [16:19:02.409] | : . future.conditions = character(0), future.scheduling = 1, [16:19:02.409] | : . future.label = "future_eapply-%d") [16:19:02.411] | : Transpile call expression ... done [16:19:02.412] | : Evaluate transpiled call expression [16:19:02.463] | transpile() ... done [16:19:02.464] futurize() ... done character(0) [16:19:02.465] futurize() ... [16:19:02.466] | transpile() ... [16:19:02.467] | : get_transpiler() ... [16:19:02.467] | : . Finding call to be transpiled ... [16:19:02.468] | : . | descend_wrappers() ... [16:19:02.469] | : . | : Call: [16:19:02.470] | : . | : base::eapply [16:19:02.471] | : . | : parse_call() ... [16:19:02.471] | : . | : . Function: base::eapply(...) [16:19:02.472] | : . | : parse_call() ... done [16:19:02.473] | : . | descend_wrappers() ... done [16:19:02.474] | : . | parse_call() ... [16:19:02.474] | : . | : Function: base::eapply(...) [16:19:02.475] | : . | parse_call() ... done [16:19:02.476] | : . | Position of call to be transpiled in expression: c(1) [16:19:02.477] | : . | base::eapply [16:19:02.477] | : . Finding call to be transpiled ... done [16:19:02.478] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:02.479] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:02.480] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:02.481] | : . | Transpiler function: [16:19:02.481] | : . | function (expr, options = NULL) [16:19:02.481] | : . | { [16:19:02.481] | : . | call <- make_call("future_eapply") [16:19:02.481] | : . | fcn <- eval(call) [16:19:02.481] | : . | expr[[1]] <- call [16:19:02.481] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:02.481] | : . | { [16:19:02.481] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:02.481] | : . | if (is.null(defaults_base)) { [16:19:02.481] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:02.481] | : . | } [16:19:02.481] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:02.481] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:02.481] | : . | defaults <- defaults[keep] [16:19:02.481] | : . | specified <- attr(options, "specified") [16:19:02.481] | : . | if (length(specified) > 0) { [16:19:02.481] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:02.481] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:02.481] | : . | names(options)) [16:19:02.481] | : . | } [16:19:02.481] | : . | specified <- sprintf("future.%s", specified) [16:19:02.481] | : . | names <- setdiff(names(defaults), specified) [16:19:02.481] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:02.481] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:02.481] | : . | keep <- intersect(names(options), names(defaults)) [16:19:02.481] | : . | options <- options[keep] [16:19:02.481] | : . | options [16:19:02.481] | : . | })(options, fcn)) [16:19:02.481] | : . | expr <- as.call(parts) [16:19:02.481] | : . | expr [16:19:02.481] | : . | } [16:19:02.481] | : . | [16:19:02.483] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:02.483] | : get_transpiler() ... done [16:19:02.484] | : Transpile call expression ... [16:19:02.485] | : . future.apply::future_eapply(env = es, FUN = FUN, USE.NAMES = FALSE, [16:19:02.485] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:02.485] | : . future.conditions = "condition", future.scheduling = 1, future.chunk.size = 1L, [16:19:02.485] | : . future.label = "future_eapply-%d") [16:19:02.487] | : Transpile call expression ... done [16:19:02.488] | : Evaluate transpiled call expression [16:19:02.624] | transpile() ... done [16:19:02.626] futurize() ... done Test with RNG: futurize(base::eapply(env = es, FUN = FUN, USE.NAMES = FALSE), seed = TRUE, flavor = "add-on") [16:19:02.627] futurize() ... [16:19:02.628] | transpile() ... [16:19:02.629] | : get_transpiler() ... [16:19:02.630] | : . Finding call to be transpiled ... [16:19:02.631] | : . | descend_wrappers() ... [16:19:02.632] | : . | : Call: [16:19:02.633] | : . | : base::eapply [16:19:02.635] | : . | : parse_call() ... [16:19:02.636] | : . | : . Function: base::eapply(...) [16:19:02.637] | : . | : parse_call() ... done [16:19:02.638] | : . | descend_wrappers() ... done [16:19:02.639] | : . | parse_call() ... [16:19:02.640] | : . | : Function: base::eapply(...) [16:19:02.641] | : . | parse_call() ... done [16:19:02.642] | : . | Position of call to be transpiled in expression: c(1) [16:19:02.643] | : . | base::eapply [16:19:02.644] | : . Finding call to be transpiled ... done [16:19:02.645] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:02.646] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:02.647] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:02.648] | : . | Transpiler function: [16:19:02.649] | : . | function (expr, options = NULL) [16:19:02.649] | : . | { [16:19:02.649] | : . | call <- make_call("future_eapply") [16:19:02.649] | : . | fcn <- eval(call) [16:19:02.649] | : . | expr[[1]] <- call [16:19:02.649] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:02.649] | : . | { [16:19:02.649] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:02.649] | : . | if (is.null(defaults_base)) { [16:19:02.649] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:02.649] | : . | } [16:19:02.649] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:02.649] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:02.649] | : . | defaults <- defaults[keep] [16:19:02.649] | : . | specified <- attr(options, "specified") [16:19:02.649] | : . | if (length(specified) > 0) { [16:19:02.649] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:02.649] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:02.649] | : . | names(options)) [16:19:02.649] | : . | } [16:19:02.649] | : . | specified <- sprintf("future.%s", specified) [16:19:02.649] | : . | names <- setdiff(names(defaults), specified) [16:19:02.649] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:02.649] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:02.649] | : . | keep <- intersect(names(options), names(defaults)) [16:19:02.649] | : . | options <- options[keep] [16:19:02.649] | : . | options [16:19:02.649] | : . | })(options, fcn)) [16:19:02.649] | : . | expr <- as.call(parts) [16:19:02.649] | : . | expr [16:19:02.649] | : . | } [16:19:02.649] | : . | [16:19:02.651] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:02.652] | : get_transpiler() ... done [16:19:02.653] | : Transpile call expression ... [16:19:02.656] | : . future.apply::future_eapply(env = es, FUN = FUN, USE.NAMES = FALSE, [16:19:02.656] | : . future.seed = TRUE, future.globals = TRUE, future.stdout = TRUE, [16:19:02.656] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_eapply-%d") [16:19:02.659] | : Transpile call expression ... done [16:19:02.659] | : Evaluate transpiled call expression [16:19:02.720] | transpile() ... done [16:19:02.722] futurize() ... done === replicate ========================== replicate(2, 42) --------------------------------- [16:19:02.724] futurize() ... [16:19:02.725] | transpile() ... [16:19:02.725] | : get_transpiler() ... [16:19:02.726] | : . Finding call to be transpiled ... [16:19:02.727] | : . | descend_wrappers() ... [16:19:02.728] | : . | : Call: [16:19:02.729] | : . | : replicate [16:19:02.730] | : . | : parse_call() ... [16:19:02.731] | : . | : . Function: replicate(...) [16:19:02.732] | : . | : . Locate function ... [16:19:02.733] | : . | : . | Function located in: 'base' [16:19:02.734] | : . | : . Locate function ... done [16:19:02.735] | : . | : parse_call() ... done [16:19:02.736] | : . | descend_wrappers() ... done [16:19:02.736] | : . | parse_call() ... [16:19:02.737] | : . | : Function: replicate(...) [16:19:02.738] | : . | : Locate function ... [16:19:02.739] | : . | : . Function located in: 'base' [16:19:02.740] | : . | : Locate function ... done [16:19:02.742] | : . | parse_call() ... done [16:19:02.743] | : . | Position of call to be transpiled in expression: c(1) [16:19:02.744] | : . | replicate [16:19:02.745] | : . Finding call to be transpiled ... done [16:19:02.746] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... [16:19:02.747] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:02.748] | : . | Transpiler description: base::replicate() -> future.apply::future_replicate() [16:19:02.749] | : . | Transpiler function: [16:19:02.750] | : . | function (expr, options = NULL) [16:19:02.750] | : . | { [16:19:02.750] | : . | call <- make_call("future_replicate") [16:19:02.750] | : . | fcn <- eval(call) [16:19:02.750] | : . | expr[[1]] <- call [16:19:02.750] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:02.750] | : . | { [16:19:02.750] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:02.750] | : . | if (is.null(defaults_base)) { [16:19:02.750] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:02.750] | : . | } [16:19:02.750] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:02.750] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:02.750] | : . | defaults <- defaults[keep] [16:19:02.750] | : . | specified <- attr(options, "specified") [16:19:02.750] | : . | if (length(specified) > 0) { [16:19:02.750] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:02.750] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:02.750] | : . | names(options)) [16:19:02.750] | : . | } [16:19:02.750] | : . | specified <- sprintf("future.%s", specified) [16:19:02.750] | : . | names <- setdiff(names(defaults), specified) [16:19:02.750] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:02.750] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:02.750] | : . | keep <- intersect(names(options), names(defaults)) [16:19:02.750] | : . | options <- options[keep] [16:19:02.750] | : . | options [16:19:02.750] | : . | })(options, fcn)) [16:19:02.750] | : . | expr <- as.call(parts) [16:19:02.750] | : . | expr [16:19:02.750] | : . | } [16:19:02.750] | : . | [16:19:02.753] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... done [16:19:02.754] | : get_transpiler() ... done [16:19:02.755] | : Transpile call expression ... [16:19:02.756] | : . future.apply::future_replicate(2, 42, future.seed = TRUE, future.globals = TRUE, [16:19:02.756] | : . future.stdout = TRUE, future.conditions = "condition", future.scheduling = 1, [16:19:02.756] | : . future.label = "future_replicate-%d") [16:19:02.759] | : Transpile call expression ... done [16:19:02.760] | : Evaluate transpiled call expression [16:19:02.798] | transpile() ... done [16:19:02.799] futurize() ... done Futures created: 2 [16:19:02.801] futurize() ... [16:19:02.802] | transpile() ... [16:19:02.803] | : get_transpiler() ... [16:19:02.804] | : . Finding call to be transpiled ... [16:19:02.805] | : . | descend_wrappers() ... [16:19:02.806] | : . | : Call: [16:19:02.807] | : . | : replicate [16:19:02.808] | : . | : parse_call() ... [16:19:02.809] | : . | : . Function: replicate(...) [16:19:02.810] | : . | : . Locate function ... [16:19:02.811] | : . | : . | Function located in: 'base' [16:19:02.812] | : . | : . Locate function ... done [16:19:02.813] | : . | : parse_call() ... done [16:19:02.814] | : . | descend_wrappers() ... done [16:19:02.815] | : . | parse_call() ... [16:19:02.816] | : . | : Function: replicate(...) [16:19:02.818] | : . | : Locate function ... [16:19:02.819] | : . | : . Function located in: 'base' [16:19:02.820] | : . | : Locate function ... done [16:19:02.821] | : . | parse_call() ... done [16:19:02.822] | : . | Position of call to be transpiled in expression: c(1) [16:19:02.823] | : . | replicate [16:19:02.824] | : . Finding call to be transpiled ... done [16:19:02.825] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... [16:19:02.826] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:02.827] | : . | Transpiler description: base::replicate() -> future.apply::future_replicate() [16:19:02.828] | : . | Transpiler function: [16:19:02.829] | : . | function (expr, options = NULL) [16:19:02.829] | : . | { [16:19:02.829] | : . | call <- make_call("future_replicate") [16:19:02.829] | : . | fcn <- eval(call) [16:19:02.829] | : . | expr[[1]] <- call [16:19:02.829] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:02.829] | : . | { [16:19:02.829] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:02.829] | : . | if (is.null(defaults_base)) { [16:19:02.829] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:02.829] | : . | } [16:19:02.829] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:02.829] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:02.829] | : . | defaults <- defaults[keep] [16:19:02.829] | : . | specified <- attr(options, "specified") [16:19:02.829] | : . | if (length(specified) > 0) { [16:19:02.829] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:02.829] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:02.829] | : . | names(options)) [16:19:02.829] | : . | } [16:19:02.829] | : . | specified <- sprintf("future.%s", specified) [16:19:02.829] | : . | names <- setdiff(names(defaults), specified) [16:19:02.829] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:02.829] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:02.829] | : . | keep <- intersect(names(options), names(defaults)) [16:19:02.829] | : . | options <- options[keep] [16:19:02.829] | : . | options [16:19:02.829] | : . | })(options, fcn)) [16:19:02.829] | : . | expr <- as.call(parts) [16:19:02.829] | : . | expr [16:19:02.829] | : . | } [16:19:02.829] | : . | [16:19:02.831] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... done [16:19:02.832] | : get_transpiler() ... done [16:19:02.834] | : Transpile call expression ... [16:19:02.835] | : . future.apply::future_replicate(2, 42, future.seed = TRUE, future.globals = TRUE, [16:19:02.835] | : . future.stdout = FALSE, future.conditions = character(0), [16:19:02.835] | : . future.scheduling = 1, future.label = "future_replicate-%d") [16:19:02.837] | : Transpile call expression ... done [16:19:02.838] | : Evaluate transpiled call expression [16:19:02.872] | transpile() ... done [16:19:02.873] futurize() ... done character(0) [16:19:02.875] futurize() ... [16:19:02.876] | transpile() ... [16:19:02.877] | : get_transpiler() ... [16:19:02.878] | : . Finding call to be transpiled ... [16:19:02.879] | : . | descend_wrappers() ... [16:19:02.880] | : . | : Call: [16:19:02.881] | : . | : replicate [16:19:02.882] | : . | : parse_call() ... [16:19:02.883] | : . | : . Function: replicate(...) [16:19:02.884] | : . | : . Locate function ... [16:19:02.886] | : . | : . | Function located in: 'base' [16:19:02.887] | : . | : . Locate function ... done [16:19:02.888] | : . | : parse_call() ... done [16:19:02.889] | : . | descend_wrappers() ... done [16:19:02.890] | : . | parse_call() ... [16:19:02.891] | : . | : Function: replicate(...) [16:19:02.892] | : . | : Locate function ... [16:19:02.893] | : . | : . Function located in: 'base' [16:19:02.894] | : . | : Locate function ... done [16:19:02.895] | : . | parse_call() ... done [16:19:02.896] | : . | Position of call to be transpiled in expression: c(1) [16:19:02.897] | : . | replicate [16:19:02.898] | : . Finding call to be transpiled ... done [16:19:02.899] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... [16:19:02.900] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:02.902] | : . | Transpiler description: base::replicate() -> future.apply::future_replicate() [16:19:02.903] | : . | Transpiler function: [16:19:02.904] | : . | function (expr, options = NULL) [16:19:02.904] | : . | { [16:19:02.904] | : . | call <- make_call("future_replicate") [16:19:02.904] | : . | fcn <- eval(call) [16:19:02.904] | : . | expr[[1]] <- call [16:19:02.904] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:02.904] | : . | { [16:19:02.904] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:02.904] | : . | if (is.null(defaults_base)) { [16:19:02.904] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:02.904] | : . | } [16:19:02.904] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:02.904] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:02.904] | : . | defaults <- defaults[keep] [16:19:02.904] | : . | specified <- attr(options, "specified") [16:19:02.904] | : . | if (length(specified) > 0) { [16:19:02.904] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:02.904] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:02.904] | : . | names(options)) [16:19:02.904] | : . | } [16:19:02.904] | : . | specified <- sprintf("future.%s", specified) [16:19:02.904] | : . | names <- setdiff(names(defaults), specified) [16:19:02.904] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:02.904] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:02.904] | : . | keep <- intersect(names(options), names(defaults)) [16:19:02.904] | : . | options <- options[keep] [16:19:02.904] | : . | options [16:19:02.904] | : . | })(options, fcn)) [16:19:02.904] | : . | expr <- as.call(parts) [16:19:02.904] | : . | expr [16:19:02.904] | : . | } [16:19:02.904] | : . | [16:19:02.906] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... done [16:19:02.907] | : get_transpiler() ... done [16:19:02.908] | : Transpile call expression ... [16:19:02.909] | : . future.apply::future_replicate(2, 42, future.seed = TRUE, future.globals = TRUE, [16:19:02.909] | : . future.stdout = TRUE, future.conditions = "condition", future.scheduling = 1, [16:19:02.909] | : . future.chunk.size = 1L, future.label = "future_replicate-%d") [16:19:02.912] | : Transpile call expression ... done [16:19:02.913] | : Evaluate transpiled call expression [16:19:02.945] | transpile() ... done [16:19:02.946] futurize() ... done Test with RNG: futurize(replicate(2, 42), seed = TRUE, flavor = "add-on") [16:19:02.947] futurize() ... [16:19:02.948] | transpile() ... [16:19:02.949] | : get_transpiler() ... [16:19:02.950] | : . Finding call to be transpiled ... [16:19:02.951] | : . | descend_wrappers() ... [16:19:02.952] | : . | : Call: [16:19:02.952] | : . | : replicate [16:19:02.953] | : . | : parse_call() ... [16:19:02.955] | : . | : . Function: replicate(...) [16:19:02.956] | : . | : . Locate function ... [16:19:02.957] | : . | : . | Function located in: 'base' [16:19:02.959] | : . | : . Locate function ... done [16:19:02.960] | : . | : parse_call() ... done [16:19:02.961] | : . | descend_wrappers() ... done [16:19:02.961] | : . | parse_call() ... [16:19:02.962] | : . | : Function: replicate(...) [16:19:02.963] | : . | : Locate function ... [16:19:02.964] | : . | : . Function located in: 'base' [16:19:02.965] | : . | : Locate function ... done [16:19:02.966] | : . | parse_call() ... done [16:19:02.967] | : . | Position of call to be transpiled in expression: c(1) [16:19:02.968] | : . | replicate [16:19:02.970] | : . Finding call to be transpiled ... done [16:19:02.971] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... [16:19:02.973] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:02.974] | : . | Transpiler description: base::replicate() -> future.apply::future_replicate() [16:19:02.975] | : . | Transpiler function: [16:19:02.975] | : . | function (expr, options = NULL) [16:19:02.975] | : . | { [16:19:02.975] | : . | call <- make_call("future_replicate") [16:19:02.975] | : . | fcn <- eval(call) [16:19:02.975] | : . | expr[[1]] <- call [16:19:02.975] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:02.975] | : . | { [16:19:02.975] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:02.975] | : . | if (is.null(defaults_base)) { [16:19:02.975] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:02.975] | : . | } [16:19:02.975] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:02.975] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:02.975] | : . | defaults <- defaults[keep] [16:19:02.975] | : . | specified <- attr(options, "specified") [16:19:02.975] | : . | if (length(specified) > 0) { [16:19:02.975] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:02.975] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:02.975] | : . | names(options)) [16:19:02.975] | : . | } [16:19:02.975] | : . | specified <- sprintf("future.%s", specified) [16:19:02.975] | : . | names <- setdiff(names(defaults), specified) [16:19:02.975] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:02.975] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:02.975] | : . | keep <- intersect(names(options), names(defaults)) [16:19:02.975] | : . | options <- options[keep] [16:19:02.975] | : . | options [16:19:02.975] | : . | })(options, fcn)) [16:19:02.975] | : . | expr <- as.call(parts) [16:19:02.975] | : . | expr [16:19:02.975] | : . | } [16:19:02.975] | : . | [16:19:02.978] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... done [16:19:02.979] | : get_transpiler() ... done [16:19:02.980] | : Transpile call expression ... [16:19:02.981] | : . future.apply::future_replicate(2, 42, future.seed = TRUE, future.globals = TRUE, [16:19:02.981] | : . future.stdout = TRUE, future.conditions = "condition", future.scheduling = 1, [16:19:02.981] | : . future.label = "future_replicate-%d") [16:19:02.983] | : Transpile call expression ... done [16:19:02.984] | : Evaluate transpiled call expression [16:19:03.014] | transpile() ... done [16:19:03.015] futurize() ... done === replicate ========================== base::replicate(2, 42) --------------------------------- [16:19:03.017] futurize() ... [16:19:03.018] | transpile() ... [16:19:03.019] | : get_transpiler() ... [16:19:03.019] | : . Finding call to be transpiled ... [16:19:03.020] | : . | descend_wrappers() ... [16:19:03.021] | : . | : Call: [16:19:03.022] | : . | : base::replicate [16:19:03.023] | : . | : parse_call() ... [16:19:03.024] | : . | : . Function: base::replicate(...) [16:19:03.025] | : . | : parse_call() ... done [16:19:03.026] | : . | descend_wrappers() ... done [16:19:03.027] | : . | parse_call() ... [16:19:03.028] | : . | : Function: base::replicate(...) [16:19:03.029] | : . | parse_call() ... done [16:19:03.030] | : . | Position of call to be transpiled in expression: c(1) [16:19:03.031] | : . | base::replicate [16:19:03.032] | : . Finding call to be transpiled ... done [16:19:03.033] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... [16:19:03.034] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:03.035] | : . | Transpiler description: base::replicate() -> future.apply::future_replicate() [16:19:03.036] | : . | Transpiler function: [16:19:03.037] | : . | function (expr, options = NULL) [16:19:03.037] | : . | { [16:19:03.037] | : . | call <- make_call("future_replicate") [16:19:03.037] | : . | fcn <- eval(call) [16:19:03.037] | : . | expr[[1]] <- call [16:19:03.037] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:03.037] | : . | { [16:19:03.037] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:03.037] | : . | if (is.null(defaults_base)) { [16:19:03.037] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:03.037] | : . | } [16:19:03.037] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:03.037] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:03.037] | : . | defaults <- defaults[keep] [16:19:03.037] | : . | specified <- attr(options, "specified") [16:19:03.037] | : . | if (length(specified) > 0) { [16:19:03.037] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:03.037] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:03.037] | : . | names(options)) [16:19:03.037] | : . | } [16:19:03.037] | : . | specified <- sprintf("future.%s", specified) [16:19:03.037] | : . | names <- setdiff(names(defaults), specified) [16:19:03.037] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:03.037] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:03.037] | : . | keep <- intersect(names(options), names(defaults)) [16:19:03.037] | : . | options <- options[keep] [16:19:03.037] | : . | options [16:19:03.037] | : . | })(options, fcn)) [16:19:03.037] | : . | expr <- as.call(parts) [16:19:03.037] | : . | expr [16:19:03.037] | : . | } [16:19:03.037] | : . | [16:19:03.039] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... done [16:19:03.040] | : get_transpiler() ... done [16:19:03.041] | : Transpile call expression ... [16:19:03.042] | : . future.apply::future_replicate(2, 42, future.seed = TRUE, future.globals = TRUE, [16:19:03.042] | : . future.stdout = TRUE, future.conditions = "condition", future.scheduling = 1, [16:19:03.042] | : . future.label = "future_replicate-%d") [16:19:03.045] | : Transpile call expression ... done [16:19:03.046] | : Evaluate transpiled call expression [16:19:03.080] | transpile() ... done [16:19:03.081] futurize() ... done Futures created: 2 [16:19:03.083] futurize() ... [16:19:03.084] | transpile() ... [16:19:03.085] | : get_transpiler() ... [16:19:03.085] | : . Finding call to be transpiled ... [16:19:03.086] | : . | descend_wrappers() ... [16:19:03.087] | : . | : Call: [16:19:03.088] | : . | : base::replicate [16:19:03.089] | : . | : parse_call() ... [16:19:03.090] | : . | : . Function: base::replicate(...) [16:19:03.091] | : . | : parse_call() ... done [16:19:03.091] | : . | descend_wrappers() ... done [16:19:03.092] | : . | parse_call() ... [16:19:03.093] | : . | : Function: base::replicate(...) [16:19:03.094] | : . | parse_call() ... done [16:19:03.095] | : . | Position of call to be transpiled in expression: c(1) [16:19:03.096] | : . | base::replicate [16:19:03.097] | : . Finding call to be transpiled ... done [16:19:03.098] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... [16:19:03.099] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:03.101] | : . | Transpiler description: base::replicate() -> future.apply::future_replicate() [16:19:03.102] | : . | Transpiler function: [16:19:03.103] | : . | function (expr, options = NULL) [16:19:03.103] | : . | { [16:19:03.103] | : . | call <- make_call("future_replicate") [16:19:03.103] | : . | fcn <- eval(call) [16:19:03.103] | : . | expr[[1]] <- call [16:19:03.103] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:03.103] | : . | { [16:19:03.103] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:03.103] | : . | if (is.null(defaults_base)) { [16:19:03.103] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:03.103] | : . | } [16:19:03.103] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:03.103] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:03.103] | : . | defaults <- defaults[keep] [16:19:03.103] | : . | specified <- attr(options, "specified") [16:19:03.103] | : . | if (length(specified) > 0) { [16:19:03.103] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:03.103] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:03.103] | : . | names(options)) [16:19:03.103] | : . | } [16:19:03.103] | : . | specified <- sprintf("future.%s", specified) [16:19:03.103] | : . | names <- setdiff(names(defaults), specified) [16:19:03.103] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:03.103] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:03.103] | : . | keep <- intersect(names(options), names(defaults)) [16:19:03.103] | : . | options <- options[keep] [16:19:03.103] | : . | options [16:19:03.103] | : . | })(options, fcn)) [16:19:03.103] | : . | expr <- as.call(parts) [16:19:03.103] | : . | expr [16:19:03.103] | : . | } [16:19:03.103] | : . | [16:19:03.105] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... done [16:19:03.106] | : get_transpiler() ... done [16:19:03.107] | : Transpile call expression ... [16:19:03.109] | : . future.apply::future_replicate(2, 42, future.seed = TRUE, future.globals = TRUE, [16:19:03.109] | : . future.stdout = FALSE, future.conditions = character(0), [16:19:03.109] | : . future.scheduling = 1, future.label = "future_replicate-%d") [16:19:03.112] | : Transpile call expression ... done [16:19:03.113] | : Evaluate transpiled call expression [16:19:03.147] | transpile() ... done [16:19:03.148] futurize() ... done character(0) [16:19:03.150] futurize() ... [16:19:03.151] | transpile() ... [16:19:03.152] | : get_transpiler() ... [16:19:03.153] | : . Finding call to be transpiled ... [16:19:03.154] | : . | descend_wrappers() ... [16:19:03.155] | : . | : Call: [16:19:03.155] | : . | : base::replicate [16:19:03.156] | : . | : parse_call() ... [16:19:03.157] | : . | : . Function: base::replicate(...) [16:19:03.158] | : . | : parse_call() ... done [16:19:03.159] | : . | descend_wrappers() ... done [16:19:03.160] | : . | parse_call() ... [16:19:03.161] | : . | : Function: base::replicate(...) [16:19:03.162] | : . | parse_call() ... done [16:19:03.162] | : . | Position of call to be transpiled in expression: c(1) [16:19:03.163] | : . | base::replicate [16:19:03.164] | : . Finding call to be transpiled ... done [16:19:03.164] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... [16:19:03.165] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:03.165] | : . | Transpiler description: base::replicate() -> future.apply::future_replicate() [16:19:03.166] | : . | Transpiler function: [16:19:03.167] | : . | function (expr, options = NULL) [16:19:03.167] | : . | { [16:19:03.167] | : . | call <- make_call("future_replicate") [16:19:03.167] | : . | fcn <- eval(call) [16:19:03.167] | : . | expr[[1]] <- call [16:19:03.167] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:03.167] | : . | { [16:19:03.167] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:03.167] | : . | if (is.null(defaults_base)) { [16:19:03.167] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:03.167] | : . | } [16:19:03.167] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:03.167] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:03.167] | : . | defaults <- defaults[keep] [16:19:03.167] | : . | specified <- attr(options, "specified") [16:19:03.167] | : . | if (length(specified) > 0) { [16:19:03.167] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:03.167] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:03.167] | : . | names(options)) [16:19:03.167] | : . | } [16:19:03.167] | : . | specified <- sprintf("future.%s", specified) [16:19:03.167] | : . | names <- setdiff(names(defaults), specified) [16:19:03.167] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:03.167] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:03.167] | : . | keep <- intersect(names(options), names(defaults)) [16:19:03.167] | : . | options <- options[keep] [16:19:03.167] | : . | options [16:19:03.167] | : . | })(options, fcn)) [16:19:03.167] | : . | expr <- as.call(parts) [16:19:03.167] | : . | expr [16:19:03.167] | : . | } [16:19:03.167] | : . | [16:19:03.168] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... done [16:19:03.168] | : get_transpiler() ... done [16:19:03.169] | : Transpile call expression ... [16:19:03.170] | : . future.apply::future_replicate(2, 42, future.seed = TRUE, future.globals = TRUE, [16:19:03.170] | : . future.stdout = TRUE, future.conditions = "condition", future.scheduling = 1, [16:19:03.170] | : . future.chunk.size = 1L, future.label = "future_replicate-%d") [16:19:03.172] | : Transpile call expression ... done [16:19:03.173] | : Evaluate transpiled call expression [16:19:03.201] | transpile() ... done [16:19:03.203] futurize() ... done Test with RNG: futurize(base::replicate(2, 42), seed = TRUE, flavor = "add-on") [16:19:03.204] futurize() ... [16:19:03.205] | transpile() ... [16:19:03.206] | : get_transpiler() ... [16:19:03.207] | : . Finding call to be transpiled ... [16:19:03.208] | : . | descend_wrappers() ... [16:19:03.209] | : . | : Call: [16:19:03.210] | : . | : base::replicate [16:19:03.211] | : . | : parse_call() ... [16:19:03.212] | : . | : . Function: base::replicate(...) [16:19:03.213] | : . | : parse_call() ... done [16:19:03.214] | : . | descend_wrappers() ... done [16:19:03.215] | : . | parse_call() ... [16:19:03.216] | : . | : Function: base::replicate(...) [16:19:03.217] | : . | parse_call() ... done [16:19:03.218] | : . | Position of call to be transpiled in expression: c(1) [16:19:03.219] | : . | base::replicate [16:19:03.221] | : . Finding call to be transpiled ... done [16:19:03.222] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... [16:19:03.223] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:03.224] | : . | Transpiler description: base::replicate() -> future.apply::future_replicate() [16:19:03.225] | : . | Transpiler function: [16:19:03.225] | : . | function (expr, options = NULL) [16:19:03.225] | : . | { [16:19:03.225] | : . | call <- make_call("future_replicate") [16:19:03.225] | : . | fcn <- eval(call) [16:19:03.225] | : . | expr[[1]] <- call [16:19:03.225] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:03.225] | : . | { [16:19:03.225] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:03.225] | : . | if (is.null(defaults_base)) { [16:19:03.225] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:03.225] | : . | } [16:19:03.225] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:03.225] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:03.225] | : . | defaults <- defaults[keep] [16:19:03.225] | : . | specified <- attr(options, "specified") [16:19:03.225] | : . | if (length(specified) > 0) { [16:19:03.225] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:03.225] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:03.225] | : . | names(options)) [16:19:03.225] | : . | } [16:19:03.225] | : . | specified <- sprintf("future.%s", specified) [16:19:03.225] | : . | names <- setdiff(names(defaults), specified) [16:19:03.225] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:03.225] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:03.225] | : . | keep <- intersect(names(options), names(defaults)) [16:19:03.225] | : . | options <- options[keep] [16:19:03.225] | : . | options [16:19:03.225] | : . | })(options, fcn)) [16:19:03.225] | : . | expr <- as.call(parts) [16:19:03.225] | : . | expr [16:19:03.225] | : . | } [16:19:03.225] | : . | [16:19:03.228] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... done [16:19:03.229] | : get_transpiler() ... done [16:19:03.230] | : Transpile call expression ... [16:19:03.231] | : . future.apply::future_replicate(2, 42, future.seed = TRUE, future.globals = TRUE, [16:19:03.231] | : . future.stdout = TRUE, future.conditions = "condition", future.scheduling = 1, [16:19:03.231] | : . future.label = "future_replicate-%d") [16:19:03.233] | : Transpile call expression ... done [16:19:03.234] | : Evaluate transpiled call expression [16:19:03.266] | transpile() ... done [16:19:03.267] futurize() ... done === kernapply ========================== kernapply(x = X, k = k) --------------------------------- [16:19:03.271] futurize() ... [16:19:03.272] | transpile() ... [16:19:03.273] | : get_transpiler() ... [16:19:03.274] | : . Finding call to be transpiled ... [16:19:03.275] | : . | descend_wrappers() ... [16:19:03.276] | : . | : Call: [16:19:03.277] | : . | : kernapply [16:19:03.278] | : . | : parse_call() ... [16:19:03.279] | : . | : . Function: kernapply(...) [16:19:03.280] | : . | : . Locate function ... [16:19:03.281] | : . | : . | Function located in: 'stats' [16:19:03.282] | : . | : . Locate function ... done [16:19:03.283] | : . | : parse_call() ... done [16:19:03.284] | : . | descend_wrappers() ... done [16:19:03.285] | : . | parse_call() ... [16:19:03.286] | : . | : Function: kernapply(...) [16:19:03.287] | : . | : Locate function ... [16:19:03.288] | : . | : . Function located in: 'stats' [16:19:03.289] | : . | : Locate function ... done [16:19:03.290] | : . | parse_call() ... done [16:19:03.291] | : . | Position of call to be transpiled in expression: c(1) [16:19:03.292] | : . | kernapply [16:19:03.293] | : . Finding call to be transpiled ... done [16:19:03.294] | : . Locating 'futurize::add-on' transpiler for stats::kernapply() of class 'function' ... [16:19:03.295] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:03.296] | : . | Transpiler description: stats::kernapply() -> future.apply::future_kernapply() [16:19:03.297] | : . | Transpiler function: [16:19:03.298] | : . | function (expr, options = NULL) [16:19:03.298] | : . | { [16:19:03.298] | : . | call <- make_call("future_kernapply") [16:19:03.298] | : . | fcn <- eval(call) [16:19:03.298] | : . | expr[[1]] <- call [16:19:03.298] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:03.298] | : . | { [16:19:03.298] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:03.298] | : . | if (is.null(defaults_base)) { [16:19:03.298] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:03.298] | : . | } [16:19:03.298] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:03.298] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:03.298] | : . | defaults <- defaults[keep] [16:19:03.298] | : . | specified <- attr(options, "specified") [16:19:03.298] | : . | if (length(specified) > 0) { [16:19:03.298] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:03.298] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:03.298] | : . | names(options)) [16:19:03.298] | : . | } [16:19:03.298] | : . | specified <- sprintf("future.%s", specified) [16:19:03.298] | : . | names <- setdiff(names(defaults), specified) [16:19:03.298] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:03.298] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:03.298] | : . | keep <- intersect(names(options), names(defaults)) [16:19:03.298] | : . | options <- options[keep] [16:19:03.298] | : . | options [16:19:03.298] | : . | })(options, fcn)) [16:19:03.298] | : . | expr <- as.call(parts) [16:19:03.298] | : . | expr [16:19:03.298] | : . | } [16:19:03.298] | : . | [16:19:03.300] | : . Locating 'futurize::add-on' transpiler for stats::kernapply() of class 'function' ... done [16:19:03.301] | : get_transpiler() ... done [16:19:03.302] | : Transpile call expression ... [16:19:03.304] | : . future.apply::future_kernapply(x = X, k = k, future.seed = FALSE, [16:19:03.304] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:03.304] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:19:03.310] | : Transpile call expression ... done [16:19:03.311] | : Evaluate transpiled call expression [16:19:03.385] | transpile() ... done [16:19:03.387] futurize() ... done Futures created: 2 [16:19:03.388] futurize() ... [16:19:03.389] | transpile() ... [16:19:03.390] | : get_transpiler() ... [16:19:03.392] | : . Finding call to be transpiled ... [16:19:03.393] | : . | descend_wrappers() ... [16:19:03.394] | : . | : Call: [16:19:03.394] | : . | : kernapply [16:19:03.396] | : . | : parse_call() ... [16:19:03.397] | : . | : . Function: kernapply(...) [16:19:03.398] | : . | : . Locate function ... [16:19:03.399] | : . | : . | Function located in: 'stats' [16:19:03.400] | : . | : . Locate function ... done [16:19:03.401] | : . | : parse_call() ... done [16:19:03.402] | : . | descend_wrappers() ... done [16:19:03.403] | : . | parse_call() ... [16:19:03.403] | : . | : Function: kernapply(...) [16:19:03.404] | : . | : Locate function ... [16:19:03.405] | : . | : . Function located in: 'stats' [16:19:03.406] | : . | : Locate function ... done [16:19:03.407] | : . | parse_call() ... done [16:19:03.408] | : . | Position of call to be transpiled in expression: c(1) [16:19:03.409] | : . | kernapply [16:19:03.411] | : . Finding call to be transpiled ... done [16:19:03.412] | : . Locating 'futurize::add-on' transpiler for stats::kernapply() of class 'function' ... [16:19:03.413] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:03.414] | : . | Transpiler description: stats::kernapply() -> future.apply::future_kernapply() [16:19:03.414] | : . | Transpiler function: [16:19:03.415] | : . | function (expr, options = NULL) [16:19:03.415] | : . | { [16:19:03.415] | : . | call <- make_call("future_kernapply") [16:19:03.415] | : . | fcn <- eval(call) [16:19:03.415] | : . | expr[[1]] <- call [16:19:03.415] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:03.415] | : . | { [16:19:03.415] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:03.415] | : . | if (is.null(defaults_base)) { [16:19:03.415] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:03.415] | : . | } [16:19:03.415] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:03.415] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:03.415] | : . | defaults <- defaults[keep] [16:19:03.415] | : . | specified <- attr(options, "specified") [16:19:03.415] | : . | if (length(specified) > 0) { [16:19:03.415] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:03.415] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:03.415] | : . | names(options)) [16:19:03.415] | : . | } [16:19:03.415] | : . | specified <- sprintf("future.%s", specified) [16:19:03.415] | : . | names <- setdiff(names(defaults), specified) [16:19:03.415] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:03.415] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:03.415] | : . | keep <- intersect(names(options), names(defaults)) [16:19:03.415] | : . | options <- options[keep] [16:19:03.415] | : . | options [16:19:03.415] | : . | })(options, fcn)) [16:19:03.415] | : . | expr <- as.call(parts) [16:19:03.415] | : . | expr [16:19:03.415] | : . | } [16:19:03.415] | : . | [16:19:03.417] | : . Locating 'futurize::add-on' transpiler for stats::kernapply() of class 'function' ... done [16:19:03.418] | : get_transpiler() ... done [16:19:03.419] | : Transpile call expression ... [16:19:03.421] | : . future.apply::future_kernapply(x = X, k = k, future.seed = FALSE, [16:19:03.421] | : . future.globals = TRUE, future.stdout = FALSE, future.conditions = character(0), [16:19:03.421] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:19:03.423] | : Transpile call expression ... done [16:19:03.424] | : Evaluate transpiled call expression [16:19:03.491] | transpile() ... done [16:19:03.493] futurize() ... done character(0) [16:19:03.494] futurize() ... [16:19:03.495] | transpile() ... [16:19:03.496] | : get_transpiler() ... [16:19:03.498] | : . Finding call to be transpiled ... [16:19:03.499] | : . | descend_wrappers() ... [16:19:03.500] | : . | : Call: [16:19:03.501] | : . | : kernapply [16:19:03.502] | : . | : parse_call() ... [16:19:03.503] | : . | : . Function: kernapply(...) [16:19:03.504] | : . | : . Locate function ... [16:19:03.505] | : . | : . | Function located in: 'stats' [16:19:03.506] | : . | : . Locate function ... done [16:19:03.507] | : . | : parse_call() ... done [16:19:03.508] | : . | descend_wrappers() ... done [16:19:03.509] | : . | parse_call() ... [16:19:03.510] | : . | : Function: kernapply(...) [16:19:03.511] | : . | : Locate function ... [16:19:03.512] | : . | : . Function located in: 'stats' [16:19:03.513] | : . | : Locate function ... done [16:19:03.513] | : . | parse_call() ... done [16:19:03.514] | : . | Position of call to be transpiled in expression: c(1) [16:19:03.515] | : . | kernapply [16:19:03.516] | : . Finding call to be transpiled ... done [16:19:03.517] | : . Locating 'futurize::add-on' transpiler for stats::kernapply() of class 'function' ... [16:19:03.518] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:03.519] | : . | Transpiler description: stats::kernapply() -> future.apply::future_kernapply() [16:19:03.520] | : . | Transpiler function: [16:19:03.521] | : . | function (expr, options = NULL) [16:19:03.521] | : . | { [16:19:03.521] | : . | call <- make_call("future_kernapply") [16:19:03.521] | : . | fcn <- eval(call) [16:19:03.521] | : . | expr[[1]] <- call [16:19:03.521] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:03.521] | : . | { [16:19:03.521] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:03.521] | : . | if (is.null(defaults_base)) { [16:19:03.521] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:03.521] | : . | } [16:19:03.521] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:03.521] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:03.521] | : . | defaults <- defaults[keep] [16:19:03.521] | : . | specified <- attr(options, "specified") [16:19:03.521] | : . | if (length(specified) > 0) { [16:19:03.521] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:03.521] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:03.521] | : . | names(options)) [16:19:03.521] | : . | } [16:19:03.521] | : . | specified <- sprintf("future.%s", specified) [16:19:03.521] | : . | names <- setdiff(names(defaults), specified) [16:19:03.521] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:03.521] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:03.521] | : . | keep <- intersect(names(options), names(defaults)) [16:19:03.521] | : . | options <- options[keep] [16:19:03.521] | : . | options [16:19:03.521] | : . | })(options, fcn)) [16:19:03.521] | : . | expr <- as.call(parts) [16:19:03.521] | : . | expr [16:19:03.521] | : . | } [16:19:03.521] | : . | [16:19:03.523] | : . Locating 'futurize::add-on' transpiler for stats::kernapply() of class 'function' ... done [16:19:03.524] | : get_transpiler() ... done [16:19:03.525] | : Transpile call expression ... [16:19:03.527] | : . future.apply::future_kernapply(x = X, k = k, future.seed = FALSE, [16:19:03.527] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:03.527] | : . future.scheduling = 1, future.chunk.size = 1L, future.label = "future_lapply-%d") [16:19:03.529] | : Transpile call expression ... done [16:19:03.530] | : Evaluate transpiled call expression [16:19:03.605] | transpile() ... done [16:19:03.606] futurize() ... done Test with RNG: futurize(kernapply(x = X, k = k), seed = TRUE, flavor = "add-on") [16:19:03.607] futurize() ... [16:19:03.608] | transpile() ... [16:19:03.609] | : get_transpiler() ... [16:19:03.610] | : . Finding call to be transpiled ... [16:19:03.611] | : . | descend_wrappers() ... [16:19:03.612] | : . | : Call: [16:19:03.612] | : . | : kernapply [16:19:03.613] | : . | : parse_call() ... [16:19:03.614] | : . | : . Function: kernapply(...) [16:19:03.614] | : . | : . Locate function ... [16:19:03.615] | : . | : . | Function located in: 'stats' [16:19:03.615] | : . | : . Locate function ... done [16:19:03.616] | : . | : parse_call() ... done [16:19:03.617] | : . | descend_wrappers() ... done [16:19:03.617] | : . | parse_call() ... [16:19:03.618] | : . | : Function: kernapply(...) [16:19:03.618] | : . | : Locate function ... [16:19:03.619] | : . | : . Function located in: 'stats' [16:19:03.620] | : . | : Locate function ... done [16:19:03.620] | : . | parse_call() ... done [16:19:03.621] | : . | Position of call to be transpiled in expression: c(1) [16:19:03.621] | : . | kernapply [16:19:03.622] | : . Finding call to be transpiled ... done [16:19:03.623] | : . Locating 'futurize::add-on' transpiler for stats::kernapply() of class 'function' ... [16:19:03.623] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:03.624] | : . | Transpiler description: stats::kernapply() -> future.apply::future_kernapply() [16:19:03.624] | : . | Transpiler function: [16:19:03.625] | : . | function (expr, options = NULL) [16:19:03.625] | : . | { [16:19:03.625] | : . | call <- make_call("future_kernapply") [16:19:03.625] | : . | fcn <- eval(call) [16:19:03.625] | : . | expr[[1]] <- call [16:19:03.625] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:03.625] | : . | { [16:19:03.625] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:03.625] | : . | if (is.null(defaults_base)) { [16:19:03.625] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:03.625] | : . | } [16:19:03.625] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:03.625] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:03.625] | : . | defaults <- defaults[keep] [16:19:03.625] | : . | specified <- attr(options, "specified") [16:19:03.625] | : . | if (length(specified) > 0) { [16:19:03.625] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:03.625] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:03.625] | : . | names(options)) [16:19:03.625] | : . | } [16:19:03.625] | : . | specified <- sprintf("future.%s", specified) [16:19:03.625] | : . | names <- setdiff(names(defaults), specified) [16:19:03.625] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:03.625] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:03.625] | : . | keep <- intersect(names(options), names(defaults)) [16:19:03.625] | : . | options <- options[keep] [16:19:03.625] | : . | options [16:19:03.625] | : . | })(options, fcn)) [16:19:03.625] | : . | expr <- as.call(parts) [16:19:03.625] | : . | expr [16:19:03.625] | : . | } [16:19:03.625] | : . | [16:19:03.626] | : . Locating 'futurize::add-on' transpiler for stats::kernapply() of class 'function' ... done [16:19:03.627] | : get_transpiler() ... done [16:19:03.627] | : Transpile call expression ... [16:19:03.628] | : . future.apply::future_kernapply(x = X, k = k, future.seed = TRUE, [16:19:03.628] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:03.628] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:19:03.630] | : Transpile call expression ... done [16:19:03.630] | : Evaluate transpiled call expression [16:19:03.698] | transpile() ... done [16:19:03.700] futurize() ... done === lapply ========================== lapply(X = xs, FUN = FUN) --------------------------------- [16:19:03.702] futurize() ... [16:19:03.702] | transpile() ... [16:19:03.703] | : get_transpiler() ... [16:19:03.704] | : . Finding call to be transpiled ... [16:19:03.705] | : . | descend_wrappers() ... [16:19:03.706] | : . | : Call: [16:19:03.707] | : . | : lapply [16:19:03.708] | : . | : parse_call() ... [16:19:03.709] | : . | : . Function: lapply(...) [16:19:03.710] | : . | : . Locate function ... [16:19:03.711] | : . | : . | Function located in: 'base' [16:19:03.712] | : . | : . Locate function ... done [16:19:03.713] | : . | : parse_call() ... done [16:19:03.714] | : . | descend_wrappers() ... done [16:19:03.715] | : . | parse_call() ... [16:19:03.716] | : . | : Function: lapply(...) [16:19:03.717] | : . | : Locate function ... [16:19:03.718] | : . | : . Function located in: 'base' [16:19:03.719] | : . | : Locate function ... done [16:19:03.720] | : . | parse_call() ... done [16:19:03.721] | : . | Position of call to be transpiled in expression: c(1) [16:19:03.722] | : . | lapply [16:19:03.723] | : . Finding call to be transpiled ... done [16:19:03.724] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:19:03.725] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:03.726] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:19:03.726] | : . | Transpiler function: [16:19:03.727] | : . | function (expr, options = NULL) [16:19:03.727] | : . | { [16:19:03.727] | : . | call <- make_call("future_lapply") [16:19:03.727] | : . | fcn <- eval(call) [16:19:03.727] | : . | expr[[1]] <- call [16:19:03.727] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:03.727] | : . | { [16:19:03.727] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:03.727] | : . | if (is.null(defaults_base)) { [16:19:03.727] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:03.727] | : . | } [16:19:03.727] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:03.727] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:03.727] | : . | defaults <- defaults[keep] [16:19:03.727] | : . | specified <- attr(options, "specified") [16:19:03.727] | : . | if (length(specified) > 0) { [16:19:03.727] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:03.727] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:03.727] | : . | names(options)) [16:19:03.727] | : . | } [16:19:03.727] | : . | specified <- sprintf("future.%s", specified) [16:19:03.727] | : . | names <- setdiff(names(defaults), specified) [16:19:03.727] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:03.727] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:03.727] | : . | keep <- intersect(names(options), names(defaults)) [16:19:03.727] | : . | options <- options[keep] [16:19:03.727] | : . | options [16:19:03.727] | : . | })(options, fcn)) [16:19:03.727] | : . | expr <- as.call(parts) [16:19:03.727] | : . | expr [16:19:03.727] | : . | } [16:19:03.727] | : . | [16:19:03.729] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:19:03.730] | : get_transpiler() ... done [16:19:03.731] | : Transpile call expression ... [16:19:03.732] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = FALSE, [16:19:03.732] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:03.732] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:19:03.734] | : Transpile call expression ... done [16:19:03.734] | : Evaluate transpiled call expression [16:19:03.799] | transpile() ... done [16:19:03.800] futurize() ... done Futures created: 2 [16:19:03.801] futurize() ... [16:19:03.802] | transpile() ... [16:19:03.803] | : get_transpiler() ... [16:19:03.803] | : . Finding call to be transpiled ... [16:19:03.804] | : . | descend_wrappers() ... [16:19:03.804] | : . | : Call: [16:19:03.805] | : . | : lapply [16:19:03.806] | : . | : parse_call() ... [16:19:03.806] | : . | : . Function: lapply(...) [16:19:03.807] | : . | : . Locate function ... [16:19:03.808] | : . | : . | Function located in: 'base' [16:19:03.808] | : . | : . Locate function ... done [16:19:03.809] | : . | : parse_call() ... done [16:19:03.809] | : . | descend_wrappers() ... done [16:19:03.810] | : . | parse_call() ... [16:19:03.811] | : . | : Function: lapply(...) [16:19:03.811] | : . | : Locate function ... [16:19:03.812] | : . | : . Function located in: 'base' [16:19:03.812] | : . | : Locate function ... done [16:19:03.813] | : . | parse_call() ... done [16:19:03.814] | : . | Position of call to be transpiled in expression: c(1) [16:19:03.814] | : . | lapply [16:19:03.815] | : . Finding call to be transpiled ... done [16:19:03.816] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:19:03.816] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:03.817] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:19:03.818] | : . | Transpiler function: [16:19:03.818] | : . | function (expr, options = NULL) [16:19:03.818] | : . | { [16:19:03.818] | : . | call <- make_call("future_lapply") [16:19:03.818] | : . | fcn <- eval(call) [16:19:03.818] | : . | expr[[1]] <- call [16:19:03.818] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:03.818] | : . | { [16:19:03.818] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:03.818] | : . | if (is.null(defaults_base)) { [16:19:03.818] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:03.818] | : . | } [16:19:03.818] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:03.818] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:03.818] | : . | defaults <- defaults[keep] [16:19:03.818] | : . | specified <- attr(options, "specified") [16:19:03.818] | : . | if (length(specified) > 0) { [16:19:03.818] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:03.818] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:03.818] | : . | names(options)) [16:19:03.818] | : . | } [16:19:03.818] | : . | specified <- sprintf("future.%s", specified) [16:19:03.818] | : . | names <- setdiff(names(defaults), specified) [16:19:03.818] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:03.818] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:03.818] | : . | keep <- intersect(names(options), names(defaults)) [16:19:03.818] | : . | options <- options[keep] [16:19:03.818] | : . | options [16:19:03.818] | : . | })(options, fcn)) [16:19:03.818] | : . | expr <- as.call(parts) [16:19:03.818] | : . | expr [16:19:03.818] | : . | } [16:19:03.818] | : . | [16:19:03.819] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:19:03.820] | : get_transpiler() ... done [16:19:03.821] | : Transpile call expression ... [16:19:03.822] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = FALSE, [16:19:03.822] | : . future.globals = TRUE, future.stdout = FALSE, future.conditions = character(0), [16:19:03.822] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:19:03.823] | : Transpile call expression ... done [16:19:03.824] | : Evaluate transpiled call expression [16:19:03.875] | transpile() ... done [16:19:03.876] futurize() ... done character(0) [16:19:03.877] futurize() ... [16:19:03.878] | transpile() ... [16:19:03.879] | : get_transpiler() ... [16:19:03.879] | : . Finding call to be transpiled ... [16:19:03.880] | : . | descend_wrappers() ... [16:19:03.881] | : . | : Call: [16:19:03.881] | : . | : lapply [16:19:03.882] | : . | : parse_call() ... [16:19:03.883] | : . | : . Function: lapply(...) [16:19:03.884] | : . | : . Locate function ... [16:19:03.885] | : . | : . | Function located in: 'base' [16:19:03.885] | : . | : . Locate function ... done [16:19:03.886] | : . | : parse_call() ... done [16:19:03.887] | : . | descend_wrappers() ... done [16:19:03.888] | : . | parse_call() ... [16:19:03.888] | : . | : Function: lapply(...) [16:19:03.889] | : . | : Locate function ... [16:19:03.890] | : . | : . Function located in: 'base' [16:19:03.890] | : . | : Locate function ... done [16:19:03.891] | : . | parse_call() ... done [16:19:03.892] | : . | Position of call to be transpiled in expression: c(1) [16:19:03.893] | : . | lapply [16:19:03.894] | : . Finding call to be transpiled ... done [16:19:03.894] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:19:03.895] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:03.896] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:19:03.897] | : . | Transpiler function: [16:19:03.897] | : . | function (expr, options = NULL) [16:19:03.897] | : . | { [16:19:03.897] | : . | call <- make_call("future_lapply") [16:19:03.897] | : . | fcn <- eval(call) [16:19:03.897] | : . | expr[[1]] <- call [16:19:03.897] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:03.897] | : . | { [16:19:03.897] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:03.897] | : . | if (is.null(defaults_base)) { [16:19:03.897] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:03.897] | : . | } [16:19:03.897] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:03.897] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:03.897] | : . | defaults <- defaults[keep] [16:19:03.897] | : . | specified <- attr(options, "specified") [16:19:03.897] | : . | if (length(specified) > 0) { [16:19:03.897] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:03.897] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:03.897] | : . | names(options)) [16:19:03.897] | : . | } [16:19:03.897] | : . | specified <- sprintf("future.%s", specified) [16:19:03.897] | : . | names <- setdiff(names(defaults), specified) [16:19:03.897] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:03.897] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:03.897] | : . | keep <- intersect(names(options), names(defaults)) [16:19:03.897] | : . | options <- options[keep] [16:19:03.897] | : . | options [16:19:03.897] | : . | })(options, fcn)) [16:19:03.897] | : . | expr <- as.call(parts) [16:19:03.897] | : . | expr [16:19:03.897] | : . | } [16:19:03.897] | : . | [16:19:03.899] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:19:03.900] | : get_transpiler() ... done [16:19:03.900] | : Transpile call expression ... [16:19:03.901] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = FALSE, [16:19:03.901] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:03.901] | : . future.scheduling = 1, future.chunk.size = 1L, future.label = "future_lapply-%d") [16:19:03.903] | : Transpile call expression ... done [16:19:03.904] | : Evaluate transpiled call expression [16:19:04.031] | transpile() ... done [16:19:04.032] futurize() ... done Test with RNG: futurize(lapply(X = xs, FUN = FUN), seed = TRUE, flavor = "built-in") [16:19:04.034] futurize() ... [16:19:04.034] | transpile() ... [16:19:04.035] | : get_transpiler() ... [16:19:04.036] | : . Finding call to be transpiled ... [16:19:04.037] | : . | descend_wrappers() ... [16:19:04.038] | : . | : Call: [16:19:04.039] | : . | : lapply [16:19:04.040] | : . | : parse_call() ... [16:19:04.041] | : . | : . Function: lapply(...) [16:19:04.042] | : . | : . Locate function ... [16:19:04.043] | : . | : . | Function located in: 'base' [16:19:04.044] | : . | : . Locate function ... done [16:19:04.045] | : . | : parse_call() ... done [16:19:04.046] | : . | descend_wrappers() ... done [16:19:04.047] | : . | parse_call() ... [16:19:04.047] | : . | : Function: lapply(...) [16:19:04.048] | : . | : Locate function ... [16:19:04.049] | : . | : . Function located in: 'base' [16:19:04.050] | : . | : Locate function ... done [16:19:04.051] | : . | parse_call() ... done [16:19:04.052] | : . | Position of call to be transpiled in expression: c(1) [16:19:04.053] | : . | lapply [16:19:04.054] | : . Finding call to be transpiled ... done [16:19:04.055] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:19:04.056] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:04.057] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:19:04.058] | : . | Transpiler function: [16:19:04.059] | : . | function (expr, options = NULL) [16:19:04.059] | : . | { [16:19:04.059] | : . | call <- make_call("future_lapply") [16:19:04.059] | : . | fcn <- eval(call) [16:19:04.059] | : . | expr[[1]] <- call [16:19:04.059] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:04.059] | : . | { [16:19:04.059] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:04.059] | : . | if (is.null(defaults_base)) { [16:19:04.059] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:04.059] | : . | } [16:19:04.059] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:04.059] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:04.059] | : . | defaults <- defaults[keep] [16:19:04.059] | : . | specified <- attr(options, "specified") [16:19:04.059] | : . | if (length(specified) > 0) { [16:19:04.059] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:04.059] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:04.059] | : . | names(options)) [16:19:04.059] | : . | } [16:19:04.059] | : . | specified <- sprintf("future.%s", specified) [16:19:04.059] | : . | names <- setdiff(names(defaults), specified) [16:19:04.059] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:04.059] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:04.059] | : . | keep <- intersect(names(options), names(defaults)) [16:19:04.059] | : . | options <- options[keep] [16:19:04.059] | : . | options [16:19:04.059] | : . | })(options, fcn)) [16:19:04.059] | : . | expr <- as.call(parts) [16:19:04.059] | : . | expr [16:19:04.059] | : . | } [16:19:04.059] | : . | [16:19:04.060] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:19:04.061] | : get_transpiler() ... done [16:19:04.062] | : Transpile call expression ... [16:19:04.064] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = TRUE, [16:19:04.064] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:04.064] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:19:04.066] | : Transpile call expression ... done [16:19:04.066] | : Evaluate transpiled call expression [16:19:04.137] | transpile() ... done [16:19:04.139] futurize() ... done === lapply ========================== base::lapply(X = xs, FUN = FUN) --------------------------------- [16:19:04.141] futurize() ... [16:19:04.142] | transpile() ... [16:19:04.143] | : get_transpiler() ... [16:19:04.144] | : . Finding call to be transpiled ... [16:19:04.145] | : . | descend_wrappers() ... [16:19:04.145] | : . | : Call: [16:19:04.146] | : . | : base::lapply [16:19:04.148] | : . | : parse_call() ... [16:19:04.148] | : . | : . Function: base::lapply(...) [16:19:04.149] | : . | : parse_call() ... done [16:19:04.150] | : . | descend_wrappers() ... done [16:19:04.151] | : . | parse_call() ... [16:19:04.152] | : . | : Function: base::lapply(...) [16:19:04.153] | : . | parse_call() ... done [16:19:04.154] | : . | Position of call to be transpiled in expression: c(1) [16:19:04.155] | : . | base::lapply [16:19:04.156] | : . Finding call to be transpiled ... done [16:19:04.157] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:19:04.158] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:04.158] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:19:04.159] | : . | Transpiler function: [16:19:04.160] | : . | function (expr, options = NULL) [16:19:04.160] | : . | { [16:19:04.160] | : . | call <- make_call("future_lapply") [16:19:04.160] | : . | fcn <- eval(call) [16:19:04.160] | : . | expr[[1]] <- call [16:19:04.160] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:04.160] | : . | { [16:19:04.160] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:04.160] | : . | if (is.null(defaults_base)) { [16:19:04.160] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:04.160] | : . | } [16:19:04.160] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:04.160] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:04.160] | : . | defaults <- defaults[keep] [16:19:04.160] | : . | specified <- attr(options, "specified") [16:19:04.160] | : . | if (length(specified) > 0) { [16:19:04.160] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:04.160] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:04.160] | : . | names(options)) [16:19:04.160] | : . | } [16:19:04.160] | : . | specified <- sprintf("future.%s", specified) [16:19:04.160] | : . | names <- setdiff(names(defaults), specified) [16:19:04.160] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:04.160] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:04.160] | : . | keep <- intersect(names(options), names(defaults)) [16:19:04.160] | : . | options <- options[keep] [16:19:04.160] | : . | options [16:19:04.160] | : . | })(options, fcn)) [16:19:04.160] | : . | expr <- as.call(parts) [16:19:04.160] | : . | expr [16:19:04.160] | : . | } [16:19:04.160] | : . | [16:19:04.162] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:19:04.163] | : get_transpiler() ... done [16:19:04.164] | : Transpile call expression ... [16:19:04.165] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = FALSE, [16:19:04.165] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:04.165] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:19:04.167] | : Transpile call expression ... done [16:19:04.168] | : Evaluate transpiled call expression [16:19:04.227] | transpile() ... done [16:19:04.228] futurize() ... done Futures created: 2 [16:19:04.229] futurize() ... [16:19:04.230] | transpile() ... [16:19:04.231] | : get_transpiler() ... [16:19:04.232] | : . Finding call to be transpiled ... [16:19:04.233] | : . | descend_wrappers() ... [16:19:04.233] | : . | : Call: [16:19:04.234] | : . | : base::lapply [16:19:04.235] | : . | : parse_call() ... [16:19:04.235] | : . | : . Function: base::lapply(...) [16:19:04.236] | : . | : parse_call() ... done [16:19:04.237] | : . | descend_wrappers() ... done [16:19:04.237] | : . | parse_call() ... [16:19:04.238] | : . | : Function: base::lapply(...) [16:19:04.238] | : . | parse_call() ... done [16:19:04.239] | : . | Position of call to be transpiled in expression: c(1) [16:19:04.240] | : . | base::lapply [16:19:04.241] | : . Finding call to be transpiled ... done [16:19:04.242] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:19:04.243] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:04.243] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:19:04.244] | : . | Transpiler function: [16:19:04.245] | : . | function (expr, options = NULL) [16:19:04.245] | : . | { [16:19:04.245] | : . | call <- make_call("future_lapply") [16:19:04.245] | : . | fcn <- eval(call) [16:19:04.245] | : . | expr[[1]] <- call [16:19:04.245] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:04.245] | : . | { [16:19:04.245] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:04.245] | : . | if (is.null(defaults_base)) { [16:19:04.245] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:04.245] | : . | } [16:19:04.245] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:04.245] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:04.245] | : . | defaults <- defaults[keep] [16:19:04.245] | : . | specified <- attr(options, "specified") [16:19:04.245] | : . | if (length(specified) > 0) { [16:19:04.245] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:04.245] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:04.245] | : . | names(options)) [16:19:04.245] | : . | } [16:19:04.245] | : . | specified <- sprintf("future.%s", specified) [16:19:04.245] | : . | names <- setdiff(names(defaults), specified) [16:19:04.245] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:04.245] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:04.245] | : . | keep <- intersect(names(options), names(defaults)) [16:19:04.245] | : . | options <- options[keep] [16:19:04.245] | : . | options [16:19:04.245] | : . | })(options, fcn)) [16:19:04.245] | : . | expr <- as.call(parts) [16:19:04.245] | : . | expr [16:19:04.245] | : . | } [16:19:04.245] | : . | [16:19:04.247] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:19:04.248] | : get_transpiler() ... done [16:19:04.249] | : Transpile call expression ... [16:19:04.250] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = FALSE, [16:19:04.250] | : . future.globals = TRUE, future.stdout = FALSE, future.conditions = character(0), [16:19:04.250] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:19:04.252] | : Transpile call expression ... done [16:19:04.253] | : Evaluate transpiled call expression [16:19:04.317] | transpile() ... done [16:19:04.318] futurize() ... done character(0) [16:19:04.319] futurize() ... [16:19:04.320] | transpile() ... [16:19:04.321] | : get_transpiler() ... [16:19:04.322] | : . Finding call to be transpiled ... [16:19:04.322] | : . | descend_wrappers() ... [16:19:04.323] | : . | : Call: [16:19:04.324] | : . | : base::lapply [16:19:04.325] | : . | : parse_call() ... [16:19:04.326] | : . | : . Function: base::lapply(...) [16:19:04.327] | : . | : parse_call() ... done [16:19:04.328] | : . | descend_wrappers() ... done [16:19:04.329] | : . | parse_call() ... [16:19:04.330] | : . | : Function: base::lapply(...) [16:19:04.331] | : . | parse_call() ... done [16:19:04.332] | : . | Position of call to be transpiled in expression: c(1) [16:19:04.333] | : . | base::lapply [16:19:04.334] | : . Finding call to be transpiled ... done [16:19:04.335] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:19:04.336] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:04.336] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:19:04.337] | : . | Transpiler function: [16:19:04.338] | : . | function (expr, options = NULL) [16:19:04.338] | : . | { [16:19:04.338] | : . | call <- make_call("future_lapply") [16:19:04.338] | : . | fcn <- eval(call) [16:19:04.338] | : . | expr[[1]] <- call [16:19:04.338] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:04.338] | : . | { [16:19:04.338] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:04.338] | : . | if (is.null(defaults_base)) { [16:19:04.338] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:04.338] | : . | } [16:19:04.338] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:04.338] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:04.338] | : . | defaults <- defaults[keep] [16:19:04.338] | : . | specified <- attr(options, "specified") [16:19:04.338] | : . | if (length(specified) > 0) { [16:19:04.338] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:04.338] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:04.338] | : . | names(options)) [16:19:04.338] | : . | } [16:19:04.338] | : . | specified <- sprintf("future.%s", specified) [16:19:04.338] | : . | names <- setdiff(names(defaults), specified) [16:19:04.338] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:04.338] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:04.338] | : . | keep <- intersect(names(options), names(defaults)) [16:19:04.338] | : . | options <- options[keep] [16:19:04.338] | : . | options [16:19:04.338] | : . | })(options, fcn)) [16:19:04.338] | : . | expr <- as.call(parts) [16:19:04.338] | : . | expr [16:19:04.338] | : . | } [16:19:04.338] | : . | [16:19:04.339] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:19:04.340] | : get_transpiler() ... done [16:19:04.341] | : Transpile call expression ... [16:19:04.342] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = FALSE, [16:19:04.342] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:04.342] | : . future.scheduling = 1, future.chunk.size = 1L, future.label = "future_lapply-%d") [16:19:04.344] | : Transpile call expression ... done [16:19:04.345] | : Evaluate transpiled call expression [16:19:04.450] | transpile() ... done [16:19:04.451] futurize() ... done Test with RNG: futurize(base::lapply(X = xs, FUN = FUN), seed = TRUE, flavor = "built-in") [16:19:04.452] futurize() ... [16:19:04.453] | transpile() ... [16:19:04.454] | : get_transpiler() ... [16:19:04.454] | : . Finding call to be transpiled ... [16:19:04.455] | : . | descend_wrappers() ... [16:19:04.455] | : . | : Call: [16:19:04.456] | : . | : base::lapply [16:19:04.457] | : . | : parse_call() ... [16:19:04.457] | : . | : . Function: base::lapply(...) [16:19:04.458] | : . | : parse_call() ... done [16:19:04.459] | : . | descend_wrappers() ... done [16:19:04.459] | : . | parse_call() ... [16:19:04.460] | : . | : Function: base::lapply(...) [16:19:04.460] | : . | parse_call() ... done [16:19:04.461] | : . | Position of call to be transpiled in expression: c(1) [16:19:04.462] | : . | base::lapply [16:19:04.462] | : . Finding call to be transpiled ... done [16:19:04.463] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:19:04.464] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:04.464] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:19:04.465] | : . | Transpiler function: [16:19:04.466] | : . | function (expr, options = NULL) [16:19:04.466] | : . | { [16:19:04.466] | : . | call <- make_call("future_lapply") [16:19:04.466] | : . | fcn <- eval(call) [16:19:04.466] | : . | expr[[1]] <- call [16:19:04.466] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:04.466] | : . | { [16:19:04.466] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:04.466] | : . | if (is.null(defaults_base)) { [16:19:04.466] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:04.466] | : . | } [16:19:04.466] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:04.466] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:04.466] | : . | defaults <- defaults[keep] [16:19:04.466] | : . | specified <- attr(options, "specified") [16:19:04.466] | : . | if (length(specified) > 0) { [16:19:04.466] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:04.466] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:04.466] | : . | names(options)) [16:19:04.466] | : . | } [16:19:04.466] | : . | specified <- sprintf("future.%s", specified) [16:19:04.466] | : . | names <- setdiff(names(defaults), specified) [16:19:04.466] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:04.466] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:04.466] | : . | keep <- intersect(names(options), names(defaults)) [16:19:04.466] | : . | options <- options[keep] [16:19:04.466] | : . | options [16:19:04.466] | : . | })(options, fcn)) [16:19:04.466] | : . | expr <- as.call(parts) [16:19:04.466] | : . | expr [16:19:04.466] | : . | } [16:19:04.466] | : . | [16:19:04.467] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:19:04.467] | : get_transpiler() ... done [16:19:04.468] | : Transpile call expression ... [16:19:04.469] | : . future.apply::future_lapply(X = xs, FUN = FUN, future.seed = TRUE, [16:19:04.469] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:04.469] | : . future.scheduling = 1, future.label = "future_lapply-%d") [16:19:04.471] | : Transpile call expression ... done [16:19:04.472] | : Evaluate transpiled call expression [16:19:04.533] | transpile() ... done [16:19:04.534] futurize() ... done === sapply ========================== sapply(X = xs, FUN = FUN) --------------------------------- [16:19:04.537] futurize() ... [16:19:04.538] | transpile() ... [16:19:04.539] | : get_transpiler() ... [16:19:04.540] | : . Finding call to be transpiled ... [16:19:04.541] | : . | descend_wrappers() ... [16:19:04.542] | : . | : Call: [16:19:04.543] | : . | : sapply [16:19:04.545] | : . | : parse_call() ... [16:19:04.546] | : . | : . Function: sapply(...) [16:19:04.547] | : . | : . Locate function ... [16:19:04.548] | : . | : . | Function located in: 'base' [16:19:04.550] | : . | : . Locate function ... done [16:19:04.551] | : . | : parse_call() ... done [16:19:04.552] | : . | descend_wrappers() ... done [16:19:04.553] | : . | parse_call() ... [16:19:04.553] | : . | : Function: sapply(...) [16:19:04.558] | : . | : Locate function ... [16:19:04.559] | : . | : . Function located in: 'base' [16:19:04.560] | : . | : Locate function ... done [16:19:04.561] | : . | parse_call() ... done [16:19:04.562] | : . | Position of call to be transpiled in expression: c(1) [16:19:04.563] | : . | sapply [16:19:04.564] | : . Finding call to be transpiled ... done [16:19:04.565] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:04.566] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:04.567] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:04.568] | : . | Transpiler function: [16:19:04.569] | : . | function (expr, options = NULL) [16:19:04.569] | : . | { [16:19:04.569] | : . | call <- make_call("future_sapply") [16:19:04.569] | : . | fcn <- eval(call) [16:19:04.569] | : . | expr[[1]] <- call [16:19:04.569] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:04.569] | : . | { [16:19:04.569] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:04.569] | : . | if (is.null(defaults_base)) { [16:19:04.569] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:04.569] | : . | } [16:19:04.569] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:04.569] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:04.569] | : . | defaults <- defaults[keep] [16:19:04.569] | : . | specified <- attr(options, "specified") [16:19:04.569] | : . | if (length(specified) > 0) { [16:19:04.569] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:04.569] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:04.569] | : . | names(options)) [16:19:04.569] | : . | } [16:19:04.569] | : . | specified <- sprintf("future.%s", specified) [16:19:04.569] | : . | names <- setdiff(names(defaults), specified) [16:19:04.569] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:04.569] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:04.569] | : . | keep <- intersect(names(options), names(defaults)) [16:19:04.569] | : . | options <- options[keep] [16:19:04.569] | : . | options [16:19:04.569] | : . | })(options, fcn)) [16:19:04.569] | : . | expr <- as.call(parts) [16:19:04.569] | : . | expr [16:19:04.569] | : . | } [16:19:04.569] | : . | [16:19:04.571] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:04.572] | : get_transpiler() ... done [16:19:04.573] | : Transpile call expression ... [16:19:04.575] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = FALSE, [16:19:04.575] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:04.575] | : . future.scheduling = 1, future.label = "future_sapply-%d") [16:19:04.577] | : Transpile call expression ... done [16:19:04.578] | : Evaluate transpiled call expression [16:19:04.638] | transpile() ... done [16:19:04.639] futurize() ... done Futures created: 2 [16:19:04.640] futurize() ... [16:19:04.641] | transpile() ... [16:19:04.642] | : get_transpiler() ... [16:19:04.643] | : . Finding call to be transpiled ... [16:19:04.643] | : . | descend_wrappers() ... [16:19:04.644] | : . | : Call: [16:19:04.645] | : . | : sapply [16:19:04.646] | : . | : parse_call() ... [16:19:04.646] | : . | : . Function: sapply(...) [16:19:04.647] | : . | : . Locate function ... [16:19:04.648] | : . | : . | Function located in: 'base' [16:19:04.648] | : . | : . Locate function ... done [16:19:04.649] | : . | : parse_call() ... done [16:19:04.649] | : . | descend_wrappers() ... done [16:19:04.650] | : . | parse_call() ... [16:19:04.651] | : . | : Function: sapply(...) [16:19:04.651] | : . | : Locate function ... [16:19:04.652] | : . | : . Function located in: 'base' [16:19:04.653] | : . | : Locate function ... done [16:19:04.653] | : . | parse_call() ... done [16:19:04.654] | : . | Position of call to be transpiled in expression: c(1) [16:19:04.654] | : . | sapply [16:19:04.655] | : . Finding call to be transpiled ... done [16:19:04.656] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:04.656] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:04.657] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:04.658] | : . | Transpiler function: [16:19:04.658] | : . | function (expr, options = NULL) [16:19:04.658] | : . | { [16:19:04.658] | : . | call <- make_call("future_sapply") [16:19:04.658] | : . | fcn <- eval(call) [16:19:04.658] | : . | expr[[1]] <- call [16:19:04.658] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:04.658] | : . | { [16:19:04.658] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:04.658] | : . | if (is.null(defaults_base)) { [16:19:04.658] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:04.658] | : . | } [16:19:04.658] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:04.658] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:04.658] | : . | defaults <- defaults[keep] [16:19:04.658] | : . | specified <- attr(options, "specified") [16:19:04.658] | : . | if (length(specified) > 0) { [16:19:04.658] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:04.658] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:04.658] | : . | names(options)) [16:19:04.658] | : . | } [16:19:04.658] | : . | specified <- sprintf("future.%s", specified) [16:19:04.658] | : . | names <- setdiff(names(defaults), specified) [16:19:04.658] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:04.658] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:04.658] | : . | keep <- intersect(names(options), names(defaults)) [16:19:04.658] | : . | options <- options[keep] [16:19:04.658] | : . | options [16:19:04.658] | : . | })(options, fcn)) [16:19:04.658] | : . | expr <- as.call(parts) [16:19:04.658] | : . | expr [16:19:04.658] | : . | } [16:19:04.658] | : . | [16:19:04.660] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:04.660] | : get_transpiler() ... done [16:19:04.661] | : Transpile call expression ... [16:19:04.662] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = FALSE, [16:19:04.662] | : . future.globals = TRUE, future.stdout = FALSE, future.conditions = character(0), [16:19:04.662] | : . future.scheduling = 1, future.label = "future_sapply-%d") [16:19:04.663] | : Transpile call expression ... done [16:19:04.664] | : Evaluate transpiled call expression [16:19:04.737] | transpile() ... done [16:19:04.738] futurize() ... done character(0) [16:19:04.739] futurize() ... [16:19:04.740] | transpile() ... [16:19:04.741] | : get_transpiler() ... [16:19:04.742] | : . Finding call to be transpiled ... [16:19:04.743] | : . | descend_wrappers() ... [16:19:04.744] | : . | : Call: [16:19:04.745] | : . | : sapply [16:19:04.746] | : . | : parse_call() ... [16:19:04.747] | : . | : . Function: sapply(...) [16:19:04.747] | : . | : . Locate function ... [16:19:04.748] | : . | : . | Function located in: 'base' [16:19:04.749] | : . | : . Locate function ... done [16:19:04.750] | : . | : parse_call() ... done [16:19:04.751] | : . | descend_wrappers() ... done [16:19:04.752] | : . | parse_call() ... [16:19:04.752] | : . | : Function: sapply(...) [16:19:04.753] | : . | : Locate function ... [16:19:04.754] | : . | : . Function located in: 'base' [16:19:04.755] | : . | : Locate function ... done [16:19:04.756] | : . | parse_call() ... done [16:19:04.757] | : . | Position of call to be transpiled in expression: c(1) [16:19:04.758] | : . | sapply [16:19:04.759] | : . Finding call to be transpiled ... done [16:19:04.759] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:04.760] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:04.761] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:04.762] | : . | Transpiler function: [16:19:04.763] | : . | function (expr, options = NULL) [16:19:04.763] | : . | { [16:19:04.763] | : . | call <- make_call("future_sapply") [16:19:04.763] | : . | fcn <- eval(call) [16:19:04.763] | : . | expr[[1]] <- call [16:19:04.763] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:04.763] | : . | { [16:19:04.763] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:04.763] | : . | if (is.null(defaults_base)) { [16:19:04.763] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:04.763] | : . | } [16:19:04.763] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:04.763] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:04.763] | : . | defaults <- defaults[keep] [16:19:04.763] | : . | specified <- attr(options, "specified") [16:19:04.763] | : . | if (length(specified) > 0) { [16:19:04.763] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:04.763] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:04.763] | : . | names(options)) [16:19:04.763] | : . | } [16:19:04.763] | : . | specified <- sprintf("future.%s", specified) [16:19:04.763] | : . | names <- setdiff(names(defaults), specified) [16:19:04.763] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:04.763] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:04.763] | : . | keep <- intersect(names(options), names(defaults)) [16:19:04.763] | : . | options <- options[keep] [16:19:04.763] | : . | options [16:19:04.763] | : . | })(options, fcn)) [16:19:04.763] | : . | expr <- as.call(parts) [16:19:04.763] | : . | expr [16:19:04.763] | : . | } [16:19:04.763] | : . | [16:19:04.765] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:04.766] | : get_transpiler() ... done [16:19:04.767] | : Transpile call expression ... [16:19:04.768] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = FALSE, [16:19:04.768] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:04.768] | : . future.scheduling = 1, future.chunk.size = 1L, future.label = "future_sapply-%d") [16:19:04.770] | : Transpile call expression ... done [16:19:04.771] | : Evaluate transpiled call expression [16:19:04.904] | transpile() ... done [16:19:04.906] futurize() ... done Test with RNG: futurize(sapply(X = xs, FUN = FUN), seed = TRUE, flavor = "built-in") [16:19:04.907] futurize() ... [16:19:04.908] | transpile() ... [16:19:04.909] | : get_transpiler() ... [16:19:04.910] | : . Finding call to be transpiled ... [16:19:04.911] | : . | descend_wrappers() ... [16:19:04.912] | : . | : Call: [16:19:04.913] | : . | : sapply [16:19:04.914] | : . | : parse_call() ... [16:19:04.915] | : . | : . Function: sapply(...) [16:19:04.916] | : . | : . Locate function ... [16:19:04.917] | : . | : . | Function located in: 'base' [16:19:04.918] | : . | : . Locate function ... done [16:19:04.919] | : . | : parse_call() ... done [16:19:04.920] | : . | descend_wrappers() ... done [16:19:04.921] | : . | parse_call() ... [16:19:04.922] | : . | : Function: sapply(...) [16:19:04.923] | : . | : Locate function ... [16:19:04.924] | : . | : . Function located in: 'base' [16:19:04.925] | : . | : Locate function ... done [16:19:04.926] | : . | parse_call() ... done [16:19:04.927] | : . | Position of call to be transpiled in expression: c(1) [16:19:04.927] | : . | sapply [16:19:04.928] | : . Finding call to be transpiled ... done [16:19:04.929] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:04.930] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:04.931] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:04.931] | : . | Transpiler function: [16:19:04.932] | : . | function (expr, options = NULL) [16:19:04.932] | : . | { [16:19:04.932] | : . | call <- make_call("future_sapply") [16:19:04.932] | : . | fcn <- eval(call) [16:19:04.932] | : . | expr[[1]] <- call [16:19:04.932] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:04.932] | : . | { [16:19:04.932] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:04.932] | : . | if (is.null(defaults_base)) { [16:19:04.932] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:04.932] | : . | } [16:19:04.932] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:04.932] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:04.932] | : . | defaults <- defaults[keep] [16:19:04.932] | : . | specified <- attr(options, "specified") [16:19:04.932] | : . | if (length(specified) > 0) { [16:19:04.932] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:04.932] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:04.932] | : . | names(options)) [16:19:04.932] | : . | } [16:19:04.932] | : . | specified <- sprintf("future.%s", specified) [16:19:04.932] | : . | names <- setdiff(names(defaults), specified) [16:19:04.932] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:04.932] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:04.932] | : . | keep <- intersect(names(options), names(defaults)) [16:19:04.932] | : . | options <- options[keep] [16:19:04.932] | : . | options [16:19:04.932] | : . | })(options, fcn)) [16:19:04.932] | : . | expr <- as.call(parts) [16:19:04.932] | : . | expr [16:19:04.932] | : . | } [16:19:04.932] | : . | [16:19:04.934] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:04.935] | : get_transpiler() ... done [16:19:04.935] | : Transpile call expression ... [16:19:04.937] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = TRUE, [16:19:04.937] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:04.937] | : . future.scheduling = 1, future.label = "future_sapply-%d") [16:19:04.939] | : Transpile call expression ... done [16:19:04.940] | : Evaluate transpiled call expression [16:19:05.009] | transpile() ... done [16:19:05.011] futurize() ... done === sapply ========================== base::sapply(X = xs, FUN = FUN) --------------------------------- [16:19:05.013] futurize() ... [16:19:05.014] | transpile() ... [16:19:05.015] | : get_transpiler() ... [16:19:05.016] | : . Finding call to be transpiled ... [16:19:05.017] | : . | descend_wrappers() ... [16:19:05.018] | : . | : Call: [16:19:05.019] | : . | : base::sapply [16:19:05.020] | : . | : parse_call() ... [16:19:05.021] | : . | : . Function: base::sapply(...) [16:19:05.022] | : . | : parse_call() ... done [16:19:05.023] | : . | descend_wrappers() ... done [16:19:05.024] | : . | parse_call() ... [16:19:05.025] | : . | : Function: base::sapply(...) [16:19:05.026] | : . | parse_call() ... done [16:19:05.027] | : . | Position of call to be transpiled in expression: c(1) [16:19:05.028] | : . | base::sapply [16:19:05.029] | : . Finding call to be transpiled ... done [16:19:05.030] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:05.031] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:05.032] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:05.033] | : . | Transpiler function: [16:19:05.034] | : . | function (expr, options = NULL) [16:19:05.034] | : . | { [16:19:05.034] | : . | call <- make_call("future_sapply") [16:19:05.034] | : . | fcn <- eval(call) [16:19:05.034] | : . | expr[[1]] <- call [16:19:05.034] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:05.034] | : . | { [16:19:05.034] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:05.034] | : . | if (is.null(defaults_base)) { [16:19:05.034] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:05.034] | : . | } [16:19:05.034] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:05.034] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:05.034] | : . | defaults <- defaults[keep] [16:19:05.034] | : . | specified <- attr(options, "specified") [16:19:05.034] | : . | if (length(specified) > 0) { [16:19:05.034] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:05.034] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:05.034] | : . | names(options)) [16:19:05.034] | : . | } [16:19:05.034] | : . | specified <- sprintf("future.%s", specified) [16:19:05.034] | : . | names <- setdiff(names(defaults), specified) [16:19:05.034] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:05.034] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:05.034] | : . | keep <- intersect(names(options), names(defaults)) [16:19:05.034] | : . | options <- options[keep] [16:19:05.034] | : . | options [16:19:05.034] | : . | })(options, fcn)) [16:19:05.034] | : . | expr <- as.call(parts) [16:19:05.034] | : . | expr [16:19:05.034] | : . | } [16:19:05.034] | : . | [16:19:05.035] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:05.036] | : get_transpiler() ... done [16:19:05.037] | : Transpile call expression ... [16:19:05.039] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = FALSE, [16:19:05.039] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:05.039] | : . future.scheduling = 1, future.label = "future_sapply-%d") [16:19:05.041] | : Transpile call expression ... done [16:19:05.042] | : Evaluate transpiled call expression [16:19:05.146] | transpile() ... done [16:19:05.147] futurize() ... done Futures created: 2 [16:19:05.149] futurize() ... [16:19:05.150] | transpile() ... [16:19:05.151] | : get_transpiler() ... [16:19:05.152] | : . Finding call to be transpiled ... [16:19:05.153] | : . | descend_wrappers() ... [16:19:05.154] | : . | : Call: [16:19:05.155] | : . | : base::sapply [16:19:05.157] | : . | : parse_call() ... [16:19:05.158] | : . | : . Function: base::sapply(...) [16:19:05.159] | : . | : parse_call() ... done [16:19:05.160] | : . | descend_wrappers() ... done [16:19:05.161] | : . | parse_call() ... [16:19:05.162] | : . | : Function: base::sapply(...) [16:19:05.163] | : . | parse_call() ... done [16:19:05.164] | : . | Position of call to be transpiled in expression: c(1) [16:19:05.165] | : . | base::sapply [16:19:05.166] | : . Finding call to be transpiled ... done [16:19:05.167] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:05.168] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:05.169] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:05.170] | : . | Transpiler function: [16:19:05.171] | : . | function (expr, options = NULL) [16:19:05.171] | : . | { [16:19:05.171] | : . | call <- make_call("future_sapply") [16:19:05.171] | : . | fcn <- eval(call) [16:19:05.171] | : . | expr[[1]] <- call [16:19:05.171] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:05.171] | : . | { [16:19:05.171] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:05.171] | : . | if (is.null(defaults_base)) { [16:19:05.171] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:05.171] | : . | } [16:19:05.171] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:05.171] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:05.171] | : . | defaults <- defaults[keep] [16:19:05.171] | : . | specified <- attr(options, "specified") [16:19:05.171] | : . | if (length(specified) > 0) { [16:19:05.171] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:05.171] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:05.171] | : . | names(options)) [16:19:05.171] | : . | } [16:19:05.171] | : . | specified <- sprintf("future.%s", specified) [16:19:05.171] | : . | names <- setdiff(names(defaults), specified) [16:19:05.171] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:05.171] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:05.171] | : . | keep <- intersect(names(options), names(defaults)) [16:19:05.171] | : . | options <- options[keep] [16:19:05.171] | : . | options [16:19:05.171] | : . | })(options, fcn)) [16:19:05.171] | : . | expr <- as.call(parts) [16:19:05.171] | : . | expr [16:19:05.171] | : . | } [16:19:05.171] | : . | [16:19:05.173] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:05.174] | : get_transpiler() ... done [16:19:05.175] | : Transpile call expression ... [16:19:05.177] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = FALSE, [16:19:05.177] | : . future.globals = TRUE, future.stdout = FALSE, future.conditions = character(0), [16:19:05.177] | : . future.scheduling = 1, future.label = "future_sapply-%d") [16:19:05.179] | : Transpile call expression ... done [16:19:05.180] | : Evaluate transpiled call expression [16:19:05.251] | transpile() ... done [16:19:05.252] futurize() ... done character(0) [16:19:05.254] futurize() ... [16:19:05.255] | transpile() ... [16:19:05.260] | : get_transpiler() ... [16:19:05.261] | : . Finding call to be transpiled ... [16:19:05.262] | : . | descend_wrappers() ... [16:19:05.263] | : . | : Call: [16:19:05.264] | : . | : base::sapply [16:19:05.265] | : . | : parse_call() ... [16:19:05.267] | : . | : . Function: base::sapply(...) [16:19:05.268] | : . | : parse_call() ... done [16:19:05.269] | : . | descend_wrappers() ... done [16:19:05.270] | : . | parse_call() ... [16:19:05.271] | : . | : Function: base::sapply(...) [16:19:05.272] | : . | parse_call() ... done [16:19:05.273] | : . | Position of call to be transpiled in expression: c(1) [16:19:05.274] | : . | base::sapply [16:19:05.275] | : . Finding call to be transpiled ... done [16:19:05.276] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:05.278] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:05.279] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:05.280] | : . | Transpiler function: [16:19:05.281] | : . | function (expr, options = NULL) [16:19:05.281] | : . | { [16:19:05.281] | : . | call <- make_call("future_sapply") [16:19:05.281] | : . | fcn <- eval(call) [16:19:05.281] | : . | expr[[1]] <- call [16:19:05.281] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:05.281] | : . | { [16:19:05.281] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:05.281] | : . | if (is.null(defaults_base)) { [16:19:05.281] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:05.281] | : . | } [16:19:05.281] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:05.281] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:05.281] | : . | defaults <- defaults[keep] [16:19:05.281] | : . | specified <- attr(options, "specified") [16:19:05.281] | : . | if (length(specified) > 0) { [16:19:05.281] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:05.281] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:05.281] | : . | names(options)) [16:19:05.281] | : . | } [16:19:05.281] | : . | specified <- sprintf("future.%s", specified) [16:19:05.281] | : . | names <- setdiff(names(defaults), specified) [16:19:05.281] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:05.281] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:05.281] | : . | keep <- intersect(names(options), names(defaults)) [16:19:05.281] | : . | options <- options[keep] [16:19:05.281] | : . | options [16:19:05.281] | : . | })(options, fcn)) [16:19:05.281] | : . | expr <- as.call(parts) [16:19:05.281] | : . | expr [16:19:05.281] | : . | } [16:19:05.281] | : . | [16:19:05.283] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:05.284] | : get_transpiler() ... done [16:19:05.285] | : Transpile call expression ... [16:19:05.286] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = FALSE, [16:19:05.286] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:05.286] | : . future.scheduling = 1, future.chunk.size = 1L, future.label = "future_sapply-%d") [16:19:05.289] | : Transpile call expression ... done [16:19:05.290] | : Evaluate transpiled call expression [16:19:05.434] | transpile() ... done [16:19:05.435] futurize() ... done Test with RNG: futurize(base::sapply(X = xs, FUN = FUN), seed = TRUE, flavor = "built-in") [16:19:05.436] futurize() ... [16:19:05.437] | transpile() ... [16:19:05.438] | : get_transpiler() ... [16:19:05.439] | : . Finding call to be transpiled ... [16:19:05.440] | : . | descend_wrappers() ... [16:19:05.441] | : . | : Call: [16:19:05.442] | : . | : base::sapply [16:19:05.443] | : . | : parse_call() ... [16:19:05.444] | : . | : . Function: base::sapply(...) [16:19:05.445] | : . | : parse_call() ... done [16:19:05.446] | : . | descend_wrappers() ... done [16:19:05.447] | : . | parse_call() ... [16:19:05.448] | : . | : Function: base::sapply(...) [16:19:05.449] | : . | parse_call() ... done [16:19:05.450] | : . | Position of call to be transpiled in expression: c(1) [16:19:05.451] | : . | base::sapply [16:19:05.453] | : . Finding call to be transpiled ... done [16:19:05.454] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:05.455] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:05.456] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:05.457] | : . | Transpiler function: [16:19:05.458] | : . | function (expr, options = NULL) [16:19:05.458] | : . | { [16:19:05.458] | : . | call <- make_call("future_sapply") [16:19:05.458] | : . | fcn <- eval(call) [16:19:05.458] | : . | expr[[1]] <- call [16:19:05.458] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:05.458] | : . | { [16:19:05.458] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:05.458] | : . | if (is.null(defaults_base)) { [16:19:05.458] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:05.458] | : . | } [16:19:05.458] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:05.458] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:05.458] | : . | defaults <- defaults[keep] [16:19:05.458] | : . | specified <- attr(options, "specified") [16:19:05.458] | : . | if (length(specified) > 0) { [16:19:05.458] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:05.458] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:05.458] | : . | names(options)) [16:19:05.458] | : . | } [16:19:05.458] | : . | specified <- sprintf("future.%s", specified) [16:19:05.458] | : . | names <- setdiff(names(defaults), specified) [16:19:05.458] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:05.458] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:05.458] | : . | keep <- intersect(names(options), names(defaults)) [16:19:05.458] | : . | options <- options[keep] [16:19:05.458] | : . | options [16:19:05.458] | : . | })(options, fcn)) [16:19:05.458] | : . | expr <- as.call(parts) [16:19:05.458] | : . | expr [16:19:05.458] | : . | } [16:19:05.458] | : . | [16:19:05.460] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:05.461] | : get_transpiler() ... done [16:19:05.461] | : Transpile call expression ... [16:19:05.463] | : . future.apply::future_sapply(X = xs, FUN = FUN, future.seed = TRUE, [16:19:05.463] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:05.463] | : . future.scheduling = 1, future.label = "future_sapply-%d") [16:19:05.465] | : Transpile call expression ... done [16:19:05.466] | : Evaluate transpiled call expression [16:19:05.530] | transpile() ... done [16:19:05.532] futurize() ... done === sapply ========================== base::sapply(X = xs, FUN = FUN, simplify = FALSE) --------------------------------- [16:19:05.534] futurize() ... [16:19:05.535] | transpile() ... [16:19:05.536] | : get_transpiler() ... [16:19:05.537] | : . Finding call to be transpiled ... [16:19:05.538] | : . | descend_wrappers() ... [16:19:05.539] | : . | : Call: [16:19:05.540] | : . | : base::sapply [16:19:05.541] | : . | : parse_call() ... [16:19:05.542] | : . | : . Function: base::sapply(...) [16:19:05.543] | : . | : parse_call() ... done [16:19:05.545] | : . | descend_wrappers() ... done [16:19:05.545] | : . | parse_call() ... [16:19:05.547] | : . | : Function: base::sapply(...) [16:19:05.548] | : . | parse_call() ... done [16:19:05.548] | : . | Position of call to be transpiled in expression: c(1) [16:19:05.549] | : . | base::sapply [16:19:05.550] | : . Finding call to be transpiled ... done [16:19:05.551] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:05.552] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:05.553] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:05.554] | : . | Transpiler function: [16:19:05.555] | : . | function (expr, options = NULL) [16:19:05.555] | : . | { [16:19:05.555] | : . | call <- make_call("future_sapply") [16:19:05.555] | : . | fcn <- eval(call) [16:19:05.555] | : . | expr[[1]] <- call [16:19:05.555] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:05.555] | : . | { [16:19:05.555] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:05.555] | : . | if (is.null(defaults_base)) { [16:19:05.555] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:05.555] | : . | } [16:19:05.555] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:05.555] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:05.555] | : . | defaults <- defaults[keep] [16:19:05.555] | : . | specified <- attr(options, "specified") [16:19:05.555] | : . | if (length(specified) > 0) { [16:19:05.555] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:05.555] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:05.555] | : . | names(options)) [16:19:05.555] | : . | } [16:19:05.555] | : . | specified <- sprintf("future.%s", specified) [16:19:05.555] | : . | names <- setdiff(names(defaults), specified) [16:19:05.555] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:05.555] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:05.555] | : . | keep <- intersect(names(options), names(defaults)) [16:19:05.555] | : . | options <- options[keep] [16:19:05.555] | : . | options [16:19:05.555] | : . | })(options, fcn)) [16:19:05.555] | : . | expr <- as.call(parts) [16:19:05.555] | : . | expr [16:19:05.555] | : . | } [16:19:05.555] | : . | [16:19:05.557] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:05.558] | : get_transpiler() ... done [16:19:05.559] | : Transpile call expression ... [16:19:05.560] | : . future.apply::future_sapply(X = xs, FUN = FUN, simplify = FALSE, [16:19:05.560] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:05.560] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_sapply-%d") [16:19:05.562] | : Transpile call expression ... done [16:19:05.563] | : Evaluate transpiled call expression [16:19:05.619] | transpile() ... done [16:19:05.620] futurize() ... done Futures created: 2 [16:19:05.621] futurize() ... [16:19:05.622] | transpile() ... [16:19:05.623] | : get_transpiler() ... [16:19:05.624] | : . Finding call to be transpiled ... [16:19:05.625] | : . | descend_wrappers() ... [16:19:05.625] | : . | : Call: [16:19:05.626] | : . | : base::sapply [16:19:05.627] | : . | : parse_call() ... [16:19:05.628] | : . | : . Function: base::sapply(...) [16:19:05.629] | : . | : parse_call() ... done [16:19:05.629] | : . | descend_wrappers() ... done [16:19:05.630] | : . | parse_call() ... [16:19:05.630] | : . | : Function: base::sapply(...) [16:19:05.631] | : . | parse_call() ... done [16:19:05.632] | : . | Position of call to be transpiled in expression: c(1) [16:19:05.632] | : . | base::sapply [16:19:05.633] | : . Finding call to be transpiled ... done [16:19:05.634] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:05.635] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:05.636] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:05.637] | : . | Transpiler function: [16:19:05.638] | : . | function (expr, options = NULL) [16:19:05.638] | : . | { [16:19:05.638] | : . | call <- make_call("future_sapply") [16:19:05.638] | : . | fcn <- eval(call) [16:19:05.638] | : . | expr[[1]] <- call [16:19:05.638] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:05.638] | : . | { [16:19:05.638] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:05.638] | : . | if (is.null(defaults_base)) { [16:19:05.638] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:05.638] | : . | } [16:19:05.638] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:05.638] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:05.638] | : . | defaults <- defaults[keep] [16:19:05.638] | : . | specified <- attr(options, "specified") [16:19:05.638] | : . | if (length(specified) > 0) { [16:19:05.638] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:05.638] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:05.638] | : . | names(options)) [16:19:05.638] | : . | } [16:19:05.638] | : . | specified <- sprintf("future.%s", specified) [16:19:05.638] | : . | names <- setdiff(names(defaults), specified) [16:19:05.638] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:05.638] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:05.638] | : . | keep <- intersect(names(options), names(defaults)) [16:19:05.638] | : . | options <- options[keep] [16:19:05.638] | : . | options [16:19:05.638] | : . | })(options, fcn)) [16:19:05.638] | : . | expr <- as.call(parts) [16:19:05.638] | : . | expr [16:19:05.638] | : . | } [16:19:05.638] | : . | [16:19:05.639] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:05.640] | : get_transpiler() ... done [16:19:05.641] | : Transpile call expression ... [16:19:05.642] | : . future.apply::future_sapply(X = xs, FUN = FUN, simplify = FALSE, [16:19:05.642] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = FALSE, [16:19:05.642] | : . future.conditions = character(0), future.scheduling = 1, [16:19:05.642] | : . future.label = "future_sapply-%d") [16:19:05.645] | : Transpile call expression ... done [16:19:05.646] | : Evaluate transpiled call expression [16:19:05.715] | transpile() ... done [16:19:05.716] futurize() ... done character(0) [16:19:05.717] futurize() ... [16:19:05.718] | transpile() ... [16:19:05.719] | : get_transpiler() ... [16:19:05.720] | : . Finding call to be transpiled ... [16:19:05.721] | : . | descend_wrappers() ... [16:19:05.721] | : . | : Call: [16:19:05.722] | : . | : base::sapply [16:19:05.723] | : . | : parse_call() ... [16:19:05.724] | : . | : . Function: base::sapply(...) [16:19:05.725] | : . | : parse_call() ... done [16:19:05.726] | : . | descend_wrappers() ... done [16:19:05.727] | : . | parse_call() ... [16:19:05.727] | : . | : Function: base::sapply(...) [16:19:05.728] | : . | parse_call() ... done [16:19:05.729] | : . | Position of call to be transpiled in expression: c(1) [16:19:05.730] | : . | base::sapply [16:19:05.731] | : . Finding call to be transpiled ... done [16:19:05.732] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:05.733] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:05.733] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:05.734] | : . | Transpiler function: [16:19:05.735] | : . | function (expr, options = NULL) [16:19:05.735] | : . | { [16:19:05.735] | : . | call <- make_call("future_sapply") [16:19:05.735] | : . | fcn <- eval(call) [16:19:05.735] | : . | expr[[1]] <- call [16:19:05.735] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:05.735] | : . | { [16:19:05.735] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:05.735] | : . | if (is.null(defaults_base)) { [16:19:05.735] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:05.735] | : . | } [16:19:05.735] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:05.735] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:05.735] | : . | defaults <- defaults[keep] [16:19:05.735] | : . | specified <- attr(options, "specified") [16:19:05.735] | : . | if (length(specified) > 0) { [16:19:05.735] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:05.735] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:05.735] | : . | names(options)) [16:19:05.735] | : . | } [16:19:05.735] | : . | specified <- sprintf("future.%s", specified) [16:19:05.735] | : . | names <- setdiff(names(defaults), specified) [16:19:05.735] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:05.735] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:05.735] | : . | keep <- intersect(names(options), names(defaults)) [16:19:05.735] | : . | options <- options[keep] [16:19:05.735] | : . | options [16:19:05.735] | : . | })(options, fcn)) [16:19:05.735] | : . | expr <- as.call(parts) [16:19:05.735] | : . | expr [16:19:05.735] | : . | } [16:19:05.735] | : . | [16:19:05.738] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:05.740] | : get_transpiler() ... done [16:19:05.741] | : Transpile call expression ... [16:19:05.743] | : . future.apply::future_sapply(X = xs, FUN = FUN, simplify = FALSE, [16:19:05.743] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:05.743] | : . future.conditions = "condition", future.scheduling = 1, future.chunk.size = 1L, [16:19:05.743] | : . future.label = "future_sapply-%d") [16:19:05.746] | : Transpile call expression ... done [16:19:05.747] | : Evaluate transpiled call expression [16:19:05.906] | transpile() ... done [16:19:05.907] futurize() ... done Test with RNG: futurize(base::sapply(X = xs, FUN = FUN, simplify = FALSE), seed = TRUE, flavor = "built-in") [16:19:05.908] futurize() ... [16:19:05.909] | transpile() ... [16:19:05.910] | : get_transpiler() ... [16:19:05.911] | : . Finding call to be transpiled ... [16:19:05.912] | : . | descend_wrappers() ... [16:19:05.913] | : . | : Call: [16:19:05.913] | : . | : base::sapply [16:19:05.914] | : . | : parse_call() ... [16:19:05.915] | : . | : . Function: base::sapply(...) [16:19:05.916] | : . | : parse_call() ... done [16:19:05.917] | : . | descend_wrappers() ... done [16:19:05.918] | : . | parse_call() ... [16:19:05.919] | : . | : Function: base::sapply(...) [16:19:05.920] | : . | parse_call() ... done [16:19:05.921] | : . | Position of call to be transpiled in expression: c(1) [16:19:05.922] | : . | base::sapply [16:19:05.923] | : . Finding call to be transpiled ... done [16:19:05.924] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:05.925] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:05.925] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:05.926] | : . | Transpiler function: [16:19:05.927] | : . | function (expr, options = NULL) [16:19:05.927] | : . | { [16:19:05.927] | : . | call <- make_call("future_sapply") [16:19:05.927] | : . | fcn <- eval(call) [16:19:05.927] | : . | expr[[1]] <- call [16:19:05.927] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:05.927] | : . | { [16:19:05.927] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:05.927] | : . | if (is.null(defaults_base)) { [16:19:05.927] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:05.927] | : . | } [16:19:05.927] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:05.927] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:05.927] | : . | defaults <- defaults[keep] [16:19:05.927] | : . | specified <- attr(options, "specified") [16:19:05.927] | : . | if (length(specified) > 0) { [16:19:05.927] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:05.927] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:05.927] | : . | names(options)) [16:19:05.927] | : . | } [16:19:05.927] | : . | specified <- sprintf("future.%s", specified) [16:19:05.927] | : . | names <- setdiff(names(defaults), specified) [16:19:05.927] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:05.927] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:05.927] | : . | keep <- intersect(names(options), names(defaults)) [16:19:05.927] | : . | options <- options[keep] [16:19:05.927] | : . | options [16:19:05.927] | : . | })(options, fcn)) [16:19:05.927] | : . | expr <- as.call(parts) [16:19:05.927] | : . | expr [16:19:05.927] | : . | } [16:19:05.927] | : . | [16:19:05.929] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:05.930] | : get_transpiler() ... done [16:19:05.931] | : Transpile call expression ... [16:19:05.932] | : . future.apply::future_sapply(X = xs, FUN = FUN, simplify = FALSE, [16:19:05.932] | : . future.seed = TRUE, future.globals = TRUE, future.stdout = TRUE, [16:19:05.932] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_sapply-%d") [16:19:05.935] | : Transpile call expression ... done [16:19:05.936] | : Evaluate transpiled call expression [16:19:06.005] | transpile() ... done [16:19:06.006] futurize() ... done === sapply ========================== base::sapply(X = xs, FUN = FUN, USE.NAMES = FALSE) --------------------------------- [16:19:06.008] futurize() ... [16:19:06.009] | transpile() ... [16:19:06.010] | : get_transpiler() ... [16:19:06.010] | : . Finding call to be transpiled ... [16:19:06.011] | : . | descend_wrappers() ... [16:19:06.011] | : . | : Call: [16:19:06.012] | : . | : base::sapply [16:19:06.013] | : . | : parse_call() ... [16:19:06.013] | : . | : . Function: base::sapply(...) [16:19:06.014] | : . | : parse_call() ... done [16:19:06.015] | : . | descend_wrappers() ... done [16:19:06.015] | : . | parse_call() ... [16:19:06.016] | : . | : Function: base::sapply(...) [16:19:06.016] | : . | parse_call() ... done [16:19:06.017] | : . | Position of call to be transpiled in expression: c(1) [16:19:06.017] | : . | base::sapply [16:19:06.018] | : . Finding call to be transpiled ... done [16:19:06.018] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:06.019] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:06.020] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:06.020] | : . | Transpiler function: [16:19:06.021] | : . | function (expr, options = NULL) [16:19:06.021] | : . | { [16:19:06.021] | : . | call <- make_call("future_sapply") [16:19:06.021] | : . | fcn <- eval(call) [16:19:06.021] | : . | expr[[1]] <- call [16:19:06.021] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:06.021] | : . | { [16:19:06.021] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:06.021] | : . | if (is.null(defaults_base)) { [16:19:06.021] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:06.021] | : . | } [16:19:06.021] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:06.021] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:06.021] | : . | defaults <- defaults[keep] [16:19:06.021] | : . | specified <- attr(options, "specified") [16:19:06.021] | : . | if (length(specified) > 0) { [16:19:06.021] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:06.021] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:06.021] | : . | names(options)) [16:19:06.021] | : . | } [16:19:06.021] | : . | specified <- sprintf("future.%s", specified) [16:19:06.021] | : . | names <- setdiff(names(defaults), specified) [16:19:06.021] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:06.021] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:06.021] | : . | keep <- intersect(names(options), names(defaults)) [16:19:06.021] | : . | options <- options[keep] [16:19:06.021] | : . | options [16:19:06.021] | : . | })(options, fcn)) [16:19:06.021] | : . | expr <- as.call(parts) [16:19:06.021] | : . | expr [16:19:06.021] | : . | } [16:19:06.021] | : . | [16:19:06.022] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:06.022] | : get_transpiler() ... done [16:19:06.023] | : Transpile call expression ... [16:19:06.024] | : . future.apply::future_sapply(X = xs, FUN = FUN, USE.NAMES = FALSE, [16:19:06.024] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:06.024] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_sapply-%d") [16:19:06.025] | : Transpile call expression ... done [16:19:06.025] | : Evaluate transpiled call expression [16:19:06.080] | transpile() ... done [16:19:06.081] futurize() ... done Futures created: 2 [16:19:06.082] futurize() ... [16:19:06.083] | transpile() ... [16:19:06.084] | : get_transpiler() ... [16:19:06.084] | : . Finding call to be transpiled ... [16:19:06.085] | : . | descend_wrappers() ... [16:19:06.086] | : . | : Call: [16:19:06.087] | : . | : base::sapply [16:19:06.087] | : . | : parse_call() ... [16:19:06.088] | : . | : . Function: base::sapply(...) [16:19:06.089] | : . | : parse_call() ... done [16:19:06.090] | : . | descend_wrappers() ... done [16:19:06.090] | : . | parse_call() ... [16:19:06.091] | : . | : Function: base::sapply(...) [16:19:06.092] | : . | parse_call() ... done [16:19:06.093] | : . | Position of call to be transpiled in expression: c(1) [16:19:06.093] | : . | base::sapply [16:19:06.094] | : . Finding call to be transpiled ... done [16:19:06.095] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:06.096] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:06.096] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:06.097] | : . | Transpiler function: [16:19:06.098] | : . | function (expr, options = NULL) [16:19:06.098] | : . | { [16:19:06.098] | : . | call <- make_call("future_sapply") [16:19:06.098] | : . | fcn <- eval(call) [16:19:06.098] | : . | expr[[1]] <- call [16:19:06.098] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:06.098] | : . | { [16:19:06.098] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:06.098] | : . | if (is.null(defaults_base)) { [16:19:06.098] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:06.098] | : . | } [16:19:06.098] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:06.098] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:06.098] | : . | defaults <- defaults[keep] [16:19:06.098] | : . | specified <- attr(options, "specified") [16:19:06.098] | : . | if (length(specified) > 0) { [16:19:06.098] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:06.098] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:06.098] | : . | names(options)) [16:19:06.098] | : . | } [16:19:06.098] | : . | specified <- sprintf("future.%s", specified) [16:19:06.098] | : . | names <- setdiff(names(defaults), specified) [16:19:06.098] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:06.098] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:06.098] | : . | keep <- intersect(names(options), names(defaults)) [16:19:06.098] | : . | options <- options[keep] [16:19:06.098] | : . | options [16:19:06.098] | : . | })(options, fcn)) [16:19:06.098] | : . | expr <- as.call(parts) [16:19:06.098] | : . | expr [16:19:06.098] | : . | } [16:19:06.098] | : . | [16:19:06.100] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:06.100] | : get_transpiler() ... done [16:19:06.101] | : Transpile call expression ... [16:19:06.102] | : . future.apply::future_sapply(X = xs, FUN = FUN, USE.NAMES = FALSE, [16:19:06.102] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = FALSE, [16:19:06.102] | : . future.conditions = character(0), future.scheduling = 1, [16:19:06.102] | : . future.label = "future_sapply-%d") [16:19:06.103] | : Transpile call expression ... done [16:19:06.104] | : Evaluate transpiled call expression [16:19:06.168] | transpile() ... done [16:19:06.169] futurize() ... done character(0) [16:19:06.170] futurize() ... [16:19:06.171] | transpile() ... [16:19:06.171] | : get_transpiler() ... [16:19:06.172] | : . Finding call to be transpiled ... [16:19:06.173] | : . | descend_wrappers() ... [16:19:06.174] | : . | : Call: [16:19:06.175] | : . | : base::sapply [16:19:06.176] | : . | : parse_call() ... [16:19:06.177] | : . | : . Function: base::sapply(...) [16:19:06.178] | : . | : parse_call() ... done [16:19:06.179] | : . | descend_wrappers() ... done [16:19:06.179] | : . | parse_call() ... [16:19:06.180] | : . | : Function: base::sapply(...) [16:19:06.181] | : . | parse_call() ... done [16:19:06.182] | : . | Position of call to be transpiled in expression: c(1) [16:19:06.182] | : . | base::sapply [16:19:06.183] | : . Finding call to be transpiled ... done [16:19:06.184] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:06.185] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:06.186] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:06.187] | : . | Transpiler function: [16:19:06.188] | : . | function (expr, options = NULL) [16:19:06.188] | : . | { [16:19:06.188] | : . | call <- make_call("future_sapply") [16:19:06.188] | : . | fcn <- eval(call) [16:19:06.188] | : . | expr[[1]] <- call [16:19:06.188] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:06.188] | : . | { [16:19:06.188] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:06.188] | : . | if (is.null(defaults_base)) { [16:19:06.188] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:06.188] | : . | } [16:19:06.188] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:06.188] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:06.188] | : . | defaults <- defaults[keep] [16:19:06.188] | : . | specified <- attr(options, "specified") [16:19:06.188] | : . | if (length(specified) > 0) { [16:19:06.188] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:06.188] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:06.188] | : . | names(options)) [16:19:06.188] | : . | } [16:19:06.188] | : . | specified <- sprintf("future.%s", specified) [16:19:06.188] | : . | names <- setdiff(names(defaults), specified) [16:19:06.188] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:06.188] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:06.188] | : . | keep <- intersect(names(options), names(defaults)) [16:19:06.188] | : . | options <- options[keep] [16:19:06.188] | : . | options [16:19:06.188] | : . | })(options, fcn)) [16:19:06.188] | : . | expr <- as.call(parts) [16:19:06.188] | : . | expr [16:19:06.188] | : . | } [16:19:06.188] | : . | [16:19:06.189] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:06.190] | : get_transpiler() ... done [16:19:06.191] | : Transpile call expression ... [16:19:06.192] | : . future.apply::future_sapply(X = xs, FUN = FUN, USE.NAMES = FALSE, [16:19:06.192] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:06.192] | : . future.conditions = "condition", future.scheduling = 1, future.chunk.size = 1L, [16:19:06.192] | : . future.label = "future_sapply-%d") [16:19:06.195] | : Transpile call expression ... done [16:19:06.196] | : Evaluate transpiled call expression [16:19:06.340] | transpile() ... done [16:19:06.341] futurize() ... done Test with RNG: futurize(base::sapply(X = xs, FUN = FUN, USE.NAMES = FALSE), seed = TRUE, flavor = "built-in") [16:19:06.342] futurize() ... [16:19:06.343] | transpile() ... [16:19:06.344] | : get_transpiler() ... [16:19:06.345] | : . Finding call to be transpiled ... [16:19:06.345] | : . | descend_wrappers() ... [16:19:06.346] | : . | : Call: [16:19:06.347] | : . | : base::sapply [16:19:06.348] | : . | : parse_call() ... [16:19:06.348] | : . | : . Function: base::sapply(...) [16:19:06.349] | : . | : parse_call() ... done [16:19:06.350] | : . | descend_wrappers() ... done [16:19:06.351] | : . | parse_call() ... [16:19:06.351] | : . | : Function: base::sapply(...) [16:19:06.352] | : . | parse_call() ... done [16:19:06.353] | : . | Position of call to be transpiled in expression: c(1) [16:19:06.354] | : . | base::sapply [16:19:06.355] | : . Finding call to be transpiled ... done [16:19:06.355] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... [16:19:06.356] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:06.357] | : . | Transpiler description: base::sapply() -> future.apply::future_sapply() [16:19:06.358] | : . | Transpiler function: [16:19:06.358] | : . | function (expr, options = NULL) [16:19:06.358] | : . | { [16:19:06.358] | : . | call <- make_call("future_sapply") [16:19:06.358] | : . | fcn <- eval(call) [16:19:06.358] | : . | expr[[1]] <- call [16:19:06.358] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:06.358] | : . | { [16:19:06.358] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:06.358] | : . | if (is.null(defaults_base)) { [16:19:06.358] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:06.358] | : . | } [16:19:06.358] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:06.358] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:06.358] | : . | defaults <- defaults[keep] [16:19:06.358] | : . | specified <- attr(options, "specified") [16:19:06.358] | : . | if (length(specified) > 0) { [16:19:06.358] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:06.358] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:06.358] | : . | names(options)) [16:19:06.358] | : . | } [16:19:06.358] | : . | specified <- sprintf("future.%s", specified) [16:19:06.358] | : . | names <- setdiff(names(defaults), specified) [16:19:06.358] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:06.358] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:06.358] | : . | keep <- intersect(names(options), names(defaults)) [16:19:06.358] | : . | options <- options[keep] [16:19:06.358] | : . | options [16:19:06.358] | : . | })(options, fcn)) [16:19:06.358] | : . | expr <- as.call(parts) [16:19:06.358] | : . | expr [16:19:06.358] | : . | } [16:19:06.358] | : . | [16:19:06.360] | : . Locating 'futurize::add-on' transpiler for base::sapply() of class 'function' ... done [16:19:06.361] | : get_transpiler() ... done [16:19:06.361] | : Transpile call expression ... [16:19:06.363] | : . future.apply::future_sapply(X = xs, FUN = FUN, USE.NAMES = FALSE, [16:19:06.363] | : . future.seed = TRUE, future.globals = TRUE, future.stdout = TRUE, [16:19:06.363] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_sapply-%d") [16:19:06.364] | : Transpile call expression ... done [16:19:06.365] | : Evaluate transpiled call expression [16:19:06.426] | transpile() ... done [16:19:06.427] futurize() ... done === vapply ========================== base::vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN) --------------------------------- [16:19:06.429] futurize() ... [16:19:06.429] | transpile() ... [16:19:06.430] | : get_transpiler() ... [16:19:06.431] | : . Finding call to be transpiled ... [16:19:06.432] | : . | descend_wrappers() ... [16:19:06.432] | : . | : Call: [16:19:06.433] | : . | : base::vapply [16:19:06.434] | : . | : parse_call() ... [16:19:06.435] | : . | : . Function: base::vapply(...) [16:19:06.436] | : . | : parse_call() ... done [16:19:06.437] | : . | descend_wrappers() ... done [16:19:06.437] | : . | parse_call() ... [16:19:06.438] | : . | : Function: base::vapply(...) [16:19:06.439] | : . | parse_call() ... done [16:19:06.440] | : . | Position of call to be transpiled in expression: c(1) [16:19:06.440] | : . | base::vapply [16:19:06.441] | : . Finding call to be transpiled ... done [16:19:06.442] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:06.443] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:06.444] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:06.445] | : . | Transpiler function: [16:19:06.445] | : . | function (expr, options = NULL) [16:19:06.445] | : . | { [16:19:06.445] | : . | call <- make_call("future_vapply") [16:19:06.445] | : . | fcn <- eval(call) [16:19:06.445] | : . | expr[[1]] <- call [16:19:06.445] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:06.445] | : . | { [16:19:06.445] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:06.445] | : . | if (is.null(defaults_base)) { [16:19:06.445] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:06.445] | : . | } [16:19:06.445] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:06.445] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:06.445] | : . | defaults <- defaults[keep] [16:19:06.445] | : . | specified <- attr(options, "specified") [16:19:06.445] | : . | if (length(specified) > 0) { [16:19:06.445] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:06.445] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:06.445] | : . | names(options)) [16:19:06.445] | : . | } [16:19:06.445] | : . | specified <- sprintf("future.%s", specified) [16:19:06.445] | : . | names <- setdiff(names(defaults), specified) [16:19:06.445] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:06.445] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:06.445] | : . | keep <- intersect(names(options), names(defaults)) [16:19:06.445] | : . | options <- options[keep] [16:19:06.445] | : . | options [16:19:06.445] | : . | })(options, fcn)) [16:19:06.445] | : . | expr <- as.call(parts) [16:19:06.445] | : . | expr [16:19:06.445] | : . | } [16:19:06.445] | : . | [16:19:06.447] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:06.448] | : get_transpiler() ... done [16:19:06.448] | : Transpile call expression ... [16:19:06.450] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:06.450] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:06.450] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_vapply-%d") [16:19:06.455] | : Transpile call expression ... done [16:19:06.456] | : Evaluate transpiled call expression [16:19:06.551] | transpile() ... done [16:19:06.552] futurize() ... done Futures created: 2 [16:19:06.553] futurize() ... [16:19:06.554] | transpile() ... [16:19:06.555] | : get_transpiler() ... [16:19:06.555] | : . Finding call to be transpiled ... [16:19:06.556] | : . | descend_wrappers() ... [16:19:06.557] | : . | : Call: [16:19:06.558] | : . | : base::vapply [16:19:06.559] | : . | : parse_call() ... [16:19:06.559] | : . | : . Function: base::vapply(...) [16:19:06.560] | : . | : parse_call() ... done [16:19:06.561] | : . | descend_wrappers() ... done [16:19:06.562] | : . | parse_call() ... [16:19:06.562] | : . | : Function: base::vapply(...) [16:19:06.563] | : . | parse_call() ... done [16:19:06.564] | : . | Position of call to be transpiled in expression: c(1) [16:19:06.564] | : . | base::vapply [16:19:06.565] | : . Finding call to be transpiled ... done [16:19:06.566] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:06.567] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:06.568] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:06.568] | : . | Transpiler function: [16:19:06.569] | : . | function (expr, options = NULL) [16:19:06.569] | : . | { [16:19:06.569] | : . | call <- make_call("future_vapply") [16:19:06.569] | : . | fcn <- eval(call) [16:19:06.569] | : . | expr[[1]] <- call [16:19:06.569] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:06.569] | : . | { [16:19:06.569] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:06.569] | : . | if (is.null(defaults_base)) { [16:19:06.569] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:06.569] | : . | } [16:19:06.569] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:06.569] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:06.569] | : . | defaults <- defaults[keep] [16:19:06.569] | : . | specified <- attr(options, "specified") [16:19:06.569] | : . | if (length(specified) > 0) { [16:19:06.569] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:06.569] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:06.569] | : . | names(options)) [16:19:06.569] | : . | } [16:19:06.569] | : . | specified <- sprintf("future.%s", specified) [16:19:06.569] | : . | names <- setdiff(names(defaults), specified) [16:19:06.569] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:06.569] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:06.569] | : . | keep <- intersect(names(options), names(defaults)) [16:19:06.569] | : . | options <- options[keep] [16:19:06.569] | : . | options [16:19:06.569] | : . | })(options, fcn)) [16:19:06.569] | : . | expr <- as.call(parts) [16:19:06.569] | : . | expr [16:19:06.569] | : . | } [16:19:06.569] | : . | [16:19:06.570] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:06.571] | : get_transpiler() ... done [16:19:06.572] | : Transpile call expression ... [16:19:06.573] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:06.573] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = FALSE, [16:19:06.573] | : . future.conditions = character(0), future.scheduling = 1, [16:19:06.573] | : . future.label = "future_vapply-%d") [16:19:06.575] | : Transpile call expression ... done [16:19:06.575] | : Evaluate transpiled call expression [16:19:06.666] | transpile() ... done [16:19:06.668] futurize() ... done character(0) [16:19:06.669] futurize() ... [16:19:06.670] | transpile() ... [16:19:06.671] | : get_transpiler() ... [16:19:06.672] | : . Finding call to be transpiled ... [16:19:06.673] | : . | descend_wrappers() ... [16:19:06.674] | : . | : Call: [16:19:06.675] | : . | : base::vapply [16:19:06.676] | : . | : parse_call() ... [16:19:06.677] | : . | : . Function: base::vapply(...) [16:19:06.678] | : . | : parse_call() ... done [16:19:06.679] | : . | descend_wrappers() ... done [16:19:06.680] | : . | parse_call() ... [16:19:06.681] | : . | : Function: base::vapply(...) [16:19:06.682] | : . | parse_call() ... done [16:19:06.683] | : . | Position of call to be transpiled in expression: c(1) [16:19:06.684] | : . | base::vapply [16:19:06.686] | : . Finding call to be transpiled ... done [16:19:06.687] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:06.688] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:06.689] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:06.690] | : . | Transpiler function: [16:19:06.691] | : . | function (expr, options = NULL) [16:19:06.691] | : . | { [16:19:06.691] | : . | call <- make_call("future_vapply") [16:19:06.691] | : . | fcn <- eval(call) [16:19:06.691] | : . | expr[[1]] <- call [16:19:06.691] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:06.691] | : . | { [16:19:06.691] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:06.691] | : . | if (is.null(defaults_base)) { [16:19:06.691] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:06.691] | : . | } [16:19:06.691] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:06.691] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:06.691] | : . | defaults <- defaults[keep] [16:19:06.691] | : . | specified <- attr(options, "specified") [16:19:06.691] | : . | if (length(specified) > 0) { [16:19:06.691] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:06.691] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:06.691] | : . | names(options)) [16:19:06.691] | : . | } [16:19:06.691] | : . | specified <- sprintf("future.%s", specified) [16:19:06.691] | : . | names <- setdiff(names(defaults), specified) [16:19:06.691] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:06.691] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:06.691] | : . | keep <- intersect(names(options), names(defaults)) [16:19:06.691] | : . | options <- options[keep] [16:19:06.691] | : . | options [16:19:06.691] | : . | })(options, fcn)) [16:19:06.691] | : . | expr <- as.call(parts) [16:19:06.691] | : . | expr [16:19:06.691] | : . | } [16:19:06.691] | : . | [16:19:06.692] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:06.693] | : get_transpiler() ... done [16:19:06.694] | : Transpile call expression ... [16:19:06.695] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:06.695] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:06.695] | : . future.conditions = "condition", future.scheduling = 1, future.chunk.size = 1L, [16:19:06.695] | : . future.label = "future_vapply-%d") [16:19:06.697] | : Transpile call expression ... done [16:19:06.698] | : Evaluate transpiled call expression [16:19:06.875] | transpile() ... done [16:19:06.876] futurize() ... done Test with RNG: futurize(base::vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN), seed = TRUE, flavor = "built-in") [16:19:06.878] futurize() ... [16:19:06.879] | transpile() ... [16:19:06.880] | : get_transpiler() ... [16:19:06.881] | : . Finding call to be transpiled ... [16:19:06.882] | : . | descend_wrappers() ... [16:19:06.883] | : . | : Call: [16:19:06.885] | : . | : base::vapply [16:19:06.886] | : . | : parse_call() ... [16:19:06.888] | : . | : . Function: base::vapply(...) [16:19:06.889] | : . | : parse_call() ... done [16:19:06.890] | : . | descend_wrappers() ... done [16:19:06.891] | : . | parse_call() ... [16:19:06.892] | : . | : Function: base::vapply(...) [16:19:06.893] | : . | parse_call() ... done [16:19:06.893] | : . | Position of call to be transpiled in expression: c(1) [16:19:06.894] | : . | base::vapply [16:19:06.895] | : . Finding call to be transpiled ... done [16:19:06.896] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:06.897] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:06.898] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:06.899] | : . | Transpiler function: [16:19:06.900] | : . | function (expr, options = NULL) [16:19:06.900] | : . | { [16:19:06.900] | : . | call <- make_call("future_vapply") [16:19:06.900] | : . | fcn <- eval(call) [16:19:06.900] | : . | expr[[1]] <- call [16:19:06.900] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:06.900] | : . | { [16:19:06.900] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:06.900] | : . | if (is.null(defaults_base)) { [16:19:06.900] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:06.900] | : . | } [16:19:06.900] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:06.900] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:06.900] | : . | defaults <- defaults[keep] [16:19:06.900] | : . | specified <- attr(options, "specified") [16:19:06.900] | : . | if (length(specified) > 0) { [16:19:06.900] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:06.900] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:06.900] | : . | names(options)) [16:19:06.900] | : . | } [16:19:06.900] | : . | specified <- sprintf("future.%s", specified) [16:19:06.900] | : . | names <- setdiff(names(defaults), specified) [16:19:06.900] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:06.900] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:06.900] | : . | keep <- intersect(names(options), names(defaults)) [16:19:06.900] | : . | options <- options[keep] [16:19:06.900] | : . | options [16:19:06.900] | : . | })(options, fcn)) [16:19:06.900] | : . | expr <- as.call(parts) [16:19:06.900] | : . | expr [16:19:06.900] | : . | } [16:19:06.900] | : . | [16:19:06.902] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:06.903] | : get_transpiler() ... done [16:19:06.904] | : Transpile call expression ... [16:19:06.905] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:06.905] | : . future.seed = TRUE, future.globals = TRUE, future.stdout = TRUE, [16:19:06.905] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_vapply-%d") [16:19:06.907] | : Transpile call expression ... done [16:19:06.908] | : Evaluate transpiled call expression [16:19:07.026] | transpile() ... done [16:19:07.027] futurize() ... done === vapply ========================== base::vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, USE.NAMES = FALSE) --------------------------------- [16:19:07.029] futurize() ... [16:19:07.030] | transpile() ... [16:19:07.031] | : get_transpiler() ... [16:19:07.032] | : . Finding call to be transpiled ... [16:19:07.033] | : . | descend_wrappers() ... [16:19:07.034] | : . | : Call: [16:19:07.035] | : . | : base::vapply [16:19:07.036] | : . | : parse_call() ... [16:19:07.037] | : . | : . Function: base::vapply(...) [16:19:07.038] | : . | : parse_call() ... done [16:19:07.039] | : . | descend_wrappers() ... done [16:19:07.039] | : . | parse_call() ... [16:19:07.040] | : . | : Function: base::vapply(...) [16:19:07.041] | : . | parse_call() ... done [16:19:07.042] | : . | Position of call to be transpiled in expression: c(1) [16:19:07.043] | : . | base::vapply [16:19:07.044] | : . Finding call to be transpiled ... done [16:19:07.045] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:07.046] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:07.047] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:07.048] | : . | Transpiler function: [16:19:07.048] | : . | function (expr, options = NULL) [16:19:07.048] | : . | { [16:19:07.048] | : . | call <- make_call("future_vapply") [16:19:07.048] | : . | fcn <- eval(call) [16:19:07.048] | : . | expr[[1]] <- call [16:19:07.048] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:07.048] | : . | { [16:19:07.048] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:07.048] | : . | if (is.null(defaults_base)) { [16:19:07.048] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:07.048] | : . | } [16:19:07.048] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:07.048] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:07.048] | : . | defaults <- defaults[keep] [16:19:07.048] | : . | specified <- attr(options, "specified") [16:19:07.048] | : . | if (length(specified) > 0) { [16:19:07.048] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:07.048] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:07.048] | : . | names(options)) [16:19:07.048] | : . | } [16:19:07.048] | : . | specified <- sprintf("future.%s", specified) [16:19:07.048] | : . | names <- setdiff(names(defaults), specified) [16:19:07.048] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:07.048] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:07.048] | : . | keep <- intersect(names(options), names(defaults)) [16:19:07.048] | : . | options <- options[keep] [16:19:07.048] | : . | options [16:19:07.048] | : . | })(options, fcn)) [16:19:07.048] | : . | expr <- as.call(parts) [16:19:07.048] | : . | expr [16:19:07.048] | : . | } [16:19:07.048] | : . | [16:19:07.050] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:07.051] | : get_transpiler() ... done [16:19:07.052] | : Transpile call expression ... [16:19:07.053] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:07.053] | : . USE.NAMES = FALSE, future.seed = FALSE, future.globals = TRUE, [16:19:07.053] | : . future.stdout = TRUE, future.conditions = "condition", future.scheduling = 1, [16:19:07.053] | : . future.label = "future_vapply-%d") [16:19:07.056] | : Transpile call expression ... done [16:19:07.056] | : Evaluate transpiled call expression [16:19:07.160] | transpile() ... done [16:19:07.161] futurize() ... done Futures created: 2 [16:19:07.162] futurize() ... [16:19:07.163] | transpile() ... [16:19:07.164] | : get_transpiler() ... [16:19:07.165] | : . Finding call to be transpiled ... [16:19:07.166] | : . | descend_wrappers() ... [16:19:07.167] | : . | : Call: [16:19:07.167] | : . | : base::vapply [16:19:07.168] | : . | : parse_call() ... [16:19:07.169] | : . | : . Function: base::vapply(...) [16:19:07.170] | : . | : parse_call() ... done [16:19:07.171] | : . | descend_wrappers() ... done [16:19:07.172] | : . | parse_call() ... [16:19:07.173] | : . | : Function: base::vapply(...) [16:19:07.174] | : . | parse_call() ... done [16:19:07.175] | : . | Position of call to be transpiled in expression: c(1) [16:19:07.176] | : . | base::vapply [16:19:07.177] | : . Finding call to be transpiled ... done [16:19:07.178] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:07.179] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:07.180] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:07.180] | : . | Transpiler function: [16:19:07.181] | : . | function (expr, options = NULL) [16:19:07.181] | : . | { [16:19:07.181] | : . | call <- make_call("future_vapply") [16:19:07.181] | : . | fcn <- eval(call) [16:19:07.181] | : . | expr[[1]] <- call [16:19:07.181] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:07.181] | : . | { [16:19:07.181] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:07.181] | : . | if (is.null(defaults_base)) { [16:19:07.181] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:07.181] | : . | } [16:19:07.181] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:07.181] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:07.181] | : . | defaults <- defaults[keep] [16:19:07.181] | : . | specified <- attr(options, "specified") [16:19:07.181] | : . | if (length(specified) > 0) { [16:19:07.181] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:07.181] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:07.181] | : . | names(options)) [16:19:07.181] | : . | } [16:19:07.181] | : . | specified <- sprintf("future.%s", specified) [16:19:07.181] | : . | names <- setdiff(names(defaults), specified) [16:19:07.181] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:07.181] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:07.181] | : . | keep <- intersect(names(options), names(defaults)) [16:19:07.181] | : . | options <- options[keep] [16:19:07.181] | : . | options [16:19:07.181] | : . | })(options, fcn)) [16:19:07.181] | : . | expr <- as.call(parts) [16:19:07.181] | : . | expr [16:19:07.181] | : . | } [16:19:07.181] | : . | [16:19:07.182] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:07.183] | : get_transpiler() ... done [16:19:07.183] | : Transpile call expression ... [16:19:07.184] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:07.184] | : . USE.NAMES = FALSE, future.seed = FALSE, future.globals = TRUE, [16:19:07.184] | : . future.stdout = FALSE, future.conditions = character(0), [16:19:07.184] | : . future.scheduling = 1, future.label = "future_vapply-%d") [16:19:07.186] | : Transpile call expression ... done [16:19:07.186] | : Evaluate transpiled call expression [16:19:07.266] | transpile() ... done [16:19:07.267] futurize() ... done character(0) [16:19:07.268] futurize() ... [16:19:07.269] | transpile() ... [16:19:07.269] | : get_transpiler() ... [16:19:07.270] | : . Finding call to be transpiled ... [16:19:07.271] | : . | descend_wrappers() ... [16:19:07.272] | : . | : Call: [16:19:07.272] | : . | : base::vapply [16:19:07.273] | : . | : parse_call() ... [16:19:07.274] | : . | : . Function: base::vapply(...) [16:19:07.275] | : . | : parse_call() ... done [16:19:07.276] | : . | descend_wrappers() ... done [16:19:07.276] | : . | parse_call() ... [16:19:07.277] | : . | : Function: base::vapply(...) [16:19:07.278] | : . | parse_call() ... done [16:19:07.279] | : . | Position of call to be transpiled in expression: c(1) [16:19:07.280] | : . | base::vapply [16:19:07.281] | : . Finding call to be transpiled ... done [16:19:07.281] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:07.282] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:07.282] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:07.283] | : . | Transpiler function: [16:19:07.283] | : . | function (expr, options = NULL) [16:19:07.283] | : . | { [16:19:07.283] | : . | call <- make_call("future_vapply") [16:19:07.283] | : . | fcn <- eval(call) [16:19:07.283] | : . | expr[[1]] <- call [16:19:07.283] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:07.283] | : . | { [16:19:07.283] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:07.283] | : . | if (is.null(defaults_base)) { [16:19:07.283] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:07.283] | : . | } [16:19:07.283] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:07.283] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:07.283] | : . | defaults <- defaults[keep] [16:19:07.283] | : . | specified <- attr(options, "specified") [16:19:07.283] | : . | if (length(specified) > 0) { [16:19:07.283] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:07.283] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:07.283] | : . | names(options)) [16:19:07.283] | : . | } [16:19:07.283] | : . | specified <- sprintf("future.%s", specified) [16:19:07.283] | : . | names <- setdiff(names(defaults), specified) [16:19:07.283] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:07.283] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:07.283] | : . | keep <- intersect(names(options), names(defaults)) [16:19:07.283] | : . | options <- options[keep] [16:19:07.283] | : . | options [16:19:07.283] | : . | })(options, fcn)) [16:19:07.283] | : . | expr <- as.call(parts) [16:19:07.283] | : . | expr [16:19:07.283] | : . | } [16:19:07.283] | : . | [16:19:07.284] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:07.285] | : get_transpiler() ... done [16:19:07.286] | : Transpile call expression ... [16:19:07.286] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:07.286] | : . USE.NAMES = FALSE, future.seed = FALSE, future.globals = TRUE, [16:19:07.286] | : . future.stdout = TRUE, future.conditions = "condition", future.scheduling = 1, [16:19:07.286] | : . future.chunk.size = 1L, future.label = "future_vapply-%d") [16:19:07.288] | : Transpile call expression ... done [16:19:07.288] | : Evaluate transpiled call expression [16:19:07.470] | transpile() ... done [16:19:07.471] futurize() ... done Test with RNG: futurize(base::vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, USE.NAMES = FALSE), seed = TRUE, flavor = "built-in") [16:19:07.472] futurize() ... [16:19:07.472] | transpile() ... [16:19:07.473] | : get_transpiler() ... [16:19:07.473] | : . Finding call to be transpiled ... [16:19:07.474] | : . | descend_wrappers() ... [16:19:07.474] | : . | : Call: [16:19:07.475] | : . | : base::vapply [16:19:07.476] | : . | : parse_call() ... [16:19:07.476] | : . | : . Function: base::vapply(...) [16:19:07.477] | : . | : parse_call() ... done [16:19:07.478] | : . | descend_wrappers() ... done [16:19:07.478] | : . | parse_call() ... [16:19:07.479] | : . | : Function: base::vapply(...) [16:19:07.479] | : . | parse_call() ... done [16:19:07.480] | : . | Position of call to be transpiled in expression: c(1) [16:19:07.480] | : . | base::vapply [16:19:07.481] | : . Finding call to be transpiled ... done [16:19:07.482] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... [16:19:07.482] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:07.483] | : . | Transpiler description: base::vapply() -> future.apply::future_vapply() [16:19:07.484] | : . | Transpiler function: [16:19:07.484] | : . | function (expr, options = NULL) [16:19:07.484] | : . | { [16:19:07.484] | : . | call <- make_call("future_vapply") [16:19:07.484] | : . | fcn <- eval(call) [16:19:07.484] | : . | expr[[1]] <- call [16:19:07.484] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:07.484] | : . | { [16:19:07.484] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:07.484] | : . | if (is.null(defaults_base)) { [16:19:07.484] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:07.484] | : . | } [16:19:07.484] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:07.484] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:07.484] | : . | defaults <- defaults[keep] [16:19:07.484] | : . | specified <- attr(options, "specified") [16:19:07.484] | : . | if (length(specified) > 0) { [16:19:07.484] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:07.484] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:07.484] | : . | names(options)) [16:19:07.484] | : . | } [16:19:07.484] | : . | specified <- sprintf("future.%s", specified) [16:19:07.484] | : . | names <- setdiff(names(defaults), specified) [16:19:07.484] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:07.484] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:07.484] | : . | keep <- intersect(names(options), names(defaults)) [16:19:07.484] | : . | options <- options[keep] [16:19:07.484] | : . | options [16:19:07.484] | : . | })(options, fcn)) [16:19:07.484] | : . | expr <- as.call(parts) [16:19:07.484] | : . | expr [16:19:07.484] | : . | } [16:19:07.484] | : . | [16:19:07.486] | : . Locating 'futurize::add-on' transpiler for base::vapply() of class 'function' ... done [16:19:07.487] | : get_transpiler() ... done [16:19:07.488] | : Transpile call expression ... [16:19:07.489] | : . future.apply::future_vapply(X = xs, FUN.VALUE = NA_real_, FUN = FUN, [16:19:07.489] | : . USE.NAMES = FALSE, future.seed = TRUE, future.globals = TRUE, [16:19:07.489] | : . future.stdout = TRUE, future.conditions = "condition", future.scheduling = 1, [16:19:07.489] | : . future.label = "future_vapply-%d") [16:19:07.491] | : Transpile call expression ... done [16:19:07.492] | : Evaluate transpiled call expression [16:19:07.606] | transpile() ... done [16:19:07.607] futurize() ... done === eapply ========================== base::eapply(env = es, FUN = FUN) --------------------------------- [16:19:07.608] futurize() ... [16:19:07.609] | transpile() ... [16:19:07.609] | : get_transpiler() ... [16:19:07.610] | : . Finding call to be transpiled ... [16:19:07.611] | : . | descend_wrappers() ... [16:19:07.611] | : . | : Call: [16:19:07.612] | : . | : base::eapply [16:19:07.613] | : . | : parse_call() ... [16:19:07.613] | : . | : . Function: base::eapply(...) [16:19:07.614] | : . | : parse_call() ... done [16:19:07.615] | : . | descend_wrappers() ... done [16:19:07.616] | : . | parse_call() ... [16:19:07.617] | : . | : Function: base::eapply(...) [16:19:07.617] | : . | parse_call() ... done [16:19:07.618] | : . | Position of call to be transpiled in expression: c(1) [16:19:07.619] | : . | base::eapply [16:19:07.620] | : . Finding call to be transpiled ... done [16:19:07.621] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:07.622] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:07.622] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:07.623] | : . | Transpiler function: [16:19:07.624] | : . | function (expr, options = NULL) [16:19:07.624] | : . | { [16:19:07.624] | : . | call <- make_call("future_eapply") [16:19:07.624] | : . | fcn <- eval(call) [16:19:07.624] | : . | expr[[1]] <- call [16:19:07.624] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:07.624] | : . | { [16:19:07.624] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:07.624] | : . | if (is.null(defaults_base)) { [16:19:07.624] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:07.624] | : . | } [16:19:07.624] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:07.624] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:07.624] | : . | defaults <- defaults[keep] [16:19:07.624] | : . | specified <- attr(options, "specified") [16:19:07.624] | : . | if (length(specified) > 0) { [16:19:07.624] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:07.624] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:07.624] | : . | names(options)) [16:19:07.624] | : . | } [16:19:07.624] | : . | specified <- sprintf("future.%s", specified) [16:19:07.624] | : . | names <- setdiff(names(defaults), specified) [16:19:07.624] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:07.624] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:07.624] | : . | keep <- intersect(names(options), names(defaults)) [16:19:07.624] | : . | options <- options[keep] [16:19:07.624] | : . | options [16:19:07.624] | : . | })(options, fcn)) [16:19:07.624] | : . | expr <- as.call(parts) [16:19:07.624] | : . | expr [16:19:07.624] | : . | } [16:19:07.624] | : . | [16:19:07.626] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:07.627] | : get_transpiler() ... done [16:19:07.627] | : Transpile call expression ... [16:19:07.629] | : . future.apply::future_eapply(env = es, FUN = FUN, future.seed = FALSE, [16:19:07.629] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:07.629] | : . future.scheduling = 1, future.label = "future_eapply-%d") [16:19:07.630] | : Transpile call expression ... done [16:19:07.631] | : Evaluate transpiled call expression [16:19:07.682] | transpile() ... done [16:19:07.683] futurize() ... done Futures created: 2 [16:19:07.684] futurize() ... [16:19:07.684] | transpile() ... [16:19:07.685] | : get_transpiler() ... [16:19:07.686] | : . Finding call to be transpiled ... [16:19:07.686] | : . | descend_wrappers() ... [16:19:07.687] | : . | : Call: [16:19:07.688] | : . | : base::eapply [16:19:07.689] | : . | : parse_call() ... [16:19:07.690] | : . | : . Function: base::eapply(...) [16:19:07.691] | : . | : parse_call() ... done [16:19:07.691] | : . | descend_wrappers() ... done [16:19:07.692] | : . | parse_call() ... [16:19:07.692] | : . | : Function: base::eapply(...) [16:19:07.693] | : . | parse_call() ... done [16:19:07.693] | : . | Position of call to be transpiled in expression: c(1) [16:19:07.694] | : . | base::eapply [16:19:07.695] | : . Finding call to be transpiled ... done [16:19:07.695] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:07.696] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:07.696] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:07.697] | : . | Transpiler function: [16:19:07.697] | : . | function (expr, options = NULL) [16:19:07.697] | : . | { [16:19:07.697] | : . | call <- make_call("future_eapply") [16:19:07.697] | : . | fcn <- eval(call) [16:19:07.697] | : . | expr[[1]] <- call [16:19:07.697] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:07.697] | : . | { [16:19:07.697] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:07.697] | : . | if (is.null(defaults_base)) { [16:19:07.697] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:07.697] | : . | } [16:19:07.697] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:07.697] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:07.697] | : . | defaults <- defaults[keep] [16:19:07.697] | : . | specified <- attr(options, "specified") [16:19:07.697] | : . | if (length(specified) > 0) { [16:19:07.697] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:07.697] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:07.697] | : . | names(options)) [16:19:07.697] | : . | } [16:19:07.697] | : . | specified <- sprintf("future.%s", specified) [16:19:07.697] | : . | names <- setdiff(names(defaults), specified) [16:19:07.697] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:07.697] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:07.697] | : . | keep <- intersect(names(options), names(defaults)) [16:19:07.697] | : . | options <- options[keep] [16:19:07.697] | : . | options [16:19:07.697] | : . | })(options, fcn)) [16:19:07.697] | : . | expr <- as.call(parts) [16:19:07.697] | : . | expr [16:19:07.697] | : . | } [16:19:07.697] | : . | [16:19:07.699] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:07.700] | : get_transpiler() ... done [16:19:07.700] | : Transpile call expression ... [16:19:07.701] | : . future.apply::future_eapply(env = es, FUN = FUN, future.seed = FALSE, [16:19:07.701] | : . future.globals = TRUE, future.stdout = FALSE, future.conditions = character(0), [16:19:07.701] | : . future.scheduling = 1, future.label = "future_eapply-%d") [16:19:07.703] | : Transpile call expression ... done [16:19:07.703] | : Evaluate transpiled call expression [16:19:07.755] | transpile() ... done [16:19:07.756] futurize() ... done character(0) [16:19:07.758] futurize() ... [16:19:07.759] | transpile() ... [16:19:07.760] | : get_transpiler() ... [16:19:07.761] | : . Finding call to be transpiled ... [16:19:07.762] | : . | descend_wrappers() ... [16:19:07.763] | : . | : Call: [16:19:07.764] | : . | : base::eapply [16:19:07.765] | : . | : parse_call() ... [16:19:07.766] | : . | : . Function: base::eapply(...) [16:19:07.767] | : . | : parse_call() ... done [16:19:07.768] | : . | descend_wrappers() ... done [16:19:07.769] | : . | parse_call() ... [16:19:07.770] | : . | : Function: base::eapply(...) [16:19:07.771] | : . | parse_call() ... done [16:19:07.772] | : . | Position of call to be transpiled in expression: c(1) [16:19:07.772] | : . | base::eapply [16:19:07.774] | : . Finding call to be transpiled ... done [16:19:07.775] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:07.776] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:07.777] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:07.777] | : . | Transpiler function: [16:19:07.778] | : . | function (expr, options = NULL) [16:19:07.778] | : . | { [16:19:07.778] | : . | call <- make_call("future_eapply") [16:19:07.778] | : . | fcn <- eval(call) [16:19:07.778] | : . | expr[[1]] <- call [16:19:07.778] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:07.778] | : . | { [16:19:07.778] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:07.778] | : . | if (is.null(defaults_base)) { [16:19:07.778] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:07.778] | : . | } [16:19:07.778] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:07.778] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:07.778] | : . | defaults <- defaults[keep] [16:19:07.778] | : . | specified <- attr(options, "specified") [16:19:07.778] | : . | if (length(specified) > 0) { [16:19:07.778] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:07.778] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:07.778] | : . | names(options)) [16:19:07.778] | : . | } [16:19:07.778] | : . | specified <- sprintf("future.%s", specified) [16:19:07.778] | : . | names <- setdiff(names(defaults), specified) [16:19:07.778] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:07.778] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:07.778] | : . | keep <- intersect(names(options), names(defaults)) [16:19:07.778] | : . | options <- options[keep] [16:19:07.778] | : . | options [16:19:07.778] | : . | })(options, fcn)) [16:19:07.778] | : . | expr <- as.call(parts) [16:19:07.778] | : . | expr [16:19:07.778] | : . | } [16:19:07.778] | : . | [16:19:07.780] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:07.781] | : get_transpiler() ... done [16:19:07.782] | : Transpile call expression ... [16:19:07.784] | : . future.apply::future_eapply(env = es, FUN = FUN, future.seed = FALSE, [16:19:07.784] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:07.784] | : . future.scheduling = 1, future.chunk.size = 1L, future.label = "future_eapply-%d") [16:19:07.786] | : Transpile call expression ... done [16:19:07.787] | : Evaluate transpiled call expression [16:19:07.888] | transpile() ... done [16:19:07.889] futurize() ... done Test with RNG: futurize(base::eapply(env = es, FUN = FUN), seed = TRUE, flavor = "built-in") [16:19:07.890] futurize() ... [16:19:07.890] | transpile() ... [16:19:07.891] | : get_transpiler() ... [16:19:07.892] | : . Finding call to be transpiled ... [16:19:07.893] | : . | descend_wrappers() ... [16:19:07.893] | : . | : Call: [16:19:07.894] | : . | : base::eapply [16:19:07.895] | : . | : parse_call() ... [16:19:07.896] | : . | : . Function: base::eapply(...) [16:19:07.896] | : . | : parse_call() ... done [16:19:07.897] | : . | descend_wrappers() ... done [16:19:07.898] | : . | parse_call() ... [16:19:07.899] | : . | : Function: base::eapply(...) [16:19:07.900] | : . | parse_call() ... done [16:19:07.901] | : . | Position of call to be transpiled in expression: c(1) [16:19:07.901] | : . | base::eapply [16:19:07.902] | : . Finding call to be transpiled ... done [16:19:07.903] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:07.904] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:07.904] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:07.905] | : . | Transpiler function: [16:19:07.906] | : . | function (expr, options = NULL) [16:19:07.906] | : . | { [16:19:07.906] | : . | call <- make_call("future_eapply") [16:19:07.906] | : . | fcn <- eval(call) [16:19:07.906] | : . | expr[[1]] <- call [16:19:07.906] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:07.906] | : . | { [16:19:07.906] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:07.906] | : . | if (is.null(defaults_base)) { [16:19:07.906] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:07.906] | : . | } [16:19:07.906] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:07.906] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:07.906] | : . | defaults <- defaults[keep] [16:19:07.906] | : . | specified <- attr(options, "specified") [16:19:07.906] | : . | if (length(specified) > 0) { [16:19:07.906] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:07.906] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:07.906] | : . | names(options)) [16:19:07.906] | : . | } [16:19:07.906] | : . | specified <- sprintf("future.%s", specified) [16:19:07.906] | : . | names <- setdiff(names(defaults), specified) [16:19:07.906] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:07.906] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:07.906] | : . | keep <- intersect(names(options), names(defaults)) [16:19:07.906] | : . | options <- options[keep] [16:19:07.906] | : . | options [16:19:07.906] | : . | })(options, fcn)) [16:19:07.906] | : . | expr <- as.call(parts) [16:19:07.906] | : . | expr [16:19:07.906] | : . | } [16:19:07.906] | : . | [16:19:07.908] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:07.908] | : get_transpiler() ... done [16:19:07.909] | : Transpile call expression ... [16:19:07.911] | : . future.apply::future_eapply(env = es, FUN = FUN, future.seed = TRUE, [16:19:07.911] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:07.911] | : . future.scheduling = 1, future.label = "future_eapply-%d") [16:19:07.913] | : Transpile call expression ... done [16:19:07.913] | : Evaluate transpiled call expression [16:19:07.981] | transpile() ... done [16:19:07.982] futurize() ... done === eapply ========================== base::eapply(env = es, FUN = FUN, all.names = TRUE) --------------------------------- [16:19:07.984] futurize() ... [16:19:07.985] | transpile() ... [16:19:07.985] | : get_transpiler() ... [16:19:07.986] | : . Finding call to be transpiled ... [16:19:07.987] | : . | descend_wrappers() ... [16:19:07.987] | : . | : Call: [16:19:07.988] | : . | : base::eapply [16:19:07.989] | : . | : parse_call() ... [16:19:07.989] | : . | : . Function: base::eapply(...) [16:19:07.990] | : . | : parse_call() ... done [16:19:07.991] | : . | descend_wrappers() ... done [16:19:07.992] | : . | parse_call() ... [16:19:07.993] | : . | : Function: base::eapply(...) [16:19:07.994] | : . | parse_call() ... done [16:19:07.995] | : . | Position of call to be transpiled in expression: c(1) [16:19:07.995] | : . | base::eapply [16:19:07.996] | : . Finding call to be transpiled ... done [16:19:07.997] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:07.997] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:07.998] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:07.999] | : . | Transpiler function: [16:19:07.999] | : . | function (expr, options = NULL) [16:19:07.999] | : . | { [16:19:07.999] | : . | call <- make_call("future_eapply") [16:19:07.999] | : . | fcn <- eval(call) [16:19:07.999] | : . | expr[[1]] <- call [16:19:07.999] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:07.999] | : . | { [16:19:07.999] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:07.999] | : . | if (is.null(defaults_base)) { [16:19:07.999] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:07.999] | : . | } [16:19:07.999] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:07.999] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:07.999] | : . | defaults <- defaults[keep] [16:19:07.999] | : . | specified <- attr(options, "specified") [16:19:07.999] | : . | if (length(specified) > 0) { [16:19:07.999] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:07.999] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:07.999] | : . | names(options)) [16:19:07.999] | : . | } [16:19:07.999] | : . | specified <- sprintf("future.%s", specified) [16:19:07.999] | : . | names <- setdiff(names(defaults), specified) [16:19:07.999] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:07.999] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:07.999] | : . | keep <- intersect(names(options), names(defaults)) [16:19:07.999] | : . | options <- options[keep] [16:19:07.999] | : . | options [16:19:07.999] | : . | })(options, fcn)) [16:19:07.999] | : . | expr <- as.call(parts) [16:19:07.999] | : . | expr [16:19:07.999] | : . | } [16:19:07.999] | : . | [16:19:08.001] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:08.001] | : get_transpiler() ... done [16:19:08.002] | : Transpile call expression ... [16:19:08.003] | : . future.apply::future_eapply(env = es, FUN = FUN, all.names = TRUE, [16:19:08.003] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:08.003] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_eapply-%d") [16:19:08.005] | : Transpile call expression ... done [16:19:08.005] | : Evaluate transpiled call expression [16:19:08.065] | transpile() ... done [16:19:08.066] futurize() ... done Futures created: 2 [16:19:08.067] futurize() ... [16:19:08.068] | transpile() ... [16:19:08.069] | : get_transpiler() ... [16:19:08.070] | : . Finding call to be transpiled ... [16:19:08.071] | : . | descend_wrappers() ... [16:19:08.072] | : . | : Call: [16:19:08.072] | : . | : base::eapply [16:19:08.074] | : . | : parse_call() ... [16:19:08.074] | : . | : . Function: base::eapply(...) [16:19:08.075] | : . | : parse_call() ... done [16:19:08.076] | : . | descend_wrappers() ... done [16:19:08.077] | : . | parse_call() ... [16:19:08.078] | : . | : Function: base::eapply(...) [16:19:08.079] | : . | parse_call() ... done [16:19:08.079] | : . | Position of call to be transpiled in expression: c(1) [16:19:08.080] | : . | base::eapply [16:19:08.081] | : . Finding call to be transpiled ... done [16:19:08.082] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:08.083] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:08.084] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:08.085] | : . | Transpiler function: [16:19:08.086] | : . | function (expr, options = NULL) [16:19:08.086] | : . | { [16:19:08.086] | : . | call <- make_call("future_eapply") [16:19:08.086] | : . | fcn <- eval(call) [16:19:08.086] | : . | expr[[1]] <- call [16:19:08.086] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:08.086] | : . | { [16:19:08.086] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:08.086] | : . | if (is.null(defaults_base)) { [16:19:08.086] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:08.086] | : . | } [16:19:08.086] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:08.086] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:08.086] | : . | defaults <- defaults[keep] [16:19:08.086] | : . | specified <- attr(options, "specified") [16:19:08.086] | : . | if (length(specified) > 0) { [16:19:08.086] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:08.086] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:08.086] | : . | names(options)) [16:19:08.086] | : . | } [16:19:08.086] | : . | specified <- sprintf("future.%s", specified) [16:19:08.086] | : . | names <- setdiff(names(defaults), specified) [16:19:08.086] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:08.086] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:08.086] | : . | keep <- intersect(names(options), names(defaults)) [16:19:08.086] | : . | options <- options[keep] [16:19:08.086] | : . | options [16:19:08.086] | : . | })(options, fcn)) [16:19:08.086] | : . | expr <- as.call(parts) [16:19:08.086] | : . | expr [16:19:08.086] | : . | } [16:19:08.086] | : . | [16:19:08.087] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:08.088] | : get_transpiler() ... done [16:19:08.089] | : Transpile call expression ... [16:19:08.090] | : . future.apply::future_eapply(env = es, FUN = FUN, all.names = TRUE, [16:19:08.090] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = FALSE, [16:19:08.090] | : . future.conditions = character(0), future.scheduling = 1, [16:19:08.090] | : . future.label = "future_eapply-%d") [16:19:08.092] | : Transpile call expression ... done [16:19:08.093] | : Evaluate transpiled call expression [16:19:08.155] | transpile() ... done [16:19:08.156] futurize() ... done character(0) [16:19:08.157] futurize() ... [16:19:08.158] | transpile() ... [16:19:08.159] | : get_transpiler() ... [16:19:08.160] | : . Finding call to be transpiled ... [16:19:08.160] | : . | descend_wrappers() ... [16:19:08.161] | : . | : Call: [16:19:08.162] | : . | : base::eapply [16:19:08.163] | : . | : parse_call() ... [16:19:08.163] | : . | : . Function: base::eapply(...) [16:19:08.164] | : . | : parse_call() ... done [16:19:08.164] | : . | descend_wrappers() ... done [16:19:08.165] | : . | parse_call() ... [16:19:08.165] | : . | : Function: base::eapply(...) [16:19:08.166] | : . | parse_call() ... done [16:19:08.166] | : . | Position of call to be transpiled in expression: c(1) [16:19:08.167] | : . | base::eapply [16:19:08.168] | : . Finding call to be transpiled ... done [16:19:08.168] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:08.169] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:08.169] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:08.170] | : . | Transpiler function: [16:19:08.170] | : . | function (expr, options = NULL) [16:19:08.170] | : . | { [16:19:08.170] | : . | call <- make_call("future_eapply") [16:19:08.170] | : . | fcn <- eval(call) [16:19:08.170] | : . | expr[[1]] <- call [16:19:08.170] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:08.170] | : . | { [16:19:08.170] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:08.170] | : . | if (is.null(defaults_base)) { [16:19:08.170] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:08.170] | : . | } [16:19:08.170] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:08.170] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:08.170] | : . | defaults <- defaults[keep] [16:19:08.170] | : . | specified <- attr(options, "specified") [16:19:08.170] | : . | if (length(specified) > 0) { [16:19:08.170] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:08.170] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:08.170] | : . | names(options)) [16:19:08.170] | : . | } [16:19:08.170] | : . | specified <- sprintf("future.%s", specified) [16:19:08.170] | : . | names <- setdiff(names(defaults), specified) [16:19:08.170] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:08.170] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:08.170] | : . | keep <- intersect(names(options), names(defaults)) [16:19:08.170] | : . | options <- options[keep] [16:19:08.170] | : . | options [16:19:08.170] | : . | })(options, fcn)) [16:19:08.170] | : . | expr <- as.call(parts) [16:19:08.170] | : . | expr [16:19:08.170] | : . | } [16:19:08.170] | : . | [16:19:08.171] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:08.172] | : get_transpiler() ... done [16:19:08.172] | : Transpile call expression ... [16:19:08.173] | : . future.apply::future_eapply(env = es, FUN = FUN, all.names = TRUE, [16:19:08.173] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:08.173] | : . future.conditions = "condition", future.scheduling = 1, future.chunk.size = 1L, [16:19:08.173] | : . future.label = "future_eapply-%d") [16:19:08.174] | : Transpile call expression ... done [16:19:08.175] | : Evaluate transpiled call expression [16:19:08.293] | transpile() ... done [16:19:08.294] futurize() ... done Test with RNG: futurize(base::eapply(env = es, FUN = FUN, all.names = TRUE), seed = TRUE, flavor = "built-in") [16:19:08.296] futurize() ... [16:19:08.296] | transpile() ... [16:19:08.297] | : get_transpiler() ... [16:19:08.298] | : . Finding call to be transpiled ... [16:19:08.299] | : . | descend_wrappers() ... [16:19:08.300] | : . | : Call: [16:19:08.300] | : . | : base::eapply [16:19:08.302] | : . | : parse_call() ... [16:19:08.302] | : . | : . Function: base::eapply(...) [16:19:08.303] | : . | : parse_call() ... done [16:19:08.304] | : . | descend_wrappers() ... done [16:19:08.305] | : . | parse_call() ... [16:19:08.306] | : . | : Function: base::eapply(...) [16:19:08.306] | : . | parse_call() ... done [16:19:08.307] | : . | Position of call to be transpiled in expression: c(1) [16:19:08.308] | : . | base::eapply [16:19:08.309] | : . Finding call to be transpiled ... done [16:19:08.310] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:08.311] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:08.311] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:08.312] | : . | Transpiler function: [16:19:08.313] | : . | function (expr, options = NULL) [16:19:08.313] | : . | { [16:19:08.313] | : . | call <- make_call("future_eapply") [16:19:08.313] | : . | fcn <- eval(call) [16:19:08.313] | : . | expr[[1]] <- call [16:19:08.313] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:08.313] | : . | { [16:19:08.313] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:08.313] | : . | if (is.null(defaults_base)) { [16:19:08.313] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:08.313] | : . | } [16:19:08.313] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:08.313] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:08.313] | : . | defaults <- defaults[keep] [16:19:08.313] | : . | specified <- attr(options, "specified") [16:19:08.313] | : . | if (length(specified) > 0) { [16:19:08.313] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:08.313] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:08.313] | : . | names(options)) [16:19:08.313] | : . | } [16:19:08.313] | : . | specified <- sprintf("future.%s", specified) [16:19:08.313] | : . | names <- setdiff(names(defaults), specified) [16:19:08.313] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:08.313] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:08.313] | : . | keep <- intersect(names(options), names(defaults)) [16:19:08.313] | : . | options <- options[keep] [16:19:08.313] | : . | options [16:19:08.313] | : . | })(options, fcn)) [16:19:08.313] | : . | expr <- as.call(parts) [16:19:08.313] | : . | expr [16:19:08.313] | : . | } [16:19:08.313] | : . | [16:19:08.318] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:08.319] | : get_transpiler() ... done [16:19:08.320] | : Transpile call expression ... [16:19:08.321] | : . future.apply::future_eapply(env = es, FUN = FUN, all.names = TRUE, [16:19:08.321] | : . future.seed = TRUE, future.globals = TRUE, future.stdout = TRUE, [16:19:08.321] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_eapply-%d") [16:19:08.324] | : Transpile call expression ... done [16:19:08.325] | : Evaluate transpiled call expression [16:19:08.390] | transpile() ... done [16:19:08.391] futurize() ... done === eapply ========================== base::eapply(env = es, FUN = FUN, USE.NAMES = FALSE) --------------------------------- [16:19:08.393] futurize() ... [16:19:08.394] | transpile() ... [16:19:08.395] | : get_transpiler() ... [16:19:08.396] | : . Finding call to be transpiled ... [16:19:08.397] | : . | descend_wrappers() ... [16:19:08.398] | : . | : Call: [16:19:08.399] | : . | : base::eapply [16:19:08.400] | : . | : parse_call() ... [16:19:08.401] | : . | : . Function: base::eapply(...) [16:19:08.402] | : . | : parse_call() ... done [16:19:08.403] | : . | descend_wrappers() ... done [16:19:08.404] | : . | parse_call() ... [16:19:08.405] | : . | : Function: base::eapply(...) [16:19:08.405] | : . | parse_call() ... done [16:19:08.406] | : . | Position of call to be transpiled in expression: c(1) [16:19:08.407] | : . | base::eapply [16:19:08.408] | : . Finding call to be transpiled ... done [16:19:08.409] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:08.410] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:08.411] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:08.412] | : . | Transpiler function: [16:19:08.413] | : . | function (expr, options = NULL) [16:19:08.413] | : . | { [16:19:08.413] | : . | call <- make_call("future_eapply") [16:19:08.413] | : . | fcn <- eval(call) [16:19:08.413] | : . | expr[[1]] <- call [16:19:08.413] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:08.413] | : . | { [16:19:08.413] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:08.413] | : . | if (is.null(defaults_base)) { [16:19:08.413] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:08.413] | : . | } [16:19:08.413] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:08.413] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:08.413] | : . | defaults <- defaults[keep] [16:19:08.413] | : . | specified <- attr(options, "specified") [16:19:08.413] | : . | if (length(specified) > 0) { [16:19:08.413] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:08.413] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:08.413] | : . | names(options)) [16:19:08.413] | : . | } [16:19:08.413] | : . | specified <- sprintf("future.%s", specified) [16:19:08.413] | : . | names <- setdiff(names(defaults), specified) [16:19:08.413] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:08.413] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:08.413] | : . | keep <- intersect(names(options), names(defaults)) [16:19:08.413] | : . | options <- options[keep] [16:19:08.413] | : . | options [16:19:08.413] | : . | })(options, fcn)) [16:19:08.413] | : . | expr <- as.call(parts) [16:19:08.413] | : . | expr [16:19:08.413] | : . | } [16:19:08.413] | : . | [16:19:08.415] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:08.416] | : get_transpiler() ... done [16:19:08.417] | : Transpile call expression ... [16:19:08.418] | : . future.apply::future_eapply(env = es, FUN = FUN, USE.NAMES = FALSE, [16:19:08.418] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:08.418] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_eapply-%d") [16:19:08.420] | : Transpile call expression ... done [16:19:08.421] | : Evaluate transpiled call expression [16:19:08.492] | transpile() ... done [16:19:08.493] futurize() ... done Futures created: 2 [16:19:08.494] futurize() ... [16:19:08.494] | transpile() ... [16:19:08.495] | : get_transpiler() ... [16:19:08.496] | : . Finding call to be transpiled ... [16:19:08.497] | : . | descend_wrappers() ... [16:19:08.497] | : . | : Call: [16:19:08.498] | : . | : base::eapply [16:19:08.499] | : . | : parse_call() ... [16:19:08.500] | : . | : . Function: base::eapply(...) [16:19:08.501] | : . | : parse_call() ... done [16:19:08.501] | : . | descend_wrappers() ... done [16:19:08.502] | : . | parse_call() ... [16:19:08.503] | : . | : Function: base::eapply(...) [16:19:08.504] | : . | parse_call() ... done [16:19:08.505] | : . | Position of call to be transpiled in expression: c(1) [16:19:08.506] | : . | base::eapply [16:19:08.507] | : . Finding call to be transpiled ... done [16:19:08.507] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:08.508] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:08.509] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:08.510] | : . | Transpiler function: [16:19:08.510] | : . | function (expr, options = NULL) [16:19:08.510] | : . | { [16:19:08.510] | : . | call <- make_call("future_eapply") [16:19:08.510] | : . | fcn <- eval(call) [16:19:08.510] | : . | expr[[1]] <- call [16:19:08.510] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:08.510] | : . | { [16:19:08.510] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:08.510] | : . | if (is.null(defaults_base)) { [16:19:08.510] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:08.510] | : . | } [16:19:08.510] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:08.510] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:08.510] | : . | defaults <- defaults[keep] [16:19:08.510] | : . | specified <- attr(options, "specified") [16:19:08.510] | : . | if (length(specified) > 0) { [16:19:08.510] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:08.510] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:08.510] | : . | names(options)) [16:19:08.510] | : . | } [16:19:08.510] | : . | specified <- sprintf("future.%s", specified) [16:19:08.510] | : . | names <- setdiff(names(defaults), specified) [16:19:08.510] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:08.510] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:08.510] | : . | keep <- intersect(names(options), names(defaults)) [16:19:08.510] | : . | options <- options[keep] [16:19:08.510] | : . | options [16:19:08.510] | : . | })(options, fcn)) [16:19:08.510] | : . | expr <- as.call(parts) [16:19:08.510] | : . | expr [16:19:08.510] | : . | } [16:19:08.510] | : . | [16:19:08.512] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:08.512] | : get_transpiler() ... done [16:19:08.513] | : Transpile call expression ... [16:19:08.513] | : . future.apply::future_eapply(env = es, FUN = FUN, USE.NAMES = FALSE, [16:19:08.513] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = FALSE, [16:19:08.513] | : . future.conditions = character(0), future.scheduling = 1, [16:19:08.513] | : . future.label = "future_eapply-%d") [16:19:08.515] | : Transpile call expression ... done [16:19:08.515] | : Evaluate transpiled call expression [16:19:08.559] | transpile() ... done [16:19:08.559] futurize() ... done character(0) [16:19:08.560] futurize() ... [16:19:08.561] | transpile() ... [16:19:08.562] | : get_transpiler() ... [16:19:08.563] | : . Finding call to be transpiled ... [16:19:08.563] | : . | descend_wrappers() ... [16:19:08.564] | : . | : Call: [16:19:08.564] | : . | : base::eapply [16:19:08.565] | : . | : parse_call() ... [16:19:08.566] | : . | : . Function: base::eapply(...) [16:19:08.566] | : . | : parse_call() ... done [16:19:08.567] | : . | descend_wrappers() ... done [16:19:08.568] | : . | parse_call() ... [16:19:08.568] | : . | : Function: base::eapply(...) [16:19:08.569] | : . | parse_call() ... done [16:19:08.570] | : . | Position of call to be transpiled in expression: c(1) [16:19:08.570] | : . | base::eapply [16:19:08.571] | : . Finding call to be transpiled ... done [16:19:08.572] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:08.572] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:08.573] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:08.573] | : . | Transpiler function: [16:19:08.574] | : . | function (expr, options = NULL) [16:19:08.574] | : . | { [16:19:08.574] | : . | call <- make_call("future_eapply") [16:19:08.574] | : . | fcn <- eval(call) [16:19:08.574] | : . | expr[[1]] <- call [16:19:08.574] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:08.574] | : . | { [16:19:08.574] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:08.574] | : . | if (is.null(defaults_base)) { [16:19:08.574] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:08.574] | : . | } [16:19:08.574] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:08.574] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:08.574] | : . | defaults <- defaults[keep] [16:19:08.574] | : . | specified <- attr(options, "specified") [16:19:08.574] | : . | if (length(specified) > 0) { [16:19:08.574] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:08.574] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:08.574] | : . | names(options)) [16:19:08.574] | : . | } [16:19:08.574] | : . | specified <- sprintf("future.%s", specified) [16:19:08.574] | : . | names <- setdiff(names(defaults), specified) [16:19:08.574] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:08.574] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:08.574] | : . | keep <- intersect(names(options), names(defaults)) [16:19:08.574] | : . | options <- options[keep] [16:19:08.574] | : . | options [16:19:08.574] | : . | })(options, fcn)) [16:19:08.574] | : . | expr <- as.call(parts) [16:19:08.574] | : . | expr [16:19:08.574] | : . | } [16:19:08.574] | : . | [16:19:08.578] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:08.579] | : get_transpiler() ... done [16:19:08.580] | : Transpile call expression ... [16:19:08.582] | : . future.apply::future_eapply(env = es, FUN = FUN, USE.NAMES = FALSE, [16:19:08.582] | : . future.seed = FALSE, future.globals = TRUE, future.stdout = TRUE, [16:19:08.582] | : . future.conditions = "condition", future.scheduling = 1, future.chunk.size = 1L, [16:19:08.582] | : . future.label = "future_eapply-%d") [16:19:08.585] | : Transpile call expression ... done [16:19:08.586] | : Evaluate transpiled call expression [16:19:08.700] | transpile() ... done [16:19:08.701] futurize() ... done Test with RNG: futurize(base::eapply(env = es, FUN = FUN, USE.NAMES = FALSE), seed = TRUE, flavor = "built-in") [16:19:08.703] futurize() ... [16:19:08.704] | transpile() ... [16:19:08.704] | : get_transpiler() ... [16:19:08.705] | : . Finding call to be transpiled ... [16:19:08.706] | : . | descend_wrappers() ... [16:19:08.707] | : . | : Call: [16:19:08.708] | : . | : base::eapply [16:19:08.709] | : . | : parse_call() ... [16:19:08.709] | : . | : . Function: base::eapply(...) [16:19:08.710] | : . | : parse_call() ... done [16:19:08.711] | : . | descend_wrappers() ... done [16:19:08.712] | : . | parse_call() ... [16:19:08.713] | : . | : Function: base::eapply(...) [16:19:08.714] | : . | parse_call() ... done [16:19:08.714] | : . | Position of call to be transpiled in expression: c(1) [16:19:08.715] | : . | base::eapply [16:19:08.716] | : . Finding call to be transpiled ... done [16:19:08.717] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... [16:19:08.718] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:08.719] | : . | Transpiler description: base::eapply() -> future.apply::future_eapply() [16:19:08.719] | : . | Transpiler function: [16:19:08.720] | : . | function (expr, options = NULL) [16:19:08.720] | : . | { [16:19:08.720] | : . | call <- make_call("future_eapply") [16:19:08.720] | : . | fcn <- eval(call) [16:19:08.720] | : . | expr[[1]] <- call [16:19:08.720] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:08.720] | : . | { [16:19:08.720] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:08.720] | : . | if (is.null(defaults_base)) { [16:19:08.720] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:08.720] | : . | } [16:19:08.720] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:08.720] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:08.720] | : . | defaults <- defaults[keep] [16:19:08.720] | : . | specified <- attr(options, "specified") [16:19:08.720] | : . | if (length(specified) > 0) { [16:19:08.720] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:08.720] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:08.720] | : . | names(options)) [16:19:08.720] | : . | } [16:19:08.720] | : . | specified <- sprintf("future.%s", specified) [16:19:08.720] | : . | names <- setdiff(names(defaults), specified) [16:19:08.720] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:08.720] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:08.720] | : . | keep <- intersect(names(options), names(defaults)) [16:19:08.720] | : . | options <- options[keep] [16:19:08.720] | : . | options [16:19:08.720] | : . | })(options, fcn)) [16:19:08.720] | : . | expr <- as.call(parts) [16:19:08.720] | : . | expr [16:19:08.720] | : . | } [16:19:08.720] | : . | [16:19:08.722] | : . Locating 'futurize::add-on' transpiler for base::eapply() of class 'function' ... done [16:19:08.722] | : get_transpiler() ... done [16:19:08.723] | : Transpile call expression ... [16:19:08.725] | : . future.apply::future_eapply(env = es, FUN = FUN, USE.NAMES = FALSE, [16:19:08.725] | : . future.seed = TRUE, future.globals = TRUE, future.stdout = TRUE, [16:19:08.725] | : . future.conditions = "condition", future.scheduling = 1, future.label = "future_eapply-%d") [16:19:08.727] | : Transpile call expression ... done [16:19:08.727] | : Evaluate transpiled call expression [16:19:08.803] | transpile() ... done [16:19:08.804] futurize() ... done === replicate ========================== replicate(2, 42) --------------------------------- Skipping replicate() - not yet implemented for flavor = 'built-in' === replicate ========================== base::replicate(2, 42) --------------------------------- Skipping replicate() - not yet implemented for flavor = 'built-in' === kernapply ========================== kernapply(x = X, k = k) --------------------------------- Skipping kernapply() - not yet implemented for flavor = 'built-in' futurize() for replicate() should default to seed = TRUE [16:19:08.807] futurize() ... [16:19:08.808] | transpile() ... [16:19:08.809] | : get_transpiler() ... [16:19:08.809] | : . Finding call to be transpiled ... [16:19:08.810] | : . | descend_wrappers() ... [16:19:08.811] | : . | : Call: [16:19:08.812] | : . | : replicate [16:19:08.813] | : . | : parse_call() ... [16:19:08.813] | : . | : . Function: replicate(...) [16:19:08.814] | : . | : . Locate function ... [16:19:08.815] | : . | : . | Function located in: 'base' [16:19:08.816] | : . | : . Locate function ... done [16:19:08.816] | : . | : parse_call() ... done [16:19:08.817] | : . | descend_wrappers() ... done [16:19:08.818] | : . | parse_call() ... [16:19:08.819] | : . | : Function: replicate(...) [16:19:08.819] | : . | : Locate function ... [16:19:08.820] | : . | : . Function located in: 'base' [16:19:08.821] | : . | : Locate function ... done [16:19:08.822] | : . | parse_call() ... done [16:19:08.822] | : . | Position of call to be transpiled in expression: c(1) [16:19:08.823] | : . | replicate [16:19:08.824] | : . Finding call to be transpiled ... done [16:19:08.825] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... [16:19:08.825] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:08.826] | : . | Transpiler description: base::replicate() -> future.apply::future_replicate() [16:19:08.827] | : . | Transpiler function: [16:19:08.828] | : . | function (expr, options = NULL) [16:19:08.828] | : . | { [16:19:08.828] | : . | call <- make_call("future_replicate") [16:19:08.828] | : . | fcn <- eval(call) [16:19:08.828] | : . | expr[[1]] <- call [16:19:08.828] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:08.828] | : . | { [16:19:08.828] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:08.828] | : . | if (is.null(defaults_base)) { [16:19:08.828] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:08.828] | : . | } [16:19:08.828] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:08.828] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:08.828] | : . | defaults <- defaults[keep] [16:19:08.828] | : . | specified <- attr(options, "specified") [16:19:08.828] | : . | if (length(specified) > 0) { [16:19:08.828] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:08.828] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:08.828] | : . | names(options)) [16:19:08.828] | : . | } [16:19:08.828] | : . | specified <- sprintf("future.%s", specified) [16:19:08.828] | : . | names <- setdiff(names(defaults), specified) [16:19:08.828] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:08.828] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:08.828] | : . | keep <- intersect(names(options), names(defaults)) [16:19:08.828] | : . | options <- options[keep] [16:19:08.828] | : . | options [16:19:08.828] | : . | })(options, fcn)) [16:19:08.828] | : . | expr <- as.call(parts) [16:19:08.828] | : . | expr [16:19:08.828] | : . | } [16:19:08.828] | : . | [16:19:08.829] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... done [16:19:08.830] | : get_transpiler() ... done [16:19:08.830] | : Transpile call expression ... [16:19:08.832] | : . future.apply::future_replicate(2, rnorm(1), future.seed = TRUE, [16:19:08.832] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:08.832] | : . future.scheduling = 1, future.label = "future_replicate-%d") [16:19:08.833] | : Transpile call expression ... done [16:19:08.834] | : Evaluate transpiled call expression [16:19:08.867] | transpile() ... done [16:19:08.868] futurize() ... done Futures created: 2 futurize(seed = FALSE) gives RNG error with replicate() [16:19:08.933] futurize() ... [16:19:08.934] | transpile() ... [16:19:08.935] | : get_transpiler() ... [16:19:08.936] | : . Finding call to be transpiled ... [16:19:08.937] | : . | descend_wrappers() ... [16:19:08.937] | : . | : Call: [16:19:08.938] | : . | : replicate [16:19:08.939] | : . | : parse_call() ... [16:19:08.940] | : . | : . Function: replicate(...) [16:19:08.941] | : . | : . Locate function ... [16:19:08.941] | : . | : . | Function located in: 'base' [16:19:08.942] | : . | : . Locate function ... done [16:19:08.943] | : . | : parse_call() ... done [16:19:08.944] | : . | descend_wrappers() ... done [16:19:08.944] | : . | parse_call() ... [16:19:08.945] | : . | : Function: replicate(...) [16:19:08.946] | : . | : Locate function ... [16:19:08.947] | : . | : . Function located in: 'base' [16:19:08.947] | : . | : Locate function ... done [16:19:08.948] | : . | parse_call() ... done [16:19:08.949] | : . | Position of call to be transpiled in expression: c(1) [16:19:08.949] | : . | replicate [16:19:08.950] | : . Finding call to be transpiled ... done [16:19:08.951] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... [16:19:08.952] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:08.953] | : . | Transpiler description: base::replicate() -> future.apply::future_replicate() [16:19:08.954] | : . | Transpiler function: [16:19:08.954] | : . | function (expr, options = NULL) [16:19:08.954] | : . | { [16:19:08.954] | : . | call <- make_call("future_replicate") [16:19:08.954] | : . | fcn <- eval(call) [16:19:08.954] | : . | expr[[1]] <- call [16:19:08.954] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:08.954] | : . | { [16:19:08.954] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:08.954] | : . | if (is.null(defaults_base)) { [16:19:08.954] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:08.954] | : . | } [16:19:08.954] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:08.954] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:08.954] | : . | defaults <- defaults[keep] [16:19:08.954] | : . | specified <- attr(options, "specified") [16:19:08.954] | : . | if (length(specified) > 0) { [16:19:08.954] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:08.954] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:08.954] | : . | names(options)) [16:19:08.954] | : . | } [16:19:08.954] | : . | specified <- sprintf("future.%s", specified) [16:19:08.954] | : . | names <- setdiff(names(defaults), specified) [16:19:08.954] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:08.954] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:08.954] | : . | keep <- intersect(names(options), names(defaults)) [16:19:08.954] | : . | options <- options[keep] [16:19:08.954] | : . | options [16:19:08.954] | : . | })(options, fcn)) [16:19:08.954] | : . | expr <- as.call(parts) [16:19:08.954] | : . | expr [16:19:08.954] | : . | } [16:19:08.954] | : . | [16:19:08.956] | : . Locating 'futurize::add-on' transpiler for base::replicate() of class 'function' ... done [16:19:08.957] | : get_transpiler() ... done [16:19:08.957] | : Transpile call expression ... [16:19:08.959] | : . future.apply::future_replicate(2, rnorm(1), future.seed = FALSE, [16:19:08.959] | : . future.globals = TRUE, future.stdout = TRUE, future.conditions = "condition", [16:19:08.959] | : . future.scheduling = 1, future.label = "future_replicate-%d") [16:19:08.960] | : Transpile call expression ... done [16:19:08.961] | : Evaluate transpiled call expression Warning: Caught RngFutureError. Canceling all iterations ... [16:19:08.987] | transpile() ... done [16:19:08.988] futurize() ... done Special case: Zero futurize() options [16:19:08.989] futurize() ... [16:19:08.989] | transpile() ... [16:19:08.990] | : get_transpiler() ... [16:19:08.991] | : . Finding call to be transpiled ... [16:19:08.991] | : . | descend_wrappers() ... [16:19:08.992] | : . | : Call: [16:19:08.993] | : . | : lapply [16:19:08.994] | : . | : parse_call() ... [16:19:08.995] | : . | : . Function: lapply(...) [16:19:08.996] | : . | : . Locate function ... [16:19:08.997] | : . | : . | Function located in: 'base' [16:19:08.997] | : . | : . Locate function ... done [16:19:08.998] | : . | : parse_call() ... done [16:19:08.999] | : . | descend_wrappers() ... done [16:19:09.000] | : . | parse_call() ... [16:19:09.001] | : . | : Function: lapply(...) [16:19:09.002] | : . | : Locate function ... [16:19:09.003] | : . | : . Function located in: 'base' [16:19:09.004] | : . | : Locate function ... done [16:19:09.004] | : . | parse_call() ... done [16:19:09.005] | : . | Position of call to be transpiled in expression: c(1) [16:19:09.005] | : . | lapply [16:19:09.006] | : . Finding call to be transpiled ... done [16:19:09.006] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... [16:19:09.007] | : . | Namespaces registered with futurize(): 'base', 'stats' [16:19:09.008] | : . | Transpiler description: base::lapply() -> future.apply::future_lapply() [16:19:09.008] | : . | Transpiler function: [16:19:09.009] | : . | function (expr, options = NULL) [16:19:09.009] | : . | { [16:19:09.009] | : . | call <- make_call("future_lapply") [16:19:09.009] | : . | fcn <- eval(call) [16:19:09.009] | : . | expr[[1]] <- call [16:19:09.009] | : . | parts <- c(as.list(expr), (function (options, fcn, defaults = NULL) [16:19:09.009] | : . | { [16:19:09.009] | : . | if (length(options) == 0L && length(defaults) == 0L) return(options) [16:19:09.009] | : . | if (is.null(defaults_base)) { [16:19:09.009] | : . | defaults_base <<- get_defaults(future.apply::future_lapply) [16:19:09.009] | : . | } [16:19:09.009] | : . | defaults <- c(defaults_base, get_defaults(fcn), defaults) [16:19:09.009] | : . | keep <- !duplicated(names(defaults), fromLast = TRUE) [16:19:09.009] | : . | defaults <- defaults[keep] [16:19:09.009] | : . | specified <- attr(options, "specified") [16:19:09.009] | : . | if (length(specified) > 0) { [16:19:09.009] | : . | specified <- sub("^chunk_size$", "chunk.size", specified) [16:19:09.009] | : . | names(options) <- sub("^chunk_size$", "chunk.size", [16:19:09.009] | : . | names(options)) [16:19:09.009] | : . | } [16:19:09.009] | : . | specified <- sprintf("future.%s", specified) [16:19:09.009] | : . | names <- setdiff(names(defaults), specified) [16:19:09.009] | : . | names(options) <- sprintf("future.%s", names(options)) [16:19:09.009] | : . | for (name in names) options[[name]] <- defaults[[name]] [16:19:09.009] | : . | keep <- intersect(names(options), names(defaults)) [16:19:09.009] | : . | options <- options[keep] [16:19:09.009] | : . | options [16:19:09.009] | : . | })(options, fcn)) [16:19:09.009] | : . | expr <- as.call(parts) [16:19:09.009] | : . | expr [16:19:09.009] | : . | } [16:19:09.009] | : . | [16:19:09.010] | : . Locating 'futurize::add-on' transpiler for base::lapply() of class 'function' ... done [16:19:09.011] | : get_transpiler() ... done [16:19:09.011] | : Transpile call expression ... [16:19:09.012] | : . future.apply::future_lapply(1, identity) [16:19:09.013] | : Transpile call expression ... done [16:19:09.013] | : Evaluate transpiled call expression [16:19:09.028] | transpile() ... done [16:19:09.029] futurize() ... done Failed to undo environment variables: - Expected environment variables: [n=218] '!ExitCode', 'ALLUSERSPROFILE', 'APPDATA', 'BIBINPUTS', 'BINDIR', 'BSTINPUTS', 'COMMONPROGRAMFILES', 'COMPUTERNAME', 'COMSPEC', 'CURL_CA_BUNDLE', 'CV_Instance001', 'CYGWIN', 'CommonProgramFiles(x86)', 'CommonProgramW6432', 'DriverData', 'HOME', 'HOMEDRIVE', 'HOMEPATH', 'JAGS_ROOT', 'JAVA_HOME', 'LANGUAGE', 'LC_COLLATE', 'LC_MONETARY', 'LC_TIME', 'LOCALAPPDATA', 'LOGONSERVER', 'LS_HOME', 'LS_LICENSE_PATH', 'MAKE', 'MAKEFLAGS', 'MAKELEVEL', 'MFLAGS', 'MSMPI_BENCHMARKS', 'MSMPI_BIN', 'MSYS2_ENV_CONV_EXCL', 'NUMBER_OF_PROCESSORS', 'OCL', 'OMP_THREAD_LIMIT', 'OS', 'PATH', 'PATHEXT', 'PROCESSOR_ARCHITECTURE', 'PROCESSOR_IDENTIFIER', 'PROCESSOR_LEVEL', 'PROCESSOR_REVISION', 'PROGRAMFILES', 'PROMPT', 'PSModulePath', 'PUBLIC', 'PWD', 'ProgramData', 'ProgramFiles(x86)', 'ProgramW6432', 'RTOOLS44_HOME', 'RTOOLS45_HOME', 'R_ARCH', 'R_BROWSER', 'R_BZIPCMD', 'R_CMD', 'R_COMPILED_BY', 'R_CRAN_WEB', 'R_CUSTOM_TOOLS_PATH', 'R_CUSTOM_TOOLS_SOFT', 'R_DOC_DIR', 'R_ENVIRON_USER', 'R_GSCMD', 'R_GZIPCMD', 'R_HOME', 'R_INCLUDE_DIR', 'R_INSTALL_TAR', 'R_LIBS', 'R_LIBS_SITE', 'R_LIBS_USER', 'R_MAX_NUM_DLLS', 'R_OSTYPE', 'R_PAPERSIZE', 'R_PAPERSIZE_USER', 'R_PARALLELLY_MAKENODEPSOCK_AUTOKILL', 'R_PARALLELLY_MAKENODEPSOCK_CONNECTTIMEOUT', 'R_PARALLELLY_MAKENODEPSOCK_RSCRIPT_LABEL', 'R_PARALLELLY_MAKENODEPSOCK_SESSIONINFO_PKGS', 'R_PARALLELLY_MAKENODEPSOCK_TIMEOUT', 'R_PARALLELLY_RANDOM_PORTS', 'R_PARALLEL_PORT', 'R_RD4PDF', 'R_RTOOLS45_PATH', 'R_SCRIPT_LEGACY', 'R_SHARE_DIR', 'R_TESTME_NAME', 'R_TESTME_PACKAGE', 'R_TESTME_PATH', 'R_TESTS', 'R_UNZIPCMD', 'R_USER', 'R_VERSION', 'R_ZIPCMD', 'SED', 'SHLVL', 'SYSTEMDRIVE', 'SYSTEMROOT', 'TAR', 'TAR_OPTIONS', 'TEMP', 'TERM', 'TETRAD_DIR', 'TEXINPUTS', 'TMP', 'TMPDIR', 'USERDOMAIN', 'USERDOMAIN_ROAMINGPROFILE', 'USERNAME', 'USERPROFILE', 'WINDIR', '_', '_R_CHECK_AUTOCONF_', '_R_CHECK_BOGUS_RETURN_', '_R_CHECK_BROWSER_NONINTERACTIVE_', '_R_CHECK_BUILD_VIGNETTES_SEPARATELY_', '_R_CHECK_CODETOOLS_PROFILE_', '_R_CHECK_CODE_ASSIGN_TO_GLOBALENV_', '_R_CHECK_CODE_ATTACH_', '_R_CHECK_CODE_CLASS_IS_STRING_', '_R_CHECK_CODE_DATA_INTO_GLOBALENV_', '_R_CHECK_CODE_USAGE_VIA_NAMESPACES_', '_R_CHECK_CODE_USAGE_WITHOUT_LOADING_', '_R_CHECK_CODE_USAGE_WITH_ONLY_BASE_ATTACHED_', '_R_CHECK_CODOC_VARIABLES_IN_USAGES_', '_R_CHECK_COMPACT_DATA2_', '_R_CHECK_COMPILATION_FLAGS_', '_R_CHECK_CONNECTIONS_LEFT_OPEN_', '_R_CHECK_CRAN_INCOMING_', '_R_CHECK_CRAN_INCOMING_ASPELL_RECHECK_MAYBE_', '_R_CHECK_CRAN_INCOMING_ASPELL_RECHECK_START_', '_R_CHECK_CRAN_INCOMING_CHECK_FILE_URIS_', '_R_CHECK_CRAN_INCOMING_CHECK_URLS_IN_PARALLEL_', '_R_CHECK_CRAN_INCOMING_NOTE_GNU_MAKE_', '_R_CHECK_CRAN_INCOMING_REMOTE_', '_R_CHECK_CRAN_INCOMING_USE_ASPELL_', '_R_CHECK_DATALIST_', '_R_CHECK_DEPRECATED_DEFUNCT_', '_R_CHECK_DOC_SIZES2_', '_R_CHECK_DOT_FIRSTLIB_', '_R_CHECK_DOT_INTERNAL_', '_R_CHECK_EXAMPLE_TIMING_THRESHOLD_', '_R_CHECK_EXECUTABLES_', '_R_CHECK_EXECUTABLES_EXCLUSIONS_', '_R_CHECK_FF_CALLS_', '_R_CHECK_FF_DUP_', '_R_CHECK_FORCE_SUGGESTS_', '_R_CHECK_FUTURE_FILE_TIMESTAMPS_', '_R_CHECK_FUTURE_FILE_TIMESTAMPS_LEEWAY_', '_R_CHECK_HAVE_MYSQL_', '_R_CHECK_HAVE_ODBC_', '_R_CHECK_HAVE_PERL_', '_R_CHECK_HAVE_POSTGRES_', '_R_CHECK_INSTALL_DEPENDS_', '_R_CHECK_INTERNALS2_', '_R_CHECK_LENGTH_1_CONDITION_', '_R_CHECK_LICENSE_', '_R_CHECK_LIMIT_CORES_', '_R_CHECK_LOG_USE_INFO_', '_R_CHECK_MATRIX_DATA_', '_R_CHECK_MBCS_CONVERSION_FAILURE_', '_R_CHECK_NATIVE_ROUTINE_REGISTRATION_', '_R_CHECK_NEWS_IN_PLAIN_TEXT_', '_R_CHECK_NO_RECOMMENDED_', '_R_CHECK_NO_STOP_ON_TEST_ERROR_', '_R_CHECK_ORPHANED_', '_R_CHECK_OVERWRITE_REGISTERED_S3_METHODS_', '_R_CHECK_PACKAGES_USED_IGNORE_UNUSED_IMPORTS_', '_R_CHECK_PACKAGES_USED_IN_TESTS_USE_SUBDIRS_', '_R_CHECK_PACKAGE_DATASETS_SUPPRESS_NOTES_', '_R_CHECK_PACKAGE_NAME_', '_R_CHECK_PKG_SIZES_', '_R_CHECK_PKG_SIZES_THRESHOLD_', '_R_CHECK_PRAGMAS_', '_R_CHECK_RCPP_NOT_NEEDED_', '_R_CHECK_RD_BIBENTRIES_CITED_NOT_SHOWN_', '_R_CHECK_RD_EXAMPLES_T_AND_F_', '_R_CHECK_RD_LINE_WIDTHS_', '_R_CHECK_RD_MATH_RENDERING_', '_R_CHECK_RD_NOTE_LOST_BRACES_', '_R_CHECK_RD_VALIDATE_RD2HTML_', '_R_CHECK_REPLACING_IMPORTS_', '_R_CHECK_R_DEPENDS_', '_R_CHECK_S3_METHODS_SHOW_POSSIBLE_ISSUES_', '_R_CHECK_SCREEN_DEVICE_', '_R_CHECK_SERIALIZATION_', '_R_CHECK_SHLIB_OPENMP_FLAGS_', '_R_CHECK_SRC_MINUS_W_IMPLICIT_', '_R_CHECK_SUBDIRS_NOCASE_', '_R_CHECK_SUGGESTS_ONLY_', '_R_CHECK_SYSTEM_CLOCK_', '_R_CHECK_TESTS_NLINES_', '_R_CHECK_TEST_TIMING_', '_R_CHECK_TIMINGS_', '_R_CHECK_TOPLEVEL_FILES_', '_R_CHECK_UNDOC_USE_ALL_NAMES_', '_R_CHECK_UNSAFE_CALLS_', '_R_CHECK_URLS_RELATIVE_PATHS_', '_R_CHECK_URLS_SHOW_301_STATUS_', '_R_CHECK_VC_DIRS_', '_R_CHECK_VIGNETTES_NLINES_', '_R_CHECK_VIGNETTES_SKIP_RUN_MAYBE_', '_R_CHECK_VIGNETTE_TIMING_', '_R_CHECK_VIGNETTE_TITLES_', '_R_CHECK_WINDOWS_DEVICE_', '_R_CHECK_XREFS_NOTE_MISSING_PACKAGE_ANCHORS_', '_R_CHECK_XREFS_USE_ALIASES_FROM_CRAN_', '_R_CLASS_MATRIX_ARRAY_', '_R_DEPRECATED_IS_R_', '_R_S3_METHOD_LOOKUP_BASEENV_AFTER_GLOBALENV_', '_R_SHLIB_BUILD_OBJECTS_SYMBOL_TABLES_', '_R_USE_STRICT_R_HEADERS_', '__R_CHECK_DOC_FILES_NOTE_IF_ALL_INTERNAL__', 'maj.version', 'nextArg--timingsnextArg--install', 'tempdirname' - Environment variables still there: [n=0] - Environment variables missing: [n=1] 'MAKEFLAGS' Differences environment variable by environment variable: Skipping, because path appears not to be an 'R CMD check' folder: 'D:/temp/2026_03_18_16_10_17_7961' Test time: user.self=8s, sys.self=1s, elapsed=1e+01s, user.child=NAs, sys.child=NAs Test 'futurize-base-stats' ... success > > proc.time() user system elapsed 8.98 1.17 13.56