Revision history for HTTP-Message

7.02      2026-06-05 23:28:36Z
    - now handling HTTP method '0' (GH#211) (Karen Etheridge)

7.01      2025-10-19 17:22:21Z
    - Fix HTTP::Response and HTTP::Request as_string/parse commutativity issue
      #62959 (GH#212) (Copilot)
    - Fix few minor typos (GH#202) (Yoshikazu Sawa)

7.00      2024-10-07 15:31:56Z
    - Stop transforming LF into CRLF. Fixes #69 (GH#196) (Olaf Alders)

6.46      2024-05-27 18:58:16Z
    - Update several status codes to RFC 9110 (GH#197) (Wesley Schwengle)

6.45      2023-09-27 14:27:31Z
    - Allow for file ownership conflicts with Docker and GitHub Actions
      (GH#193) (Olaf Alders)
    - Add the 'status_code' function for getting all status codes as hash
      (GH#194) (Dai Okabayashi)

6.44      2022-10-26 20:49:00Z
    - Made the Clone module a hard requirement, so we don't have to
      provide a fallback function for HTTP::Headers::clone().
      We require at least Clone 0.46, as that release now supports
      Perl back to 5.8.1, just like us. (GH#184) (Neil Bowers)
    - Import clone from Clone rather than inheriting (GH#189) (Graham Knop)
    - Made the Compress::Raw::Zlib 2.062 module minimal required
      version. (GH#190) (Jakub 'q84fh' Skory)

6.43      2022-10-22 14:50:35Z
    - Remove dependency to IO::Uncompress::Bunzip2. (Michal Josef Spacek)
    - Remove dependency to IO::Uncompress::Gunzip. (Michal Josef Spacek)

6.42      2022-10-18 13:53:22Z
    - We now don't consider the Content-Location header when asked
      for the base URI. RFC 7231 says we shouldn't. (GH#51) (Neil Bowers)
    - Increased the (max) buffer size for read() when processing form data,
      from 2048 to 8192. This was suggested in RT#105184, as it improved
      performance for them. (GH#59) (Neil Bowers)

6.41      2022-10-12 15:57:40Z
    - Add maximum size for HTTP::Message->decoded_content
      This can be used to limit the size of a decompressed HTTP response,
      especially when making requests to untrusted or user-specified servers.
      The $HTTP::Message::MAXIMUM_BODY_SIZE variable and the ->max_body_size
      accessor can set this limit. (GH#181) (Max Maischein)

6.40      2022-10-12 15:45:52Z
    - Fixed two typos in the doc, originally reported by FatherC
      in RT#90716, ported over as GH#57. (GH#57) (Neil Bowers)

6.39      2022-10-08 13:48:26Z
    - Remove Travis config (GH#180) (Olaf Alders)
    - Added status_constant_name() which maps status code
      to the name of the corresponding constant. (GH#160) (Neil Bowers)
    - Updated the doc for status_message() to clarify that it
      returns "Not Found" and not "HTTP_NOT_FOUND". (GH#160) (Neil Bowers)

6.38      2022-10-06 21:48:18Z
    - Replace "base" with "parent" (GH#176) (James Raspass)
    - Replace "print" with "note" in tests (GH#178) (James Raspass)
    - Noted that OPTIONS supported was added in 6.1, to the doc
      for HTTP::Request::Common. Addresses GH#177. (GH#179) (Neil Bowers)

6.37      2022-06-14 14:08:55Z
    - Support for Brotli "br" encoding (GH#163) (trizen and Julien Fiegehenn)
    - Don't test Perl > 5.32 on Windows in GH Actions (GH#174) (Olaf Alders)

6.36      2022-01-05 14:39:42Z
    - Fix examples in HTTP::Request::Common synopsis: HTTP::Request::Common
      does not put headers in an arrayref, unlike HTTP::Request (GH#170) (Karen
      Etheridge)
    - Update to contributing information (GH#171) (Håkon Hægland)

6.35      2021-11-11 22:10:31Z
    - Clarify documentation for decoded_content (GH#166) (Eric Wastl)

6.34      2021-11-08 14:27:36Z
    - Catch case of empty name/value in header words split. (GH#168) (Galen Huntington)

6.33      2021-06-28 16:51:58Z
    - Allow `can` method to respond to delegated methods (GH#159) (nanto_vi,
      TOYAMA Nao)

6.32      2021-05-18 18:54:27Z
    - Use File::Spec for MSWin32 on Content-Disposition filename (GH#157)
      (tzccinct)

6.31      2021-05-11 18:07:37Z
    - Fix test writing to files (GH#156) (Michal Josef Špaček)

6.30      2021-05-10 14:55:55Z
    - Don't inherit from Exporter anymore (GH#155) (Max Maischein)
    - Remove superfluous Perl version requirement. This module requires Perl
      5.6 or newer. (GH#155) (Max Maischein)

6.29      2021-03-06 04:50:34Z
    - fix issue with HTTP::Request internal cache for canonical url when using
      URI::URL (GH#146) (andrew-grechkin)

6.28      2021-02-19 16:22:13Z
    - fix warnings during HTTP::Config->match #62 (GH#152) (Viťas Strádal)

6.27      2021-01-05 03:02:01Z
    - Clean up backcompat code (GH#148) (Dan Book)
    - Add "308 Permanent Redirect" to is_cacheable_by_default (GH#150) (simbabque)

6.26      2020-09-10 02:34:25Z
    - Update comment which explains in which RFC 451 is defined (GH#143) (Olaf
      Alders). Reported by Toby Inkster.
    - Fix HTTP status descriptions and add 425 Too Early (GH#145) (Dan Book)

6.25      2020-06-28 17:52:12Z
    - Don't run Changes test on master in GH actions
    - move Clone from required to suggests prerequisite, to re-enable
      fatpacking

6.24      2020-05-11 13:15:25Z
    - Full release.  No changes since TRIAL release 6.23

6.23      2020-05-07 17:57:18Z (TRIAL RELEASE)
    - Enable static install (GH#134) (Olaf Alders)
    - Support non-string header values that stringify (GH#137) (Will Storey)

6.22      2020-02-24 18:58:07Z
    - Full release.  No changes since TRIAL release 6.21

6.21      2020-02-19 14:35:09Z (TRIAL RELEASE)
    - Bump Encode to latest version (3.01) (GH#129) (Olaf Alders)
    - Revert #115 (GH#131) (Olaf Alders)
    - Revert (GH#125) "try hard to make a usable file name" (GH#130) (Olaf
      Alders)
    - Fix JSON request encoding examples in POD (GH#126) (Michael Schout)
    - Added support for OPTIONS requests.

6.20      2019-02-05 01:46:39Z (TRIAL RELEASE)
    - Fix encoded file names when LC_ALL=C (GH#125) (Lars Dɪᴇᴄᴋᴏᴡ 迪拉斯)

6.19      2019-01-16 15:17:35Z (TRIAL RELEASE)
    - Add support for RFC 8187 encoded filenames (GH#115) (Zaki Mughal)
    - Fix memoized _uri_canonical #121 (GH#123) (Dorian Taylor)
    - Don't overwrite $@ in decodable (gh #80) (GH#118) (mschae94)
    - Add support for RFC 8187 encoded filenames (GH#115) (Zaki Mughal)

6.18      2018-06-05 16:29:15Z
    - Revert status_message to original code (GH#111) (Theo van Hoesel)

6.17      2018-06-05 01:55:34Z
    - Documented status code 451 in the list of constants (GH #104) (Robert Rothenberg)
    - Status code 451 is cachable by default, as per RFC 7725 (GH #104) (Robert Rothenberg)
    - Add default status_message for unknown status codes (GH#105) (Robert Rothenberg)
    - Corrections to the documentation (GH#102) (Jonas B. Nielsen)

6.16      2018-03-28 14:09:17Z
    - Update status codes to official IANA list (GH#100) (Theo van Hoesel)

6.15      2018-03-13 13:02:56Z
    - Whenever possible, use an absolute four digit year for Time::Local (GH#97)
    - Add is_cacheable_by_default() (GH#98) (Theo van Hoesel)

6.14      2017-12-20 22:28:48Z
    - Add some useful examples in HTTP::Request (GH #92) (Chase Whitener).
      Batch requests are now explained.
    - PUT and PATCH docs updated (GH #84) (saturdaywalkers)
    - Trim trailing \r from status line so message() doesn't return it (GH #87) (Felipe Gasper)
    - Bring test coverage of HTTP::Config to 100% (GH #85) (Pete Houston)
    - Add 103 Early Hints to HTTP::Status (GH #94) (Tatsuhiko Miyagawa)

6.13      2017-06-20 01:07:03Z
    - Non-TRIAL release of changes found in 6.12

6.12      2017-06-15 18:03:50Z (TRIAL RELEASE)
    - If an object is passed to HTTP::Request, it must provide a canonical()
      method (Olaf Alders)
    - Make sure status messages don't die by checking the status exists before
      checking the value range (Kent Fredric, GH #39)
    - Add a .mailmap file to clean up the contributors list
    - Avoid inconsistent setting of content to undef (Jerome Eteve)
    - Simplify the way some methods are created (Tom Hukins)
    - Remove some indirect object notation (Chase Whitener)
    - Fix example in Pod (Tobias Leich)
    - Add support for HTTP PATCH method (Mickey Nasriachi)

6.11   2015-09-09
    - fix an undefined value warning in HTTP::Headers::as_string

6.10   2015-07-19
    - fix uses of qr/.../m in tests that do not work in 5.8.x

6.09   2015-07-19
    - converted all uses of Test.pm to Test::More
    - fix uninitialized warning in HTTP::Config (RT#105929)

6.08   2015-07-10
    - Resolve new uninitialized warning from
      HTTP::Request::Common::request_type_with_data (RT#105787)

6.07   2015-07-09
    - Allow subclasses to override the class of parts - it used to be hardcoded
      to HTTP::Message. (Gisle Aas, RT#79239)
    - Added support for is_client_error, is_server_error to HTTP::Response
      (Karen Etheridge)
    - Added flatten interface to HTTP::Headers (Tokuhiro Matsuno, GH#5)
    - Allow PUT to pass content data via hashrefs just like with POST (Michael
      Schilli, GH#9)
    - Fix for "Content-Encoding: none" header (Gisle Aas, RT#94882)
    - Add support for HTTP status 308, defined in RFC 7238 (Olivier Mengué,
      RT#104102)
    - drop the use of "use vars" (Karen Etheridge)

6.06    2012-10-21
    - More forgiving test on croak message [RT#80302] (Gisle Aas)
    - Added test for multipart parsing (Gisle Aas)
    - Multipart end boundary doesn't need match a complete line [RT#79239]
      (Mark Overmeer)

6.05    2012-10-20
    - Updated ignores (Gisle Aas)
    - No need to prevent visiting field values starting with '_' (Gisle Aas)
    - Report the correct croak caller for delegated methods (Gisle Aas)
    - Disallow empty field names or field names containing ':' (Gisle Aas)
    - Make the extra std_case entries local to each header (Gisle Aas)

6.04    2012-09-30
    - Updated repository URL (Gisle Aas)
    - Avoid undef warning for empty content (Gisle Aas)
    - Teach $m->content_charset about JSON (Gisle Aas)
    - Use the canonical charset name for UTF-16LE (and frieds) (Gisle Aas)
    - Add option to override the "(no content)" marker of $m->dump (Gisle Aas)
    - Use IO::HTML for <meta> encoding sniffing (Christopher J. Madsen)
    - mime_name was introduced in Encode 2.21 (Christopher J. Madsen)
    - Remove an unneeded "require" (Tom Hukins)
    - Spelling fixes. (Ville Skyttä)
    - Sanitized PERL_HTTP_URI_CLASS environment variable. (chromatic)
    - Add test from RT#77466 (Martin H. Sluka)
    - Fix doc grammo [RT#75831] (Father Chrysostomos)

6.03    2012-02-16
    - Support 'bzip2' as alternative to Content-Encoding: x-bzip2.  Some
      servers seem to return it.
    - Make newlines in forms be "\r\n" terminated.
    - Added some more status codes.
    - Restore perl-5.8.1 compatibility.

6.02    2011-03-20
    - Declare dependency on Bunzip2 v2.021 [RT#66593]

6.01    2011-03-07
    - Avoid loading XML::Simple to avoid test failures.
    - Eliminate the HTML::Entities dependency.

6.00    2011-02-27
    - Initial release of HTTP-Message as a separate distribution. There are no
      code changes besides incrementing the version number since
      libwww-perl-5.837.
    - The HTTP::Message module with friends used to be bundled with the
      libwww-perl distribution.
