Devii · DevOps · 2026-03-23 · 6 min read

Share

Semantic Versioning: MAJOR.MINOR.PATCH And What Bumps Mean

SemVer 2.0.0 is a contract with consumers; pre-release and build metadata have defined meaning.

**Semantic Versioning** (`semver.org`) defines `MAJOR.MINOR.PATCH`. Increment **MAJOR** for incompatible API changes, **MINOR** for backward-compatible additions, **PATCH** for backward-compatible fixes.

Pre-release labels (`1.0.0-beta.1`) signal unstable builds. **Build metadata** (`+build.42`) does not affect precedence.

Release checklist
Release checklist

SemVer applies to **public API** surface. Internal refactors without API change are PATCH level. If you ship libraries, document what you consider public (types, URLs, JSON fields).

Consumers pin ranges in package managers; maintainers owe clear changelogs. SemVer is not a substitute for communication on breaking ecosystem shifts (Node major, React major).