+1 to David's recap and to Matts plans below.

John
Matt Hogstrom wrote:
Thanks David, I tried to recap in the other thread and didn't receive any additional responses so now that we have a branches/1.1.0 branches/1.1 and a branches/1.1.1 I don't think we quite nailed it. Your summary is great and I concur.

Here is my + 1 and I'm happy to get the Wiki updated.

The remaining question is what to do with the branches that are out there. I think we should whack what's out there (does not appear that there has been any activity) branches/1.1 and branches/1.1.1. When the vote is complete later today and we release 1.1 I'll move branches/1.1.0 to tags/1.1.0 and then make the copy to branches/1.1 and update the versions to 1.1.1-SNAPSHOT as well as the plugin releases.

Then I think we're open for G-Business.

David Blevins wrote:
We had this whole conversation last week, lots of good discussion was
had.  I'd prefer not to have to have it again.  Here is my exact
understanding of our consensus and would like to put it to a vote to
avoid reinterpretation of that consensus in the future.

1.   branches/x.y would be the branch for all x.y.z releases

2.   when a release is frozen, we spin off a branch with that *exact*
     name, as in branches/x.y.z, where z starts at zero and increments
     by one.

3.   at that time branches/x.y is immediately updated to version
     x.y.(z+1)-SNAPSHOT

3.   We cut releases from the frozen branch

4.   When a release passes final tck testing and final vote, the
     frozen branch is moved to tags

We create a branch at freeze time for the following reasons:

1.  it takes *at least* one week from freeze to ship due to voting,
    tck testing and potential repeats of that process (re-cut,
    re-certify, re-vote).  There is no reason why work on x.y.z+1
    needs to be delayed -- only 52 weeks a year.

2.  stronger guarantee no one is updating the branch once frozen

3.  less likely that people and ci systems (continuum) will checkout
    and build pre-release versions of x.y.z (not x.y.z-SNAPSHOT) which
    would need to be removed manually and may accidentally be
    distributed.

4.  it is currently very difficult to roll version numbers forward,
    entries here and there are often missed.  Far better to have
    branches/x.y have a few straggling old x.y.z-SNAPSHOT versions
    than a few overlooked x.y.z final numbers that needed to go back
    to SNAPSHOT -- they never leave SNAPSHOT and need to be reverted
    back later if that process happens in the frozen branch.


Here is my +1


-- David



On Jun 21, 2006, at 4:14 PM, Matt Hogstrom wrote:

After the branches/1.1 was moved to tags there was some question as to what happened to the 1.1 branch. At that time some kind soul created a new branches/1.1.1. No activity has occurred in that branch and given that we'll need to define the release goals of 1.1.1 soon I'd like to propose the following.

After 1.1 is released:

* Delete branches/1.1.1
* Move branches/1.1.0 to tags/1.1.0
* Copy tags/1.1.0 to branches/1.1.1
* Update branches 1.1.1 to be 1.1.1-SNAPSHOT
* Start working on 1.1.1

When 1.1.1 enters time for release

* Move branches/1.1.1 to branches/1.1.1.0
* Change version from 1.1.1-SNAPSHOT to 1.1.1
* Create release candidate rc1
* put out for a vote
* get a successful vote with no respins :)
* move from branches/1.1.1.0 to tags/1.1.1.0

Based on all the confusion in the past I think this procedure makes it clear what phase were in for the release as well as avoids tagging and branching repeatedly.

I'm looking for lazy consensus and not a formal vote.

Matt







Reply via email to