Description
Currently the repository is tagged for each prerelease, mirroring the spec versions as they progressed. However, there are no release branches. This was probably fine prior to 1.0. But now that 1.0 is out, a v1.x
branch should be created and maintained so that fixes can be backported to previous versions as we continue to move forward with changes in the repository.
I suggest the following:
- Create a
v1.x
branch off of thev1.0.0
tag. - Create a
v1.x-backport
label which can be used to label any PRs that have landed since the 1.0.0 release, indicating they should be considered for backporting to thev1.x
branch. - As appropriate, create patch releases off of the
v1.x
branch, tagging the repo on thev1.x
branch withv1.0.1
, for example, for the next patch release. - As appropriate, create minor releases off of the
v1.x
branch, tagging the repo on thev1.x
branch withv1.1.0
, for example, for the next minor release. - If needed create a
v1.1.x
branch for minor release patch updates. - As appropriate, create patch releases off of the
v1.1.x
branch, tagging that branch withv1.1.1
, for example, for the next patch release in this major/minor combination. - Repeat for 2.0.0 and up on their own branches.
This is related to the question raised in #72 where the contributor's guide talks about using the develop
branch. That hasn't been done since the 1.0.0 release. We need to decide if we want to move forward with this process. If so, then the develop
branch needs to be updated with all recent commits, and set as the primary branch in the repository settings. This setting will ensure that by default, pull requests from contributors are created to land on the develop
branch.
My personal feeling is that the develop
branch is mostly redundant with master
and we don't really need to do that. If contributors can manage rebasing their pull requests with updates from master
regularly, this shouldn't be a problem. Though I think this does add some pressure to land PRs quickly. What are other's thoughts on this?