Hi all,
httpclient/2.1.5 has been released.
This release includes IMPORTANT update for HTTPS(SSL) connection.
Trusted CA bundle file included in httpclient <= 2.1.4 expires in Nov
2009. Please update to 2.1.5 by Oct 2009 if your application depends
on trusted CA bundle file.
It also fixes some bugs. See the last of this mail for more detail.
= What’s this =
‘httpclient’ gives something like the functionality of libwww-perl
(LWP) in Ruby. ‘httpclient’ formerly known as ‘http-access2’.
Features:
-
methods like GET/HEAD/POST/* via HTTP/1.1.
-
HTTPS(SSL), Cookies, proxy, authentication(Digest, NTLM, Basic), etc.
-
asynchronous HTTP request, streaming HTTP request.
-
by contrast with net/http in standard distribution;
- Cookies support
- MT-safe
- streaming POST (POST with File/IO)
- Digest auth
- Negotiate/NTLM auth for WWW-Authenticate (requires net/htlm module)
- NTLM auth for WWW-Authenticate/Proxy-Authenticate (requires
win32/sspi module) - extensible with filter interface
- you don’t have to care HTTP/1.1 persistent connection (httpclient
cares instead of you)
-
Not supported now
- Cache
- Rather advanced HTTP/1.1 usage such as Range, deflate, etc. (of
course you can set it in header by yourself)
= API Document =
http://dev.ctor.org/doc/httpclient/
= Download =
-
Stable: http://dev.ctor.org/download/httpclient-2.1.5.tar.gz (tar +
gzip) -
Stable: http://dev.ctor.org/download/httpclient-2.1.5.zip (ZIP)
-
Older versions: http://dev.ctor.org/download/archive/
-
Gem repository for stable version
- (at default remove source at rubyforge.org)
-
Gem repository for development version
= Changes in 2.1.5 =
- IMPORTANT update for HTTPS(SSL) connection
- Trusted CA bundle file included in httpclient <= 2.1.4 expires in
Nov 2009. Please update to 2.1.5 by Oct 2009 if your application
depends on trusted CA bundle file. - Updated trusted CA certificates file (cacert.p7s). CA certs are
imported from ‘Java™ SE Runtime Environment (build 1.6.0_13-b03)’. - Updated a cacert distribution certificate. RSA 2048 bit + SHA512
- Trusted CA bundle file included in httpclient <= 2.1.4 expires in
- notAfter:2037/12/31. (#215)
-
Feature
- WWW authentication with Negotiate based on win32/sspi as same as
Proxy authentication. Applied a patch from Paul Casto. Thanks! (#212)
- WWW authentication with Negotiate based on win32/sspi as same as
-
Bug fixes
- Infinite loop caused by EOF error while reading response message
body without Content-Length. IO#readpartial does not clear the second
argument (buffer) when an exception raised. Fixed by a patch from an
user. Thanks! (#216) - !NoMethodError caused by the cookie string that includes a double
semicolons “;;”. Fixed by a patch from an user. Thanks! (#211) - CNONCE attribute in Digest Authentication was not properly
generated by itself (used same nonce sent from the connecting server).
Fixed by a patch from bterlson
[http://github.com/bterlson/httpclient/commit/6d0df734840985a7be88a2d54443bbf892d50b9a]
Thanks! (#209) - Cookie header was not set in authentication negotiation. Fixed.
This bug was found and pointed out by bterlson at
[http://github.com/bterlson/httpclient/commits/master]. Thanks! (#210) - Do not send ‘Content-Length: 0’ when a request doesn’t have
message body. Some server application (!EasySoap++/0.6 for example)
corrupts with the request with Content-Length: 0. This bug was found
by clay
[http://daemons.net/~clay/2009/05/03/ruby-why-do-you-torment-me/].
Thanks! (#217) - Ensure to reset connection after invoking HTTPClient singleton
methods for accessing such as HTTPClient.get_content. Thanks to
@xgavin! (#214)
- Infinite loop caused by EOF error while reading response message
Regards,
// NaHi