Will McQueen wrote:
Hi Oleg,

I noticed that the currently-downloadable HttpClient 4.0-beta2 relies on the 
non-final beta release of HttpCore 4.0 (httpcore-4.0-beta3). It seems wasteful 
not to take advantage of the *final* core version now that it's available, so I 
looked at the svn repos for HttpClient:

        https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk

...and found that the POM file now specifies HttpCore 4.0 final (and mime4j 0.6 instead 
of 0.5). Great :-) Maybe I should d/l the latest HttpClient b3 snapshot 
("httpcomponents-client-4.0-beta3-SNAPSHOT"). But then I go to HttpCore svn 
repos:

        https://svn.apache.org/repos/asf/httpcomponents/httpcore/trunk

...and I see a 4.1 snapshot ("httpcomponents-core-4.1-SNAPSHOT")... hmmm, it 
seems wasteful not to take advantage of all those httpcore bug fixes since 4.0 final... 
so I'm thinking about modifying the HttpClient 4.0b3 snapshot's POM file to depend on 
HttpCore 4.1 snapshot instead of HttpCore 4.0 GA, so that I can get the best of both.

So my questions are (if you please...):
1) I know only the basics of POM right now. It seems that all I'd need to do to 
get the current best of both would be to modify this POM:
        https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk/pom.xml
   ...so that this:
        <httpcore.version>4.0</httpcore.version>
   ...becomes this:
        <httpcore.version>4.1-SNAPSHOT</httpcore.version>

Hi Will,

There has been only one bug fix in HttpCore blocking I/O module. There is pretty much no reason to upgrade HttpClient dependency unless your application has been affected by HTTPCORE-198

https://issues.apache.org/jira/browse/HTTPCORE-198

Having said that, there will be HttpCore 4.0.1 before HttpClient 4.0 final release.

   Is that right? Or is there some other change I'd need to make somewhere else 
either in this file or some other file?
        
2) I looked at BUILDING.txt:

        
https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk/BUILDING.txt
        
   ...but I didn't find the answer to the following question:
        "In order to build httpclient using maven, do I just need to checkout only 
the POM.xml file and run maven against it (after which it will download everything it 
needs at runtime, including tests, junit jars, etc), or do I need to check-out the entire 
trunk and then run maven?"
   Could you please help me answer this?
        

Yes, you do. You need a complete snapshot of the trunk in order to be able to build HttpClient. You do not need to check out any dependencies, though. Maven will take care of that automatically.


3) I plan to run all tests from maven against both the httpcore and the 
httpclient snapshots -- ie, I realize that if I run the tests only against the 
client, then I'd be executing all httpclient tests but I'd be missing-out on 
all the httpcore tests... so I'd need to grab the httpcore pom as well, just 
for the purpose of executing the core-only tests. It's too bad there's not an 
option in the single httpclient pom file to be able to exercise both the 
httpclient tests and the httpcore tests against the httpclient snapshot.
After executing the tests, and assuming that all tests pass, then what would you say are 
the biggest risks to using this user-generated build instead of waiting for the 
non-snapshot "release"/downloadable version of httpclient b3? If I know the 
biggest risks and can accept them, then I'd feel much more comfortable using my 
custom-built jars. At what point do you decide when to tag a build -- do you tag it when 
all tests pass and there have been a substantial amount of bug fixes / new features?


There is really no point upgrading at the moment. There has been just one bug in HttpCore affecting HttpClient 4.0. All other bug fixes were in the NIO code that are of no relevance for HttpClient.


Lots of question, I know. I'm eager and excited to be almost ready to start 
seriously using httpclient4. At work, we currently use httpclient3.1 to test 
against the REST web services on our staging server. We also test against 
Production immediately after a deploy.


Just a little bit of patience. I am really trying to get HttpClient 4.0 released as soon as possible without getting myself fired from my day job and without getting divorced.

Cheers

Oleg

Thank you.

PS: I've read through the current version of the HttpClient4 tutorial... very 
nice job so far! :-)

Cheers,
Will


---------------------------------------------------------------------
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]

Reply via email to