From 962eada344c963776724346657521acaf5a929f6 Mon Sep 17 00:00:00 2001 From: Andrey Nering Date: Sat, 7 Mar 2026 19:42:03 -0300 Subject: [PATCH] docs: update releasing guide We have now more package managers being released automatically by GoReleaser. Only Snapcraft still require manual steps. --- website/src/docs/releasing.md | 63 ++++++++++------------------------- 1 file changed, 18 insertions(+), 45 deletions(-) diff --git a/website/src/docs/releasing.md b/website/src/docs/releasing.md index 50a7a4ef..d8101881 100644 --- a/website/src/docs/releasing.md +++ b/website/src/docs/releasing.md @@ -16,59 +16,32 @@ the Taskfile. artifacts automatically when a new Git tag is pushed to `main` branch (raw executables and DEB and RPM packages). -Since v3.15.0, raw executables can also be reproduced and verified locally by +Raw executables can also be reproduced and verified locally by checking out a specific tag and calling `goreleaser build`, using the Go version defined in the above GitHub Actions. -## Homebrew +## Package managers -Goreleaser will automatically push a new commit to the -[Formula/go-task.rb][gotaskrb] file in the [Homebrew tap][homebrewtap] -repository to release the new version. +GoReleaser will automatically publish the release to most package managers: -## npm +* Cloudsmith (DEB and RPM repositories) +* Homebrew +* npm +* winget -To release to npm update the version in the [`package.json`][packagejson] file -and then run `task npm:publish` to push it. +A single package manager still require manual steps: -## Snapcraft +* Snapcraft: + * Update the `version:` field on [snapcraft.yaml][snapcraftyaml] + + * Once finished, move the new build to "stable" on [Snapcraft -> Releases][snapcraftreleases] -The [snap package][snappackage] requires to manual steps to release a new -version: +These package managers are updated automatically by the community: -- Updating the current version on [snapcraft.yaml][snapcraftyaml]. -- Moving both `amd64`, `armhf` and `arm64` new artifacts to the stable channel - on the [Snapcraft dashboard][snapcraftdashboard]. - -## winget - -winget also requires manual steps to be completed. By running -`task goreleaser:test` locally, manifest files will be generated on -`dist/winget/manifests/t/Task/Task/v{version}`. -[Upload the manifest directory into this fork](https://github.com/go-task/winget-pkgs/tree/master/manifests/t/Task/Task) -and open a pull request into -[this repository](https://github.com/microsoft/winget-pkgs). - -## Scoop - -Scoop is a command-line package manager for the Windows operating system. Scoop -package manifests are maintained by the community. Scoop owners usually take -care of updating versions there by editing -[this file](https://github.com/ScoopInstaller/Main/blob/master/bucket/task.json). -If you think its Task version is outdated, open an issue to let us know. - -## Nix - -Nix is a community owned installation method. Nix package maintainers usually -take care of updating versions there by editing -[this file](https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/go/go-task/package.nix). -If you think its Task version is outdated, open an issue to let us know. +* [Scoop](https://github.com/ScoopInstaller/Main/blob/master/bucket/task.json) +* [Nix](https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/go/go-task/package.nix) [goreleaser]: https://goreleaser.com/ -[homebrewtap]: https://github.com/go-task/homebrew-tap -[gotaskrb]: https://github.com/go-task/homebrew-tap/blob/main/Formula/go-task.rb -[packagejson]: https://github.com/go-task/task/blob/main/package.json#L3 -[snappackage]: https://github.com/go-task/snap -[snapcraftyaml]: - https://github.com/go-task/snap/blob/main/snap/snapcraft.yaml#L2 -[snapcraftdashboard]: https://snapcraft.io/task/releases +[snapcraftyaml]: https://github.com/go-task/snap/blob/main/snap/snapcraft.yaml#L2 +[snapcraftbuilds]: https://snapcraft.io/task/builds +[snapcraftreleases]: https://snapcraft.io/task/releases