Hi Manfred,

Looking at the tomcat repo here;

http://svn.apache.org/repos/asf/tomcat/current

they appear to have a 'root' for each major version.

breck:~ bdudney$ svn ls http://svn.apache.org/repos/asf/tomcat/current
tc3.3.x/
tc4.1.x/
tc5.5.x/

Each of these in turn point to a list of what look like 'roots' for the various sub-projects that make up TC

breck:~/ bdudney$ svn propget svn:externals http://svn.apache.org/ repos/asf/tomcat/current/tc5.5.x
build https://svn.apache.org/repos/asf/tomcat/build/tc5.5.x
container https://svn.apache.org/repos/asf/tomcat/container/tc5.5.x
connectors https://svn.apache.org/repos/asf/tomcat/connectors/trunk
jasper https://svn.apache.org/repos/asf/tomcat/jasper/tc5.5.x/jasper2
servletapi https://svn.apache.org/repos/asf/tomcat/servletapi/ servlet2.4-jsp2.0-tc5.x

breck:~/ bdudney$ svn propget svn:externals http://svn.apache.org/ repos/asf/tomcat/current/tc4.1.x container https://svn.apache.org/repos/asf/tomcat/container/branches/ tc4.1.x
connectors https://svn.apache.org/repos/asf/tomcat/connectors/trunk
jasper https://svn.apache.org/repos/asf/tomcat/jasper/branches/tc4.1.x
servletapi https://svn.apache.org/repos/asf/tomcat/servletapi/ branches/servlet2.3-jsp1.2-tc4.x

They have a huge code base and a ton of history to support (are they still doing 4.x work? yikes!). I think we could do something similar but a bit simpler.

TTFN,

-bd-

On Nov 29, 2005, at 4:51 PM, Manfred Geiler wrote:

Then we should make a 1.2 branch - is that the best practice?

I would think you'd want to create a branch for the older code, and keep the latest development (i.e. 1.2 enhancements) on trunk. Otherwise you need
to ask yourselves what 'trunk' means, going forwards.

How do other projects (eg Tomcat) start new spec implementations?

The Tomcat team has incremented the major version when the Servlet spec
changes. For example:

 Tomcat 3.x --> Servlets 2.2
 Tomcat 4.x --> Servlets 2.3
 Tomcat 5.0.x --> Servlets 2.4
 Tomcat 5.5.x --> Servlets 2.4 with JDK 5

And did/do they always have a branch for the older versions? And do
they merge back useful changes and bug fixes? Sounds complicated if
there are complete refactorings.
Or did they start off with 5.0.x by copying the 4.x code to a new root dir?

Manfred

Reply via email to