To me I would like to roll in all of it, I think the bump in major version is 
appropriate but if we call that 3.1.0 that's fine. It really does work almost 
the same, there are some plugins that will get need some rework but that's not 
the end of the world. To me a plugin that works in 3.0.x but not in another 
later versions is a major breakage. We can define it however we like and call 
the version whatever we like.

I think the major rub is adopting Aether as the Artifact API we're going to 
expose. My opinion is that it already is. It's out there because people ducked 
around to get at Aether but we also allowed the RepositorySystem and 
RepositorySystemSession to be pushed into plugins. Some people moaned but no 
one stopped it and that is public plugin API as far as I'm concerned. With 
those two classes exposed you have access to all of Aether and that's been 
sitting there for 2 years. So the cat is out of the bag and another Artifact 
API is such a futile value-less effort given Aether's existence. If someone had 
jumped up and made the bridge a year ago and kept in sync with Eclipse Aether 
that would be different. But as I noted it's hard, time consuming work. Unless 
someone commits to do full-time work on this I don't see a bridge, or shim, or 
new API being made before I'm elderly.

If we roll the combo of JSR330, SLF4J and Eclipse Aether things will work for 
most and we can probably update the rest of the plugins before anyone switches. 
The code will also be smaller, the dependency plugins using Aether, for 
example, would probably shed 2/3 of the code.

On Mar 3, 2013, at 7:58 PM, Benson Margulies <bimargul...@gmail.com> wrote: 

> On Sun, Mar 3, 2013 at 4:29 PM, Jason van Zyl <ja...@tesla.io> wrote:
>> 
>> On Mar 3, 2013, at 5:41 PM, Benson Margulies <bimargul...@gmail.com> wrote:
>> 
>>> As I see it, you are using the version number to communicate with the
>>> tiny number of people who have made plugins that depend on Aether.
>>> 
>> 
>> Any JSR330 discrepancies, SLF4J being used for logging and the Aether 
>> changes. 4.0.0 says "we did our best to make everything work, but you may 
>> have issues."
>> 
>>> I would rather see us use the version number to communicate with the
>>> vast number of people who use Maven.
>>> 
>> 
>> How do you see this as not communicating with everyone. JSR330, SLF4J, and 
>> Eclipse Aether are not insignificant.
> 
> Let's consider three audiences:
> 
> 1. end users
> 2. most plugin developers
> 3. core devs and the devs of the small inventory of very
> dependency-sensitve plugins
> 
> I think that all of these things you are citing are good things. But I
> think that they are mostly in categories 2 and 3, and in the case of
> Aether, entirely in 3. Thus my view about version numbers. if I'm
> missing something and picking up a new Aether has benefits for
> category 1, great.
> 
> I also want to write now that I'm not on a campaign here. I'd rather
> see all this happen as '4.0.0' than not happen at all, even if my
> preference is as expressed.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> For additional commands, e-mail: dev-h...@maven.apache.org
> 

Thanks,

Jason

----------------------------------------------------------
Jason van Zyl
Founder & CTO, Sonatype
Founder,  Apache Maven
http://twitter.com/jvanzyl
---------------------------------------------------------

The modern conservative is engaged in one of man's oldest exercises in moral 
philosophy; that is, 
the search for a superior moral justification for selfishness.

 -- John Kenneth Galbraith





Reply via email to