On 16/09/2009, at 8:18 PM, Benjamin Bentmann wrote:
Ignoring for the moment that neither "3.0-!" nor "3.0.0.!" are OSGi-
conformant versions, the OSGi version ordering also implies
3.0 == 3.0.0 < 3.0.0.20090915-152839-2 < 3.0.0.GA < 3.0.0.SNAPSHOT
So I'm not sure how much we can borrow from OSGi for Maven.
IIUC, The code that Hervé pointed to now has a number of workarounds
so that OSGi works in most of its current uses, and Maven versions
work in most of its current uses - but it doesn't conform to the spec
of either. ie, alpha, beta, rc, cr, milestone and snapshot are all
before the release, the rest after. I think this would have been a
good idea if we'd done it to start with, but I'm sure there are weird
versions out there that might cause confusion (only mediated by the
fact that people don't use ranges all that often).
I think there are 3 options here:
- keep adding more special cases in the version comparer for things
like !
- declare a break in compat (this may result in having to make
repository changes to preserve functionality though in a mixed
environment)
- restore the Maven 2 behaviour and make each place a range is used
configurable so that OSGi can be used as an alternatives - for example
- osgi:[x.y.z.q,) vs mvn:[x.y.z,)
Cheers,
Brett
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]