From b36c164d876eb8c772d0673dd03a4ef9af076889 Mon Sep 17 00:00:00 2001 From: Patrick McCarty Date: Thu, 7 Mar 2013 13:16:11 -0800 Subject: [PATCH] Imported Upstream version 5.836 --- AUTHORS | 120 + Changes | 3614 +++++++++++++++++++++++++++++ MANIFEST | 130 ++ META.yml | 39 + Makefile.PL | 122 + README | 93 + README.SSL | 24 + bin/lwp-download | 328 +++ bin/lwp-dump | 107 + bin/lwp-mirror | 103 + bin/lwp-request | 531 +++++ bin/lwp-rget | 607 +++++ lib/Bundle/LWP.pm | 44 + lib/File/Listing.pm | 406 ++++ lib/HTML/Form.pm | 1551 +++++++++++++ lib/HTTP/Config.pm | 436 ++++ lib/HTTP/Cookies.pm | 781 +++++++ lib/HTTP/Cookies/Microsoft.pm | 329 +++ lib/HTTP/Cookies/Netscape.pm | 114 + lib/HTTP/Daemon.pm | 903 +++++++ lib/HTTP/Date.pm | 389 ++++ lib/HTTP/Headers.pm | 849 +++++++ lib/HTTP/Headers/Auth.pm | 98 + lib/HTTP/Headers/ETag.pm | 94 + lib/HTTP/Headers/Util.pm | 199 ++ lib/HTTP/Message.pm | 1102 +++++++++ lib/HTTP/Negotiate.pm | 529 +++++ lib/HTTP/Request.pm | 242 ++ lib/HTTP/Request/Common.pm | 511 ++++ lib/HTTP/Response.pm | 641 +++++ lib/HTTP/Status.pm | 254 ++ lib/LWP.pm | 654 ++++++ lib/LWP/Authen/Basic.pm | 65 + lib/LWP/Authen/Digest.pm | 68 + lib/LWP/Authen/Ntlm.pm | 180 ++ lib/LWP/ConnCache.pm | 310 +++ lib/LWP/Debug.pm | 110 + lib/LWP/DebugFile.pm | 5 + lib/LWP/MediaTypes.pm | 298 +++ lib/LWP/MemberMixin.pm | 44 + lib/LWP/Protocol.pm | 291 +++ lib/LWP/Protocol/GHTTP.pm | 73 + lib/LWP/Protocol/cpan.pm | 72 + lib/LWP/Protocol/data.pm | 52 + lib/LWP/Protocol/file.pm | 146 ++ lib/LWP/Protocol/ftp.pm | 543 +++++ lib/LWP/Protocol/gopher.pm | 213 ++ lib/LWP/Protocol/http.pm | 475 ++++ lib/LWP/Protocol/http10.pm | 289 +++ lib/LWP/Protocol/https.pm | 51 + lib/LWP/Protocol/https10.pm | 75 + lib/LWP/Protocol/loopback.pm | 26 + lib/LWP/Protocol/mailto.pm | 183 ++ lib/LWP/Protocol/nntp.pm | 145 ++ lib/LWP/Protocol/nogo.pm | 24 + lib/LWP/RobotUA.pm | 308 +++ lib/LWP/Simple.pm | 253 ++ lib/LWP/UserAgent.pm | 1699 ++++++++++++++ lib/LWP/media.types | 1064 +++++++++ lib/Net/HTTP.pm | 279 +++ lib/Net/HTTP/Methods.pm | 593 +++++ lib/Net/HTTP/NB.pm | 105 + lib/Net/HTTPS.pm | 59 + lib/WWW/RobotRules.pm | 445 ++++ lib/WWW/RobotRules/AnyDBM_File.pm | 170 ++ lwpcook.pod | 309 +++ lwptut.pod | 839 +++++++ t/README | 24 + t/TEST | 59 + t/base/common-req.t | 213 ++ t/base/cookies.t | 706 ++++++ t/base/date.t | 180 ++ t/base/headers-auth.t | 42 + t/base/headers-etag.t | 29 + t/base/headers-util.t | 45 + t/base/headers.t | 446 ++++ t/base/http-config.t | 71 + t/base/http.t | 201 ++ t/base/listing.t | 91 + t/base/mediatypes.t | 105 + t/base/message-charset.t | 127 + t/base/message-old.t | 97 + t/base/message-parts.t | 113 + t/base/message.t | 512 ++++ t/base/negotiate.t | 112 + t/base/protocols.t | 17 + t/base/request.t | 32 + t/base/response.t | 102 + t/base/status-old.t | 18 + t/base/status.t | 18 + t/base/ua.t | 49 + t/html/form-maxlength.t | 60 + t/html/form-multi-select.t | 100 + t/html/form-param.t | 72 + t/html/form-selector.t | 47 + t/html/form.t | 595 +++++ t/live/apache-listing.t | 27 + t/live/apache.t | 50 + t/live/https.t | 20 + t/live/jigsaw-auth-b.t | 53 + t/live/jigsaw-auth-d.t | 33 + t/live/jigsaw-chunk.t | 37 + t/live/jigsaw-md5-get.t | 29 + t/live/jigsaw-md5.t | 26 + t/live/jigsaw-neg-get.t | 16 + t/live/jigsaw-neg.t | 15 + t/live/jigsaw-te.t | 33 + t/local/autoload-get.t | 26 + t/local/autoload.t | 22 + t/local/chunked.t | 184 ++ t/local/get.t | 86 + t/local/http.t | 380 +++ t/local/protosub.t | 70 + t/net/cgi-bin/moved | 4 + t/net/cgi-bin/nph-slowdata | 26 + t/net/cgi-bin/slowread | 31 + t/net/cgi-bin/test | 28 + t/net/cgi-bin/timeout | 7 + t/net/config.pl.dist | 10 + t/net/http-get.t | 45 + t/net/http-post.t | 46 + t/net/http-timeout.t | 40 + t/net/mirror.t | 35 + t/net/moved.t | 32 + t/net/proxy.t | 35 + t/robot/rules-dbm.t | 128 + t/robot/rules.t | 230 ++ t/robot/ua-get.t | 156 ++ t/robot/ua.t | 151 ++ talk-to-ourself | 49 + 130 files changed, 32248 insertions(+) create mode 100644 AUTHORS create mode 100644 Changes create mode 100644 MANIFEST create mode 100644 META.yml create mode 100644 Makefile.PL create mode 100644 README create mode 100644 README.SSL create mode 100755 bin/lwp-download create mode 100755 bin/lwp-dump create mode 100755 bin/lwp-mirror create mode 100755 bin/lwp-request create mode 100755 bin/lwp-rget create mode 100644 lib/Bundle/LWP.pm create mode 100644 lib/File/Listing.pm create mode 100644 lib/HTML/Form.pm create mode 100644 lib/HTTP/Config.pm create mode 100644 lib/HTTP/Cookies.pm create mode 100644 lib/HTTP/Cookies/Microsoft.pm create mode 100644 lib/HTTP/Cookies/Netscape.pm create mode 100644 lib/HTTP/Daemon.pm create mode 100644 lib/HTTP/Date.pm create mode 100644 lib/HTTP/Headers.pm create mode 100644 lib/HTTP/Headers/Auth.pm create mode 100644 lib/HTTP/Headers/ETag.pm create mode 100644 lib/HTTP/Headers/Util.pm create mode 100644 lib/HTTP/Message.pm create mode 100644 lib/HTTP/Negotiate.pm create mode 100644 lib/HTTP/Request.pm create mode 100644 lib/HTTP/Request/Common.pm create mode 100644 lib/HTTP/Response.pm create mode 100644 lib/HTTP/Status.pm create mode 100644 lib/LWP.pm create mode 100644 lib/LWP/Authen/Basic.pm create mode 100644 lib/LWP/Authen/Digest.pm create mode 100644 lib/LWP/Authen/Ntlm.pm create mode 100644 lib/LWP/ConnCache.pm create mode 100644 lib/LWP/Debug.pm create mode 100644 lib/LWP/DebugFile.pm create mode 100644 lib/LWP/MediaTypes.pm create mode 100644 lib/LWP/MemberMixin.pm create mode 100644 lib/LWP/Protocol.pm create mode 100644 lib/LWP/Protocol/GHTTP.pm create mode 100644 lib/LWP/Protocol/cpan.pm create mode 100644 lib/LWP/Protocol/data.pm create mode 100644 lib/LWP/Protocol/file.pm create mode 100644 lib/LWP/Protocol/ftp.pm create mode 100644 lib/LWP/Protocol/gopher.pm create mode 100644 lib/LWP/Protocol/http.pm create mode 100644 lib/LWP/Protocol/http10.pm create mode 100644 lib/LWP/Protocol/https.pm create mode 100644 lib/LWP/Protocol/https10.pm create mode 100644 lib/LWP/Protocol/loopback.pm create mode 100644 lib/LWP/Protocol/mailto.pm create mode 100644 lib/LWP/Protocol/nntp.pm create mode 100644 lib/LWP/Protocol/nogo.pm create mode 100644 lib/LWP/RobotUA.pm create mode 100644 lib/LWP/Simple.pm create mode 100644 lib/LWP/UserAgent.pm create mode 100644 lib/LWP/media.types create mode 100644 lib/Net/HTTP.pm create mode 100644 lib/Net/HTTP/Methods.pm create mode 100644 lib/Net/HTTP/NB.pm create mode 100644 lib/Net/HTTPS.pm create mode 100644 lib/WWW/RobotRules.pm create mode 100644 lib/WWW/RobotRules/AnyDBM_File.pm create mode 100644 lwpcook.pod create mode 100644 lwptut.pod create mode 100644 t/README create mode 100755 t/TEST create mode 100644 t/base/common-req.t create mode 100644 t/base/cookies.t create mode 100644 t/base/date.t create mode 100644 t/base/headers-auth.t create mode 100644 t/base/headers-etag.t create mode 100644 t/base/headers-util.t create mode 100644 t/base/headers.t create mode 100644 t/base/http-config.t create mode 100644 t/base/http.t create mode 100644 t/base/listing.t create mode 100644 t/base/mediatypes.t create mode 100644 t/base/message-charset.t create mode 100644 t/base/message-old.t create mode 100644 t/base/message-parts.t create mode 100644 t/base/message.t create mode 100644 t/base/negotiate.t create mode 100644 t/base/protocols.t create mode 100644 t/base/request.t create mode 100644 t/base/response.t create mode 100644 t/base/status-old.t create mode 100644 t/base/status.t create mode 100644 t/base/ua.t create mode 100644 t/html/form-maxlength.t create mode 100644 t/html/form-multi-select.t create mode 100644 t/html/form-param.t create mode 100644 t/html/form-selector.t create mode 100644 t/html/form.t create mode 100644 t/live/apache-listing.t create mode 100644 t/live/apache.t create mode 100644 t/live/https.t create mode 100644 t/live/jigsaw-auth-b.t create mode 100644 t/live/jigsaw-auth-d.t create mode 100644 t/live/jigsaw-chunk.t create mode 100644 t/live/jigsaw-md5-get.t create mode 100644 t/live/jigsaw-md5.t create mode 100644 t/live/jigsaw-neg-get.t create mode 100644 t/live/jigsaw-neg.t create mode 100644 t/live/jigsaw-te.t create mode 100644 t/local/autoload-get.t create mode 100644 t/local/autoload.t create mode 100644 t/local/chunked.t create mode 100644 t/local/get.t create mode 100644 t/local/http.t create mode 100644 t/local/protosub.t create mode 100755 t/net/cgi-bin/moved create mode 100755 t/net/cgi-bin/nph-slowdata create mode 100755 t/net/cgi-bin/slowread create mode 100755 t/net/cgi-bin/test create mode 100755 t/net/cgi-bin/timeout create mode 100644 t/net/config.pl.dist create mode 100644 t/net/http-get.t create mode 100644 t/net/http-post.t create mode 100644 t/net/http-timeout.t create mode 100644 t/net/mirror.t create mode 100644 t/net/moved.t create mode 100644 t/net/proxy.t create mode 100644 t/robot/rules-dbm.t create mode 100644 t/robot/rules.t create mode 100644 t/robot/ua-get.t create mode 100644 t/robot/ua.t create mode 100644 talk-to-ourself diff --git a/AUTHORS b/AUTHORS new file mode 100644 index 0000000..69b8062 --- /dev/null +++ b/AUTHORS @@ -0,0 +1,120 @@ +Adam Newby +Albert Dvornik +Alexandre Duret-Lutz +Andreas Gustafsson +Andreas König +Andreas König +Andrew Pimlott +Andy Lester +Ben Coleman +Benjamin Low +Ben Low +Ben Tilly +Blair Zajac +Blair Zajac +Bob Dalgleish +BooK +Brad Hughes +Brian J. Murrell +Brian McCauley +Charles C. Fu +Charles Lane +Chris Nandor +Christian Gilmore +Chris W. Unger +Craig Macdonald +Dale Couch +Dan Kubb +Dave Dunkin +Dave W. Smith +David Coppit +David Dick +David D. Kilzer +Doug MacEachern +Doug MacEachern +Doug MacEachern +Edward Avis + +Gary Shea +Gisle Aas +Gisle Aas +Gisle Aas +Gisle Aas +Graham Barr +Gurusamy Sarathy +Gurusamy Sarathy +Hans de Graaff +Harald Joerg +Harry Bochner +Hugo +Ilya Zakharevich +INOUE Yoshinari +Ivan Panchenko +Jack Shirazi +James Tillman +Jan Dubois +Jared Rhine +Jim Stern +Joao Lopes +John Klar +Johnny Lee +Josh Kronengold +Josh Rai +Joshua Chamas +Joshua Hoblitt +Kartik Subbarao +Keiichiro Nagano +Ken Williams +KONISHI Katsuhiro +Lee T Lindley +Liam Quinn +Marc Hedlund +Marc Langheinrich +Mark D. Anderson +Marko Asplund +Mark Stosberg +Markus B Krüger +Markus Laker +Martijn Koster +Martin Thurn +Matthew Eldridge + +Matt Sergeant +Michael A. Chase +Michael Quaranta +Michael Thompson +Mike Schilli +Moshe Kaminsky +Nathan Torkington +Nicolai Langfeldt +Nicolai Langfeldt +Norton Allen +Olly Betts +Paul J. Schinder + +Philip GuentherDaniel Buenzli +Pon Hwa Lin +Radoslaw Zielinski +Radu Greab +Randal L. Schwartz +Richard Chen +Robin Barker +Roy Fielding +Sander van Zoest +Sean M. Burke + +Slaven Rezic +Steve A Fink +Steve Hay +Steven Butler + +Takanori Ugai +Thomas Lotterer +Tim Bunce +Tom Hughes +Tony Finch +Ville Skyttä +Ward Vandewege +William York +Yale Huang +Yitzchak Scott-Thoennes diff --git a/Changes b/Changes new file mode 100644 index 0000000..812b164 --- /dev/null +++ b/Changes @@ -0,0 +1,3614 @@ +_______________________________________________________________________________ +2010-05-13 Release 5.836 + +Gisle Aas (1): + Fix problem where $resp->base would downcase its return value + + + +_______________________________________________________________________________ +2010-05-05 Release 5.835 + +Gisle Aas (12): + simple string can be simplified + Make $mess->decoded_content remove XML encoding declarations [RT#52572] + Don't allow saving to filenames starting with '.' suggested by server + Avoid race between testing for existence of output file and opening the file + Minor doc fixup -- wrongly ucfirsted word + Use decoded_content in HTTP:Response synopsis [RT#54139] + sun.com is no more. rip! + Trivial layout tweak to reduce variable scope. + Add 'make test_hudson' target + Implement alt_charset parameter for decoded_content() + Test decoding with different charset parameters + lwp-download now needs the -s option to honor the Content-Disposition header + +Ville Skyttä (9): + Make LWP::MediaTypes::media_suffix case insensitive. + Skip XML decoding tests if XML::Simple is not available. + Documentation fixes. + Fix m_media_type => "xhtml" matching. + Make parse_head() apply to data: requests. + Documentation spelling fixes. + Documentation grammar fixes. + Use $uri->secure in m_secure if available. + Fix handling of multiple (same) base headers, and parameters in them. + +Mark Stosberg (5): + Strip out empty lines separated by CRLF + Best Practice: avoid indirect object notation + Speed up as_string by 4% by having _sorted_field_names return a reference + Speed up scan() a bit. as_string() from this branch is now 6% faster + Port over as_string() optimizations from HTTP::Headers::Fast + +Tom Hukins (2): + Link to referenced documentation. + Update repository location. + +Father Chrysostomos (1): + Remove needless (and actually harmful) local $_ + +Sean M. Burke (1): + "Perl & LWP" is available online + + + +_______________________________________________________________________________ +2009-11-21 Release 5.834 + +Gisle Aas (4): + Check for sane default_headers argument [RT#50393] + Add $ua->local_address attribute [RT#40912] + Test that generation of boundary works [RT#49396] + Page does not display the "standard" apache listing any more + +Ville Skyttä (2): + Remove unneeded executable permissions. + Switch compression/decompression to use the IO::Compress/IO::Uncompress and + Compress::Raw::Zlib family of modules. + +Slaven Rezic (1): + lwp-request should use stderr for auth [RT#21620] + + + +_______________________________________________________________________________ +2009-10-06 Release 5.833 + + +Gisle Aas (5): + Deal with cookies that expire far into the future [RT#50147] + Deal with cookies that expire at or before epoch [RT#49467] + Pass separate type for https to LWP::ConnCache [RT#48899] + Improved handling of the User-Agent header [RT#48461] + HTTP::Cookies add_cookie_header previous Cookies [RT#46106] + +Andreas J. Koenig (1): + Improve diagnostics from LWP::UserAgent::mirror [RT#48869] + +Slaven Rezic (1): + mirror should die in case X-Died is set [RT#48236] + +Ville Skyttä (1): + Increase default Net::HTTP max line length to 8k. + + + +_______________________________________________________________________________ +2009-09-21 Release 5.832 + + +Ville Skyttä (6): + Fix net test suite. + Comment spelling fixes. + Fix links to old Netscape cookie specification. + Documentation spelling fixes. + Improve max line length exceeded/read error messages. + Do not warn about seemingly wellformed but unrecognized robots.txt lines. + +Gisle Aas (1): + $mess->content_charset would fail for empty content + +mschilli (1): + Further restrict what variables env_proxy() process + + + +_______________________________________________________________________________ +2009-08-13 Release 5.831 + + +Ville Skyttä (3): + Fix bzip2 content encoding/decoding. + send_te() doc grammar fix. + Document time2str() behavior with an undefined argument. + +Gisle Aas (1): + HTML::Message's content_charset trigger warnings from HTML::Parser [RT#48621] + + + +_______________________________________________________________________________ +2009-07-26 Release 5.830 + +Gisle Aas (1): + select doesn't return undef on failure [RT#32356] + +Ville Skyttä (1): + Add raw RFC 1951 deflate test case. + + + +_______________________________________________________________________________ +2009-07-07 Release 5.829 + +This release removes callback handlers that were left over on the returned +HTTP::Responses. This was problematic because it created reference loops +preventing the Perl garbage collector from releasing their memory. Another +problem was that Storable by default would not serialize these objects any +more. + +This release also adds support for locating HTML::Form inputs by id or class +attribute; for instance $form->value("#foo", 42) will set the value on the +input with the ID of "foo". + + +Gisle Aas (5): + Make the example code 'use strict' clean by adding a my + Avoid cycle in response + Clean up handlers has from response after data processing is done + Support finding inputs by id or class in HTML::Form + Test HTML::Form selectors + +Mark Stosberg (1): + Tidy and document the internals of mirror() better [RT#23450] + +phrstbrn (1): + Avoid warnings from HTML::Form [RT#42654] + + + +_______________________________________________________________________________ +2009-06-25 Release 5.828 + +A quick new release to restore compatiblity with perl-5.6. + + +Gisle Aas (4): + Less noisy behaviour when we can't download the documents + Restore perl-5.6 compatiblity [RT#47054] + Don't decode US-ASCII and ISO-8859-1 content + Some versions of Encode don't support UTF-16-BE [RT#47152] + +Ville Skyttä (1): + Spelling fixes. + + + +_______________________________________________________________________________ +2009-06-15 Release 5.827 + +The main news this time is better detection of what character set the document +in a response uses and the addition of the lwp-dump script that I found useful. + + +Gisle Aas (31): + Added lwp-dump script + Replace calls to $req->url with $req->uri + Also need to encode strings in the latin1 range + Ignore the value set for file inputs [RT#46911] + Add docs to lwp-dump + Don't let lwp-dump follow redirects + Support --method options + Implement the --agent option + Dictionary order for the option docs; document --method + Merge branch 'dump' + Files are passed as an array and we must not stringify it. + Add content_charset method to HTTP::Message + Start guessing the charset for a message + Let content_charset guess the charset to use for decoded_content + Specify what's missing for the XML and HTML case + Provide charset parameter for HTML::Form->parse() + Make content_charset sniff for elements specifying the charset. + Determine charset of XML documents + Get rid of the _trivial_http_get() implementation + Update the bundled media.types file + LWP::Simple::get() now returns decoded_content [RT#44435] + Implement content_type_charset method for HTTP::Headers + Implement content_is_text method for HTTP::Headers + Make use of content_is_text and content_type_charset in decoded_content + Don't let the parse_head callback append to the HTTP headers + Don't set Range header on request when max_size is used [RT#17208] + Still show client headers for internal responses + Document Client-Warning: Internal response + Don't use 'no' as example domain for no_proxy docs [RT#43728] + Drop exit from the Makefile.PL [RT#43060] + Merge branch 'content_charset' + +Alex Kapranoff (1): + Support "accept-charset" attribute in HTML::Form + +Mark Stosberg (1): + new tests for max_size and 206 responses [RT#46230] + +murphy (1): + Reformulation of Client-Warning: Internal documentation + + + +_______________________________________________________________________________ +2009-04-24 Release 5.826 + +Gisle Aas (2): + Avoid returning stale Content-Type header after message parts have been updated + Don't let content saved to file be affected by the $\ setting + +Graeme Thompson (1): + Issues around multipart boundaries [RT#28970] + +Mike Schilli (1): + Ignore random _proxy env variables, allow only valid schemes + +Slaven Rezic (1): + README.SSL is not anymore available at the linpro.no URL. + +john9art (1): + Make LWP::UserAgent constructor honor the default_headers option [RT#16637] + + + +_______________________________________________________________________________ +2009-02-16 Release 5.825 + +Zefram (1): + Fixup test failure with perl-5.8.8 and older; qr/$/m doesn't work + + + +_______________________________________________________________________________ +2009-02-13 Release 5.824 + +Gisle Aas (7): + Make format_request() ensure that it returns bytes [RT#42396] + Force bytes in all the format_* methods. + Ignore Sitemap: lines in robots.txt [RT#42420] + Refactor; use variable to hold the test port + Add redirects method to HTTP::Message + Setting $ua->max_redirect(0) didn't work [RT#40260] + Convert files to UTF-8 + +Zefram (2): + HTTP::Cookies destructor should not clobber $! and other globals. + Deal with the Encode module distributed with perl-5.8.0 + +Ian Kilgore (1): + Avoid failure if 127.0.0.1:8333 is in use [RT#42866] + +Ville Skyttä (1): + Documentation improvements, spelling fixes. + + + +_______________________________________________________________________________ +2008-12-05 Release 5.823 + +Gisle Aas (4): + Bring back the LWP::Debug code [RT#41759] + Add documentation section about 'Network traffic monitoring'. + Typo fixes + Want to ensure we get a single value back here. + + + +_______________________________________________________________________________ +2008-12-05 Release 5.822 + +Gisle Aas (4): + A more modern user_agent example. + Make it possible to unset the proxy settings again + Prefer use specified Content-Length header [RT#41462] + Deprecate LWP::Debug + + + +_______________________________________________________________________________ +2008-11-25 Release 5.821 + +Various bug fixes. + + +Gisle Aas (3): + The Content-Length and Content-MD5 headers are no longer valid after encode/decode + Add META information + croak on bad proxy args [RT#39919] + +Slaven Rezic (1): + Skip a failing decoded_content on systems without Encode.pm [RT#40735] + +Steve Hay (1): + Skip LWP test when fork() is unimplemented + +Yuri Karaban (1): + redo used incorrectly in LWP::Protocol::http [RT#41116] + +jefflee (1): + HTTP::Cookies::Microsoft now handles user names with space [RT#40917] + +ruff (1): + Avoid aborting requests saved to file early [RT#40985] + + + +_______________________________________________________________________________ +2008-11-05 Release 5.820 + +Main news is the ability to control the heuristics used to determine +the expiry time for response objects. + + +Gisle Aas (8): + Reformat later parts of Changes + Add a paragraph to summarize the motivation for releases since 5.815 + all_pod_files_ok(); + Fix POD markup error + Calculation of current_age with missing Client-Date. + The age/freshness methods now take an optional 'time' argument + More correct matching of 'max-age' in freshness_lifetime method + The freshness_lifetime method now support options to control its heuristics + + +_______________________________________________________________________________ +2008-10-20 Release 5.819 + +Release 5.815 to 5.818 had a severe bug that sometimes made LWP not +collect all data for the responses it received. This release is +strongly recommended as an upgrade for those releases. + + +Gisle Aas (2): + Don't override $Net::HTTPS::SSL_SOCKET_CLASS if it's already set. + Wrong content handlers would sometimes be skipped [RT#40187] + + +_______________________________________________________________________________ +2008-10-16 Release 5.818 + +Main news in this release is the addition of the dump() method to the +request and response objects. If found that I often ended up printing +$resp->as_string for debugging and then regretting after the terminal +got into a strange mode or just kept on scrolling for the longest +time. + + +Gisle Aas (8): + Use deflate compression instead of gzip for the test + Simplify; Get rid of the $USE_STORABLE_DCLONE configuration + Add dump method to HTTP::Message. + Use $res->dump instead of rolling our own. + Layout change; move headers() methods to a more logical place. + Add support for x-bzip2 encoding; fix bzip2 decoding. + Add send_header method to HTTP::Daemon + Make the lwp-request User-Agent string include the LWP version. + +Slaven Rezic (1): + clone implemented in terms of Storable::dclone [RT#39611] + + +_______________________________________________________________________________ +2008-10-10 Release 5.817 + +This is the release where I played around with Devel::NYTProf to +figure where time was actually spent during the processing of requests +with LWP. The methods that manipulated header objects stood out, so +this release contains a few tweaks to make those parts faster. + +I also figured a few convenience methods to encode and decode the +content of request/response objects would be in order. + + +Gisle Aas (16): + Should store "wire" headers field names with _ without translation. + Test HTTP::Request->parse(). + Restore pre-5.815 behaviour of returning "400 Bad Request" [RT#39694] + Rename the HTTP::Status constants to have HTTP_ prefix + Detection of unsupported schemes was broken [RT#37637] + Allow tainted methods to be forwarded to HTTP::Headers [RT#38736] + Add strict mode to HTML::Form + Fix test now that less warnings are generated. + Add content_is_xml method + Make split_header_words() lower case returned tokens/keys + Avoid invoking AUTOLOAD on object destruction [RT#39852] + Add decode() method to HTTP::Message + Add encode() method to HTTP::Message + Allow multiple fields to be set with push_header(). + Make content_type and content_is_xhtml methods faster + Faster push_header() + + +_______________________________________________________________________________ +2008-09-29 Release 5.816 + +Oops, release 5.815 broke download-to-file on Windows. + + +Gisle Aas (2): + Add missing binmode() [RT#39668] + Doc tweaks + + +_______________________________________________________________________________ +2008-09-24 Release 5.815 + +The main change this time is the introduction of handlers to drive the +processing of requests in LWP::UserAgent. You can also register your +own handlers for modifying and processing requests or responses on +their way, which I think is a much more flexible approach that trying +to subclass LWP::UserAgent to customize it. If we have had these +early on then the LWP::UserAgent API could have been so much simpler +as the effect of most current attributes can easily be set up with +trivial handlers. + +Also thanks to contributions by Bron Gondwana LWP's Basic/Digest +authenticate modules now registers handlers which allow them to +automatically fill in the Authorization headers without first taking +the round-trip of a 401 response when LWP knows the credentials for a +given realm. + + +Gisle Aas (23): + We don't need to build the docs to run the tests. + Style tweaks. + The jigsaw service isn't up to much good these days. + HTTP::Cookies produces warnings for undefined cookie param names [RT#38480] + Typo fix; HTTP::Message will never include x-bzip2 in Accept-Encoding [RT#38617] + Added HTTP::Config module + Add methods to configure processing handlers. + 100 Continue response not complete. + Use 3-arg open when response content to files. + Make the show_progress attribute official (by documenting it). + Start using handlers for driving the inner logic of LWP::UserAgent. + Expose the content_is_html and content_is_xhtml methods from HTTP::Headers. + Make credentials method able to get/set values. + An auth handler per realm. + Match proxy setting for request. + Set up separate handler for adding proxy authentication. + Add request_preprepare to be able to initialize proxy early enough. + Smarter get_my_handler() that can also create handlers. + Refactor; introduce run_handlers method + Pass in handler hash to the handler callback. + Don't let version=1 override behaviour if specified with a plan Set-Cookie header. + Remove handler when we don't have a username/password for the realm. + Make tests use Test.pm + +Bron Gondwana (2): + Double-check that username or password has changed after a failed login. + Update Digest Authen to subclass Basic. + +Ondrej Hanak (1): + Avoid running out of filehandles with DYNAMIC_FILE_UPLOAD. + +Todd Lipcon (1): + Fixed parsing of header values starting with ':' [RT#39367] + +amire80 (1): + Documentation typo fixes [RT#38203] + + +_______________________________________________________________________________ +2008-07-25 Release 5.814 + +Gisle Aas (13): + Typo fix. + Add HTTP::Message::decodable() + Use decoded_content in the synopsis + Avoid adding an empty first part in $mess->add_part() + Get rid of all the manual dependency tests. + Simplify the Makefile.PL (no interactivity) + Provide DELETE method in HTTP::Request::Common [RT#37481] + Checkbox picks up nearby text in description of alternates [RT#36771] + HTML::Form::possible_values() should not returned disabled values [RT#35248] + File::Listing documentation claimed only 'unix' format was supported [RT#22021] + File::Listing only support English locales [RT#28879] + Make common-req.t use Test.pm + Typo; CAN_TALK_TO_OUTSELF + +Bill Mann (1): + Fix up File::Listings fallback to dosftp [RT#23540] + +Hans-H. Froehlich (1): + File::Listing parse failure on BSD Linux based systems [RT#26724] + + +_______________________________________________________________________________ +2008-06-17 Release 5.813 + +Ville Skytta (3): + RobotUA constructor ignores delay, use_sleep [RT#35456] + Spelling fixes [RT#35457] + Add HTTP::Response->filename [RT#35458] + +Mark Stosberg (2): + Better diagnostics when the HTML::TokeParser constructor fails [RT#35607] + Multiple forms with same-named for compatibility with + other browsers. Patch by Josh Rai . + + HTML::Form: Sane handling of 'disabled' for ListInput. + Based on patch by Joao Lopes . + + HTTP::Negotiate: Fixed matching of partial language tags. + Patch contributed by Dan Kubb. + + HTTP::Response: The as_string method now returns a status line + that doesn't add the "official" code name in the message + field. This improves the ability to round-trip response objects + via HTTP::Response->parse($res->as_string) and makes the first + line of the string returned agree with $res->status_line. + + Net::HTTP: The host attribute can now be set undef in + order to suppress this header for HTTP/1.0 requests. + + Net::HTTP: The default Host: header does not include the + port number if it is the default (80 for plain HTTP). Some + servers get confused by this. + + Net::HTTP: Ignore bogus Content-Length headers. Don't get + confused by leading or trailing whitespace. + + LWP::Protocol::http: More efficient sending of small PUT/POST + requests by trying harder to pass off the whole request in a + single call to syswrite. + + lwp-request now give better error messages if you used the + -o option without having the HTML-Tree distribution installed. + Also document this dependency. + + + +2005-12-06 Gisle Aas + + Release 5.804 + + HTTP::Message->parse did not work when the first line of the body + was something that looked like a header. + + HTTP::Header::Auth needs HTTP::Headers to be loaded before + it replace its functions. + + LWP::Protocol::nntp improvements by Ville Skyttä : + - Support the nntp: scheme. + - Support hostname in news: and nntp: URIs. + - Close connection and preserve headers also in non-OK responses. + - HEAD support for URIs identifying a newsgroup. + - Comment spelling fixes. + + Fix quotes in Net::HTTP example. + http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=283916 + + Detect EOF when expecting a chunk header. Should address the + warnings shown in http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=286775 + + WWW::RobotRules: Improved parsing of not strictly valid robots.txt files + contributed by . + + Makefile.PL: Set name to LWP so that the .packlist ends up in the + expected place. + + + +2004-12-11 Gisle Aas + + Release 5.803 + + HTTP::Message: $mess->decoded_content sometimes had the side + effect of destroying $mess->content. + + HTTP::Message: $mess->decoded_content failed for + "Content-Encoding: deflate" if the content was not in the + zlib-format as specified for the HTTP protocol. Microsoft got + this wrong, so we have to support raw deflate bytes as well. + + HTTP::Response->parse don't require the protocol to be + specified any more. This allows HTTP::Response->parse($resp->as_string) + to round-trip. Patch by Harald Joerg . + + HTTP::Response: $resp->base might now return undef. Previously + it would croak if there was no associated request. Based on + patch by Harald Joerg . + + HTML::Form now support