|
| 1 | +# Release process |
| 2 | + |
| 3 | +1. Create a release commit. This includes specific updated files: |
| 4 | + |
| 5 | + 1. Cargo.toml (Bump the version using [semver] standards) |
| 6 | + 1. Cargo.lock (This is usually updated automatically with the `cargo` |
| 7 | + CLI tool) |
| 8 | + 1. Make sure the changes for the new release exist under |
| 9 | + `CHANGELOG.md`. This should already exist since changes done in |
| 10 | + GitHub Pull Requests should include updates to the `CHANGELOG.md`. |
| 11 | + If this doesn't exist, the release will fail. |
| 12 | + 1. Change `CHANGELOG.md` `## Unreleased` to `## [x.x.x] - YYYY-MM-DD` |
| 13 | + where `x.x.x` is the new Tinty version specified in the |
| 14 | + `Cargo.toml` file and the link to `[x.x.x]` at the bottom of the |
| 15 | + `CHANGELOG.md` file and compare it with the previously released |
| 16 | + version, eg: |
| 17 | + |
| 18 | + ```md |
| 19 | + [0.22.0]: https://github.com/tinted-theming/tinty/compare/v0.21.1...v0.22.0 |
| 20 | + ``` |
| 21 | + |
| 22 | + 1. Run `cargo about generate about.hbs > LICENSES-THIRD-PARTY.md` to |
| 23 | + update the third party licenses. (`cargo install cargo-about` if |
| 24 | + you don't have it installed) |
| 25 | + 1. Create a commit with the 3 changed files titled `Release x.x.x` |
| 26 | + where `x.x.x` is the new Tinty version specified in the |
| 27 | + `Cargo.toml` file |
| 28 | + |
| 29 | +1. Push the commit or create a Pull Request and merge |
| 30 | +1. Once the CI tests have passed, run the [Release GitHub action]. This |
| 31 | + will automatically do the following: |
| 32 | + |
| 33 | + 1. Add a Git tag to the release commit with the new |
| 34 | + version number |
| 35 | + 1. Create a release under [GitHub releases] with the changes |
| 36 | + mentioned in `CHANGELOG` |
| 37 | + 1. Generate the various binaries and add it to the GitHub release |
| 38 | +1. Run the [homebrew-tinted] [Update CLI tool GitHub |
| 39 | + action] and specify `tinty` as the action input value. This will |
| 40 | + update the version for [Homebrew] |
| 41 | + |
| 42 | +[semver]: https://semver.org/ |
| 43 | +[Release GitHub action]: https://github.com/tinted-theming/tinty/actions/workflows/release.yml |
| 44 | +[GitHub releases]: https://github.com/tinted-theming/tinty/releases |
| 45 | +[homebrew-tinted]: https://github.com/tinted-theming/homebrew-tinted |
| 46 | +[Update CLI tool GitHub action]: https://github.com/tinted-theming/homebrew-tinted/actions/workflows/update-cli-tool.yml |
| 47 | +[Homebrew]: https://brew.sh/ |
0 commit comments