Open Source
Semantic Versioning
Also known as: Semver
Semantic Versioning (semver) is a versioning scheme in the format major.minor.patch, where major version increments signal breaking changes, minor increments signal backward-compatible new functionality, and patch increments signal backward-compatible bug fixes.
The entire value of semver is that it lets automated tooling — package managers, dependency-update bots — decide which upgrades are safe to apply automatically (patch and often minor) versus which require human review (major), without inspecting the actual code change.
Semver is a convention maintainers opt into, not something enforced by any registry; a package that mislabels a breaking change as a minor or patch release breaks the trust the entire system depends on, which is why unexpected breakage after a routine dependency update is a common source of frustration.
Example
A package moving from 2.4.1 to 2.5.0 added functionality without breaking existing usage; moving to 3.0.0 signals that upgrading requires checking for breaking changes.