diff --git a/CHANGELOG.md b/CHANGELOG.md index 10fa9c1d..887782b9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Changelog -## Unreleased +## v3.24.0 - 2023-04-15 - Fix Fish shell completion for tasks with aliases (#1113 by @patricksjackson). - The default branch was renamed from `master` to `main` (#1049, #1048 by diff --git a/docs/docs/changelog.md b/docs/docs/changelog.md index 5015155b..0cf41537 100644 --- a/docs/docs/changelog.md +++ b/docs/docs/changelog.md @@ -5,12 +5,35 @@ sidebar_position: 7 # Changelog +## v3.24.0 - 2023-04-15 + +- Fix Fish shell completion for tasks with aliases ([#1113](https://github.com/go-task/task/issues/1113) by [@patricksjackson](https://github.com/patricksjackson)). +- The default branch was renamed from `master` to `main` ([#1049](https://github.com/go-task/task/issues/1049), [#1048](https://github.com/go-task/task/issues/1048) by + [@pd93](https://github.com/pd93)). +- Fix bug where "up-to-date" logs were not being omitted for silent tasks ([#546](https://github.com/go-task/task/issues/546), + [#1107](https://github.com/go-task/task/issues/1107) by [@danquah](https://github.com/danquah)). +- Add `.hg` (Mercurial) to the list of ignored directories when using `--watch` + ([#1098](https://github.com/go-task/task/issues/1098) by [@misery](https://github.com/misery)). +- More improvements to the release tool ([#1096](https://github.com/go-task/task/issues/1096) by [@pd93](https://github.com/pd93)). +- Enforce [gofumpt](https://github.com/mvdan/gofumpt) linter ([#1099](https://github.com/go-task/task/issues/1099) by [@pd93](https://github.com/pd93)) +- Add `--sort` flag for use with `--list` and `--list-all` ([#946](https://github.com/go-task/task/issues/946), [#1105](https://github.com/go-task/task/issues/1105) by + [@pd93](https://github.com/pd93)). +- Task now has [custom exit codes](https://taskfile.dev/api/#exit-codes) + depending on the error ([#1114](https://github.com/go-task/task/issues/1114) by [@pd93](https://github.com/pd93)). + ## v3.23.0 - 2023-03-26 -Task now has an [official extension for Visual Studio Code](https://marketplace.visualstudio.com/items?itemName=task.vscode-task) contributed by [@pd93](https://github.com/pd93)! :tada: The extension is maintained in a [new repository](https://github.com/go-task/vscode-task) under the `go-task` organization. We're looking to gather feedback from the community so please give it a go and let us know what you think via a [discussion](https://github.com/go-task/vscode-task/discussions), [issue](https://github.com/go-task/vscode-task/issues) or on our [Discord](https://discord.gg/6TY36E39UK)! +Task now has an +[official extension for Visual Studio Code](https://marketplace.visualstudio.com/items?itemName=task.vscode-task) +contributed by [@pd93](https://github.com/pd93)! :tada: The extension is maintained in a +[new repository](https://github.com/go-task/vscode-task) under the `go-task` +organization. We're looking to gather feedback from the community so please give +it a go and let us know what you think via a +[discussion](https://github.com/go-task/vscode-task/discussions), +[issue](https://github.com/go-task/vscode-task/issues) or on our +[Discord](https://discord.gg/6TY36E39UK)! -> **NOTE:** -> The extension _requires_ v3.23.0 to be installed in order to work. +> **NOTE:** The extension _requires_ v3.23.0 to be installed in order to work. - The website was integrated with [Crowdin](https://crowdin.com/project/taskfile) to allow the community to @@ -19,9 +42,9 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. - Added task location data to the `--json` flag output ([#1056](https://github.com/go-task/task/issues/1056) by [@pd93](https://github.com/pd93)) - Change the name of the file generated by `task --init` from `Taskfile.yaml` to `Taskfile.yml` ([#1062](https://github.com/go-task/task/issues/1062) by [@misitebao](https://github.com/misitebao)). -- Added new `splitArgs` template function (`{{splitArgs "foo bar 'foo bar - baz'"}}`) to ensure string is split as arguments ([#1040](https://github.com/go-task/task/issues/1040), - [#1059](https://github.com/go-task/task/issues/1059) by [@dhanusaputra](https://github.com/dhanusaputra)). +- Added new `splitArgs` template function + (`{{splitArgs "foo bar 'foo bar baz'"}}`) to ensure string is split as + arguments ([#1040](https://github.com/go-task/task/issues/1040), [#1059](https://github.com/go-task/task/issues/1059) by [@dhanusaputra](https://github.com/dhanusaputra)). - Fix the value of `{{.CHECKSUM}}` variable in status ([#1076](https://github.com/go-task/task/issues/1076), [#1080](https://github.com/go-task/task/issues/1080) by [@pd93](https://github.com/pd93)). - Fixed deep copy implementation ([#1072](https://github.com/go-task/task/issues/1072) by [@pd93](https://github.com/pd93)) - Created a tool to assist with releases ([#1086](https://github.com/go-task/task/issues/1086) by [@pd93](https://github.com/pd93)). @@ -66,21 +89,21 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. - Add new `platforms:` attribute to `task` and `cmd`, so it's now possible to choose in which platforms that given task or command will be run on. Possible values are operating system (GOOS), architecture (GOARCH) or a combination of - the two. Example: `platforms: [linux]`, `platforms: [amd64]` or `platforms: - [linux/amd64]`. Other platforms will be skipped ([#978](https://github.com/go-task/task/issues/978), [#980](https://github.com/go-task/task/issues/980) by [@leaanthony](https://github.com/leaanthony)). + the two. Example: `platforms: [linux]`, `platforms: [amd64]` or + `platforms: [linux/amd64]`. Other platforms will be skipped ([#978](https://github.com/go-task/task/issues/978), [#980](https://github.com/go-task/task/issues/980) by + [@leaanthony](https://github.com/leaanthony)). ## v3.19.1 - 2022-12-31 -- Small bug fix: closing `Taskfile.yml` once we're done reading it - ([#963](https://github.com/go-task/task/issues/963), [#964](https://github.com/go-task/task/issues/964) by [@HeCorr](https://github.com/HeCorr)). +- Small bug fix: closing `Taskfile.yml` once we're done reading it ([#963](https://github.com/go-task/task/issues/963), [#964](https://github.com/go-task/task/issues/964) + by [@HeCorr](https://github.com/HeCorr)). - Fixes a bug in v2 that caused a panic when using a `Taskfile_{{OS}}.yml` file ([#961](https://github.com/go-task/task/issues/961), [#971](https://github.com/go-task/task/issues/971) by [@pd93](https://github.com/pd93)). - Fixed a bug where watch intervals set in the Taskfile were not being respected ([#969](https://github.com/go-task/task/issues/969), [#970](https://github.com/go-task/task/issues/970) by [@pd93](https://github.com/pd93)) - Add `--json` flag (alias `-j`) with the intent to improve support for code editors and add room to other possible integrations. This is basic for now, - but we plan to add more info in the near future - ([#936](https://github.com/go-task/task/issues/936) by [@davidalpert](https://github.com/davidalpert), [#764](https://github.com/go-task/task/issues/764)). + but we plan to add more info in the near future ([#936](https://github.com/go-task/task/issues/936) by [@davidalpert](https://github.com/davidalpert), [#764](https://github.com/go-task/task/issues/764)). ## v3.19.0 - 2022-12-05 @@ -92,19 +115,19 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. monorepos ([#289](https://github.com/go-task/task/issues/289), [#920](https://github.com/go-task/task/issues/920)). - Add task-level `dotenv` support ([#389](https://github.com/go-task/task/issues/389), [#904](https://github.com/go-task/task/issues/904)). - It's now possible to use global level variables on `includes` ([#942](https://github.com/go-task/task/issues/942), [#943](https://github.com/go-task/task/issues/943)). -- The website got a brand new [translation to - Chinese](https://task-zh.readthedocs.io/zh_CN/latest/) by +- The website got a brand new + [translation to Chinese](https://task-zh.readthedocs.io/zh_CN/latest/) by [[@DeronW](https://github.com/DeronW)](https://github.com/DeronW). Thanks! ## v3.18.0 - 2022-11-12 - Show aliases on `task --list --silent` (`task --ls`). This means that aliases will be completed by the completion scripts ([#919](https://github.com/go-task/task/issues/919)). -- Tasks in the root Taskfile will now be displayed first in `--list`/`--list-all` - output ([#806](https://github.com/go-task/task/issues/806), [#890](https://github.com/go-task/task/issues/890)). +- Tasks in the root Taskfile will now be displayed first in + `--list`/`--list-all` output ([#806](https://github.com/go-task/task/issues/806), [#890](https://github.com/go-task/task/issues/890)). - It's now possible to call a `default` task in an included Taskfile by using - just the namespace. For example: `docs:default` is now automatically - aliased to `docs` ([#661](https://github.com/go-task/task/issues/661), [#815](https://github.com/go-task/task/issues/815)). + just the namespace. For example: `docs:default` is now automatically aliased + to `docs` ([#661](https://github.com/go-task/task/issues/661), [#815](https://github.com/go-task/task/issues/815)). ## v3.17.0 - 2022-10-14 @@ -122,8 +145,8 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. ## v3.16.0 - 2022-09-29 -- Add `npm` as new installation method: `npm i -g [@go](https://github.com/go)-task/cli` - ([#870](https://github.com/go-task/task/issues/870), [#871](https://github.com/go-task/task/issues/871), [npm package](https://www.npmjs.com/package/[@go](https://github.com/go)-task/cli)). +- Add `npm` as new installation method: `npm i -g [@go](https://github.com/go)-task/cli` ([#870](https://github.com/go-task/task/issues/870), [#871](https://github.com/go-task/task/issues/871), + [npm package](https://www.npmjs.com/package/[@go](https://github.com/go)-task/cli)). - Add support to marking tasks and includes as internal, which will hide them from `--list` and `--list-all` ([#818](https://github.com/go-task/task/issues/818)). @@ -187,20 +210,20 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. - Added support for multi-level inclusion of Taskfiles. This means that included Taskfiles can also include other Taskfiles. Before this was limited to one level ([#390](https://github.com/go-task/task/issues/390), [#623](https://github.com/go-task/task/issues/623), [#656](https://github.com/go-task/task/issues/656)). -- Add ability to specify vars when including a Taskfile. [Check out the - documentation](https://taskfile.dev/#/usage?id=vars-of-included-taskfiles) for - more information ([#677](https://github.com/go-task/task/issues/677)). +- Add ability to specify vars when including a Taskfile. + [Check out the documentation](https://taskfile.dev/#/usage?id=vars-of-included-taskfiles) + for more information ([#677](https://github.com/go-task/task/issues/677)). ## v3.11.0 - 2022-02-19 - Task now supports printing begin and end messages when using the `group` - output mode, useful for grouping tasks in CI systems. [Check out the - documentation](http://taskfile.dev/#/usage?id=output-syntax) for more - information ([#647](https://github.com/go-task/task/issues/647), [#651](https://github.com/go-task/task/issues/651)). + output mode, useful for grouping tasks in CI systems. + [Check out the documentation](http://taskfile.dev/#/usage?id=output-syntax) + for more information ([#647](https://github.com/go-task/task/issues/647), [#651](https://github.com/go-task/task/issues/651)). - Add `Taskfile.dist.yml` and `Taskfile.dist.yaml` to the supported file name - list. [Check out the - documentation](https://taskfile.dev/#/usage?id=supported-file-names) for more - information ([#498](https://github.com/go-task/task/issues/498), [#666](https://github.com/go-task/task/issues/666)). + list. + [Check out the documentation](https://taskfile.dev/#/usage?id=supported-file-names) + for more information ([#498](https://github.com/go-task/task/issues/498), [#666](https://github.com/go-task/task/issues/666)). ## v3.10.0 - 2022-01-04 @@ -246,8 +269,8 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. ## v3.9.0 - 2021-10-02 -- A new `shellQuote` function was added to the template system (`{{shellQuote "a - string"}}`) to ensure a string is safe for use in shell +- A new `shellQuote` function was added to the template system + (`{{shellQuote "a string"}}`) to ensure a string is safe for use in shell ([mvdan/sh[#727](https://github.com/go-task/task/issues/727)](https://github.com/mvdan/sh/pull/727), [mvdan/sh[#737](https://github.com/go-task/task/issues/737)](https://github.com/mvdan/sh/pull/737), [Documentation](https://pkg.go.dev/mvdan.cc/sh/v3[@v3](https://github.com/v3).4.0/syntax#Quote)) @@ -281,8 +304,8 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. - Add `run:` setting to control if tasks should run multiple times or not. Available options are `always` (the default), `when_changed` (if a variable - modified the task) and `once` (run only once no matter what). - This is a long time requested feature. Enjoy! ([#53](https://github.com/go-task/task/issues/53), [#359](https://github.com/go-task/task/issues/359)). + modified the task) and `once` (run only once no matter what). This is a long + time requested feature. Enjoy! ([#53](https://github.com/go-task/task/issues/53), [#359](https://github.com/go-task/task/issues/359)). ## v3.6.0 - 2021-07-10 @@ -296,10 +319,10 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. ## v3.4.3 - 2021-05-30 -- Add support for the `NO_COLOR` environment variable. - ([#459](https://github.com/go-task/task/issues/459), [fatih/color[#137](https://github.com/go-task/task/issues/137)](https://github.com/fatih/color/pull/137)). -- Fix bug where sources were not considering the right directory - in `--watch` mode ([#484](https://github.com/go-task/task/issues/484), [#485](https://github.com/go-task/task/issues/485)). +- Add support for the `NO_COLOR` environment variable. ([#459](https://github.com/go-task/task/issues/459), + [fatih/color[#137](https://github.com/go-task/task/issues/137)](https://github.com/fatih/color/pull/137)). +- Fix bug where sources were not considering the right directory in `--watch` + mode ([#484](https://github.com/go-task/task/issues/484), [#485](https://github.com/go-task/task/issues/485)). ## v3.4.2 - 2021-04-23 @@ -310,9 +333,9 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. ## v3.4.1 - 2021-04-17 -- Improve error reporting when parsing YAML: in some situations where you - would just see an generic error, you'll now see the actual error with - more detail: the YAML line the failed to parse, for example ([#467](https://github.com/go-task/task/issues/467)). +- Improve error reporting when parsing YAML: in some situations where you would + just see an generic error, you'll now see the actual error with more detail: + the YAML line the failed to parse, for example ([#467](https://github.com/go-task/task/issues/467)). - A JSON Schema was published [here](https://json.schemastore.org/taskfile.json) and is automatically being used by some editors like Visual Studio Code ([#135](https://github.com/go-task/task/issues/135)). @@ -320,17 +343,17 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. ## v3.3.0 - 2021-03-20 -- Add support for delegating CLI arguments to commands with `--` and a - special `CLI_ARGS` variable ([#327](https://github.com/go-task/task/issues/327)). -- Add a `--concurrency` (alias `-C`) flag, to limit the number of tasks that - run concurrently. This is useful for heavy workloads. ([#345](https://github.com/go-task/task/issues/345)). +- Add support for delegating CLI arguments to commands with `--` and a special + `CLI_ARGS` variable ([#327](https://github.com/go-task/task/issues/327)). +- Add a `--concurrency` (alias `-C`) flag, to limit the number of tasks that run + concurrently. This is useful for heavy workloads. ([#345](https://github.com/go-task/task/issues/345)). ## v3.2.2 - 2021-01-12 - Improve performance of `--list` and `--summary` by skipping running shell variables for these flags ([#332](https://github.com/go-task/task/issues/332)). -- Fixed a bug where an environment in a Taskfile was not always overridable - by the system environment ([#425](https://github.com/go-task/task/issues/425)). +- Fixed a bug where an environment in a Taskfile was not always overridable by + the system environment ([#425](https://github.com/go-task/task/issues/425)). - Fixed environment from .env files not being available as variables ([#379](https://github.com/go-task/task/issues/379)). - The install script is now working for ARM platforms ([#428](https://github.com/go-task/task/issues/428)). @@ -345,23 +368,23 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. - Fix the `.task` directory being created in the task directory instead of the Taskfile directory ([#247](https://github.com/go-task/task/issues/247)). -- Fix a bug where dynamic variables (those declared with `sh:`) were not - running in the task directory when the task has a custom dir or it was - in an included Taskfile ([#384](https://github.com/go-task/task/issues/384)). +- Fix a bug where dynamic variables (those declared with `sh:`) were not running + in the task directory when the task has a custom dir or it was in an included + Taskfile ([#384](https://github.com/go-task/task/issues/384)). - The watch feature (via the `--watch` flag) got a few different bug fixes and should be more stable now ([#423](https://github.com/go-task/task/issues/423), [#365](https://github.com/go-task/task/issues/365)). ## v3.1.0 - 2021-01-03 -- Fix a bug when the checksum up-to-date resolution is used by a task - with a custom `label:` attribute ([#412](https://github.com/go-task/task/issues/412)). +- Fix a bug when the checksum up-to-date resolution is used by a task with a + custom `label:` attribute ([#412](https://github.com/go-task/task/issues/412)). - Starting from this release, we're releasing official ARMv6 and ARM64 binaries for Linux ([#375](https://github.com/go-task/task/issues/375), [#418](https://github.com/go-task/task/issues/418)). - Task now respects the order of declaration of included Taskfiles when evaluating variables declaring by them ([#393](https://github.com/go-task/task/issues/393)). - `set -e` is now automatically set on every command. This was done to fix an - issue where multiline string commands wouldn't really fail unless the - sentence was in the last line ([#403](https://github.com/go-task/task/issues/403)). + issue where multiline string commands wouldn't really fail unless the sentence + was in the last line ([#403](https://github.com/go-task/task/issues/403)). ## v3.0.1 - 2020-12-26 @@ -387,13 +410,12 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. - Added option to make included Taskfile run commands on its own directory ([#260](https://github.com/go-task/task/issues/260), [#144](https://github.com/go-task/task/issues/144)) - Taskfiles in version 1 are not supported anymore ([#237](https://github.com/go-task/task/issues/237)). -- Added global `method:` option. With this option, you can set a default - method to all tasks in a Taskfile ([#246](https://github.com/go-task/task/issues/246)). +- Added global `method:` option. With this option, you can set a default method + to all tasks in a Taskfile ([#246](https://github.com/go-task/task/issues/246)). - Changed default method from `timestamp` to `checksum` ([#246](https://github.com/go-task/task/issues/246)). -- New magic variables are now available when using `status:`: - `.TIMESTAMP` which contains the greatest modification date - from the files listed in `sources:`, and `.CHECKSUM`, which - contains a checksum of all files listed in `status:`. +- New magic variables are now available when using `status:`: `.TIMESTAMP` which + contains the greatest modification date from the files listed in `sources:`, + and `.CHECKSUM`, which contains a checksum of all files listed in `status:`. This is useful for manual checking when using external, or even remote, artifacts when using `status:` ([#216](https://github.com/go-task/task/issues/216)). - We're now using [slim-sprig](https://github.com/go-task/slim-sprig) instead of @@ -433,15 +455,15 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. - Fixed some bugs regarding minor version checks on `version:`. - Add `preconditions:` to task ([#205](https://github.com/go-task/task/issues/205)). - Create directory informed on `dir:` if it doesn't exist ([#209](https://github.com/go-task/task/issues/209), [#211](https://github.com/go-task/task/issues/211)). -- We now have a `--taskfile` flag (alias `-t`), which can be used to run - another Taskfile (other than the default `Taskfile.yml`) ([#221](https://github.com/go-task/task/issues/221)). +- We now have a `--taskfile` flag (alias `-t`), which can be used to run another + Taskfile (other than the default `Taskfile.yml`) ([#221](https://github.com/go-task/task/issues/221)). - It's now possible to install Task using Homebrew on Linux ([go-task/homebrew-tap[#1](https://github.com/go-task/task/issues/1)](https://github.com/go-task/homebrew-tap/pull/1)). ## v2.5.2 - 2019-05-11 -- Reverted YAML upgrade due issues with CRLF on Windows - ([#201](https://github.com/go-task/task/issues/201), [go-yaml/yaml[#450](https://github.com/go-task/task/issues/450)](https://github.com/go-yaml/yaml/issues/450)). +- Reverted YAML upgrade due issues with CRLF on Windows ([#201](https://github.com/go-task/task/issues/201), + [go-yaml/yaml[#450](https://github.com/go-task/task/issues/450)](https://github.com/go-yaml/yaml/issues/450)). - Allow setting global variables through the CLI ([#192](https://github.com/go-task/task/issues/192)). ## 2.5.1 - 2019-04-27 @@ -457,8 +479,9 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. [this install script](https://taskfile.dev/#/installation?id=install-script) to use the new taskfile.dev domain on scripts from now on. - Fixed to the ZSH completion ([#182](https://github.com/go-task/task/issues/182)). -- Add [`--summary` flag along with `summary:` task - attribute](https://taskfile.org/#/usage?id=display-summary-of-task) ([#180](https://github.com/go-task/task/issues/180)). +- Add + [`--summary` flag along with `summary:` task attribute](https://taskfile.org/#/usage?id=display-summary-of-task) + ([#180](https://github.com/go-task/task/issues/180)). ## v2.4.0 - 2019-02-21 @@ -487,8 +510,9 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. ## v2.2.0 - 2018-10-25 -- Added support for [including other - Taskfiles](https://taskfile.org/#/usage?id=including-other-taskfiles) ([#98](https://github.com/go-task/task/issues/98)) +- Added support for + [including other Taskfiles](https://taskfile.org/#/usage?id=including-other-taskfiles) + ([#98](https://github.com/go-task/task/issues/98)) - This should be considered experimental. For now, only including local files is supported, but support for including remote Taskfiles is being discussed. If you have any feedback, please comment on [#98](https://github.com/go-task/task/issues/98). @@ -531,9 +555,9 @@ Task now has an [official extension for Visual Studio Code](https://marketplace. Version 2.0.0 is here, with a new Taskfile format. --Please, make sure to read the [Taskfile --versions](https://github.com/go-task/task/blob/main/TASKFILE_VERSIONS.md) --document, since it describes in depth what changed for this version. +Please, make sure to read the +[Taskfile versions](https://github.com/go-task/task/blob/main/TASKFILE_VERSIONS.md) +document, since it describes in depth what changed for this version. - New Taskfile version 2 ([#77](https://github.com/go-task/task/issues/77)) - Possibility to have global variables in the `Taskfile.yml` instead of diff --git a/package-lock.json b/package-lock.json index 80e3c35c..88b93b75 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "@go-task/cli", - "version": "3.23.0", + "version": "3.24.0", "lockfileVersion": 2, "requires": true, "packages": { diff --git a/package.json b/package.json index 87bb9a6c..6d437589 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@go-task/cli", - "version": "3.23.0", + "version": "3.24.0", "description": "A task runner / simpler Make alternative written in Go", "scripts": { "postinstall": "go-npm install",