LLVM Moves To A Versioning Scheme Like GCC - N.1 Version For Stable Branch
Following discussions with upstream developers, LLVM is changing its versioning as part of the branch creation process to better distinguish mainline development builds of LLVM against those from stable (or soon to be stable) release branches.
Rather than sticking to "LLVM 18.0" as the next stable LLVM release as the version currently indicated with LLVM Git, the first stable release will actually be LLVM 18.1. This is similar to how GCC has been handling their versioning the past several years with the N.1 version being their first stable milestone.
LLVM point releases will then be LLVM 18.1.1, 18.1.2, etc. There will only be an LLVM 18.2 for example if an ABI break occurs, as a slight difference compared to GCC"s 13.1, 13.2, etc point releases.
This difference in versioning was recently discussed on LLVM Discourse and with this commit on Friday is now implemented once the LLVM 18 release process/branching gets underway in late January.
Rather than sticking to "LLVM 18.0" as the next stable LLVM release as the version currently indicated with LLVM Git, the first stable release will actually be LLVM 18.1. This is similar to how GCC has been handling their versioning the past several years with the N.1 version being their first stable milestone.
LLVM point releases will then be LLVM 18.1.1, 18.1.2, etc. There will only be an LLVM 18.2 for example if an ABI break occurs, as a slight difference compared to GCC"s 13.1, 13.2, etc point releases.
"This will help distinguish release branch builds from development branch builds, and is similar to GCC's version numbering policy.
Thus, the branch `releases/18.x` will start out numbered 18.1.0, instead of 18.0.0.
Unchanged are other versioning policies:
- mainline will be numbered 18.0.0, 19.0.0, ...
- typical release branch releases will increment micro version, e.g. 18.1.1, 18.1.2, ....
- If an ABI break is required on the release branch, the minor version will be incremented, e.g. to 18.2.0."
This difference in versioning was recently discussed on LLVM Discourse and with this commit on Friday is now implemented once the LLVM 18 release process/branching gets underway in late January.
8 Comments