Dynamic Function-Oriented 'Make'-Like Declarative Pipelines
Overview
Pipeline tools coordinate the pieces of computationally demanding analysis projects. The 'targets' package is a 'Make'-like pipeline tool for statistics and data science in R. The package skips costly runtime for tasks that are already up to date, orchestrates the necessary computation with implicit parallel computing, and abstracts files as R objects. If all the current output matches the current upstream code and data, then the whole pipeline is up to date, and the results are more trustworthy than otherwise. The methodology in this package borrows from GNU 'Make' (2015, ISBN:978-9881443519) and 'drake' (2018, doi:10.21105/joss.00550).
- Avoid loading non-targets in
tar_load(everything())(#1529, @pitakakariki). - For internal consistency, return
NA_character_fromtar_path_target()whenformatis"file"(#1532, @noamross). - Add
tar_option_unset()(#1521, @noamross). - Use a new
TAR_ACTIVEenvironment variable instead of a field of thetar_runtimeobject fortar_runtime()(https://github.com/ropensci/tarchetypes/issues/232, @lgaborini). - Add
tar_igraph()and recommend it along withigraph::find_cycle()for debugging (#1562, @tylermorganwall). - Avoid the unclean shutdown message in the
clustermqmulti-process scheduler by callingcleanup()repeatedly until it returnsTRUE. Uses exponential backoff to avoid excessive CPU load. - Use sequential controller in
covr. - Ensure hash stability of vector slices in R >= 4.6.0 (#1566).
- Use a dummy send instead of
send_wait()to work around <https://github.com/mschubert/clustermq/issues/340> (#1566). - Set
strict = TRUEby default intidyselect::eval_select()to maketidyselectinterfaces consistent withdplyr::select()(except theexcludeargument of graph functions, which need to allow names to not exist in the list of choices) (#1563, @statzhero).
From NEWS.md in the release
Install
Health
- OK13 OK2026-08-04
- NOTE12 OK, 1 NOTE2026-08-01
- OK13 OK2026-06-09
- ERROR12 OK, 1 ERROR2026-06-07
- OK14 OK2026-03-10
Documentation
- Help pages
- 162 (34 internal)includes a package overview page
- Examples that run
- 99%136 run in a plain check (73 of them under a condition) · 1 hold no code
- Exported functions with examples
- 85%
- Documented parameters
- 99%
- Return-value docs
- 84%
- Help pages citing references
- 2%
Downloads
Repository
- PRs merged (all time)
- 89%
- Median days to close, 50 most recently updated closed issues
- 1
- Median days to close, 50 most recently updated closed PRs
- 0
Stars over time
Forks over time
Releases over time
Issues over time
PRs over time
14 development-tooling and community-health practices detected across 6 families in the upstream repository
Checks run against github.com/ropensci/targets on 2026-10-11.
The R CMD check workflow runs on Linux, macOS and Windows, and on R-devel
GitHub Pages site last deployed 2021-01-12
Show all practicesHide 2 practices
Dependencies
Installing targets adds 29 packages (17 with compiled code, 17 MB of source tarballs). Heaviest: data.table 5.7 MB, igraph 4.8 MB, vctrs 1.0 MB.
Show all 22 packagesHide all 22 packages
Code & Tests
People & History
Pick two releases to compare their code metrics.
- RR 4.6.0 released · 2026-04-24
- 1.12.0Latest
- 1.11.42025-09-13 · diff ↗
- 1.11.32025-05-08 · diff ↗
- RR 4.5.0 released · 2025-04-11
- 1.11.1
- 1.10.12025-01-31 · diff ↗
- 1.10.02025-01-13 · diff ↗
- 1.9.12024-12-04 · diff ↗
- 1.9.0
- 1.8.02024-10-02 · diff ↗ ·
added 8 exports
tar_cas_d, tar_cas_e, tar_cas_u, tar_format_get, tar_repository_cas, tar_repository_cas_local, tar_repository_cas_local_gc, tar_resources_repository_cas - 1.7.12024-06-20 · diff ↗
- RR 4.4.0 released · 2024-04-24
- 1.7.0
- 1.6.0
- 1.5.12024-02-15 · diff ↗ ·
removed 2 exports
tar_random_name, use_targets_scheduleradded 2 exports
tar_assert_null, tar_message_validate
Show 38 earlier eventsHide 38 earlier events
- 1.4.12024-01-09 · diff ↗
- 1.4.02023-12-11 · diff ↗ ·
removed 4 exports
tar_as_pipeline, tar_path_objects_dir, tar_path_objects_dir_cloud, tar_pipeline_validate_liteadded 7 exports
tar_completed, tar_condition_traced, tar_dispatched, tar_seed_create, tar_seed_get, tar_seed_set, tar_unversion - 1.3.2
- 1.3.02023-09-11 · diff ↗ ·
added 6 exports
tar_meta_delete, tar_meta_download, tar_meta_sync, tar_meta_upload, tar_option_export, tar_print - 1.2.2
- 1.2.02023-06-26 · diff ↗
- 1.1.32023-05-23 · diff ↗
- 1.1.22023-05-23 · diff ↗ ·
added 5 exports
tar_backoff, tar_counter, tar_crew, tar_path_objects_dir, tar_resources_network - 1.0.0
- RR 4.3.0 released · 2023-04-21
- 0.14.32023-03-08 · diff ↗
- 0.14.22023-01-06 · diff ↗
- 0.14.12022-11-29 · diff ↗
- 0.14.02022-11-01 · diff ↗ ·
added 5 exports
tar_debug_instructions, tar_path_script, tar_path_script_support, tar_path_store, tar_path_target - 0.13.52022-09-26 · diff ↗
- 0.13.4
- 0.13.12022-08-05 · diff ↗ ·
removed 3 exports
as_pipeline, path_objects_dir_cloud, pipeline_validate_liteadded 7 exports
tar_as_pipeline, tar_assert_named, tar_callr_args_default, tar_path_objects_dir_cloud, tar_pipeline_validate_lite, tar_random_name, tar_source - 0.12.1
- RR 4.2.0 released · 2022-04-22
- 0.12.0
- 0.11.0
- 0.10.02022-01-08 · diff ↗ ·
added 5 exports
tar_active, tar_assert_function_arguments, tar_call, tar_format, tar_runtime_object - 0.9.0
- 0.8.12021-10-26 · diff ↗
- 0.8.0
- 0.7.02021-08-20 · diff ↗ ·
added 9 exports
tar_built, tar_canceled, tar_errored, tar_interactive, tar_make_interactive, tar_noninteractive, tar_skipped, tar_started, tar_toggle - 0.6.02021-07-21 · diff ↗ ·
added 67 exports
path_objects_dir_cloud, tar_assert_chr, tar_assert_dbl, tar_assert_df, tar_assert_envir, tar_assert_equal_lengths, tar_assert_expr, tar_assert_flag, tar_assert_function, tar_assert_ge, tar_assert_identical, tar_assert_in, tar_assert_inherits, tar_assert_int, tar_assert_internet, tar_assert_lang, tar_assert_le, tar_assert_lgl, tar_assert_list, tar_assert_match, tar_assert_name, tar_assert_names, tar_assert_nonempty, tar_assert_nonmissing, tar_assert_not_dir, tar_assert_not_dirs, tar_assert_not_expr, tar_assert_not_in, tar_assert_nzchar, tar_assert_package and 37 more - RR 4.1.0 released · 2021-05-18
- unarchivedReturned to CRAN2021-04-30
- 0.4.22021-04-30 · diff ↗
- archivedRemoved from CRAN2021-04-25check problems were not corrected in time
- 0.4.12021-04-22 · diff ↗ ·
added 7 exports
tar_config_get, tar_config_set, tar_envvars, tar_poll, tar_progress_summary, tar_timestamp, tar_timestamp_raw - 0.3.12021-03-28 · diff ↗
- 0.3.0
- 0.2.02021-02-27 · diff ↗ ·
added 9 exports
tar_exist_meta, tar_exist_objects, tar_exist_process, tar_exist_progress, tar_exist_script, tar_helper, tar_helper_raw, tar_pid, tar_process - 0.1.0
- 0.0.22021-01-21
- RR 4.0.0 released · 2020-04-24
Package metadata
- First published
- 2021-01-21
- Total releases
- 45 / 5 yrs
- License
- MIT + file LICENSE OSI
- Minimum R
- ≥ 3.5.0
- Download size
- 753 KB
Cite
Cite this package
Run in R for the authors' entry:
citation("targets")The package provides a citation file, so citation() returns the authors' own entry.
It points to 10.21105/joss.02959.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-18, which the citation names so these numbers can be found later. More on citing and the projects behind them.