-
Notifications
You must be signed in to change notification settings - Fork 937
Release & Branch Process
Mikel Lindsaar edited this page Apr 21, 2022
·
3 revisions
Each time we release a new version of mail, we follow this release process to ensure that developers can track the changes in the change log and we can support branches into the future.
The process runs like this for releasing the next version of the gem, in this example we will release 2.8.0 gem.
- Create a new branch (2-8-stable) off of the current master indended to be the next gem release
- Modify
Mail::Version
to2.8.0.rc1
- Commit 2 to the
2-8-stable
branch with the commentStable branch for 2.8.x releases
and tag it2.8.0.rc1
- Build the 2.8.0.rc1 gem and push to rubygems.org
- Switch back to the master branch
- Clear out the entries under each subheading in the CHANGELOG and change the version to
2.9.0 (unreleased)
- Modify Mail::Version to
2.9.0-edge
- Commit 7 and 8 to the master branch with comment
Now tracking 2.9.0.edge. See 2-8-stable for 2.8.x releases.
- CONDITIONAL: If breaking changes are found in the gem build, fix these directly on the 2-8-stable branch and master branches as appropriate, and update the changelog and release a
rc2
release. - After approximately a week, (no less than 5 days) with no other changes needing to be committed to stable, switch to the
2-8-stable
branch. - Update the
CHANGELOG.rdoc
file to add the date and replace2.8.0 (unreleased)
with2.8.0 (DD-Mmm-YYYY)
and add== Version 2.8.1 (unreleased)
to the top. - Update the Mail::Version to
2.8.0.nil
- Commit 11 and 12 to the
2-8-stable
branch with the comment2.8.0 Release
and tag it2.8.0
- Build the 2.8.0 gem and push to rubygems.org