Valentin Maerten
f140d9a920
feat(if): add conditional execution for tasks and commands
...
Add `if` field to tasks and commands that allows conditional execution
based on a shell command exit code. When the condition returns non-zero,
the task/command is silently skipped (with verbose logging).
- Task-level: skip entire task if condition fails
- Command-level: skip individual command if condition fails
- Supports template variables in conditions
- Works with for loops (condition evaluated per iteration)
- Works with deferred commands
2025-12-08 22:10:07 +01:00
Andrey Nering
9b99866224
feat: add --failfast and failtest: true to control dependencies ( #2525 )
2025-12-07 17:23:08 -03:00
Timothy Rule
386dcbc1a0
fix: adjust run: when_changed to work correctly with imported tasks ( #2511 )
2025-11-22 17:17:13 -03:00
Andrey Nering
ee99849b1d
refactor: migrate to the official yaml package ( #2434 )
...
The old package is long archived, but the YAML org forked it and will
officially maintain it from now on.
* Old: https://github.com/go-yaml/yaml
* New: https://github.com/yaml/go-yaml
2025-11-11 19:49:37 +00:00
Valentin Maerten
48039be12c
feat: improve fingerprint, run and output with wildcard ( #1808 )
2025-09-11 19:33:53 +02:00
Matheus Mina
5581954fb1
feat: allow providing single or multi prompts ( #1866 )
...
* Add new type to handle single or multi prompts
* update docs
* apply review
2024-10-29 13:37:03 +00:00
Pete Davison
3aaa3223a0
fix: run once in shared dependencies ( #1655 )
...
* fix: run once in shared dependencies
* feat: add test
2024-06-28 16:50:02 +01:00
Pete Davison
8d138a5eea
feat: better yaml parsing and error handling ( #1619 )
2024-05-16 01:24:02 +00:00
Pete Davison
aff1f5316d
feat: taskfile special variable ( #1523 )
2024-03-03 22:45:23 +00:00
Pete Davison
9a3d2bc3aa
feat: wildcard matching of task names
2024-02-22 14:58:24 -06:00
Pete Davison
5fc66293b0
refactor: IncludedTaskfiles -> Includes
2024-01-11 14:00:30 +00:00
Pete Davison
247c2586c2
refactor: taskfile/ast package ( #1450 )
...
* refactor: ast package
* feat: read -> taskfile
* refactor: taskfile.Taskfile -> taskfile.Read
* refactor: move merge function back into taskfile package
* refactor: rename taskfile.go to read.go
2023-12-29 20:32:03 +00:00