Release version 1.3.3/1.4.0 and syncing the branches
jrfnl opened this issue · 4 comments
Setting the scene
A couple of years back, a number of things were proposed for version 2.0 and work was started on that, but there has been little progress in the past year or so.
In practice this means that there is now one commit (#148) in master, which is not in develop (which is why Dependabot is not yet running) and - aside from the v2 specific patches - there are also a number of commits in develop which should be ported to master.
How to move forward
To make merges and releases more straight forward again, I think it would be good to get the branches back in sync and change strategies a little.
There are basically two options:
- Keep the branches as they are and cherrypick select commits from
developtomasterand visa versa.
The milestone of the cherrypicked commits should be updated from2.0.0to1.3.x Next.
This will largely keep things as they are now workflow wise, but keeps the mental overhead of the two branches potentially diverging and having to cherrypick and such. - Cherrypick select commits from
developtomasterand then rebasedevelopon top ofmaster.
This should be combined with setting thedefaultbranch back tomaster, rebasing currently open and viable PRs againstmasterif they are not part of the larger changes for 2.0 and don't contain breaking changes (and switching the branch these PRs are pulled against).
Moving forward, PRs should be pulled againstmaster(with the exception of 2.0 specific PRs) and when PRs are merged, themasterbranch should be merged into thedevelopbranch, untildevelopis ready for the 2.0 release.
Note: This change does mean that people with active forks, will have to reset theirdevelopbranch.
I'd advocate for strategy 2, but would like to hear opinions.
Detailed proposal
I'd be happy to get this sorted and to put the work in to make it happen.
Independently of which workflow is used, I believe the following changes should be included in the next release/cherrypicked to master:
- #100
- #109
- The bug fix from #117 (not the test changes)
- The bug fixes from #118 (not the test changes)
- #124
- #125
- #128
- #129
- #130
- #131
- #132
- #140
- #150
- #160
- #146
- #151
- #152
- #154
- #156
- #158 / Various Dependabot updates which should start being pulled as soon as the change from #148 is merged into
develop. - #159
- Changelog
I intend to do some test runs in the next few hours to make sure we'll have a passing build on master with the changes as proposed.
I'll also start preparing the changelog for the 1.3.x release (or 1.4.0, I'll have a look what it should be when I prepare the changelog).
@grogy What do you think ?
FYI: I've re-milestoned the above listed PRs to 1.3.x will be renaming that milestone in a moment to 1.4.0 as the release contains something which can be considered a new feature.
I've prepared a feature/release-1.4.0 branch containing the cherrypicks as proposed above + a changelog for the 1.4.0 release based on the above PRs/commits being included in the release.
The builds pass for the 1.4.0 release branch, with the exception of PHP 8.4, but this is not due to this package not being compatible, but due to Nette Tester 1.0 not being compatible with PHP 8.4.
Target release date: Tuesday March 19 (providing @grogy responds in time).
@grogy Would be great to get this out of the door and as PRs can't be merged with an approval, I can't do anything about this without you getting involved. When can we get this done ?
In the mean time, the 1.4.0 release has gone out 🎉
@grogy and me discussed the branching today in a call and the conclusion was basically that it would probably be best to work towards getting the 2.0 release tagged soonish and to then drop support for the 1.x branch.