- Warn people in chat
- Get the branch ready
- either you're doing a release off main
- or a release-x.y.z branch in which case you may need to cherry pick commits into it
- push a PR with a non`-SNAPSHOT` version in gradle.properties
- once the PR is merged, the build automation detects it and does all the release packaging and publishing
- push a PR with the next `-SNAPSHOT` version in gradle.properties - this prevents the release you just did from being overwritten.
- Also include the download links in CHANGELOG when done (download the zip file and run shasum besu.zip to get the hashes)
- if you're doing a release from a release branch, also check gradle.properties on main - if it needs updating (eg if you're releasing 22.1.0 off a branch but main gradle.properties still says RC4)
- push a PR to update homebrew (not for RC)
Then, the non-code items:
...
We are working on turning this into a checklist - see https://github.com/hyperledger/besu/issues/7119