
About Semantic Versioning
Semantic Versioning is a set of rules for numbering software releases. The version number tells users how much a release has changed.
What it does
A version has three numbers, MAJOR.MINOR.PATCH. The major number goes up for incompatible API changes, the minor number for new features that stay compatible, and the patch number for compatible bug fixes. Extra labels can mark pre-releases and build metadata. The rules aim to avoid dependency problems, where software is locked to old versions or accepts too many future ones.
Key features
- Three part version numbers
- Rules for major, minor and patch changes
- Pre-release labels
- Build metadata labels
- Translated into many languages
Who it's for
Semantic Versioning suits library authors and software teams that publish releases other projects depend on. Package managers and tools that read version numbers automatically also rely on it.
Pricing and good to know
The specification is a public document, and using the rules costs nothing. It does not decide what counts as your public API, so teams still need to define that. Many tools assume these rules, so following them matters most when other people consume your package.
Highlights
- Three part version numbers
- Major, minor and patch rules
- Pre-release and build labels
- Translated into many languages












