Semantic Versioning (SemVer)

The universal standard for version numbers: MAJOR.MINOR.PATCH. Following these rules helps avoid dependency hell.

The Rules

Given a version number MAJOR.MINOR.PATCH, increment the:

Key / CodeDescription
MAJOR versionWhen you make incompatible API changes (Breaking Changes).
MINOR versionWhen you add functionality in a backward compatible manner.
PATCH versionWhen you make backward compatible bug fixes.

Examples

Key / CodeDescription
1.0.0 -> 1.0.1Bug fix. Safe to upgrade.
1.0.1 -> 1.1.0New feature added. Safe to upgrade (should be).
1.1.0 -> 2.0.0Breaking change. Update requires code changes.
0.1.0Initial development. Anything may change at any time.

Pre-release Tags

Additional labels can be appended for pre-releases.

1.0.0-alpha < 1.0.0-alpha.1 < 1.0.0-beta < 1.0.0-beta.2 < 1.0.0-rc.1 < 1.0.0
Knowledge is power.