Semantic Versioning is an actively used schema created in 2011. Semantic versioning (aka SemVer), currently the best known and most widely adopted version scheme in this category, uses a sequence of three digits (Major.Minor.Patch), an optional prerelease tag and optional build meta tag. In this scheme, risk and functionality are the measures of significance. Breaking changes are indicated by increasing the major number (high risk), new non-breaking features increment the minor number (medium risk) and all other non-breaking changes increment the patch number (lowest risk). The presence of a prerelease tag (-alpha, -beta) indicates substantial risk, as does a major number of zero (0.y.z), which is used to indicate a work-in-progress that may contain any level of potentially breaking changes (highest risk).
- the Semantic Versioning website
- Semantic Versioning on github
- Semantic Versioning first appeared in 2011
- Semantic Versioning was created by Tom Preston-Werner
- Have a question about Semantic Versioning not answered here? Email me and let me know how I can help.
Example code from the web:
Last updated January 25th, 2020