commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel F. Savarese" <>
Subject Re: [net] Branching
Date Thu, 01 Jan 2004 04:04:57 GMT

In message <>, Jeffrey D. Brekke writes:
>After we make a 1.1 compatible release and tag, that will be the
>branch point for any 1.1 fixes.  Next we can make a release with 1.2
>support and tag, that will be the branch point for any 1.2 related
>fixes.  All development then proceeds on HEAD.
>Its just a suggestion.  I can live with an experimental branch also,
>just in other projects I've been involved with, if HEAD isn't the
>focal point of new development, it get confusing where to put stuff,
>what is working, etc.

I understand and agree with what you're saying and think we had different
ideas of the nature of new development.  I was thinking that for the
foreseeable future, new development would be focused on enhancing the
functionality of the current code, such as Steve's parser factory.  I'm
proposing we engage in a certain amount of redesign and implementation
around java.nio, which may break a lot of stuff and in the end may turn
out to be a throwaway experiment to figure out how to implement the next
generation of the code "the right way."  I'm leary of the possibility
of going down blind alleys on the HEAD branch.  However, I was also going
to suggest that the redesign/reimplementation/nio work occur in
an org.apache.commons.net2 package (has the advantage of allowing both
new and old code to coexist, as may be required in some environments,
without playing games with classloaders), which may make it a moot point
as we can simply omit that package from releases.

At any rate, I don't think any of us are going to embark on any J2SE 1.4
work in the next few days, so let's talk it over some more to figure out
where we want to go with this and at least create the 1.1 branch so
Steve can continue to make his changes of off HEAD.  I'm visiting
relatives and have likely not given sufficient thought to my suggestions.
All I'm sure of is that we've got three cases to consider:
  1. maintenance of a 1.1 compatible product with a schedule to
     suspend support
  2. continued development of a 1.2 compatible product where the next
     immediately usable features will be developed
  3. long term development of a 1.4 dependent product that has a yet
     to be determined design and may take a year or more to materialize
     into something usable

Steve Cohen, Jeffrey Brekke, and Daniel Savarese all appear to agree on
how to do 1, so I think it's safe to skip a vote and just make the branch.
Sanity check the steps to make sure this is what we want:
  o rename NET_1_1_0 tag to something else, let's say FOO
  o tag FOO as NET_1_1_0, this time with the -b flag to make it a branch tag
If that seems like not a good thing, another option is to tag the NET_1_1_0
snapshot with NET_1_1_0_MAINTENANCE or some such tag for the 1.1
maintenance branch and leave the existing NET_1_1_0 tag alone.

Having done that then we'll continue new development (e.g., Steve's parser
factory) on the HEAD branch until we figure out whether J2SE 1.4
development really belongs on an experimental branch, the HEAD branch,
in a net2 package, or some variation thereof.


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message