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