=========================
2006-07-13 06:45:15 v0_77
=========================
2006-07-13 06:43:38 (r265) by rcaputo; Makefile.PL M
Update the POE dependency, per Adam Kennedy's feedback.
2006-07-13 06:42:47 (r264) by rcaputo
lib/POE/Component/Client/HTTP.pm M
Document the ConnectionManager per Joel Bernsein's patch (plus
Jonathan Steinert's POD correction). Bump up the version for a
release.
2006-07-12 19:39:56 (r263) by rcaputo
lib/POE/Component/Client/HTTP.pm M
Doc patch for Joel Bernstein. It wasn't terribly clear that he could
cancel a request based on the stringified version of the
HTTP::Request object reference. Now I hope it is.
2006-07-04 16:12:19 (r262) by rcaputo; t/54_hzheng_head_redir.t M
Resolve an issue where the target site redirects a variable number of
times depending on your location.
=========================
2006-07-02 17:55:17 v0_76
=========================
2006-07-02 17:54:51 (r260) by rcaputo
lib/POE/Component/Client/HTTP.pm M; MANIFEST M; t/11_cancel.t A
Added a cancel command, which may be used to cancel a specific HTTP
request. Useful for stopping HTTP streams without shutting down the
entire component. Resolves rt.cpan.org ticket 5292.
Bumped the version to 0.76 for a new release.
=========================
2006-05-21 21:10:18 v0_75
=========================
2006-05-21 21:08:33 (r258) by rcaputo
lib/POE/Component/Client/HTTP.pm M
Document the shutdown message, and bump the version for a new
release.
2006-05-21 21:05:32 (r257) by rcaputo
lib/POE/Component/Client/HTTP.pm M; MANIFEST M;
lib/POE/Component/Client/HTTP/Request.pm M
Remove unnecessary includes (POSIX among others). Resolves
rt.cpan.org ticket #18922 [guest].
Added a shutdown() method. Resolves rt.cpan.org ticket #12685. Thanks
to Fabricio MartÃnez for the request.
Documented the need for individual-request shutdown.
2006-05-16 20:48:55 (r256) by woggle
lib/POE/Component/Client/HTTP.pm M
Fix potential memory leak by removing in more cases wheel_to_request
entries when the corresponding request goes away.
2006-05-11 20:48:14 (r255) by woggle
lib/POE/Component/Client/HTTP.pm M; MANIFEST M; t/56_redirect_excess.t
A
Fix problem where we might generate two reply events when we got
extra junk after a redirect and add test case for it.
2006-05-10 20:48:45 (r254) by woggle
lib/POE/Component/Client/HTTP.pm M; MANIFEST M;
t/55_reiss_double_resp.t A; Makefile.PL M; t/52_reiss_bad_length.t M;
lib/POE/Component/Client/HTTP/Request.pm M
Close the connection when we abort reading the response in the middle
(includes redirects and requests over the maximum length); fixes
broken behavior where we might reuse the socket and take the rest of
the response as our new response. This requires new functionality in
PoCoCliKeepalive, so update Makefile.PL to reflect that.
2006-05-10 05:20:55 (r253) by woggle
lib/POE/Component/Client/HTTP.pm M; t/09_bad_scheme.t M;
t/52_reiss_bad_length.t M; lib/POE/Component/Client/HTTP/Request.pm M
Modify some tests to make sure that $response->request() is defined
in more obscure cases (various internal error returns, etc.) and fix
some cases where it is not so the new tests pass.
2006-05-10 05:19:12 (r252) by woggle; lib/POE/Filter/HTTPHead.pm M
Make this inherit from POE::Filter to be compatible with subversion
POE.
=========================
2006-03-30 05:33:46 v0_74
=========================
2006-03-30 05:33:09 (r250) by rcaputo
lib/POE/Component/Client/HTTP.pm M
Ryan Tate posted in <http://perlmonks.org/?node_id=539816> about a
problem with timeouts. It turns out that when redirects created new
internal requests, the old ones weren't being cleaned up. As a
result, they had to time out before the component would stop. Thanks
to Tony Cook for pointing me at this message.
Also beefed up the debugging a little, and bumped up the version for
a new release.
2006-03-24 14:10:11 (r249) by rcaputo
examples A; lib/POE/Component/Client/HTTP/RequestFactory.pm M; MANIFEST
M; lib/POE/Component/Client/HTTP/Request.pm M; examples/pcchget.perl A
Added a test case by Toby Ovod-Everett from rt.cpan.org ticket
#18339. Fixed some tab damage, and corrected a typo.
2006-03-24 13:40:18 (r248) by rcaputo
lib/POE/Component/Client/HTTP.pm M; t/54_hzheng_head_redir.t M;
lib/POE/Component/Client/HTTP/Request.pm M
Resolved rt.cpan.org ticket #14679 by Hao Zheng. Ignoring
content-length headers for HEAD requests, especially since google.com
sends them.
2006-03-24 05:34:32 (r247) by rcaputo
MANIFEST M; t/55_hzheng_empty_content.t D
This test case isn't needed. Now I gotta remove it. D'oh.
2006-03-24 05:34:01 (r246) by rcaputo
MANIFEST M; t/55_hzheng_empty_content.t A
Commit a test case for rt.cpan.org ticket #15025. Except that the
ticket is moot---a previous fix also resolved this issue. D'oh.
2006-03-24 05:24:48 (r245) by rcaputo; t/09_bad_scheme.t A
Forgot to commit this. It tests that bad schemes don't kill the
component outright.
2006-03-24 05:18:16 (r244) by rcaputo
MANIFEST M; t/54_hzheng_head_redir.t A
Added a test case for Hao Zheng's bug report, rt.cpan.org ticket
#14679.
2006-03-23 23:47:14 (r243) by rcaputo
lib/POE/Component/Client/HTTP.pm M
Document the lack of https proxying as a bug.
2006-03-23 23:46:18 (r242) by rcaputo
t/01_request.t M; t/08_discard.t M; t/53_response_parser.t M;
t/07_proxy.t M
Some tests require specific proxy environments. Especially the tests
that include a localhost web server, because "localhost" may mean
something else to a proxy server.
2006-03-23 23:45:08 (r241) by rcaputo
lib/POE/Component/Client/HTTP/RequestFactory.pm M
We currently don't support https proxying. Bypass proxying for https
requests. Resolves part of rt.cpan.org ticket #16675.
2006-03-23 23:44:21 (r240) by rcaputo
lib/POE/Component/Client/HTTP.pm M
Follow redirects for bodiless responses. Resolves part of rt.cpan.org
ticket #16675.
2006-03-23 14:56:16 (r239) by rcaputo
lib/POE/Component/Client/HTTP.pm M; MANIFEST M
Applied Yuri Karaban's test case and patch for a fatal error that
occurred when giving the component URLs with schemes it could not
handle. This resolves rt.cpan.org ticket #17599.
2006-03-17 05:46:48 (r238) by rcaputo
lib/POE/Component/Client/HTTP.pm M
David Davis' friend patched this so it would work with MSN.
Essentially, force the request to be finished after headers on a HEAD
response, certain response codes, or 0-length replies.
=========================
2006-01-07 23:19:30 v0_73
=========================
2006-01-07 23:17:30 (r236) by rcaputo
lib/POE/Component/Client/HTTP.pm M
New version for new release.
2006-01-07 23:16:44 (r235) by rcaputo
lib/POE/Component/Client/HTTP/RequestFactory.pm M
Avoid warnings if proxying without a host header.
2006-01-07 23:14:28 (r234) by rcaputo; t/01_request.t M
Skip SSL tests if POE::Component::SSLify isn't loaded. Thanks to
Andrew Chen for spotting the error.
2005-09-19 02:22:02 (r233) by rcaputo; .releaserc A
Beginning to use Module::Release for releases.
=========================
2005-09-18 23:46:42 v0_72
=========================
2005-09-18 22:03:20 (r227) by rcaputo
lib/POE/Component/Client/HTTP.pm M
Increase version for release.
2005-09-18 18:35:41 (r226) by rcaputo
lib/POE/Component/Client/HTTP.pm M
Applied Yuri Karaban's patch to unconditionally invalidate a socket
when there's a timeout. This is done to avoid stale responses on
reused sockets.
2005-09-17 18:36:44 (r225) by rcaputo
lib/POE/Component/Client/HTTP.pm M
Apply Yuri Karaban's patch to prevent double-responses on redirects.
This one was submitted through IRC, so there's no RT audit trail.
2005-09-17 18:22:10 (r224) by rcaputo
lib/POE/Filter/HTTPChunk.pm M; lib/POE/Component/Client/HTTP.pm M
Remove tabs. Some day I'm gonna get sick of this and retabify
everything. Then you'll be sorry you ever crossed me, you damn
whitespace demons!
2005-09-17 18:14:00 (r223) by rcaputo
t/01_request.t M; t/02_keepalive.t M
Increase the timeouts to 60 seconds. This should not affect most
people, as we expect the tests to pass relatively quickly. A
semi-anonymous user reported problems with the tests timing out too
quickly on his dialup in Thailand. This resolves his rt.cpan.org
ticket, number 14526.
2005-09-17 18:04:07 (r222) by rcaputo
lib/POE/Component/Request.pm D;
lib/POE/Component/Client/HTTP/RequestFactory.pm A;
lib/POE/Component/Client/HTTP.pm A; lib/POE/Component/HTTP.pm D;
lib/POE/Component/RequestFactory.pm D; MANIFEST M; Makefile.PL M;
lib/POE/Component/Client/HTTP A; lib/POE/Filter/HTTPHead.pm M;
lib/POE/Component/Client/HTTP/Request.pm A
Finish applying suggestions by Rob Bloodgood. Resolves rt.cpan.org
ticket 14593.
2005-09-17 17:56:16 (r221) by rcaputo
lib/POE/Component/Request.pm A; lib/POE/Filter A;
lib/POE/Filter/HTTPChunk.pm A; HTTPChunk.pm D; Request.pm D;
lib/POE/Component/HTTP.pm A; lib A; lib/POE/Component/RequestFactory.pm
A; lib/POE A; lib/POE/Component/Client A; HTTP.pm D;
lib/POE/Filter/HTTPHead.pm A; RequestFactory.pm D; lib/POE/Component A;
HTTPHead.pm D
Partial working directory rearrange, per rt.cpan.org ticket 14593.
2005-09-17 17:47:58 (r220) by rcaputo; HTTPChunk.pm M
A mostly anonymous guest reported that Apache 1.3 doesn't follow
RFC2616 3.6.1 as closely as POE::Filter::HTTPChunk seems to. He
submitted (and I am applying) a patch to compensate for the
discrepancy. Resolves rt.cpan.org ticket 14620.
2005-09-17 17:37:43 (r219) by rcaputo; HTTP.pm M
Applied Yuri Karaban's patch to handle web servers that end
connections with TCP RST. This seems to happen a lot. Resolves
rt.cpan.org ticket 14623.
2005-09-17 17:09:11 (r218) by rcaputo; Request.pm M
Applied Yuri Karaban's patch to correctly interpret FollowRedirects.
This resolves rt.cpan.org ticket 14630.
=========================
2005-09-08 17:55:43 v0_71
=========================
2005-09-08 17:53:57 (r216) by rcaputo; HTTP.pm M
Bump up the version for release.
2005-09-08 17:48:59 (r215) by rcaputo; HTTP.pm M; t/07_proxy.t M
Apply Yuri Karaban's tests for preserving proxy settings through
redirects. Previously the proxy would be lost.
2005-09-08 17:48:08 (r214) by rcaputo; RequestFactory.pm M
Add a Content-Length header if a request has content but no
Content-Length. I'm not sure this is the right thing to do in all
cases, but it does address a problem brought up on the mailing list.
2005-09-04 18:55:34 (r213) by rcaputo
t/08_discard.t A; MANIFEST M; HTTP.pm M
Applied Yuri Karaban's patch for a case where Client::HTTP doesn't
send back a 408 (timeout) error response. Also his test case (thank
you, Yuri!).
2005-09-01 13:59:29 (r212) by rcaputo; HTTP.pm M
Yuri Karaban fixed redirects to use the proxy of the original
request.
2005-08-30 13:56:50 (r211) by rcaputo; RequestFactory.pm M
Yuri Karaban corrected an undefined value warning. This resolves
rt.cpan.org ticket 14365.
2005-08-08 16:50:50 (r210) by rcaputo; MANIFEST M
Charles Reiss: You forgot to add t/07_proxy.t to MANIFEST.
Rocco Caputo: Oh, heck.
2005-08-08 16:20:16 (r209) by rcaputo; t/07_proxy.t A
Yuri Karaban fixed up proxy support a little while ago. Now he's
contributed tests for the proxy support so it should never lapse
again. Most excellent!
2005-08-08 16:09:57 (r208) by rcaputo
t/03_head_filter.t M; t/53_response_parser.t M; HTTP.pm M; HTTPHead.pm
M
Charles Reiss patched the HTTP head parser to support HTTP/0.9
content-only responses. He added a test to t/53_response_parser.t,
and suggested a required change in t/03_head_filter.t. It used a
content-only message as a bad response, and suddenly it was good.
Something had to be done.
2005-08-04 04:45:38 (r207) by rcaputo; HTTP.pm M
This commit fixes an error where the Filter::Stackable is empty when
Transfer-Encoding's last (i.e. first) coding marker is not supported.
It also documents the order that Transfer-Encoding's codings are
parsed in.
It also documents a bug in HTTP/0.9 parsing. The bug relates to the
failing test in t/53_response_parser.t circa changeset:205.
2005-08-04 04:41:58 (r206) by rcaputo; t/52_reiss_bad_length.t M
Insignificant changes related to a test case patch that was pulled
out and made into t/53_response_parser.t
2005-08-04 04:41:15 (r205) by rcaputo
MANIFEST M; t/53_response_parser.t A
Created a new regression test framework for HTTP parser issues that
do return some type of response. This is a superset of the
functionality of t/52_reiss_bad_length.t, and perhaps the tests from
that file should be ported forward into this one.
2005-08-02 19:14:09 (r204) by rcaputo; HTTP.pm M; RequestFactory.pm M
Applied Yuri Karaban's patch to support a different proxy for
potentially every request. This resolves rt.cpan.org tickets #13990
and #1700.
2005-08-02 16:02:33 (r203) by rcaputo
Request.pm M; HTTP.pm M; RequestFactory.pm M
Yuri Karaban has updated proxy support to work with the new
Client::Keepalive connection code. Now we need some proxy tests.
2005-08-02 15:18:11 (r202) by rcaputo; Makefile.PL M
We require the absolute latest PoCo::Client::Keepalive.
2005-08-02 15:17:49 (r201) by rcaputo; HTTP.pm M
Update the Transfer-Encoding logic to preserve unknown encodings and
any that come later than the first one. It still uses pop(), which
assumes that encodings are read right-to-left. We're not sure if
that's correct, however.
2005-08-02 14:24:42 (r200) by rcaputo
HTTPChunk.pm M; t/04_chunk_filter.t M
Yuri Karaban discovered that chunk lengths with trailing whitespace
weren't being recognized. The result was responses with empty
content. I've committed his fix (slightly fixed itself) and a test
case. This closes rt.cpan.org ticket 13973.
===========================
2005-07-30 20:44:35 v0_7002
===========================
2005-07-30 20:44:26 (r198) by rcaputo; HTTP.pm M
Bump version for release.
2005-07-29 15:37:54 (r197) by rcaputo
t/52_reiss_bad_length.t M; HTTPHead.pm M
Charles Reiss sent in a test case for a crash related to invalid
status lines on HTTP responses. This commit adds his test case and a
fix for the problem.
2005-07-28 03:27:36 (r196) by rcaputo
Request.pm M; t/52_reiss_bad_length.t M; HTTP.pm M; HTTPHead.pm M
Charles Reiss sent in a patch for the content-length issues he's been
having. The ones illustrated in t/52_reiss_bad_length.t. I'm just
applying them here, along with some tab squashing in other files.
2005-07-27 22:31:00 (r195) by rcaputo
t/52_reiss_bad_length.t M; HTTP.pm M
Charles Reiss pointed out that a response containing just
"HTTP::Response" triggers an isa() check if HTTP::Response is loaded.
This commit includes his new test case and a small fix that first
checks whether input is some sort of Perl reference.
2005-07-27 04:12:22 (r194) by rcaputo
MANIFEST M; t/52_reiss_bad_length.t A
Charles Reiss provided a test case for bad content-length headers.
They do not trigger responses of any kind! This adds his test case,
but it doesn't fix his issue.
2005-07-27 02:56:15 (r193) by rcaputo; t/01_request.t M; HTTP.pm M
Charles Reiss pointed out that invalid URLs, such as "http:bad" would
cause the component to die rather than throw an error with code 400.
His patch, applied here, corrects this oversight.
2005-07-24 22:00:50 (r192) by rcaputo; HTTP.pm M
Ensure that a timeout is removed wherever its request is deleted.
2005-07-24 21:02:52 (r191) by rcaputo; t/02_keepalive.t M
Turn off debugging. I had left it on in the previous commit.
2005-07-24 21:01:55 (r190) by rcaputo; t/02_keepalive.t M
I seem to have broken the keepalive test in a previous commit. This
fixes up the requests so the chain of responses matches expectations.
2005-07-24 18:55:42 (r189) by rcaputo; Request.pm M; HTTP.pm M
Add in a hard die() if an active timer is overwritten. This is a big
problem, as the old timer will still fire if it hasn't been removed
previously.
Set the request's REQ_TIMER to undef in remove_timeout() so multiple
calls to it won't attempt to alarm_remove() the timer again.
Replace a $request->timer(undef) call with
$request->remove_timeout(). Setting the timer to undef does not call
alarm_remove(), but remove_timeout() does this necessary magic.
2005-07-08 04:06:16 (r188) by rcaputo; t/02_keepalive.t M
Removed the last of the foreign web sites from the keep-alive tests.
2005-07-08 03:31:01 (r187) by rcaputo; t/02_keepalive.t M
Replace Rob Bloodgood's test files with data served from
poe.perl.org. This eliminates some of the foreign web dependencies of
the keepalive tests.
2005-07-08 02:51:59 (r186) by rcaputo
t/50_davis_zerolength.t M; t/51_santos_status.t A; MANIFEST M
Nilson Santos F. Jr. reported that bittorrent tracker responses
weren't being parsed properly. Many of them respond with a status
line and content---and no other headers. This commit adds a
regression test to verify that status+content responses are parsed
correctly. It closes rt.cpan.org ticket 12363.
2005-07-07 14:35:07 (r185) by rcaputo
t/50_davis_zerolength.t A; MANIFEST M; HTTP.pm M
Dave Davis discovered that zero-length content causes HTTP.pm to
reach a state where a response isn't sent for the request. His bug
report, rt.cpan.org #13557, was very detailed and included a working
test case that has become t/50_davis_zerolength.t.
2005-07-07 14:33:04 (r184) by rcaputo; t/02_keepalive.t M
Clean up some of the URLs left over in this test. Other URLs are
still being used, so they must be cleaned up later.
2005-07-07 14:30:58 (r183) by rcaputo; Makefile.PL M
Remove the repository URL from svn-log.perl's command line. The
utility is smart enough to figure it out on its own now.
==============
End of Excerpt
==============