Skip to content

Latest commit

 

History

History
26 lines (16 loc) · 1.43 KB

VERSIONING.md

File metadata and controls

26 lines (16 loc) · 1.43 KB

Versioning

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 RFC2119 RFC8174 when, and only when, they appear in all capitals, as shown here.

This document is licensed under The Apache License, Version 2.0.

Introduction

This document is to describe how a project is to version its releases

It also describes standardized tooling around manipulating the version

Semver

A project MUST use Semantic Versioning semver. Build metadata MAY NOT be used in a project. Build metadata SHOULD be ignored.

A Basic summary of Semantic Versioning taken from: semver.org

Summary:

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

MAJOR version when you make incompatible API changes, MINOR version when you add functionality in a backwards-compatible manner, and PATCH version when you make backwards-compatible bug fixes. Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format.

In addition to classic semver versioning scheme this template also supports the major-zero versioning scheme that's popular in Rust ecosystem.