Skip to content

Commit c2123dc

Browse files
committed
v3.43.0
1 parent 0a6cd1e commit c2123dc

File tree

15 files changed

+681
-467
lines changed

15 files changed

+681
-467
lines changed

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Changelog
22

3-
## Unreleased
3+
## v3.43.0 - 2025-04-21
44

55
- Significant improvements were made to the watcher. We migrated from
66
[watcher](https://github.com/radovskyb/watcher) to

internal/version/version.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.42.1
1+
3.43.0

package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@go-task/cli",
3-
"version": "3.42.1",
3+
"version": "3.43.0",
44
"description": "A task runner / simpler Make alternative written in Go",
55
"scripts": {
66
"postinstall": "go-npm install",

website/docs/changelog.mdx

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,77 @@ sidebar_position: 14
55

66
# Changelog
77

8+
## v3.43.0 - 2025-04-21
9+
10+
- Significant improvements were made to the watcher. We migrated from
11+
[watcher](https://github.com/radovskyb/watcher) to
12+
[fsnotify](https://github.com/fsnotify/fsnotify). The former library used
13+
polling, which means Task had a high CPU usage when watching too many files.
14+
`fsnotify` uses proper the APIs from each operating system to watch files,
15+
which means a much better performance. The default interval changed from 5
16+
seconds to 100 milliseconds, because now it configures the wait time for
17+
duplicated events, instead of the polling time (#2048 by @andreynering, #1508,
18+
#985, #1179).
19+
- The [Map Variables experiment](https://github.com/go-task/task/issues/1585)
20+
was made generally available so you can now
21+
[define map variables in your Taskfiles!](https://taskfile.dev/usage/#variables)
22+
(#1585, #1547, #2081 by @pd93).
23+
- Wildcards can now
24+
[match multiple tasks](https://taskfile.dev/usage/#wildcard-arguments) (#2072,
25+
#2121 by @pd93).
26+
- Added the ability to
27+
[loop over the files specified by the `generates` keyword](https://taskfile.dev/usage/#looping-over-your-tasks-sources-or-generated-files).
28+
This works the same way as looping over sources (#2151 by @sedyh).
29+
- Added the ability to resolve variables when defining an include variable
30+
(#2108, #2113 by @pd93).
31+
- A few changes have been made to the
32+
[Remote Taskfiles experiment](https://github.com/go-task/task/issues/1317)
33+
(#1402, #2176 by @pd93):
34+
- Cached files are now prioritized over remote ones.
35+
- Added an `--expiry` flag which sets the TTL for a remote file cache. By
36+
default the value will be 0 (caching disabled). If Task is running in
37+
offline mode or fails to make a connection, it will fallback on the cache.
38+
- `.taskrc` files can now be used from subdirectories and will be searched for
39+
recursively up the file tree in the same way that Taskfiles are (#2159, #2166
40+
by @pd93).
41+
- The default taskfile (output when using the `--init` flag) is now an embedded
42+
file in the binary instead of being stored in the code (#2112 by @pd93).
43+
- Improved the way we report the Task version when using the `--version` flag or
44+
`{{.TASK_VERSION}}` variable. This should now be more consistent and easier
45+
for package maintainers to use (#2131 by @pd93).
46+
- Fixed a bug where globstar (`**`) matching in `sources` only resolved the
47+
first result (#2073, #2075 by @pd93).
48+
- Fixed a bug where sorting tasks by "none" would use the default sorting
49+
instead of leaving tasks in the order they were defined (#2124, #2125 by
50+
@trulede).
51+
- Fixed Fish completion on newer Fish versions (#2130 by @atusy).
52+
- Fixed a bug where undefined/null variables resolved to an empty string instead
53+
of `nil` (#1911, #2144 by @pd93).
54+
- The `USER_WORKING_DIR` special now will now properly account for the `--dir`
55+
(`-d`) flag, if given (#2102, #2103 by @jaynis, #2186 by @andreynering).
56+
- Fix Fish completions when `--global` (`-g`) is given (#2134 by @atusy).
57+
- Fixed variables not available when using `defer:` (#1909, #2173 by @vmaerten).
58+
59+
#### Package API
60+
61+
- The [`Executor`](https://pkg.go.dev/github.com/go-task/task/v3#Executor) now
62+
uses the functional options pattern (#2085, #2147, #2148 by @pd93).
63+
- The functional options for the
64+
[`taskfile.Reader`](https://pkg.go.dev/github.com/go-task/task/v3/taskfile#Reader)
65+
and
66+
[`taskfile.Snippet`](https://pkg.go.dev/github.com/go-task/task/v3/taskfile#Snippet)
67+
types no longer have the `Reader`/`Snippet` respective prefixes (#2148 by
68+
@pd93).
69+
- [`taskfile.Reader`](https://pkg.go.dev/github.com/go-task/task/v3/taskfile#Reader)
70+
no longer accepts a
71+
[`taskfile.Node`](https://pkg.go.dev/github.com/go-task/task/v3/taskfile#Node).
72+
Instead nodes are passed directly into the
73+
[`Reader.Read`](https://pkg.go.dev/github.com/go-task/task/v3/taskfile#Reader.Read)
74+
method (#2169 by @pd93).
75+
- [`Reader.Read`](https://pkg.go.dev/github.com/go-task/task/v3/taskfile#Reader.Read)
76+
also now accepts a [`context.Context`](https://pkg.go.dev/context#Context)
77+
(#2176 by @pd93).
78+
879
## v3.42.1 - 2025-03-10
980

1081
- Fixed a bug where some special variables caused a type error when used global

website/versioned_docs/version-latest/changelog.mdx

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,77 @@ sidebar_position: 14
55

66
# Changelog
77

8+
## v3.43.0 - 2025-04-21
9+
10+
- Significant improvements were made to the watcher. We migrated from
11+
[watcher](https://github.com/radovskyb/watcher) to
12+
[fsnotify](https://github.com/fsnotify/fsnotify). The former library used
13+
polling, which means Task had a high CPU usage when watching too many files.
14+
`fsnotify` uses proper the APIs from each operating system to watch files,
15+
which means a much better performance. The default interval changed from 5
16+
seconds to 100 milliseconds, because now it configures the wait time for
17+
duplicated events, instead of the polling time (#2048 by @andreynering, #1508,
18+
#985, #1179).
19+
- The [Map Variables experiment](https://github.com/go-task/task/issues/1585)
20+
was made generally available so you can now
21+
[define map variables in your Taskfiles!](https://taskfile.dev/usage/#variables)
22+
(#1585, #1547, #2081 by @pd93).
23+
- Wildcards can now
24+
[match multiple tasks](https://taskfile.dev/usage/#wildcard-arguments) (#2072,
25+
#2121 by @pd93).
26+
- Added the ability to
27+
[loop over the files specified by the `generates` keyword](https://taskfile.dev/usage/#looping-over-your-tasks-sources-or-generated-files).
28+
This works the same way as looping over sources (#2151 by @sedyh).
29+
- Added the ability to resolve variables when defining an include variable
30+
(#2108, #2113 by @pd93).
31+
- A few changes have been made to the
32+
[Remote Taskfiles experiment](https://github.com/go-task/task/issues/1317)
33+
(#1402, #2176 by @pd93):
34+
- Cached files are now prioritized over remote ones.
35+
- Added an `--expiry` flag which sets the TTL for a remote file cache. By
36+
default the value will be 0 (caching disabled). If Task is running in
37+
offline mode or fails to make a connection, it will fallback on the cache.
38+
- `.taskrc` files can now be used from subdirectories and will be searched for
39+
recursively up the file tree in the same way that Taskfiles are (#2159, #2166
40+
by @pd93).
41+
- The default taskfile (output when using the `--init` flag) is now an embedded
42+
file in the binary instead of being stored in the code (#2112 by @pd93).
43+
- Improved the way we report the Task version when using the `--version` flag or
44+
`{{.TASK_VERSION}}` variable. This should now be more consistent and easier
45+
for package maintainers to use (#2131 by @pd93).
46+
- Fixed a bug where globstar (`**`) matching in `sources` only resolved the
47+
first result (#2073, #2075 by @pd93).
48+
- Fixed a bug where sorting tasks by "none" would use the default sorting
49+
instead of leaving tasks in the order they were defined (#2124, #2125 by
50+
@trulede).
51+
- Fixed Fish completion on newer Fish versions (#2130 by @atusy).
52+
- Fixed a bug where undefined/null variables resolved to an empty string instead
53+
of `nil` (#1911, #2144 by @pd93).
54+
- The `USER_WORKING_DIR` special now will now properly account for the `--dir`
55+
(`-d`) flag, if given (#2102, #2103 by @jaynis, #2186 by @andreynering).
56+
- Fix Fish completions when `--global` (`-g`) is given (#2134 by @atusy).
57+
- Fixed variables not available when using `defer:` (#1909, #2173 by @vmaerten).
58+
59+
#### Package API
60+
61+
- The [`Executor`](https://pkg.go.dev/github.com/go-task/task/v3#Executor) now
62+
uses the functional options pattern (#2085, #2147, #2148 by @pd93).
63+
- The functional options for the
64+
[`taskfile.Reader`](https://pkg.go.dev/github.com/go-task/task/v3/taskfile#Reader)
65+
and
66+
[`taskfile.Snippet`](https://pkg.go.dev/github.com/go-task/task/v3/taskfile#Snippet)
67+
types no longer have the `Reader`/`Snippet` respective prefixes (#2148 by
68+
@pd93).
69+
- [`taskfile.Reader`](https://pkg.go.dev/github.com/go-task/task/v3/taskfile#Reader)
70+
no longer accepts a
71+
[`taskfile.Node`](https://pkg.go.dev/github.com/go-task/task/v3/taskfile#Node).
72+
Instead nodes are passed directly into the
73+
[`Reader.Read`](https://pkg.go.dev/github.com/go-task/task/v3/taskfile#Reader.Read)
74+
method (#2169 by @pd93).
75+
- [`Reader.Read`](https://pkg.go.dev/github.com/go-task/task/v3/taskfile#Reader.Read)
76+
also now accepts a [`context.Context`](https://pkg.go.dev/context#Context)
77+
(#2176 by @pd93).
78+
879
## v3.42.1 - 2025-03-10
980

1081
- Fixed a bug where some special variables caused a type error when used global

0 commit comments

Comments
 (0)