SemVer

Semantic Versioning

About

Semantic Versioning uses a versioning numbering system of:

The v prefix is optional but conventionally used.

v<MAJOR>.<MINOR>.<PATCH>

<MAJOR>.<MINOR>.<PATCH>

Major

Is the version number for major releases, meaning updates that are incompatible with previous versions.

Usually this will include removal of functionality or changes that break compatibility.

Version 0

In the beginning of a project where the application is unstable or too susceptible to changes, it is common to start in a Major version of 0.

0.0.0

After multiple Minor updates, when the software is supposed to be stable or ready, it's Major version is then changed to 1.0.0.

Minor

Are updates or releases that keeps compatibility with previous versions.

Minor releases includes added functionalities, or changes that doesn't break compatibility.

Patch

Will be updates that correct bugs or fixes broken functionalities.

Pre-releases

When looking at stability over changes and compatibility breaks.

1.0.0-alpha < 1.0.0-beta < 1.0.0

This means that Alpha is less stable than Beta which is less stable than a normal Release.

Alpha

It is the most unstable pre-release versions.

Alpha versions can increase like:

1.0.0-alpha

1.0.0-alpha.1

1.0.0-alpha.2

Beta

It is more stable than Alpha, but less stable than a regular Release.

Beta versions can increase like:

1.0.0-beta

1.0.0-beta.1

1.0.0-beta.2

Last updated