On 12-Aug-09, at 5:37 PM, Jason Chaffee wrote:
It was just yesterday that I was just have a conversation with a
former colleague about wagon issues in 2.x and the difficulty in
switching out implementations. He was running into all kinds of
issues trying to do it and was not very happy about it. Also, this
is something I have mentioned on the this list in the past about one
of the things that I find annoying about maven.
I know for a fact, that some people do care about switching and it
is a bigger populace than is given credit.
The discussion is really about what we want to support well versus
pluggability.
Pluggability is easier in 3.x and no work is going to be done on the
sub-systems in 2.x to make that as flexible and we're moving to Guice
anyway so Plexus is dead. So whoever makes implementations of the
retriever or publisher you'll be able to switch more easily in 3.x.
In the case of the components that actually come out of this project
and the use cases we can reasonably support as an OSS project, I want
to start severely constraining that because along with the component
is maintenance, testing and documentation. I think we can reasonably
support one flavor of each major component and do the necessary
ancillary work. I think that will be the impetus for other to make
good implementations of what they want instead of thinking all of our
implementations, many of which just honestly aren't fully baked, are
great.
Kind regards,
Jason
-----Original Message-----
From: Brett Porter [mailto:[email protected]] On Behalf Of Brett
Porter
Sent: Wednesday, August 12, 2009 5:28 PM
To: Maven Developers List
Subject: Re: Replacing old Wagons in Maven 3.0 with the Jetty-client
based Wagon
On 12/08/2009, at 8:10 PM, Jason van Zyl wrote:
On 12-Aug-09, at 3:43 PM, Brett Porter wrote:
On 12/08/2009, at 5:58 PM, Jason van Zyl wrote:
John,
Not John, but I like to think I do a good impression :)
What's the range of features across the two http Wagon's right now?
They really don't do anything more than the underlying httpclient /
JDK implementations. HTTP Headers, connection timeout, and then any
parameters supported by HTTPClient in that version.
I assume in some cases we need the functionality of one versus the
other so I would just like to improve the Jetty-client based Wagon
and fix up what's required there,
I assume you mean the existing mercury-wagon (and its mercury
deps), not a new wagon based on the underlying jetty http client?
Same thing.
I'm talking about whether it will depend on mercury-core (and sat4j,
and commons-cli) or just jetty-client. (Or the other alternative to
pull out the mercury transport bits as a separate release).
Note that the current mercury-wagon hasn't been updated to the latest
artifacts, I'm not even sure if it builds once updated.
add any functionality and toss the other two.
shouldn't maven 3 equally support switching implementations and
instead choosing the new one as a default / only built-in /
supported impl?
No. I'll take one good with the same features. That's why I'm asking
what's in both them. Users just want something that works, I doubt
anyone cares about switching unless they run into the corner cases
that force them to use one or the other.
Presumably those users with edge cases exist since John went to all
that effort to make it happen in 2.2. I'm all for using the Jetty one
and I'm sure they'll fix up any edge cases as we go, but given how
well established the lightweight HTTP one is, it might still be worth
having that available to start with. My impression was that switching
would be easier out of the box in M3's classloading so it wouldn't be
a big deal.
I would like to have one good implementation and we can take
advantage of the parallelization, PGP, and SSL support in the
Jetty client.
I'm still not convinced doing the PGP this low down in the stack is
a good idea, I'd prefer it got fixed up in the core artifact
handling so it could be configured from the core and used in scp,
etc.
- Brett
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
Thanks,
Jason
----------------------------------------------------------
Jason van Zyl
Founder, Apache Maven
http://twitter.com/jvanzyl
http://twitter.com/SonatypeNexus
http://twitter.com/SonatypeM2E
----------------------------------------------------------
believe nothing, no matter where you read it,
or who has said it,
not even if i have said it,
unless it agrees with your own reason
and your own common sense.
-- Buddha
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
Thanks,
Jason
----------------------------------------------------------
Jason van Zyl
Founder, Apache Maven
http://twitter.com/jvanzyl
http://twitter.com/SonatypeNexus
http://twitter.com/SonatypeM2E
----------------------------------------------------------
A language that doesn’t affect the way you think about programming is
not worth knowing.
-— Alan Perlis
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]