Revision history for Perl module Furl
3.14 2021-05-13T05:30:22Z
- Support 308 HTTP status code
3.13 2017-09-19T06:31:34Z
- Fixed test code(skaji++)
3.12 2017-09-13T06:58:15Z
commit 88cd747c78d80675c1aa4953083af16f70085252
Author: Shoichi Kaji <skaji@cpan.org>
Date: Mon Aug 14 00:50:55 2017 +0900
check whether sockets are readable or not before reusing them
commit 90f3e48ce20845e0f11be40bb975f9c23c86ad8a
Author: ktat <ktat.is@gmail.com>
Date: Mon May 29 14:26:55 2017 +0900
uri_unescape user & password for Basic auth
3.11 2017-05-16T23:54:24Z
- added docs
3.10 2017-04-05T16:52:32Z
- Fix tests for newer Perl @INC issue
3.09 2016-07-21T14:10:52Z
- Support 1xx status
- Fix test on Windows issue
- Fix httpoxy
3.08 2015-08-06T09:32:19Z
- Handle cookies while redirection.
(tokuhirom)
- delete method accept message body
(kimoto)
3.07 2015-04-21T03:42:39Z
- Depends on latest Test::TCP
https://github.com/tokuhirom/Test-TCP/issues/31#issuecomment-94378132
3.06 2015-02-09T23:05:09Z
commit 8a7786905c101eeab9db1d7baa8c4ec2076f9514
Author: Jari Salmela <bissei@users.noreply.github.com>
Date: Fri Feb 6 08:36:55 2015 +0200
Update HTTP.pm
fix for keep-alive as zmmail proposed.
"In line 526 of Furl/HTTP.pm, FURL checks the HTTP response headers it gets from the server. It will read the C
onnection from the response header there, and compare the header value with the string keep-alive. The problem is t
hat this does not take into account a different case of the response header. Some HTTP server returns a header valu
e of Keep-Alive (mind the caps), so FURL does not recognize it properly.
I think the following change to Furl/HTTP.pm is more robust.
if ($connection_header eq 'keep-alive') {
if (lc($connection_header) eq 'keep-alive') {"
commit 91ebdf86693c5bfbda497df167977813e2ad75aa
Author: Kazuho Oku <kazuhooku@gmail.com>
Date: Wed Dec 24 16:26:07 2014 +0900
fix incorrect regex used for testing the response line (amends #80)
commit 65d0bc170a6344ebd24e0726a44260f3771fda0b
Author: HIROSE Masaaki <hirose31@gmail.com>
Date: Wed Dec 24 13:49:43 2014 +0900
Check only status code when connect SSL over proxy
3.05 2014-09-24T03:47:02Z
- Validate content-length before processing.
(Implemented by tokuhirom)
(Reviewed by kazuho++)
3.04 2014-09-22T10:08:04Z
- remove trailing whitespace of Authorization header
(kazeburo++)
3.03 2014-07-09T23:33:51Z
commit 8da0f43f2a6b3f04806288ce63a7bdc4df7f9a46
Author: Toshio Ito <debug.ito@gmail.com>
Date: Sat Jun 7 10:34:13 2014 +0900
t/100_low/07_timeout.t: iteratively increase content size instead of guessing the size of the se
c.f: gh #71, gh #56
3.02 2014-03-18T20:52:07Z
- Added new experimental cookie_jar support.
(tokuhirom)
3.01 2014-02-13T06:19:47Z
- Fixed documentation bug(Reported by Yappo++)
3.00 2013-11-13T09:39:38Z
- implement inactivity_timeout (for read / write), requested by autarch++
(kazuho)
- Implemented a new callback called `get_address`.
That fixes the two shortcomings of the existing inet_aton callback listed below.
* cannot override the port number
* cannot support protocols other than IPv4 (e.g. IPv6, unix socket, ...)
(kazuho)
2.19 2013-08-26T02:10:09Z
- Testing fix for Starlet >= 0.20.
force response HTTP/1.0. Starlet >= 0.20 support HTTP/1.1
(kazeburo)
2.18 2013-08-08T07:11:30Z
- Furl::Response::decoded_content returns undef if user specifies
'Accept-Encoding' for data compression. Because content is already
inflated, so HTTP::Message::decoded_content failed and return undef.
(syohex)
2.17 2013-07-01T03:11:49Z
- Fix Furl::Request#as_string the request contains ARRAY or HASH.
(tokuhirom)
2.16 2013-05-22T07:48:21Z
- Fix timeout problem(#56) on recent Linux(3.8 or later)
(syohex)
- Added Furl::Request#as_string
(tokuhirom)
2.15 2013-05-10T08:40:10Z
- Added Furl::Response#as_string.
(tokuhirom)
2.14 2013-04-19T02:11:43Z
- Fixed testing issue
2.13 2013-04-17T07:52:37Z
- Tiny test fix.
(tokuhirom)
2.12 2013-04-15T08:38:49Z
- Clean up dependencies.
I confused about 'recommends' and 'suggests'.
Do not use 'recommends' for optional things.
(tokuhirom)
2.11 2013-04-04T03:02:13Z
- [EXPERIMENTAL] Added Furl::Response#encoding
(tokuhirom)
2.10 2013-03-18T16:08:02
[INCOMPATIBLE CHANGES]
- 'keep_request' parameter introduced in 2.08 was *removed*.
- Furl::Response#request is always useful if you are using highlevel API.
- Added Furl::Response#captured_req_content and
Furl::Response#captured_req_headers
2.09 2013-03-07T06:59:44
- switch to cpanfile(no feature changes)
(tokuhirom)
2.08 2013-03-06T18:42:22
- Added Furl::Request
(ikasam_a)
2.07 2013-03-02T18:52:33
- added Furl::Response#to_psgi
(tokuhirom)
2.06 2013-02-14T19:01:27
- Added Furl::Response#as_hashref
2.05 2013-02-12T15:00:31
[EXPERIMENTAL FEATURE]
- Add "X-Internal-Respponse: 1" header for
Internal response. It's compatible with LWP.
(tokuhirom)
- Reverted Client-Warning header introduced in 2.04
2.04 2013-02-12T14:28:53
[EXPERIMENTAL FEATURE]
- Add "Client-Warning: Internal Response" header for
Internal response. It's compatible with LWP.
(tokuhirom)
2.03 2013-02-09T18:17:13
- Support URL based authorization.
Both Proxy-Authorization and Basic Authorization.
2.02 2013-02-06T17:25:11
- Added Furl::Response#decoded_content
(xaicron++)
- Added Furl::Headers#clone
(tokuhirom)
2.01 2013-01-23T19:17:47
- pass SSL_verifycn_name on connecting ssl over proxy.
IO::Socket::SSL detects host name from PeerHost, but it can't when user
is using proxy.
(aska++)
- SSL_verifycn_scheme is not required if skipping verification
if skip verification, does not requires SSL_verifycn_scheme
(kazeburo++)
2.00 2013-01-23T15:46:46
*** VERY IMPORTANT INCOMPATIBLE CHANGE ***
- Furl verify SSL certs by default.
If it's fail, furl returns error response.
(tokuhirom)
*** VERY IMPORTANT INCOMPATIBLE CHANGE ***
1.04 2013-01-22
- use `ssl_opts` option in SSL over http proxy
(aska++)
1.03 2013-01-12
- fixed testing issue on perl 5.18 hash randomization
(gfx)
1.02 2013-01-07
- Use Mozilla::CA if SSL_ca_file and SSL_ca_path is not set.
This behavior respects LWP::Protocol::https.
(tokuhirom)
1.01 2013-01-03
- added `ssl_opts` option to configuring IO::Socket::SSL
(gfx)
1.00 2012-10-19
- Bump up version
0.42 2012-10-15
[INCOMPATIBLE CHANGE]
- Furl::HTTP is no longer reading Furl.pm.
This change may breaks your code.
If you are using Furl class without loading Furl::HTTP,
it will fail after this release.
0.41 2012-09-25
[BUG FIX]
- Furl#agent does not works in past version.
(Syohei YOSHIDA)
0.40 2012-06-04
- fixed meta data(Slaven++)
https://github.com/tokuhirom/Furl/issues/35
0.39 2012-05-29
- unexpected eof in reading chunked body. It makes busy loop.
(kazeburo++)
0.38 2011-09-05
- added ->agent method(bayashi++)
0.37 2011-08-24
- fixed SSL closing issue
(reported by sugyan++, resolved by kazuho++, and implemented by gfx++)
0.36 2011-08-23
- win32 ssl proxy fix(mattn++)
0.35 2011-08-11
- Compensate for slash of path-query.(xaicron)
'http://example.com?foo=bar' → 'http://example.com/?foo=bar'
0.34 2011-07-15
- accept the domain using '_' charcter(xaicron)
0.33 2011-07-13
- support url doesn't have trailing slash
like 'http://example.com?gfx=isogashi'
(xaicron++)
0.32 2011-05-30
- remove duplicated Host header on high level API(xaicron)
0.31 2011-02-25
- CarpLevel++(xaicron)
0.30 2011-02-25
- allow '0000000' as end of chunked response.
0.29 2011-02-23
- move live tests to xt/.
0.28 2011-02-22
- fixed bug on proxy with redirect(mattn)
0.27 2011-02-20
- Add support for 307 (it was not handled as a redirect),
with tests for all redirects.
(307 is implemented the same as 301,
preserving the original requesting method.)
(audreyt++)
0.26 2011-02-17
- tiny pod fix(tokuhirom)
0.25 2011-02-16
- move fucking ssl test to xt/.
0.24 2011-02-08
- workaround for windows (mattn++, xaicron++)
0.23 2011-01-30
- properly implement Furl::env_proxy as
a delegate to Furl::HTTP::env_proxy (as was already documented)
(lestrrat)
0.22 2011-01-25
- Remove default ports from the Host header
0.21 2011-01-11
- use keep-alive on redirection, do not activate the "write_code"
or the "write_func" feature when redirection(kazuho)
- silently try to resend a request only when the server returned
no respnose at all(kazuho)
0.20 2010-12-20
- add internal error response message to status message
(tokuhirom)
0.19 2010-12-20
- fixed documentation bug(tokuhirom)
- errorneously returned 500 error when closing of the socket was used
to indicate eof (i.e. no Content-Encoding or Content-Length)
(Kazuho Oku)
0.18 2010-12-06
- fixed testing issue(reported by many people)
0.17 2010-12-03
- only send the connection header with the highest precedence
(Furl::request => Furl::new)
(Kazuho Oku)
- close the connection when furl requested as such,
even if the server sent "connection: keep-alive"
(Kazuho Oku)
- support keep-alive for
$furl->request(method => 'HEAD', headers => [ qw(connection keep-alive) ])
(Kazuho Oku)
- always send the connection header
(support for automatic keep-alive with HTTP/1.0 servers)
(Kazuho Oku)
0.16 2010-12-01
- support for status codes wo. content(kazuho oku)
0.15 2010-11-28
- doc enhancements(tokuhirom)
0.14 2010-11-22
- changed the semantics of the "timeout" parameter from per-IO timeout
to request timeout(Kazuho Oku)
- optional support for name resolution timeouts
using Net::DNS::Lite(Kazuho Oku)
- make blocking operations cancellable (through the "stop_if"
callback)(Kazuho Oku)
0.13 2010-11-15
- do not die when $content is empty string.
0.12 2010-11-10
- fixed testing issue.
0.11 2010-11-04
- fixed testing issue gh#6
(reported by ichesnokov)
0.10 2010-11-02
- change request() to accept HTTP::Request,
and remove request_with_http_request(lestrrat)
- Furl::ConnPool.pm was renamed to Furl::ConnectionCache.pm(tokuhirom)
0.09 2010-11-01
- fixed packaging.
0.08 2010-11-01
- rewrote connection pooling strategy(tokuhirom)
(suggested by kazuho++)
- updated docs(tokuhirom)
- support relative url in redirection #5(tokuhirom)
0.07 2010-11-01
- Do not use reference_from, it makes installing issue(reported by y).
http://github.com/tokuhirom/Furl/issues#issue/4
0.06 2010-10-31
- now Perl 5.8.1 or later is required.(tokuhirom)
- High level interface is now available(tokuhirom)
- Keep alive on HTTP/1.0(kazuho, gfx)
- Retry requests if the connection is closed while in keep-alive(gfx)
0.05 2010-10-30
- use HTTP::Parser::XS
- optimization
- users can be set your own special headers.
- fixed Deep recursion when redirect over max_redirects.
- now, header_get is not public api.
0.04 2010-10-26
- fixed retval handling around Compress::Raw::Zlib(gfx)
- Change chuked tests not to use Starman(gfx)
- use binmode() for fucking win32(gfx)
0.03 2010-10-25
- support no_proxy
- fixed keep-alive issue
- fix ppport issue for perl < 5.12
- THX fix
- doc fix
- micro optimization
- a lot of tweaks
[0.02 not released]
- doc enhancements
- micro optimization
- more test cases
0.01 2010-10-24
- original version