You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by Jason Dillon <ja...@planet57.com> on 2007/03/28 23:02:59 UTC
What is the deal with geronimo-javaee-deployment_1.1MR3_spec
I really hate that we have version information in artifactIds... this
is a huge PITA when the version needs to be changed. This is a
*very* bad practice. Can we please stop this madness?
--jason
Re: What is the deal with geronimo-javaee-deployment_1.1MR3_spec
Posted by Jason Dillon <ja...@planet57.com>.
> This is not our version, its the version of the spec.
Its still a version number in an artifactId... regardless of who's
version it is.
The problem with this is that when you go to change versions you have
to go update a bunch of poms to fix their artifactId instead of
simply updating one dependency in a dependencyManagement section.
Because we put version numbers in artifactIds we've given ourselves a
lot more maintenance work when it comes time to rev specs and because
of this we have made it far to easy to missing them and get modules
out of sync.
> IIRC we had a big discussion about the best spec naming convention
> and decided this was it.
So because of that its not something that can be changed? I really
disagree with this practice. It really only make *more* maintenance
work and increases the chances of something getting out of sync. Its
far to easy to end up with several different versions of the same
spec in a project because the normal maven version resolution can't
figure out which one to use because of the version information
encoded in artifact ids.
> Despite our best intentions, we often end up releasing corrections
> to spec jars we've published. Can you suggest a different naming
> convention that will clearly and unambiguously show both the spec
> version and the geronimo version of a spec jar? Or do you think
> one of these is unnecessary?
I think that all relevant information can be encoded in the artifacts
version. And I think that the geronimo version is mostly irrelevant,
its basically a revision of the sun version, so I would just put a
counter on the end of the sun version:
<specVersion>-<geroniomRev>
1.0-1
This helps do away with inconsistencies which we have now, with
picking 1.1 or 2.0 or 1.0m2 or whatever... just keep incrementing the
revision when there are changes.
Some real examples:
<current> ---> <suggest> (w/o version in artifactId):
geronimo-j2ee-management_1.1_spec-1.0-M1.jar -> geronimo-j2ee-
management-spec-1.1-1.jar
geronimo-j2ee-management_1.0_spec-1.0.jar -> geronimo-j2ee-management-
spec-1.0-1.jar
geronimo-j2ee-management_1.0_spec-1.0.1.jar -> geronimo-j2ee-
management-spec-1.0-2.jar
geronimo-j2ee-management_1.0_spec-1.1.jar -> geronimo-j2ee-management-
spec-1.0-3.jar
> As you can probably tell, I think this is a very good practice. I
> hate it when someone says they depend on "servlet.jar" and I have
> to open the spec jar up and try to figure out if whoever generated
> it bothered to include any information at all about which spec
> version they implemented.
Well, lucky for you w/maven the version information is encoded in the
jar file names by default. So its quite easy to just use the
"version" of an artifact to contain all of the versioning details and
you will end up with an artifact with that information in the filename.
--jason
Re: What is the deal with geronimo-javaee-deployment_1.1MR3_spec
Posted by David Jencks <da...@yahoo.com>.
This is not our version, its the version of the spec. IIRC we had a
big discussion about the best spec naming convention and decided this
was it.
Despite our best intentions, we often end up releasing corrections to
spec jars we've published. Can you suggest a different naming
convention that will clearly and unambiguously show both the spec
version and the geronimo version of a spec jar? Or do you think one
of these is unnecessary?
As you can probably tell, I think this is a very good practice. I
hate it when someone says they depend on "servlet.jar" and I have to
open the spec jar up and try to figure out if whoever generated it
bothered to include any information at all about which spec version
they implemented.
thanks
david jencks
On Mar 28, 2007, at 2:02 PM, Jason Dillon wrote:
> I really hate that we have version information in artifactIds...
> this is a huge PITA when the version needs to be changed. This is
> a *very* bad practice. Can we please stop this madness?
>
> --jason
Re: What is the deal with geronimo-javaee-deployment_1.1MR3_spec
Posted by Jason Dillon <ja...@planet57.com>.
On Mar 29, 2007, at 6:35 PM, Aaron Mulder wrote:
> For what it's worth, Jason's proposal sounds reasonable to me*. But I
> don't really fancy changing all the current names either. :)
I don't really want to change them (ie the work)... but I feel very
strong about getting rid of that version muck in the artifactId.
> * Well, I can't say that 1.1MR3-1-SNAPSHOT made sense at first glance,
> but the 1.1MR3-1 followed by 1.1MR3-2 seems clear.
Ya, seems weird at first, but I was just mapping David's example,
which was for a SNAPSHOT ;-)
--jason
> On 3/29/07, Jason Dillon <ja...@planet57.com> wrote:
>> On Mar 29, 2007, at 8:06 AM, David Jencks wrote:
>>
>> > artfifactId=geronimo-javaee-deployment_1.1MR3_spec
>> > version=1.0-SNAPSHOT (IIRC, but its' value is irrelevant)
>> > groupId=org.apache.geronimo.specs
>> >
>> > the spec version is 1.1MR3
>> >
>> > It follows the agreed upon conventions for geronimo spec naming.
>>
>> I think we should reconsider the convention. And use the artifacts
>> version to contain *all* of the version information. Since the
>> current convention's version is mostly irrelevant anyways, I suggest
>> that we use the spec's version + revision number (counter) as the
>> version.
>>
>> That makes the above look like:
>>
>> artfifactId=geronimo-javaee-deployment-spec
>> groupId=org.apache.geronimo.specs
>> version=1.1MR3-1-SNAPSHOT
>>
>> And when released the version would be:
>>
>> version=1.1MR3-1
>>
>> This indicates the spec version and a revision count for how many
>> update/iterations we have applied to it. When its time to make a new
>> revision then we'd have:
>>
>> version=1.1MR3-2
>>
>> And when the spec version changes to say 1.2, then we'd have:
>>
>> version=1.2-1
>>
>> IMO this is *much* more natural and allows us to use the Maven
>> dependencyManagement section to manage all version information
>> effectively for child modules.
>>
>> --jason
>>
>>
>>
>>
>>
>>
Re: What is the deal with geronimo-javaee-deployment_1.1MR3_spec
Posted by Aaron Mulder <am...@alumni.princeton.edu>.
For what it's worth, Jason's proposal sounds reasonable to me*. But I
don't really fancy changing all the current names either. :)
Thanks,
Aaron
* Well, I can't say that 1.1MR3-1-SNAPSHOT made sense at first glance,
but the 1.1MR3-1 followed by 1.1MR3-2 seems clear.
On 3/29/07, Jason Dillon <ja...@planet57.com> wrote:
> On Mar 29, 2007, at 8:06 AM, David Jencks wrote:
>
> > artfifactId=geronimo-javaee-deployment_1.1MR3_spec
> > version=1.0-SNAPSHOT (IIRC, but its' value is irrelevant)
> > groupId=org.apache.geronimo.specs
> >
> > the spec version is 1.1MR3
> >
> > It follows the agreed upon conventions for geronimo spec naming.
>
> I think we should reconsider the convention. And use the artifacts
> version to contain *all* of the version information. Since the
> current convention's version is mostly irrelevant anyways, I suggest
> that we use the spec's version + revision number (counter) as the
> version.
>
> That makes the above look like:
>
> artfifactId=geronimo-javaee-deployment-spec
> groupId=org.apache.geronimo.specs
> version=1.1MR3-1-SNAPSHOT
>
> And when released the version would be:
>
> version=1.1MR3-1
>
> This indicates the spec version and a revision count for how many
> update/iterations we have applied to it. When its time to make a new
> revision then we'd have:
>
> version=1.1MR3-2
>
> And when the spec version changes to say 1.2, then we'd have:
>
> version=1.2-1
>
> IMO this is *much* more natural and allows us to use the Maven
> dependencyManagement section to manage all version information
> effectively for child modules.
>
> --jason
>
>
>
>
>
>
Re: What is the deal with geronimo-javaee-deployment_1.1MR3_spec
Posted by Jason Dillon <ja...@planet57.com>.
On Mar 29, 2007, at 8:06 AM, David Jencks wrote:
> artfifactId=geronimo-javaee-deployment_1.1MR3_spec
> version=1.0-SNAPSHOT (IIRC, but its' value is irrelevant)
> groupId=org.apache.geronimo.specs
>
> the spec version is 1.1MR3
>
> It follows the agreed upon conventions for geronimo spec naming.
I think we should reconsider the convention. And use the artifacts
version to contain *all* of the version information. Since the
current convention's version is mostly irrelevant anyways, I suggest
that we use the spec's version + revision number (counter) as the
version.
That makes the above look like:
artfifactId=geronimo-javaee-deployment-spec
groupId=org.apache.geronimo.specs
version=1.1MR3-1-SNAPSHOT
And when released the version would be:
version=1.1MR3-1
This indicates the spec version and a revision count for how many
update/iterations we have applied to it. When its time to make a new
revision then we'd have:
version=1.1MR3-2
And when the spec version changes to say 1.2, then we'd have:
version=1.2-1
IMO this is *much* more natural and allows us to use the Maven
dependencyManagement section to manage all version information
effectively for child modules.
--jason
Re: What is the deal with geronimo-javaee-deployment_1.1MR3_spec
Posted by David Jencks <da...@yahoo.com>.
artfifactId=geronimo-javaee-deployment_1.1MR3_spec
version=1.0-SNAPSHOT (IIRC, but its' value is irrelevant)
groupId=org.apache.geronimo.specs
the spec version is 1.1MR3
It follows the agreed upon conventions for geronimo spec naming.
thanks
david jencks
On Mar 29, 2007, at 4:30 AM, Rick McGuire wrote:
> Matt Hogstrom wrote:
>> What is the alternate proposal?
> I suspect it should follow the more normal convention of "name of
> what it is" followed by the version identifier. For specs, the
> name of the spec artifact frequently contains a version identifier
> for the level of the spec. For example the javamail specs have
> names such as this:
>
> geronimo-javamail_1.3.1_spec-1.3
>
> This indicates that this is an implementation of the javamail 1.3.1
> specification, and the Geronimo version level is 1.3.
> So, what's the version level vs. specification level of the above
> artifact? Is this an implementation of the "1.1MR3" leve of the
> javaee deployment spec? Then it is missing its version identifier
> all together. It should be something like
>
> geronimo-javaee-deployment_1.1MR3_spec-1.0
>
> Or is this the MR3 version of the javaee deployment spec version
> 1.1? Then this should be
>
> geronimo-javaee-deployment_1.1_spec-MR3
>
> Or, is the version identifier actually the full 1.1_MR3, in which
> case it should be
>
> geronimo-javaee-deployment_spec-1.1MR3
>
> In all cases, the version level of the artifact is the last element
> of the artifact name.
>
> Rick
>
>>
>> On Mar 28, 2007, at 5:02 PM, Jason Dillon wrote:
>>
>>> I really hate that we have version information in artifactIds...
>>> this is a huge PITA when the version needs to be changed. This
>>> is a *very* bad practice. Can we please stop this madness?
>>>
>>> --jason
>>>
>>
>>
>
Re: What is the deal with geronimo-javaee-deployment_1.1MR3_spec
Posted by Matt Hogstrom <ma...@hogstrom.org>.
That's my understanding ... you are so much more articulate than I :)
On Mar 29, 2007, at 7:30 AM, Rick McGuire wrote:
> Matt Hogstrom wrote:
>> What is the alternate proposal?
> I suspect it should follow the more normal convention of "name of
> what it is" followed by the version identifier. For specs, the
> name of the spec artifact frequently contains a version identifier
> for the level of the spec. For example the javamail specs have
> names such as this:
>
> geronimo-javamail_1.3.1_spec-1.3
>
> This indicates that this is an implementation of the javamail 1.3.1
> specification, and the Geronimo version level is 1.3.
> So, what's the version level vs. specification level of the above
> artifact? Is this an implementation of the "1.1MR3" leve of the
> javaee deployment spec? Then it is missing its version identifier
> all together. It should be something like
>
> geronimo-javaee-deployment_1.1MR3_spec-1.0
>
> Or is this the MR3 version of the javaee deployment spec version
> 1.1? Then this should be
>
> geronimo-javaee-deployment_1.1_spec-MR3
>
> Or, is the version identifier actually the full 1.1_MR3, in which
> case it should be
>
> geronimo-javaee-deployment_spec-1.1MR3
>
> In all cases, the version level of the artifact is the last element
> of the artifact name.
>
> Rick
>
>>
>> On Mar 28, 2007, at 5:02 PM, Jason Dillon wrote:
>>
>>> I really hate that we have version information in artifactIds...
>>> this is a huge PITA when the version needs to be changed. This
>>> is a *very* bad practice. Can we please stop this madness?
>>>
>>> --jason
>>>
>>
>>
>
>
Re: What is the deal with geronimo-javaee-deployment_1.1MR3_spec
Posted by Rick McGuire <ri...@gmail.com>.
Matt Hogstrom wrote:
> What is the alternate proposal?
I suspect it should follow the more normal convention of "name of what
it is" followed by the version identifier. For specs, the name of the
spec artifact frequently contains a version identifier for the level of
the spec. For example the javamail specs have names such as this:
geronimo-javamail_1.3.1_spec-1.3
This indicates that this is an implementation of the javamail 1.3.1
specification, and the Geronimo version level is 1.3.
So, what's the version level vs. specification level of the above
artifact? Is this an implementation of the "1.1MR3" leve of the javaee
deployment spec? Then it is missing its version identifier all
together. It should be something like
geronimo-javaee-deployment_1.1MR3_spec-1.0
Or is this the MR3 version of the javaee deployment spec version 1.1?
Then this should be
geronimo-javaee-deployment_1.1_spec-MR3
Or, is the version identifier actually the full 1.1_MR3, in which case
it should be
geronimo-javaee-deployment_spec-1.1MR3
In all cases, the version level of the artifact is the last element of
the artifact name.
Rick
>
> On Mar 28, 2007, at 5:02 PM, Jason Dillon wrote:
>
>> I really hate that we have version information in artifactIds... this
>> is a huge PITA when the version needs to be changed. This is a
>> *very* bad practice. Can we please stop this madness?
>>
>> --jason
>>
>
>
Re: What is the deal with geronimo-javaee-deployment_1.1MR3_spec
Posted by Matt Hogstrom <ma...@hogstrom.org>.
What is the alternate proposal?
On Mar 28, 2007, at 5:02 PM, Jason Dillon wrote:
> I really hate that we have version information in artifactIds...
> this is a huge PITA when the version needs to be changed. This is
> a *very* bad practice. Can we please stop this madness?
>
> --jason
>