My experience is that a high barrier to committ access actually makes life
harder for committers.  I have commit access to Maven but not to plexus....
sometimes when working on Maven Plugins I've found I need to do something in
plexus to resolve an issue, and I've hit the wall because I have to stop to
get committ access or start submitting patches and fight for sponsors...
next thing you know my momentum is gone, and I move on to something else.

If Aether has commit access for all Maven committers automatically, (and I'm
not saying it doesn't) then a large part of my concerns can be removed... I
recognise the p2 stuff as being a separate concern from the m2 repo
stuff.... and if that's the case then you need to sell Aether as such and
not try to sell it as a Maven Repo API.

-Stephen

On 4 August 2010 13:31, Stephen Connolly <stephen.alan.conno...@gmail.com>wrote:

> I was saying that I see Guice as being different than Aether... the
> plexus-guice shim though I see as being separate from Guice.
>
> I also said that I recognise that the bar for egtting committer access at
> apache is probably a little too high for something like Aether.
>
> And, unlike others, I was only saying that I am uncomfortable.  If work
> committments had not been as pressing this last 8 months I would have been
> more heavily involved in M3, but we can all sometimes make the mistake of
> believing lies about effort now saving the site you work at ;-)
>
> -Stephen
>
>
> On 4 August 2010 12:35, Jason van Zyl <ja...@sonatype.com> wrote:
>
>>
>> On Aug 4, 2010, at 4:00 AM, Stephen Connolly wrote:
>>
>> > On 4 August 2010 08:06, Ralph Goers <ralph.go...@dslextreme.com> wrote:
>> >
>> >> I am torn on this as Brett clearly is.
>> >>
>> >> I haven't contributed much code in quite a while. The reasons are
>> simple.
>> >> Maven 2 is "stable" but has serious issues that can't be fixed without
>> >> breaking compatibility. Maven 3 has been under development for years
>> with
>> >> parts being ripped out and redone several times. Maybe it is me but it
>> seems
>> >> like a lot of this work has been going on within Sonatype without a
>> whole
>> >> bunch of discussion here. In any case, I was just getting the feeling
>> that
>> >> Maven 3 is stable enough to start looking at when you announce that you
>> want
>> >> to make significant changes yet again.  Not that they might not be
>> >> warranted, but I am definitely not in favor of having core components
>> of
>> >> Maven hosted at a location that Maven committers don't have commit
>> rights
>> >> to.
>> >>
>> >> I find your pronouncement that it won't be here very troubling since
>> you
>> >> only have a single vote just as every other committer does.
>> >>
>> >> I'm going to have to give serious consideration as to whether I could
>> >> accept this dependency without the code also residing at Apache.
>> >>
>> >>
>> > I share concerns with respect to where the code is hosted.  I recognise
>> that
>> > as Apache is a meritocracy, there is a barrier for other developers
>> getting
>> > involved.  The Hudson model of "You want commit access, here you go" is
>> a
>> > tad too liberal for me, but the Apache model is too far the other way
>> IMHO.
>> > To some extend the codehaus model as practiced on mojo seems a good
>> > compromise to me... but anyway aside from all that...
>> >
>> > Maven is hosted on Apache, therefore I feel that core Maven libraries
>> should
>> > be hosted on Apache until they have significant adoption elsewhere...
>> the
>> > Maven Repository API... well that kind of says it all as far as I'm
>> > concerned with respect to where it should live.
>> >
>> > The Guice changes, well guice is widely adopted elsewhere, so I'm not
>> > suggesting that Guice be relocated or forked into apache, but the Maven
>> > specific parts of that integration.... hang about... "maven specific"
>> says
>> > it all again.
>>
>> >
>> > I have always had concerns about plexus being pretty much only adopted
>> by
>> > Maven as far as I can see, and essentially being a maven core component,
>> > except it isn't
>> >
>>
>> The Guice-based container is really no different. It uses Guice as the
>> core but we had to build the Plexus specific handling and that is a
>> significant piece of code. It is for Plexus-based code and is being used for
>> Maven and Nexus. Even though we will use JSR330 annotations at some point in
>> the near future there are some Plexus-isms that will remain. It's not
>> straight-up Guice, that simply wouldn't have worked. This code is general
>> purpose, and I argue that so is Aether.
>>
>> Of course Maven was our first target, but the two repository types of any
>> consequence are Maven and p2. No one here has likely ever worked with a p2
>> repository and likely doesn't care. p2 is critical for our work, Aether will
>> adopt/change/merge p2 concepts and having written the library we will
>> determine its fate and it needs to be in a place where it's accessible by
>> others is of primary importance.
>>
>> During the course of development of Maven 3.x development only Kristian
>> and Olivier have dug in. I honestly don't believe droves of people here are
>> going to all of a sudden start making huge contributions to the effort. I
>> want to lower the barriers for Aether's development. I believe that tools
>> like Grade, SBT and many other integrators will adopt Aether very soon.
>>
>> Having several people who haven't been even remotely involved in the
>> project over the last year tell me what we should do with the code we wrote
>> doesn't sit very well with me philosophically to be perfectly frank. You do
>> the work, you earn the merit, and therefore the right to decide the fate of
>> the code. You don't think that's justified or fair? At least initially until
>> there is a community built around it and nothing leads me to believe given
>> the events over the last year that the best place to grow a community for
>> Aether is Apache.
>>
>> > -Stephen
>> >
>> > Ralph
>> >>
>> >>
>> >> On Aug 3, 2010, at 8:05 PM, Jason van Zyl wrote:
>> >>
>> >>>
>> >>> On Aug 3, 2010, at 9:52 PM, Brett Porter wrote:
>> >>>
>> >>>>
>> >>>> On 04/08/2010, at 4:21 AM, Jason van Zyl wrote:
>> >>>>
>> >>>>> Hi,
>> >>>>>
>> >>>>> We have two major pieces that we, Sonatype, would like to merge into
>> >> Maven 3.x trunk.
>> >>>>
>> >>>> Are these reviewable distinctly? I only seem them mashed together in
>> >> Benjamin's fork.
>> >>>>
>> >>>
>> >>> The Guice changes are dependency changes only. All the magic happens
>> in
>> >> the container implementation.
>> >>>
>> >>>>
>> >>>> The messages I'd seen so far seemed to indicate it would be heading
>> back
>> >> to Apache, before it was integrated into trunk. This caught me by
>> surprise,
>> >> and I'm disappointed that's not a consideration right now.
>> >>>>
>> >>>
>> >>> Ultimately it's going to be more like p2 so ultimately if it moves
>> >> anywhere it will be to Eclipse.
>> >>>
>> >>>>
>> >>>> On the one hand, we have a repository indexing API eventually coming
>> in,
>> >> but the repository API itself going out - that seems a bit odd. There
>> does
>> >> seem to be a lot of "Mavenisms" in the code, at least at present, that
>> would
>> >> indicate it best fits here. On the other hand, I can see the value in
>> having
>> >> a broader group participating in this effort, and in parallel
>> simplifying
>> >> Maven core to focus on more directly build-related stuff, such that it
>> makes
>> >> sense for it to be a standalone project.
>> >>>>
>> >>>
>> >>> Many other projects are going to be integrating this code and it's
>> likely
>> >> contributions from non-Maven developers will be high. I want to
>> collaborate
>> >> in easily, I want to release once a day if necessary to accommodate
>> >> integrators, I want to use best practices for fully automated releases,
>> and
>> >> I want to be able to update the website instantly. Some of these issues
>> are
>> >> in never-ending discussion mode here, and some of these things will
>> just
>> >> never happen here. I don't want to argue, and I honestly believe Aether
>> will
>> >> be healthier for it. Maven is better here because it's adopted on
>> slower
>> >> cycles and people don't pick up experimental builds. Integrators will
>> likely
>> >> be riding the bleeding edge with Aether for a while.
>> >>>
>> >>>> My main concern is Maven chasing snapshots. For someone to address a
>> bug
>> >> or feature in Maven, they should not have to dive into a 3rd party
>> project.
>> >> I don't really know what would happen to our issue tracker as a result
>> of
>> >> this move. That problem bit me in a small way with the plexus-cipher,
>> it has
>> >> been an historical problem with Plexus itself, and I don't think
>> "anyone can
>> >> have access" really mitigates it. When 3.0 is still struggling for a
>> final
>> >> release, fragmenting issue tracking, communication and the limited
>> >> documentation would seem problematic.
>> >>>
>> >>> I believe this is a non-issue. 3rd party dependencies are a fact of
>> life,
>> >> Maven is no different then anything else in the world. Everyone has to
>> deal
>> >> with snapshot dependencies or other dependency problems in lots of
>> projects.
>> >> Again I think Aether will be healthier having more external parties
>> >> involved. For working on a library it's honestly nice not having all
>> the
>> >> overhead Apache brings to the table. Apache is great for overarching
>> >> products like Maven, but not so much for a sub-parts. Maybe if Apache
>> >> evolved in its approach to development I might think differently in the
>> >> future but that's not the experience now. We need to respond very
>> quickly to
>> >> users and integrators.
>> >>>
>> >>>>
>> >>>> From a technical standpoint - I'd need more time to review, if
>> >> applicable. Knowing that Benjamin does good work, I'd expect it's
>> superior
>> >> to what we have and worth moving forward with, and agree with doing
>> that
>> >> soon so that the end is in sight for 3.0. I spent a lot of time
>> reviewing
>> >> Mercury to no avail (as you similarly highlighted in your blog post),
>> but
>> >> perhaps some of the comments still apply. At a glance, my first comment
>> is
>> >> that I can't see where the line is between the Maven bits and the
>> generic
>> >> bits. For instance, if I wanted to change how the local repository
>> works -
>> >> is that pluggable from Maven, or wholly within the library?
>> >>>>
>> >>>
>> >>> You can look at the demo to see how all the pieces fit together:
>> >>>
>> >>>
>> >>
>> http://github.com/sonatype/sonatype-aether/blob/master/aether-demo/src/main/java/demo/RepoSys.java
>> >>>
>> >>>> I really only see the question of the location of the development to
>> >> decide. My opinion would be to bring it here, alongside the indexer, as
>> a
>> >> subproject.
>> >>>
>> >>> I truly believe more people will be involved in Aether if it's not
>> here.
>> >> I don't believe it's in the best interest of the development of Aether
>> to be
>> >> at Apache. If I'm wrong we can move it in the future but it honestly
>> doesn't
>> >> make any difference now from a practical stand point.
>> >>>
>> >>>> Get all the effort on getting 3.0 out focused in one place, but have
>> a
>> >> clear scope to where they might go later. However, I'm not putting up
>> any
>> >> roadblocks here. The time I would have had to work on this over the
>> last few
>> >> years since trunk split off has pretty much evaporated. I'd love to get
>> back
>> >> into this particular code if it ended up somewhere I could contribute.
>> But
>> >> for now, I mostly want to encourage those who are still here to think
>> >> through the implications for developing Maven.
>> >>>>
>> >>>
>> >>> Fair enough.
>> >>>
>> >>>> Thanks,
>> >>>> Brett
>> >>>>
>> >>>> --
>> >>>> Brett Porter
>> >>>> br...@apache.org
>> >>>> http://brettporter.wordpress.com/
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>> ---------------------------------------------------------------------
>> >>>> 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,  Apache Maven
>> >>> http://twitter.com/jvanzyl
>> >>> ---------------------------------------------------------
>> >>>
>> >>> A language that doesn’t affect the way you think about programming is
>> not
>> >> worth knowing.
>> >>>
>> >>> -— Alan Perlis
>> >>>
>> >>>
>> >>>
>> >>
>> >>
>> >> ---------------------------------------------------------------------
>> >> 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,  Apache Maven
>> http://twitter.com/jvanzyl
>> ---------------------------------------------------------
>>
>> First, the taking in of scattered particulars under one Idea,
>> so that everyone understands what is being talked about ... Second,
>> the separation of the Idea into parts, by dividing it at the joints,
>> as nature directs, not breaking any limb in half as a bad carver might.
>>
>>  -- Plato, Phaedrus (Notes on the Synthesis of Form by C. Alexander)
>>
>>
>>
>>
>

Reply via email to