- Create a new "Release v{VERSION}" issue with this checklist
$ cat RELEASE.md | sd '\{VERSION\}' '{NEW_VERSION}' | xclip -sel clip
- Create the issue in GitHub
- Regenerate static assets
$ cargo xtask gen
- Update
rust-version
inCargo.toml
$ cargo msrv --min 1.60 -- cargo check
- Bump
version
inCargo.toml
- Run
cargo check
to propogate the change toCargo.lock
- Update the
CHANGELOG.md
- Merge changes through a PR to make sure that CI passes
- Publish on crates.io
$ cargo publish
- Publish on GitHub by pushing a version tag
- Make sure the branch you're on is fully up to date
$ git tag v{VERSION}
$ git push upstream/origin v{VERSION}
- Make a release announcement on GitHub after the release workflow finishes