On Aug 22, 2006, at 1:37 AM, David Jencks wrote:


On Aug 21, 2006, at 9:21 PM, David Blevins wrote:


On Aug 21, 2006, at 7:13 PM, Kevan Miller wrote:

As long as we have inter-dependencies between specs (e.g. javamail depends on activation; jaxrpc on saaj, qname, and servlet; and especially geronimo-spec-j2ee depends on everything), I'm not convinced that this really makes things any better...

I agree that your plan is better than the previous plan for multiple trunks, but I'm not convinced that either plan is actually making things simpler...

If I understand your proposal, tags/geronimo-spec-jaxrpc-<jax- rpcversion>/pom.xml will specify the tagged versions of saaj, qname, and servlet upon which it depends? So, haven't we just split apart the specification of these version dependencies from a single pom.xml into multiple poms? Is this really making things simpler?

That'd be right. I'm not sure how complicated that is, though. None of those specs have changed in a year. Can you give an non- hypothetical example of something that does change and causes this problem that isn't the J2EE uber-jar?

Well, the current activation spec is at version 1.1. When that version was bumped from 1.0 (or 1.0.x), you'd have needed to know/ remember to change the poms in the following specs: geronimo-spec- j2ee, geronimo-spec-javamail, geronimo-spec-jaxr, and geronimo-spec- saaj.

A question for you, Jason: If someone wants to build our released specs from source, what's the process?


Maybe I don't understand the proposal, but otherwise IIUC every time we've found a problem in e.g. the jacc spec we'd need to release every spec jar, and update all the versions. I guess we do this with a lot of geronimo jars going e.g. from 1.1 to 1.1.1 but I think having a lot of identical-contents spec jars would be too confusing.

No, I don't think that's what is happening (at least not in theory), but I've never actually "released" specs. So, I may be mistaken...

Current Process for updating jacc

1) Update branches/1_1/pom.xml with new geronimoSpecsVersion and new geronimoSpecsJaccVersion
2) Update jacc spec sources
3) Build all specs
4) Release jacc and uber-jar spec
5) tag branches/1_1 as tags/1.1.x

Current Proposed Process

1) Update branches/1_1/geronimo-j2ee/pom.xml with new uber-jar spec version and new jacc spec version
2) Update branches/1_1/geronimo-jacc/pom.xml with new jacc spec version
3) Update jacc spec sources
4) Build jacc and uber-jar (build seperately or together?).
6) Release jacc
7) tag jacc-<version>
8) Release uber-jar
9) tag uber-jar-<version>

Single-version Proposed Process

1) Update branches/1_1_/pom.xml with new specs version
2) Update jacc spec sources
3) Build all specs
4) Release all specs
5) tag branches/1_1 as tags/1.1.x

I don't see that releasing identical content spec jars are necessarily confusing (as you point out, we essentially do it with every Geronimo release). Less confusing to have only a single version to worry about... What's the latest release 1.1.x geronimo specs? Use that for all of my j2ee 1.4 spec dependencies. Seems simpler than knowing the latest jacc spec is at version x and the latest servlet 2.4 spec is at version y.

--kevan

Reply via email to