An R-focused pipeline toolkit for reproducibility and high-performance computing
dsl_sym()
instead of as.symbol()
when constructing commands for combine()
(#1340, @vkehayas).level_separation
argument to vis_drake_graph()
and render_drake_graph()
to control the aspect ratio of visNetwork
graphs (#1303, @matthewstrasiotto, @matthiasgomolka, @robitalec).caching = "master"
in favor of caching = "main"
..data
in DSL (#1323, @shirdekel).identical()
to compare file hashes (#1324, @shirdekel).seed = TRUE
in future::future()
.parallelism = "clustermq"
and caching = "worker"
(@richardbayes).NROW()
throws an error (#1300, julian-tagell
on Stack Overflow).lifecycle
that does not require badges to be in man/figures
.log_worker
argument of clustermq::workers()
to make()
and drake_config()
(#1305, @billdenney, @mschubert).as.is
to TRUE
in utils::type.convert()
(#1309, @bbolker).Fixes a documentation-related warning in the last submission (7.12.3).
cached_planned()
and cached_unplanned()
now work with non-standard cache locations (#1268, @Plebejer).use_cache
to FALSE
more often (#1257, @Plebejer).iris
dataset with the airquality
dataset in all documentation, examples, and tests (#1271).code_to_function()
to the proper environment (#1275, @robitalec).tidyselect
(#1274, @dernst).txtq
lockfiles (#1232, #1239, #1280, @danwwilson, @pydupont, @mattwarkentin).drake_script()
function to write _drake.R
files for r_make()
(#1282).expose_imports()
in favor of make(envir = getNamespace("yourPackage")
(#1286, @mvarewyck).r_make()
if getOption("drake_r_make_message")
is FALSE
(#1238, @januz).visNetwork
graph by using the hierarchical layout with visEdges(smooth = list(type = "cubicBezier", forceDirection = TRUE))
(#1289, @mstr3336).subtarget_hashes.cross()
for crosses on a single grouping variable.group()
used with specialized formats (#1236, @adamaltmejd).tidyselect
>= 1.0.0..names
argument (#1240, @maciejmotyka, @januz).drake_plan()
(#1237, @januz).cross()
sub-targets (#1204, @psadil). Expansion order is the same, but names are correctly matched now.file_out()
files in clean()
, even when garbage_collection
is TRUE
(#521, @the-Hull).keep_going = TRUE
for formatted targets (#1206).progress_bar
instead of progress
) so that drake
works without the progress
package (#1208, @mbaccou).config$settings
(#965).drake_done()
and drake_cancelled()
(#1205).drake_graph_info()
(#1207).verbose
is 2
(#1203, @kendonB).jobs
argument of clean()
.drake_build()
or drake_debug()
(#1214, @kendonB).hasty_build
(#1222).config$settings
(#965).file_in()
/file_out()
/knitr_in()
files are not literal strings (#1229).file_out()
and knitr_in()
in imported functions (#1229).knitr_in()
in dynamic branching (#1229).target()
.progress()
=> drake_progress()
, running()
=> drake_running()
, failed()
=> drake_failed()
) (#1205).digest
version to require 0.6.21 (#1166, @boshek)depend
trigger to toggle invalidation from dynamic-only dependencies, including the max_expand
argument of make()
.session_info
argument parsing (and reduce calls to utils::sessionInfo()
in tests).tibble
3.0.0.target(format = "file")
(#1168, #1127).max_expand
on a target-by-target basis via target()
(#1175, @kendonB).make()
, not in drake_config()
(#1156).make(verbose = 2)
, remove the spinner and use a progress bar to track how many targets are done so far.cli
(optional package).console_log_file
in favor of log_make
as an argument to make()
and drake_config()
."loop"
and "future"
parallel backends (#400).loadd()
RStudio addin through the new rstudio_drake_cache
global option (#1169, @joelnitta).recoverable()
, e.g. dynamic branching + dynamic files.drake_plan()
if a grouping variable is undefined or invalid (#1182, @kendonB).drake_deps
and drake_deps_ht
(#1183).rlang::trace_back()
to make diagnose()$error$calls
nicer (#1198).