Versioning
A vow to honor time, energy, and the human spirit through software.
Version 2.2.1-alpha+sutta.2025
Semantic versioning 2.0.0 aligns well with the values presented in the manifesto.
As you can see, the vow itself is versioned. The vow embodies its own values which is why its versioning follows semver 2.0.0.
In the world of semver, one can use the build identifier for great things. In our example, we use the build identifier to communicate two things:
The single, most significant change in this build
To allow consumers to identify the version in terms of features
The year when this was published
To allow consumers to quickly determine how up-to-date they are
Another way to use the build identifier is to communicate the git commit SHA as follows:
2.2.0-beta+2025.git-580fbe9
Or do not use the build identifier at all. The reason why we discuss it is that it is something that isn't used as widely and can communicate additional context to software consumers.
The build identifier does not affect version precedence (according to Semantic Versioning), but it communicates context - quietly, truthfully, to those who need it. The build identifier is like a humble monk’s robe. It does not change who the monk is - but it may tell you where he has walked.
But only if it serves someone’s clarity. Never add metadata "just because."