In the past Magento didn't really follow a helpful versioning pattern (see readme). However, lately they are sticking to patch level version increases, so we should revisit how we do our branching and release tagging for this repo. Any thoughts/suggestions?
Here is my idea for versioning to be completely composer compatible while still tracking official releases and allowing for our own releases independent of official releases. It's a little creative but not to hard to understand hopefully.
+1 @colinmollenhour
After merging several branches and looking at older ones that can be merged into their originally based branches I think the fewer the branches we have the better.. Maybe going to "9.xx" vs "9.3x" would be worthwhile (while still using the same proposed tagging scheme). The effect would be that between 1.9.3.x and 1.9.4.0 any in progress PRs would be merged into the latest version instead of an older version. The good thing about this is that it puts the onus on the committer to rebase if upstream commits cause conflicts rather than on a maintainer to do a second merge afterward. Also it would be really easy to click "Merge" and forget that the PR was merged in an old branch and not the newest branch and while the PR would be closed the code would get left behind in an old branch.
This sounds pretty good, but my main apprehension is the cognitive load this would place on users of this repo for translating which "version" they should be using. I've been using the 4-deep version numbers in my composer.json since I started using this repo and it seems to work, so it's surprising to me that it's not supported.
@colinmollenhour @LeeSaferite If you guys don't have any opinion otherwise, I'll create the "1.9.3x" branch today.
My opinion is that the branch should be 1.9.3.x and we tag releases. Composer runs off the tags amd if you use -dev it'll use branches instead.
We do have the issue now, that unless we want to have moving tags, someone can't expect to have bug fixes/etc if we tag 1.9.3.2 right now on the 1.9.3.x branch.
@drobinson No objection.
@colinmollenhour no objection to moving tags?
No, I was referring to:
If you guys don't have any opinion otherwise, I'll create the "1.9.3x" branch today.
I do object to updating tags as tags are widely assumed to be immutable and it is not worth breaking that convention.
Most helpful comment
Here is my idea for versioning to be completely composer compatible while still tracking official releases and allowing for our own releases independent of official releases. It's a little creative but not to hard to understand hopefully.