New minor release of Solidus
We are committed to release every quarter in order to have a constant and predictable cadence for our deliverables.
For more information, check out our Release Policy page.
Here are the steps to follow to release a new minor version.
They are written in the order required to make the process work. However, some material necessary for the release should be prepared before starting with those steps, like the text of the upgrade guide or the messages to send to the community.
💎 GitHub and RubyGems
Release preparation
More details about the release workflows are described on our
Release pipeline automation wiki page,
which we encourage to review if the assignee is not familiar with the topic.
Release the Solidus gems on Rubygems
To officially release the Solidus gems, you need to have permissions on RubyGems, with 2FA enabled.
Open Solidus on your local machine and run:
git checkout main
git pull
bin/rake release
You will be prompted to enter your 2FA code multiple times, one for each solidus' subgems.
After-release Chores
Now that Solidus has been released, we need to cleanup the main branch to get ready for
the next release. As you may have noticed, when the "Release Preparation" PR has been merged, a new PR has been automatically created. That PR already contains the code to get our repository
clean and ready.
There's also another PR auto-generated, which takes care of getting the newly created branch ready to accept new contributions and ready for the next patch release.
🌱 Ecosystem
📣 Announcements
🧩 Extensions
For each officially supported extension we need to ensure it is compatible with the new Solidus version.
Requires permission to both push to the master/main branch and to rubygems.
- Ensure that the CI is green
- Update the version in
lib/solidus_extension_name/version.rb
- Commit the changes with the message
Release vX.Y.Z
- Run
bin/rake release (this will build, create the git tag, and push to both git and rubygems)
- Create the GitHub release and auto-generate the changelog
New minor release of Solidus
We are committed to release every quarter in order to have a constant and predictable cadence for our deliverables.
For more information, check out our Release Policy page.
Here are the steps to follow to release a new minor version.
They are written in the order required to make the process work. However, some material necessary for the release should be prepared before starting with those steps, like the text of the upgrade guide or the messages to send to the community.
💎 GitHub and RubyGems
Release preparation
mainas the branch and the checkbox to prepare the next major unchecked (unless necessary), a new auto-generated PR will appear.More details about the release workflows are described on our
Release pipeline automation wiki page,
which we encourage to review if the assignee is not familiar with the topic.
Release the Solidus gems on Rubygems
To officially release the Solidus gems, you need to have permissions on RubyGems, with 2FA enabled.
Open Solidus on your local machine and run:
You will be prompted to enter your 2FA code multiple times, one for each solidus' subgems.
After-release Chores
Now that Solidus has been released, we need to cleanup the
mainbranch to get ready forthe next release. As you may have noticed, when the "Release Preparation" PR has been merged, a new PR has been automatically created. That PR already contains the code to get our repository
clean and ready.
There's also another PR auto-generated, which takes care of getting the newly created branch ready to accept new contributions and ready for the next patch release.
Post-release chores after having released Solidus vX.YPost-creation chores after new vX.Y patch branch🌱 Ecosystem
npm run docusaurus docs:version X.Y) → Add v4.2 edgeguides#124.v3.3)v3.3), change the default solidus target branch in the CircleCI Config to point to the newly created branch.v3.3).📣 Announcements
🧩 Extensions
For each officially supported extension we need to ensure it is compatible with the new Solidus version.
Requires permission to both push to the master/main branch and to rubygems.
lib/solidus_extension_name/version.rbRelease vX.Y.Zbin/rake release(this will build, create the git tag, and push to both git and rubygems)