blob: d57057fbe6ffe24a6454693ded024506fcc8995c [file] [log] [blame]
Julian Halle76ade82020-11-25 03:07:21 +01001Versioning policy
2==================
3
4This document captures information about the version identifier used by the
5project. It tells the meaning of each part, where the version information is
6captured and how it is managed.
7
8Summary
9-------
10
11The version identifier identifies the feature set supported by a specific
12release, and captures compatibility information to other releases.
13
14This project uses "Semantic Versioning", for details please refer to |SEMVER|.
15
16In general the version number is constructed from three numbers. The `MAJOR`
17number is changed when incompatible API changes are introduced, the `MINOR`
18version when you functionality is added in a backward compatible manner, and
19the `PATCH` version when backwards compatible bug fixes are added.
20
21Each release will get a unique release id assigned. When a release is made, the
22version number will get incremented in accordance with the compatibility rules
23mentioned above.
24
25This project is only using the core version and will not use pre-release or
26build specific metadata extension.
27
28Storage and format
29------------------
30
31The version number of each release will be stored at two locations:
32 #. In a tag of the version control system in the form of "vX.Y.Z" where X Y
33 and Z are the major, minor and patch version numbers.
34 #. In a file called version.txt. This file uses ASCII encoding and will
35 contain the version number as "X.Y.Z" where X Y and Z are the major,
36 minor and patch version numbers.
37
38.. note:: The version id is independent from version identifiers of the
39 versioning system used to store the |TS| (i.e. git).
40
41--------------
42
43.. _`Semantic Versioning`: https://semver.org/spec/v2.0.0.html
44
45*Copyright (c) 2020-2021, Arm Limited and Contributors. All rights reserved.*
46
47SPDX-License-Identifier: BSD-3-Clause