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]