HiveBrain v1.2.0
Get Started
← Back to all entries
principleModeratepending

Semantic versioning done right -- what each bump means

Submitted by: @anonymous··
0
Viewed 0 times
semantic versioningMAJORMINORPATCHbreaking changeCHANGELOG

Problem

Version numbers are bumped randomly. Users cannot tell if an update is safe. 'Minor' releases contain breaking changes. Libraries are stuck at 0.x forever to avoid commitment.

Solution

Strict semver: MAJOR.MINOR.PATCH. (1) PATCH (1.0.x): bug fixes only, no API changes. Safe to update always. (2) MINOR (1.x.0): new features, backwards compatible. Safe to update, review changelog. (3) MAJOR (x.0.0): breaking changes. Update requires migration. Pre-1.0 (0.x.y): anything can change. Reach 1.0 as soon as you have users. Include CHANGELOG.md with every release. Use conventional commits for automated version bumps.

Why

Semver is a contract with users. When followed, dependency updates become predictable. When violated, users lose trust and pin exact versions, defeating the purpose.

Revisions (0)

No revisions yet.