maven-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Maczka Michal <michal.mac...@imtf.ch>
Subject RE: versioning of maven-model drops
Date Wed, 01 Dec 2004 09:03:59 GMT


> -----Original Message-----
> From: Jason van Zyl [mailto:jvanzyl@maven.org]
> Sent: Tuesday, November 30, 2004 7:11 PM
> To: Maven Developers List
> Subject: Re: versioning of maven-model drops
> 
> 
> On Wed, 2004-12-01 at 00:27, Michal Maczka wrote:
> > Brett Porter wrote:
> 
> > I am just trying to propose something simpler as I am 
> afraid that there 
> > will be way too many converters and parsers.
> 
> The whole point in trying to stabilize the v4 POM is so that 
> there will
> not be a proliferation of parsers and converters. For the v4.x there
> will only ever be additions. Period. If we much something up 
> then we can
> replace the bad elements with something better but leave the mistakes
> and deprecate them over years. That being the case there won't be any
> converters because it will all be additions. And because we 
> will only be
> dealing with additions any subsequent versions of the generate model
> tools will know how to deal with past versions. Moving from 
> v3 -> v4 is
> the only real chore we have to deal with. 
> 
> It will be simple because we're only going to do additions. And we can
> only do additions to the model as it's the only way we're 
> going to have
> long-term stability.
> 
> 
That's exactly what I was saying in that thread :)


So to respond to yor initial question:


>What we are doing now is generating the most current version of the
>model is generated without versioning in the package name, so it's
>something like:

>org.apache.maven.model.*

>But we can optionally have versioning in the package name:

>org.apache.maven.model.v301.*

>We have used the versionless variant in the maven-core so that we don't
>have the wrangle version names when we upgrade the model which I like
>but if we are going to make separate utility drops should we release
>them with versioning in the package name? This would be for general use
>like the fellow wants to do on the user list.


As we all agree that v4 model is not going to change radically (in case it
will we can have v5 in the far away future)

We can use using something like:

org.apache.maven.model.v3
org.apache.maven.model.v4

as we won't ever need to have to flip packages names to

org.apache.maven.model.v401
org.apache.maven.model.v402
etc

when model will be envolving. The latest parser which we will deliver will
support all possible mutation of v4 model.

>So I'm thinking we can always generate releases with versioning in the
>package name and generate the versionless package name for our use in
>maven-core. I guess that brings up the question of how to name the
>artifacts but that's the general notions. Once we figure this out I
>would like to cut a release of maven-model and let folks try it out.

>Thoughts?


Most of the m2 plugins will not be using model directly.
But some will. 

It will be nice if m2 and other tools were using exactly the same liblary
(jar) and package names.
So somebody can for example take some particular m2 mojo which uses m2 model
and m2 model and execute it without a help
of m2 runtime and m2-core jars.

I suppose that dual packaging of the same classes will be confusing and we
should avoid it.


The only exception here should be made in case of m1 where both core and
some plugins expects model v3 in certain package.

Still tools like continum can use the parser which uses
org.apache.maven.model.v3 for keeping model.

So really the only difficulty which we will ever need to deal with is the
differnces between version v3 and v4.


Michal

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Mime
View raw message