For developers only: get the environment where a target runs its command. Designed to be called while the target is running. The environment inherits from tar_option_get("envir").

tar_envir(default = parent.frame())



Environment, value to return if tar_envir() is called on its own outside a targets pipeline. Having a default lets users run things without tar_make(), which helps peel back layers of code and troubleshoot bugs.


If called from a running target, tar_envir() returns the environment where the target runs its command. If called outside a pipeline, the return value is whatever the user supplies to default (which defaults to parent.frame()).


Most users should not use tar_envir() because accidental modifications to parent.env(tar_envir()) could break the pipeline. tar_envir() only exists in order to support third-party interface packages, and even then the returned environment is not modified.

See also

Other utilities: tar_cancel(), tar_definition(), tar_group(), tar_name(), tar_path(), tar_seed()


#> <environment: 0x55bec1478f88>
tar_envir(default = new.env(parent = emptyenv()))
#> <environment: 0x55bec158e2c0>
if (identical(Sys.getenv("TAR_EXAMPLES"), "true")) { tar_dir({ # tar_dir() runs code from a temporary directory. tar_script(tar_target(x, tar_envir(default = parent.frame()))) tar_make(x) tar_read(x) }) }