Semantic versioning for Nix
FlakeHub enables you to use a subset of Semantic Versioning (SemVer) with your Nix flakes. The diagram below provides a quick refresher on the structure of versions in SemVer:
major.minor.patch
Backwardsincompatiblecompatible
- Major versions represent backwards-incompatible API changes.
- Minor versions represent additions of backwards-compatible functionality.
- Patch versions represent backwards-compatible bug fixes.
Here’s an example SemVer-compatible version:
21.3.12
A breaking API change would entail a bump to major version 22 while a bug fix would entail a patch version bump to 13.
For things like pre-releases you can add extra information to the patch.
21.3.12-pre