hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Roland Weber <http-as...@dubioso.net>
Subject Re: [HttpComponents] componentization, packaging, versioning
Date Sun, 11 Mar 2007 10:31:43 GMT
Hi Oleg,

> With all due respect I do not see it this way. Ability to queue requests
> is the only thing I can think of, which HttpCore NIO has and HttpCore
> CIO does not. 

If you consider ElementalHttpServer as part of HttpCore, I can see your
point. If I am not mistaken, NIO includes logic to dispatch incoming
requests to worker threads. That's nowhere in the module-main JAR. We
give an example of how to do it, but NIO builds a framework. I guess
multithreading is inseparable from NIO and can rightfully claim to be
at the core for NIO, so I'll shut up on this matter.

>> From what little I know of Maven, it should not be too
>> tricky to create a meta release of HttpComponents by
>> unjaring the individual modules and rejaring them into
>> a single package. If we had that, we could ask users
>> (in particular Synapse) to build against that for
>> convenience. The meta release would be synchronized
>> with releases of the individual components, in three
>> flavors:
>> HttpComponents-early packages the newest release of
>>    everything, whether it be alpha, beta, RC or final.
>> HttpComponents-mature packages only mature releases,
>>    that is (beta?,) RC and final.
>> HttpComponents-final packages only final releases.
>>
> 
> I am afraid this approach will break Maven's dependency mediation and
> conflict resolution mechanism [1], which presently assumes one version
> per artifact (JAR). If we ever provide HttpComponents bundle, it should
> be clearly targeted at non-Maven users who prefer to manage project
> dependencies manually. 
>
> [1]
>
http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html

Transitive dependencies? You mean it's a simple as defining a dummy
artefact with all the alphas as a dependency and then those alphas
will be picked up as transitive dependencies by everyone depending
on the dummy? HttpClient (+Maven) users will declare only HttpClient
as a dependency and automatically pick up HttpCore and, if we should
have them, HttpAuth and HttpCookie? Regardless of whether they are
a module of HttpClient or a separate component? Synapse is going to
depend on module-niossl and will get HttpCore and HttpNIO without
noticing where they come from?
That sounds promising. Dummy artefacts for Maven users,
repackaged JARs for manual deployment.

cheers,
  Roland


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


Mime
View raw message