1
0
mirror of https://github.com/emilk/egui.git synced 2026-06-26 22:53:14 -04:00

Update release process steps

This commit is contained in:
Emil Ernerfeldt
2025-07-10 16:49:57 +02:00
parent 412fe733d8
commit 5efa0121e2

View File

@@ -25,8 +25,8 @@ We don't update the MSRV in a patch release, unless we really, really need to.
* [ ] copy this checklist to a new egui issue, called "Release 0.xx.y"
* [ ] close all issues in the milestone for this release
## Patch release
* [ ] make a branch off of the latest release
## Special steps for patch release
* [ ] make a branch off of the _latest_ release
* [ ] cherry-pick what you want to release
* [ ] run `cargo semver-checks`
@@ -49,6 +49,7 @@ We don't update the MSRV in a patch release, unless we really, really need to.
## Preparation
* [ ] make sure there are no important unmerged PRs
* [ ] Create a branch called `release-0.xx.0` and open a PR for it
* [ ] run `scripts/generate_example_screenshots.sh` if needed
* [ ] write a short release note that fits in a bluesky post
* [ ] record gif for `CHANGELOG.md` release note (and later bluesky post)
@@ -56,17 +57,16 @@ We don't update the MSRV in a patch release, unless we really, really need to.
* [ ] run `scripts/generate_changelog.py --version 0.x.0 --write`
* [ ] read changelogs and clean them up if needed
* [ ] write a good intro with highlight for the main changelog
* [ ] bump version numbers in workspace `Cargo.toml`
* [ ] run `typos`
## Actual release
I usually do this all on the `main` branch, but doing it in a release branch is also fine, as long as you remember to merge it into `main` later.
* [ ] run `typos`
* [ ] `git commit -m 'Release 0.x.0 - <release title>'`
* [ ] bump version numbers in workspace `Cargo.toml`
* [ ] check that CI for the PR is green
* [ ] publish the crates by running `scripts/publish_crates.sh`
* [ ] merge release PR as `Release 0.x.0 - <release title>`
* [ ] Check out the release commit locally
* [ ] `git tag -a 0.x.0 -m 'Release 0.x.0 - <release title>'`
* [ ] `git pull --tags ; git tag -d latest && git tag -a latest -m 'Latest release' && git push --tags origin latest --force ; git push --tags`
* [ ] merge release PR or push to `main`
* [ ] check that CI is green
* [ ] do a GitHub release: https://github.com/emilk/egui/releases/new
* follow the format of the last release