Semantic Versioning: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 13: Line 13:


=Concepts=
=Concepts=
==Public API==
The semantic versioning-compliant version labels carry meaning about the public API of the piece of software they are attached to. The public API describes how the software is consumed by its clients.
==Major Version==
==Major Version==
==Minor Version==
==Minor Version==
Line 23: Line 27:
https://semver.org/#spec-item-3
https://semver.org/#spec-item-3
==Version Precedence==
==Version Precedence==
=Operations=
=Operations=



Revision as of 19:59, 3 January 2020

External

Internal

Overview

Semantic versioning means attaching meaning to a version label. The version label is used to communicate how the piece of software it is attached to changed in relation to other versions of the same piece of software. The essential components of a semantic versioning-compliant version label are:

<major>.<minor>.<patch>[-pre-release-label][+build-metadata]

Concepts

Public API

The semantic versioning-compliant version labels carry meaning about the public API of the piece of software they are attached to. The public API describes how the software is consumed by its clients.

Major Version

Minor Version

Patch

Pre-Release Version

Build Metadata

Version Lock

Version Promiscuity

Versioned Artifact Immutability

https://semver.org/#spec-item-3

Version Precedence

Operations

When to Increment Patch Number

When to Increment Minor Number

When to Increment Major Number

Grammar