Ruby version policy changes starting with Ruby 2.1.0
Posted by zzak on 21 Dec 2013
We’ve decided to change the Ruby versioning policy to a more Semantic Versioning type starting with the release of Ruby 2.1.0.
In order to provide a more well defined and properly utilized versioning scheme for Ruby, we’ve decided to gradually switch to the following policy.
Policy Changes
This policy is based off a proposal by ruby-lang.org system administrator Hiroshi Shibata (@hsbt).
Version Schema
MAJOR: increased when incompatible change which can’t be released in MINOR- Reserved for special events
MINOR: increased every christmas, may be API incompatibleTEENY: security or bug fix which maintains API compatibility- May be increased more than 10 (such as
2.1.11), and will be released every 2-3 months.
- May be increased more than 10 (such as
PATCH: number of commits since lastMINORrelease (will be reset at 0 when releasingMINOR)
Branching Schema
We will continue to maintain the following branches:
- trunk
ruby_{MAJOR}_{MINOR}_{TEENY}
API Compatibility
The following traits can be marked as an incompatible change, requiring an
increase in the MINOR version:
- Removal of C-level api features
- Backwards incompatible changes or additions
ABI Compatibility
ABI will comply with the following scheme: {MAJOR}.{MINOR}.0
We will give our best effort to keep ABI compatibility within the same MINOR
level releases, so TEENY will be fixed at 0.
References
To read up more on this proposal please see the following links:
- Introducing a semantic versioning scheme and branching policy
- Accepted proposal in English
- Accepted proposal in Japanese
Thank you!
I’d like to personally thank everyone who contributed to this discussion. Each step we take is closer to a more stable and effective Ruby.
Recent News
Ruby 4.0.0 Released
We are pleased to announce the release of Ruby 4.0.0. Ruby 4.0 introduces “Ruby Box” and “ZJIT”, and adds many improvements.
Posted by naruse on 25 Dec 2025
A New Look for Ruby's Documentation
Following the ruby-lang.org redesign, we have more news to celebrate Ruby’s 30th anniversary: docs.ruby-lang.org has a completely new look with Aliki—RDoc’s new default theme.
Posted by Stan Lo on 23 Dec 2025
Redesign our Site Identity
We are excited to announce a comprehensive redesign of our site. The design for this update was created by Taeko Akatsuka.
Posted by Hiroshi SHIBATA on 22 Dec 2025
Ruby 4.0.0 preview3 Released
We are pleased to announce the release of Ruby 4.0.0-preview3. Ruby 4.0 introduces Ruby::Box and “ZJIT”, and adds many improvements.
Posted by naruse on 18 Dec 2025