Document release process in full

Adopted the complete workflow from the HCI Effects cargo publish
documentation rather than referencing it, making the steps explicit
and self-contained.
This commit is contained in:
Robert Hensing 2026-01-13 17:59:56 +01:00
parent 9f2c7a2013
commit b8c741dfe9

View file

@ -1,22 +1,20 @@
# Release process
This project uses simple tags, that trigger a release of all crates using Hercules CI.
See [HCI Effects cargo publish workflow].
Based on the [HCI Effects cargo publish workflow].
## Release branch
## Steps
Create a `release` branch and PR for release preparation. This allows CI to validate the release before tagging.
## Before tagging
- Update `CHANGELOG.md`:
- Make sure the Unreleased section is up to date
- Change it to the new version and release date
## After tagging
- Add a new Unreleased section to `CHANGELOG.md`
- Merge the release PR
1. Create a `release` branch
2. Decide the version bump (patch for fixes, minor for features, major for breaking changes)
3. Update `CHANGELOG.md`: make sure the Unreleased section is up to date, then change it to the new version and release date
4. Open a draft release PR and wait for CI to pass
5. Create and push a tag matching the version
6. Add a new Unreleased section to `CHANGELOG.md`
7. Bump version in all `Cargo.toml` files to the next patch version (e.g., `0.2.0``0.2.1`)
and run `cargo update --workspace` to update `Cargo.lock`,
so that `cargo publish --dry-run` passes on subsequent commits
8. Merge the release PR
---