Move To Semantic Versioning Complete

Posted on May 03, 2019

If you’ve never heard the term “semantic version”, don’t feel bad – most end users of software have never heard the term either. But more and more, software is using the concept to govern the release numbers that are assigned to new public releases.

In the case of Simple:Press, we’ve completed our to move to it with the updates we’ve pushed over the last 60 days. All our core products now sport a tri-level version number and should adhere to the semantic versioning guidelines going forward.

About Semantic Versioning

Semantic Versioning is a scheme that can help users figure out the likely impact of an update just from the version number of a new release.

Put simply, semantic versioning requires the use of a tri-level version number in the form of an x.y.z format. Based on which level of the number changes, you can get a pretty good idea of the effect an update might have on your system.

If only the last number changes (“z”), then the new release only includes bug fixes. For example, if the current version of Simple:Press is 6.1.0 and the next version is 6.1.1, then its a fairly good guess that we did not deliberately include anything that would break existing functionality in 6.1.1 (i.e.: the release should be 100% backwards compatible with version 6.1.0).

If the middle number changes (“y”), you can expect some new functionality but nothing that breaks existing functionality. So, using the example above, version 6.2 of Simple:Press is likely to have some new functions in it.

If the first number changes (“x”), you can expect major changes in the product and likely some things that will break backwards compatibility. You saw this when we moved from 5.0 to 6.0 of Simple:Press. Many of you are still running on 5.0 because there are major backward compatibility changes in 6.0.

Overall, the idea is simple, right? And I bet that over the years you’ve probably intuitively read new version numbers that way. The Semantic Versioning standard is simply a way of formally expressing what you’ve probably intuitively felt when reading software upgrade notes!

If you’ve recently upgraded your Simple:Press plugins and themes you will see that they all now sport a tri-level version number – prior releases only included two levels.

Learn More About Semantic Versioning

You can learn more about the intention behind this idea of tri-level version numbers at semver.org.