On Nov 23, 2005, at 1:12 PM, Dain Sundstrom wrote:
On Nov 23, 2005, at 1:58 PM, David Jencks wrote:
I've investigated this a little bit and think it might be too big a
lurch in a new direction for 1.0. Here are a few of the things that
would have to change or appear to be problems:
1. constructing the configId from groupId + artifactId + version +
type. This is pretty easy.
2. finding stuff in a repo and/or config store from the configId.
This is fairly easy
3. Constructing the ObjectNames that include the configId in
J2EEApplication and/or J2EEModule. This requires quoting the
configId which is a big pain and is apt to cause difficulties
everywhere.
4. We have been using URI for the configIds internally. I think if
we use this new format this should change. The : character appears
to have a specific meaning in URIs and it is decidedly different from
what we are meaning by it. We could perhaps introduce a scheme and
write
configid:groupId:artifactId:version:type. I could not tell from a
bit of research on URIs whether this is consistent with their
intended semantics. Does it make sense to have URIs of this form?
Should we just change our configId type to something else?
At this point I think we need more discussion before we proceed along
this route. I have some of it implemented.... please speak up.
My opinion, is we don't make incompatible changes between major
releases, so if we decide not to do this now, it will be harder to do
it later.
Anyway, I see your point, so lets talk about what changes you want to
implement pre-1.0?
If you are changing the configuration ids, I'd like to make sure the
format is something we can easily parse into groupId, artifactId and
version. For example, we could go with:
org.apache.geronimo/j2ee-server/1.0
Should we change our dependency URIs to the same format? I'm inclined
to think we should. I would prefer to include the type (car|jar) for
completeness and to distinguish dependencies from configIds.
So I think this format proposal takes care of (3) and (4) and I already
implemented (1) and (2) although with the : separator. I'm not sure if
this format might cause confusion anywhere between a resolvable path
URI and this more abstract configId format.
Are there any other changes of note?
Using the plugins rather than tons of jelly is a big change, but I'm
not sure what else might be a change "of note". Also for a while now
the plugin-based build has been extracting dependency info from
project.xml rather than requiring you to duplicate it.
thanks
david jencks
-dain