We're changing the way we use our branches in all of our repositories, paving the way for an accelerated release cadence. These changes will become effective on Wednesday, February 19th, 2020. We highly recommend that you adjust your build processes, in particular all sorts of artifacts, to reflect these changes.
The New Branch Schema
Old branches have been tracked in version branches, such as 2.1 or 3.0, for a long time already. However, the current and next version have faced some inconsistencies over the past years, residing in different branches with sometimes unclear rules on when they are migrated into version branches. This has historically lead to some confusion with 3rd party developers that had issues tracking down the correct branch to apply and/or suggest their changes.
The new schema puts up clear rules on this:
- Stable version will always reside in version branches, regardless of their age.
- master is always the development branch that eventually becomes the next stable version.
- Upon reaching the stable version .0, the master branch is transfered into the appropriate version branch.
- The next branch has become obsolete, as it is now represented by the master branch.
Effective Changes: An Example
The Core's repository (Please login to see this link.) will serve as an example for the aforementioned changes:
Tree Before After Version 2.1.x 2.1 2.1 Version 3.0.x 3.0 3.0 Version 3.1.x master 3.1 Version 5.2.x next 5.2 (Next version) --- master
These changes will enter into force on Wednesday, February 19th, 2020.