-
progressify()now unwrapswithCallingHandlers(), e.g.withCallingHandlers(lapply(xs, fcn), warning = ...) |> progressify(). -
Much more informative error messages when trying to progressify an S3 or S4 generic function call that dispatches to a method that is not supported, e.g.
summary(fit) |> progressify(), and when trying to progressify a function that is not part of a package. -
Error messages produced by
progressify()now include the progressify version.
-
progressify()on an S3 or S4 generic function call, where the first argument is not a variable, e.g.summary(get_fit()) |> progressify(), would evaluate that argument twice. Now it is evaluated only once. -
progressify()on an expression that is not a function call, e.g.{ }orlocal({ }), would produce an obscure error on "invalid type/length (symbol/1) in vector allocation". Now it gives an informative error explaining that the expression is not a function call. -
progressify()formapply(),Map(),.mapply(),apply(), andtapply()would produce an error onobject '.progressr_progressor' not found. -
progressify()forfuture_mapply(),future_Map(), andfuture_.mapply()of future.apply would produce an error onlength(idx_FUN) == 1L is not TRUE. -
progressify()forfuture_apply()andfuture_tapply()of future.apply would produce an error onobject '.progressr_progressor' not found. -
progressify()forfwb()of fwb would produce an error iffwb()argumentRwas not specified. -
progressify()forpmap()andpmap_*()of purrr, the correspondingfuture_pmap()andfuture_pmap_*()of furrr,pmap_vec()andfuture_pmap_vec()of crossmap, and.mapply()andfuture_.mapply()would produce an error onsubscript out of boundsif there were zero elements to iterate over. -
progressify()would evaluate the input argument twice, e.g.Xoflapply(),.xofpurrr::map(),nofreplicate(),dataofby(),.lofcrossmap::xmap(),Xofstats::dendrapply(), and the first iteration argument offoreach().
- Changed the package license to permissive Apache License (>= 2).
-
Add support for domain-specific CRAN package boot, e.g.
res <- boot::boot(data, statistic, R = 100) |> progressify(). -
Add support for crossmap
future_*()variants, e.g.y <- crossmap::future_xmap(xs, fcn) |> progressify(). -
Add support for furrr 0.4.0
*_vec()variants:future_map_vec(),future_map2_vec(),future_pmap_vec(), andfuture_imap_vec(). -
Add support for domain-specific CRAN package fwb, e.g.
res <- fwb::fwb(data, statistic, R = 100) |> progressify(). -
Add support for domain-specific CRAN package lme4, e.g.
res <- lme4::bootMer(fit, statistic, nsim = 100) |> progressify(). -
Add support for
purrr::imap_vec(). -
Add support for domain-specific CRAN package sandwich, e.g.
v <- sandwich::vcovBS(fit) |> progressify(). -
Add support for domain-specific CRAN package SimDesign, e.g.
res <- SimDesign::runSimulation(design, replications, generate, analyse, summarise) |> progressify().
This is a retake of the previous, proof-of-concept version. Starting with this version, we are now borrowing from the futurize package, which implements closely related "parallelization" transpilers.
-
Add support for map-reduce CRAN package future.apply, e.g.
y <- future.apply::future_lapply(xs, fcn) |> progressify(). -
Add support for CRAN package crossmap, e.g.
y <- crossmap::xmap(xs, fcn) |> progressify(). -
Add support for purrr, e.g.
y <- purrr::map(xs, fcn) |> progressify(). -
Add support for map-reduce CRAN package furrr, e.g.
y <- furrr::future_map(xs, fcn) |> progressify(). -
Add support for map-reduce CRAN package foreach, e.g.
y <- foreach(x = xs) %do% { fcn(x) } |> progressify(). -
Add support for map-reduce CRAN package doFuture, e.g.
y <- foreach(x = xs) %dofuture% { fcn(x) } |> progressify(). -
Add support for plyr, e.g.
y <- plyr::llply(xs, fcn) |> progressify(). -
Add support for
replicate(), e.g.y <- replicate(n, rnorm(10)) |> progressify(). -
Add support for base-R package stats, e.g.
d2 <- dendrapply(d, fcn) |> progressify(). -
Add support for domain-specific CRAN package partykit, e.g.
y <- partykit::cforest(formula, data, ntree = 50L) |> progressify(). -
Add
progressify_supported_packages()andprogressify_supported_functions()for programmatically querying which packages and functions are supported byprogressify().
-
The
progressify()function makes common map-reduce functions report on progress. Progress notifications are relayed, among other things. -
Add support for base R, e.g.
y <- lapply(xs, fcn) |> progressify(). -
Add support for purrr, e.g.
y <- map(xs, fcn) |> progressify(). -
Add support for foreach, e.g.
y <- foreach(x = xs) %do% { fcn(x) } |> progressify(). -
Add support for plyr, e.g.
y <- llply(xs, fcn) |> progressify().