Releases: ropensci/targets
Releases · ropensci/targets
Integration with {crew}
targets 1.0.0
targets
is moving to version 1.0.0 because it is significantly more mature than previous versions. Specifically,
tar_make()
now integrates withcrew
, which will significantly improve the waytargets
does high-performance computing going forward.- All other functionality in
targets
has stabilized. There is still room for smaller new features, but none as large ascrew
integration, none that will fundamentally change how the package operates.
Major improvements
- Support distributed computing through the
crew
package intar_make()
(#753).crew
itself is still in its early stages and currently lacks the launcher plugins to match theclustermq
andfuture
backends, but long-term,crew
will be the predominant high-performance computing backend.
Minor improvements
- Add a new
store_copy_object()
to the store class to enable"fst_dt"
and other formats to make deep copies when needed (#1041, @MilesMcBain). - Add a new
copy
argument to allowtar_format()
formats to set thestore_copy_object()
method (#1041, @MilesMcBain). - Shorten the output string returned by
tar_format()
when default methods are used. - Add a
change_directory
argument totar_source()
(#1040, @dipterix). - In
format = "url"
targets, implement retries and timeouts when connecting to URLs. The default timeout is 10 seconds, and the default retry interval is 1 second. Both are configurable viatar_resources_url()
(#1048). - Use
parallelly::freePort()
intar_random_port()
. - Rename a target and a function in the
tar_script()
example pipeline (#1033, @b-rodrigues). - Edit the description.
CRAN patch
targets 0.14.3
- Handle encoding errors while trying to process error and warning messages (#1019, @adrian-quintario).
- Fix S3 generic/method consistency.
Error handling tweaks
targets 0.14.2
- Forward user-level custom error conditions to the top of the pipeline (#997, @alexverse).
- Link to the help page of the manual.
Bug fixes
targets 0.14.1
- Fix the command inserted for debug mode (#975).
- Set empty chunk options to ensure Target Markdown compatibility with the special "setup" chunk (#973, @KaiAragaki).
- Only store the first 50 warnings in the metadata, and cap the text of the warning messages at 2048 characters (#983, @thejokenott).
- Enhance the
tar_destroy()
help file (#988, @Sage0614). - Implement
destroy = "user"
intar_destroy()
.
Extend RNG seed functionality
targets 0.14.0
- Move
#!/bin/sh
line to the top of SLURMclustermq
template 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 aseed
argument, 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 whenseed
isFALSE
in the target'star_cue()
(#882, @sworland-thyme, @joelnitta). - Implement a
seed
argument intar_cue()
to control whether targets update in response to changing orNA
seeds (#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_function
isNULL
(#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
convert
argument 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 withtidyselect
1.1.2.9000 (#928, @hadley). - Make the
run.R
fromuse_targets()
executable (#929, @petrbouchal). - Add
#!/usr/bin/env Rscript
to the top ofrun.R
fromuse_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\ s
argument 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 theimports
option oftar_option_set()
. - Import datasets from packages in the
imports
option 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
command
column oftar_manifest()
output, separate lines with "\n" instead of "\n" so the text output is straightforward to work with. - Add a
drop_missing
argument totar_manifest()
to hide/show columns with allNA
values. - Do not set Parquet version.
Fix reverse dependency checks
targets 0.13.1
- Fix reverse dependency checks.