Valentin Maerten
7d92de8e44
Apply suggestions from code review
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-06-07 16:16:58 +02:00
Valentin Maerten
de99487b65
style: fix formatting
2026-06-07 15:02:56 +02:00
Valentin Maerten
7705f922c1
rename: gitignore -> use_gitignore for clarity
...
Rename the Taskfile/task option from `gitignore` to `use_gitignore`
to avoid ambiguity (could be read as "ignore git" vs "use .gitignore").
Consistent with Biome's `useIgnoreFile` naming convention.
2026-06-07 15:02:56 +02:00
Valentin Maerten
7cea8e3364
refactor: remove rootDir param, auto-detect .git as boundary
...
Walk up from task dir to find .git instead of threading rootDir through
Globs, checkers, and itemsFromFor. Gitignore rules are discarded if no
.git is found, matching ripgrep's require_git behavior. This keeps the
Globs signature clean and makes the future .taskignore integration
straightforward (loaded at setup like .taskrc, separate boundary).
2026-06-07 15:02:55 +02:00
Valentin Maerten
fe542d5418
feat: add gitignore option to exclude ignored files from sources/generates
...
When `gitignore: true` is set at the Taskfile or task level, files
matching .gitignore rules are automatically excluded from sources and
generates glob resolution. This prevents rebuilds triggered by changes
to files that are in .gitignore (build artifacts, generated files, etc.).
Uses go-git to load .gitignore patterns including nested .gitignore
files, .git/info/exclude, and global gitignore configuration.
2026-06-07 15:02:39 +02:00
Valentin Maerten
8b6aca5722
feat(requires): support variable references in enum constraints ( #2678 )
2026-03-21 11:32:02 +01:00
Andrey Nering
fc5f6fa3aa
fix: pin yaml package to v3 for now ( #2693 )
2026-02-17 15:29:51 -03:00
Timothy Rule
df7810ab63
fix: copy watch when merging tasks during import ( #2686 )
2026-02-15 14:42:59 +01:00
Timothy Rule
f6720760b4
fix(includes): propagate silent mode from included Taskfiles to tasks ( #2640 )
2026-01-25 16:33:52 +01:00
Valentin Maerten
9bc1efbc47
feat: add conditional execution for tasks and commands ( #2564 )
2026-01-21 23:05:40 +01:00
Valentin Maerten
618cd8956f
feat: wildcard match aliases ( #2234 )
2026-01-18 19:05:29 +01:00
Timothy Rule
ea933bcc55
fix: support error_ignore for a task call ( #2552 )
2025-12-12 22:28:20 +01:00
Valentin Maerten
5889ff6b65
fix: globals vars are available in vars at root level ( #2403 )
2025-12-12 21:20:27 +01:00
Andrey Nering
9b99866224
feat: add --failfast and failtest: true to control dependencies ( #2525 )
2025-12-07 17:23:08 -03:00
Andrey Nering
c7b4f26900
chore: run modernize
2025-11-22 17:30:30 -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
Timothy Rule
b8bf298c84
fix: panic for empty hash var ({}) ( #2417 )
2025-09-12 15:29:40 -03:00
Valentin Maerten
48039be12c
feat: improve fingerprint, run and output with wildcard ( #1808 )
2025-09-11 19:33:53 +02:00
Pete Davison
71eb8cdeea
feat: checksum pinning ( #2223 )
2025-05-24 14:00:02 +01:00
Pete Davison
c6f1b3ae4f
feat: make map variables experiment (prop 2) generally available ( #2081 )
...
* feat: make map variables experiment (prop 2) generally available
* docs: remove map variables experiment page and update usage to include map variable info
2025-03-26 21:40:09 +00:00
Valentin Maerten
c23c46e326
fix: include with dynamic vars ( #2092 )
2025-02-26 17:49:05 +01:00
Pete Davison
60c8ee0ce6
refactor: ast.Call should be in main task package ( #2084 )
2025-02-23 18:30:42 +00:00
Pete Davison
d6234af49a
feat: allow variable references in a matrix ( #2069 )
2025-02-23 18:13:56 +00:00
Valentin Maerten
461714a899
feat: add a new .taskrc.yml to enable experiments ( #1982 )
2025-02-23 10:51:59 +01:00
Pete Davison
daf39a04bf
feat: iterators ( #1798 )
...
* feat: update to github.com/elliotchance/orderedmap/v3
* refactor: better sort package
* feat: iterators
* chore: remove unnecessary code
2025-02-22 16:22:03 +00:00
Pete Davison
cdb6a3f70a
feat: decoding improvements ( #2068 )
...
* refactor: moved/simplified snippets into its own file with tests
* refactor: move snippet to taskfile package
* feat: support snippets with line/col = 0
* feat: functional options for snippets
* feat: added option to hide snippet indicators
* feat: store raw lines for length calculations
* feat: add debug function for TaskfileDecodeError
* fix: decode errors from commands
* fix: schema for defer cmd calls
* fix: linting issues
* refactor: split var and vars into different files like other structures
2025-02-22 15:44:22 +00:00
Pete Davison
6ce798e16c
feat: experiments logging improvements ( #2049 )
...
* feat: warn when enabling inactive experiments
* feat: TASK_ environment prefix
* feat: calculate experiment enabled/active instead of storing
* refactor: rename GetTaskVar to GetTaskEnv
* feat: experiments tests
2025-02-08 23:02:51 +00:00
Pete Davison
fd3532812e
fix: orderedmap race condition ( #1972 )
2024-12-30 17:58:45 +00:00
Pete Davison
2965841eb7
feat: use external package for ordered maps ( #1797 )
2024-12-30 17:54:36 +00:00
Valentin Maerten
5f1d46c770
feat: can exclude task from being included ( #1859 )
2024-12-30 10:09:28 +01:00
christiandins
4dffab2e0a
feat: add parallel test execution to improve runtime ( #1882 )
2024-12-11 21:47:10 -03:00
Danilo Bürger
4595c1e32a
feat: add silent for defer ( #1879 )
...
Co-authored-by: Valentin Maerten <maerten.valentin@gmail.com >
2024-12-07 16:16:27 +01:00
Pete Davison
148b090d8e
fix: bug where non-nil, empty dynamic variables are returned as an empty interface ( #1904 )
2024-11-04 13:30:39 +00: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
Valentin Maerten
a35910429c
feat: option to ensure variable is within the list of values ( #1827 )
2024-10-18 18:16:57 +02:00
Valentin Maerten
0e2c9cc88f
fix: include flatten with a default task ( #1778 )
2024-09-06 10:44:28 -03:00
Pete Davison
e4b4d04abd
fix: matrix loops should be deterministic ( #1784 )
2024-09-02 22:43:54 +01:00
Pete Davison
281d259e6e
feat: loop over a matrix ( #1767 )
2024-09-02 20:29:00 +01:00
Valentin Maerten
ef3b853728
feat: add option to declare an included Taskfile as flatten ( #1704 )
2024-08-26 17:17:39 -04:00
Pete Davison
5e9851f42f
Update minimum go version ( #1758 )
...
* feat: update minimum version to 1.22
* refactor: use int range iterator
* refactor: loop variables
* refactor: replace slicesext.FirstNonZero with cmp.Or
* refactor: use slices.Concat instead of append
* fix: unused param
* fix: linting
2024-08-14 08:37:05 -05: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
a3fce1c302
feat: variable references ( #1654 )
...
* feat: add references to the base code instead of the maps experiment
* feat: add template functions to ref resolver
* feat: tests
* docs: variable references
* feat: remove json and yaml keys from map variable experiment
* chore: typo
2024-05-16 16:20:59 +01:00
Pete Davison
8d138a5eea
feat: better yaml parsing and error handling ( #1619 )
2024-05-16 01:24:02 +00:00
Pete Davison
725f929778
fix: included variable merging ( #1649 )
2024-05-12 20:32:09 +01:00
Pete Davison
f75aa1f84b
feat: taskfile mutex for adding edge data
2024-04-24 18:33:56 +01:00
Pete Davison
f19c520f23
feat: add support for multiple includes on a graph edge
2024-04-24 18:33:56 +01:00
Pete Davison
6951e5cd0c
refactor: includes uses pointers
2024-04-24 18:33:56 +01:00
Pete Davison
54c7f35b00
fix: linting issues
2024-04-09 12:37:18 +01:00
Pete Davison
3efb437c9a
feat: merge concurrency
2024-04-09 12:37:18 +01:00