Skip to content

Releasing new versions

Preparing the release

  • Understand what changes we are shipping by inspecting unreleased commits
bash
git checkout main
git pull origin main --rebase
git log $(git describe --abbrev=0 --tags)...HEAD --oneline
  • Determine next release version according to SemVer
  • Create a short-lived branch
bash
git checkout -b ufs/release-x.y.z
  • Add notable changes the to changelog file
  • Bump version at Cargo.toml
  • Commit your changes
  • Ensure everything is ready by running :
bash
cargo publish -p canopus --dry-run
  • Raise a PR preparing the release

Creating a release (GitHub admins-only)

  • Ensure the next release is prepared (as described above)
  • Execute the CD Workflow
  • Go to the releases page
  • Review the release draft and add any final touches (for instance, updating RenovateBot identity name)
  • Publish the release 🚀

Updating distributions

  • Clone dotanuki-labs/homebrew-taps
  • Create a branch like ufs/canopus-x.y.z
  • Update the canopus.rb formula with proper version and checksums
  • Raise a PR