Our current focus is finishing the last details for the release.
- the changelog is now part of the documentation of logilab-common to make sure it is visible
- test our clients project against our latest version on our repository to ensure we don't break everything when making a release
- allow 2 randomly breaking tests to fail (those aren't part of the code we are currently working on)
- 3.28, the version we are finishing right now, the current changelog is available here https://forge.extranet.logilab.fr/cubicweb/cubicweb/blob/branch/default/doc/changes/3.28.rst
- 3.29 on which we'll focus on writing documentation
- 4.0 in which we'll introduce the usage of semver for CubicWeb regarding its dependencies and release YAMS refactored version
One of our focus right now is to make stable releases of our core projects that won't break all the things ™ and we've made a lot of improvement in our testing suit to ensure that we test everything against our latest modifications before a release is made. Another problem we have right now is that CW only depends on a minimum version number for its dependencies, this mean that if we want to make a new release for one of the dependencies that will have some breaking code this introduce the risk of breaking all new CW installations.
To solve this situation we have decided to implement semantic versioning and only introduction breaking changes in major releases and in addition to only depends on one specific major release at the time in CW dependencies. This way, when we need to make a new release with breaking changes, this will be a major release and we won't break all new CW installations.
We have planned to start implementing this strategy starting CW version 4.0
- a lot of fixes have been pushed on YAMS and CubicWeb to make CubicWeb compatible with the latest modifications in YAMS
See you next week!