CubicWeb Adopts Semantic Versioning!
Semantic versioning
Until now, all releases of CubicWeb were made under version number 3.x.y. We're thrilled to announce our adoption of semantic versioning for CubicWeb 🚀
Starting from CubicWeb 4.0.0, breaking changes will only be released in major versions. We are confident that these changes will lighten the load for applications and library maintainers! 😄
Adapting our workflow
Until now, all new features and breaking changes were developed on the "default" branch of the mercurial repository.
For each new minor version, we created a new branch and these new branches only received bug fixes.
This way of working is relatively simple but has its limitations: since all features are pushed to the "default" branch, if a breaking change is introduced, it is inevitably included in the next minor version.
After the release of CubicWeb 4, we changed our workflow to continue regularly
releasing minor versions of CubicWeb while simultaneously working on the next
major version. The default
branch is now dedicated to the next major version
while fixes and non breaking features are now developped in the branch of the
latest released major version:
We will put this new workflow to the test and verify that it suits our needs and enable us to keep a good release frequency.
Stay tuned for more updates ! 🟧