Releases: ropensci/targets
Releases · ropensci/targets
Extend RNG seed functionality
targets 0.14.0
- Move
#!/bin/shline to the top of SLURMclustermqtemplate file (#944, #955, @GiuseppeTT). - Add new function
tar_path_script(). - Rename
tar_store()totar_path_store()with deprecation. - Rename
tar_path()totar_path_target()with deprecation. - Add new function
tar_path_script_support(). - Make Target Markdown target scripts dynamically locate their support scripts so the appropriate scripts can be found even when they are generated from one directory and sourced from another (#953, #957, @TylerGrantSmith).
- Allow user-side control of the seeds at the pipeline level.
tar_option_set()now supports aseedargument, and target-specific seeds are determined bytar_option_get("seed")and the target name.tar_option_set(seed = NA)disables seed-setting behavior but forcibly invalidates all the affected targets except whenseedisFALSEin the target'star_cue()(#882, @sworland-thyme, @joelnitta). - Implement a
seedargument intar_cue()to control whether targets update in response to changing orNAseeds (#882, @sworland-thyme, @joelnitta). - Reduce the number of per-target AWS/GCP storage API calls. Previously there were 3 API calls per target, including 2 HEAD requests. Now there is just 1 for a typical target (unless dependencies have to be downloaded). Relies on S3 strong read-after-write consistency (#958).
- Update the
tar_github_actions()workflow file to use@v2(#960, @kulinar). - Print helpful hints while debugging a target interactively (#961).
- Only attempt to debug a target when
callr_functionisNULL(#961). - Make formats
"feather","parquet","file", and"url"work witherror = "null"(#969). - Declare formats
"keras"and"torch"superseded bytar_format(). Documented in thetar_target()help file. - Declare formats
"keras"and"torch"incompatible witherror = "null". Documented in thetar_target()help file and in a warning thrown bytar_target()viatar_target_raw(). - Add a
convertargument totar_format()to allow customstore_convert_object()methods (#970).
tidyselect compat
targets 0.13.5
- Use
any_of()instead ofall_of()in tests to ensure compatibility withtidyselect1.1.2.9000 (#928, @hadley). - Make the
run.Rfromuse_targets()executable (#929, @petrbouchal). - Add
#!/usr/bin/env Rscriptto the top ofrun.Rfromuse_targets()(#929, @petrbouchal).
Reduce CRAN check time
targets 0.13.4
- Implement custom alternative to
skip_on_cran()to avoid r-lib/testthat#1470 (comment). - Skip more tests on CRAN.
Package data and error messages
targets 0.13.3
Enhancements
- Print "no targets found" when there are no targets in the pipeline to check or build, or if the
name\ sargument oftar_make()does not identify any such targets in the pipeline (#923, @llrs). - Ignore
.packageName,.__NAMESPACE__., and.__S3MethodsTable__.when importing objects from pack
ages with theimportsoption oftar_option_set(). - Import datasets from packages in the
importsoption oftar_option_set()(#926, @joelnitta). - Print target-specific elapsed runtimes in the verbose and timestamp reporters.
- Improve error messages in functions like
tar_read()andtar_load()when the data store is missing.
Nicer error handling
targets 0.13.2
Bug fixes
- Do not incorrectly reference feather resources for parquet storage.
Enhancements
- Simplify and improve error handling.
- In the
commandcolumn oftar_manifest()output, separate lines with "\n" instead of "\n" so the text output is straightforward to work with. - Add a
drop_missingargument totar_manifest()to hide/show columns with allNAvalues. - Do not set Parquet version.
Fix reverse dependency checks
targets 0.13.1
- Fix reverse dependency checks.
{paws} options and tar_source()
targets 0.13.0
Bug fixes
- Do not bootstrap the junction of a stem unless the target is branched over (#858, @dipterix).
- For non-"file" AWS targets, immediately delete the scratch file after the target is uploaded (#889, @stuvet).
New features
- Allow extra arguments to
pawsfunctions via...intar_resources_aws()(#855, @michkam89). - Add
tar_source()to conveniently source R scripts (e.g. in_targets.R).
Enhancements
- Color ordinary
targetsmessages the default theme color, and color warnings and errors red (#856, @gorkang). - Automatically supply job names in the scripts generated by
use_targets(). - Inherit resources one-by-one in nested fashion from
tar_option_get("resources")(#892). See the revised"Resources"section of thetar_resources()help file for details.
Improvements to use_targets(), tar_mermaid(), and error printing
targets 0.12.1
New features
- Add arguments
legendandcolorto further configuretar_mermaid()(#848, @noamross). - For HPC schedulers like SLURM and SGE,
use_targets()now creates ajob.shscript to run the pipeline as a cluster job (#839).
Enhancements
- Use lapply() to source scripts in
use_targets(). Avoids defining a global variable for the file. - Recursively find scripts to source in the
use_targets()_targets.Rfile. - Refactor error printing.
A better use_targets(), tar_load_everything(), and bug fixes
targets 0.12.0
Bug fixes
- Fix
tar_mermaid()graph ordering. - Hash the node names and quote the label names of
tar_mermaid()graphs to avoid JavaScript keywords. - Remove superfluous line breaks in the node labels of graph visuals.
- Fix metadata migration to version >= 0.10.0 (#812, @tjmahr).
data.table::fread()with encoding equal togetOption("encoding")if available (#814, @svraka). Only works with UTF-8 and latin1 because that is whatdata.tablesupports.- Force add files in GitHub Actions workflow job (#815, @tarensanders).
New features
use_targets()now writes a_targets.Rfile tailored to the project in the current working directory (#639, @noamross).- Move the old
use_targets()touse_targets_rmd().
Enhancements
- Load packages when loading data for downstream targets in the pipeline (#713).
- Handle edge case when
getOption("OutDec")is not"."to prevent time stamps from being corrupted (#433, @jarauh). - Added helper function
tar_load_everything()to quickly load all targets (#823, @malcolmbarrett)
Google Cloud Storage, mermaid.js static graphs, and error = "null"
targets 0.11.0
Bug fixes
- Print out the relevant target names if targets have conflicting names.
- Catch all the target warnings instead of just reporting the last one.
- Allow 200 group URL status codes instead of just 200 (#797, @petrbouchal).
New features
- Add Google Cloud Storage via
tar_target(..., repository = "gcp")(#720, @MarkEdmondson1234). Special thanks to @MarkEdmondson1234 for the cloud storage utilities inR/utils_gcp.R mermaid.jsstatic graphs withtar_mermaid()(#775, @yonicd).- Implement
tar_target(..., error = "null")to allow errored targets to returnNULLand continue (#807, @zoews). Errors are still registered, those targets are not up to date, and downstream targets have an easier time continuing on. - Implement
tar_assert_finite(). tar_destroy(),tar_delete(), andtar_prune()now attempt to delete cloud data for the appropriate targets (#799). In addition,tar_exist_objects()andtar_objects()now report about target data in the cloud when applicable. Add a newcloudargument to each function to optionally suppress this new behavior.- Add a
zoom_speedargument totar_visnetwork()andtar_glimpse()(#749, @dipterix). - Report the total runtime of the pipeline in the
"verbose","verbose_positives","timestamp", and"timesamp_positives"reporters.
Enhancements
- Allow target name character strings to have attributes (#758, @psanker).
- Sort metadata rows when the pipeline finishes so that version-controlling the metadata is easier (#766, @jameelalsalam).
Deprecations
- Deprecate the
"aws_*"storage format values in favor of a newrepositoryargument (#803). In other words,tar_target(..., format = "aws_qs")is nowtar_target(..., format = "qs", repository = "aws"). And internally, storage classes with multiple inheritance are created dynamically as opposed to having hard-coded source files. All this paves the way to add new cloud storage platforms without combinatorial chaos.