After talking with Martin and Manfred I've come to realize the issue
here. I now propose the following approach to releasing the core.
This approach also applies to tomoahawk (just replace the word 'core'
with 'tomahawk'.)
1.) branch commons
2.) branch core
3.) increment commons snapshot version on the trunk
4.) increment tomahawk snapshot version on the trunk
5.) test commons (branch)
6.) change commons snapshot version to final (on the commons branch)
7.) release commons
8.) change commons snapshot version to final (on the core branch)
9.) test core (branch)
10.) change core snapshot version to final (on the core branch)
11.) release core
As Manfred points out, steps one and two need to be done
simultaneously so that any changes to the upcoming core release cannot
be affected by subsequent changes to the core trunk.
The key difference in what I am proposing now is that we create only
two branches. One for commons and one for what you're about to
release (in this case core.) You leave the other projects (in this
case tomahawk alone.)
Then when its time to release the other project (tomahawk) you repeat
the process. Basically you release another version of commons each
time in order to make sure you have exactly the right code
dependencies.
Sean
On 2/17/06, Sean Schofield <[EMAIL PROTECTED]> wrote:
> I didn't have time last night to address the branch fully. We just
> need to change some refs on the branch once its made. It was on my
> list today. I will check in soon and then tell me what you think.
>
> Sean
>
> On 2/17/06, Martin Marinschek <[EMAIL PROTECTED]> wrote:
> > I've taken some aspirine, so my headache is better now ;)
> >
> > regards,
> >
> > Martin
> >
> > On 2/17/06, Manfred Geiler <[EMAIL PROTECTED]> wrote:
> > > The current release policy causes headache for Martin and confusion for
> > > me. ;-)
> > >
> > > Just looked at the tomahawk 1.1.2 branch. It depends on commons
> > > 1.1.3-SNAPSHOT.
> > > Shouldn't the tomahawk freeze depend on commons 1.1.2 instead?!
> > >
> > > The longer I think about it, the more I'm really sure that the only
> > > correct way to do MyFaces releases in the future is to freeze (ie.
> > > create a branch for) all modules at the same time. Otherwise we will
> > > always run into huge problems.
> > > The upcoming core and tomahawk will depend on and must be compatible
> > > to commons-1.1.2. Every current modification in core or tomahawk that
> > > depends on commons-1.1.3-SNAPSHOT and is done in the trunk now, will
> > > break this compatibility if we do the branch later.
> > >
> > > This way we could also simplify all commons dependencies by using
> > > <dependency>
> > > <groupId>org.apache.myfaces.commons</groupId>
> > > <artifactId>myfaces-commons</artifactId>
> > > <version>${version}</version>
> > > </dependency>
> > > instead of
> > > <dependency>
> > > <groupId>org.apache.myfaces.commons</groupId>
> > > <artifactId>myfaces-commons</artifactId>
> > > <version>1.1.3-SNAPSHOT</version>
> > > </dependency>
> > >
> > > This way the release would become slightly simpler as well. These are
> > > the necessary steps as I see them. Comments and corrections welcome!
> > >
> > > 1. Code freeze:
> > > 1a. Create commons 1_1_2 branch (*)
> > > 1b. Create core 1_1_2 branch
> > > 1c. Create tomahawk 1_1_2 branch (*)
> > > 2. Replace 1.1.2-SNAPSHOT by 1.1.2 in all three branches
> > > -->Everyone is now able to install a complete 1.1.2 release in his/her
> > > local repository by using the 1_1_2 branches
> > > 3. Replace 1.1.2-SNAPSHOT by 1.1.3-SNAPSHOT everywhere in trunk (*)
> > > -->Development can go on without danger for current release process
> > > 4a. Fix citical bugs in commons branch if necessary (*)
> > > 4b. Vote for and release commons 1.1.2 (*)
> > > 5a. Fix citical bugs in core branch if necessary
> > > 5b. Vote for and release core 1.1.2
> > > 6a. Fix citical bugs in tomahawk branch if necessary
> > > 6b. Vote for and release tomahawk 1.1.2
> > >
> > > (*) = already done
> > > Order of steps 5 and 6 does not matter.
> > >
> > > Sean, what do you think?
> > >
> > > Manfred
> > >
> >
> >
> > --
> >
> > http://www.irian.at
> >
> > Your JSF powerhouse -
> > JSF Consulting, Development and
> > Courses in English and German
> >
> > Professional Support for Apache MyFaces
> >
>