The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Changes for version 5.420_02 - 2007-08-29

  • VERSION 5.420_02 (developer release)
  • (bugfix) Correct 'use vars' and add a 'use strict' (fixes RT #22681)
  • (bugfix) Don't allow all-whitespace filenames in recommended_filename() (fixes RT #6115)
  • (bugfix) Require IO-stringy 2.110. Fixes RT tickets 11312, 11452, 12375, 12784, and 18791
  • (docs) Updated RFC references to refer to MIME RFCs 2045-2049 (RT #14119)
  • (cleanup) Warn if no decoder is found for a given encoding. (RT #22682)
  • (cleanup) IO::Wrap no longer used, IO::ScalarArray use minimized

Changes for version 5.420_01 - 2007-06-18

  • VERSION 5.420_01 (developer release)
  • (bugfix) Fix warning generated by a header of "Content-Type: /". Previous versions would warn about undefined variables. We now set a blank type and subtype.
  • (cleanup) Partial removal of dependencies on IO::Scalar and IO::ScalarArray. We now use Perl's built-in I/O on scalars as much as possible. NOTE THAT THIS REQUIRES PERL 5.8!
  • (cleanup) FileHandle usage removed in favour of IO::File
  • (cleanup) Remove broken utility methods -- shellquote() because it didn't really make anything safe, and catfile(), because File::Spec is better.
  • (cleanup) Multiple test cleanups, including removal of ExtUtils/TBone.pm. Tests now use Test::More.
  • (cleanup) Remove support for recycling tempfiles ( tmp_recycling() and its usage in new_tmpfile() )
  • (cleanup) Remove nasty "eval join('',<::DATA>) unless caller()" testing code from various modules
  • (cleanup) Merge all changelog information from README and MIME/Tools.pm into ChangeLog
  • 2006-03-17 David F. Skoll <dfs@roaringpenguin.com>
    • VERSION 5.420 RELEASED
    • Fix regression introduced in 5.419 -- quoted-printable encoding would sometimes fail on "textual" MIME parts.
  • 2005-12-22 David F. Skoll <dfs@roaringpenguin.com>
    • VERSION 5.419 RELEASED
    • Added MIME::Parser->decode_bodies method. This lets you force MIME::Tools to store body parts WITHOUT decoding them. Useful if you need the exact unmangled message source (for example, for GPG-signing.) Patch submitted by Jörn Reder.
  • 2005-09-29 David F. Skoll <dfs@roaringpenguin.com>
    • VERSION 5.418 RELEASED
    • MIME/Decoder/QuotedPrint.pm: Localize "$_" in a couple of places.
    • MIME/WordDecoder.pm: Turn off useless debugging output to STDERR
    • MIME/Entity.pm: Make the stringify method use IO::ScalarArray instead of IO::Scalar. For small messages, performance may be worse; for large messages, it is definitely much better.
    • MANIFEST: Remove some useless internal files from the manifest. They were never meant to be part of the actual distribution.
  • 2005-01-20 David F. Skoll <dfs@roaringpenguin.com>
    • VERSION 5.417 RELEASED
    • Require MIME::QuotedPrint 3.03 to use the three-argument "encode_qp" function. If we have an earlier version of MIME::QuotedPrint, fall back to the one-argument version.
    • Field/ParamVal.pm: The patch to strip trailing whitespace on parameters was buggy and caused decoding errors. This has been fixed.
  • 2005-01-03 David F. Skoll <dfs@roaringpenguin.com>
    • VERSION 5.416 RELEASED
    • Allow MIME::Tools to work with MIME::QuotedPrint 2.20 again. The Makefile.PL will warn about potential problems, but will allow you to proceed.
    • Field/ParamVal.pm: Strip trailing whitespace when extracting parameters. Apparently, not doing so can cause Perl to core dump on certain badly-formed messages.
  • 2004-10-27 David F. Skoll <dfs@roaringpenguin.com>
    • VERSION 5.415 RELEASED
    • Fixed parsing of parameter="" in headers, and fixed case where multipart boundary is ""
  • 2004-10-06 David F. Skoll <dfs@roaringpenguin.com>
    • VERSION 5.414 RELEASED
    • Remove MIME::QuotedPrint 3.03 as a dependency and add MIME::Base64 3.03 instead.
    • Check return values of I/O operations like open(), close(), etc. and die if they fail. Problem reported by Mark Martinec.
  • 2004-09-15 David F. Skoll <dfs@roaringpenguin.com>
    • VERSION 5.413 RELEASED
    • Fix some $VERSION = xxx assignments that were broken; make sure VERSION shows up as 5.413 everywhere. Sorry about that!
  • 2004-09-09 David F. Skoll <dfs@roaringpenguin.com>
    • VERSION 5.412 RELEASED
    • Recognize "binhex40", "mac-binhex" and "mac-binhex40" Content-Transfer-Encodings.
    • Filer.pm: Be much more strict in evil_filename, allowing only a set of known good characters.
  • 2004-09-08 David F. Skoll <dfs@roaringpenguin.com>
    • Skip BinHex decoding if prerequisite modules not installed.
    • Fix BinHex decoder so it encodes correctly; regression test for BinHex encoding now passes.
    • Require MIME::QuotedPrint 3.03 or newer.
    • Rename variable "$jkfis" to "$how_encoded"
    • Correct attribution of changes in changelog.
    • Correct bad regexp test for "bad PDF" files.
  • 2004-09-07 David F. Skoll <dfs@roaringpenguin.com>
    • lib/MIME/Parser/Filer.pm (evil_filename): Make evil_filename more paranoid (Julian Field and Martin Blapp)
    • lib/MIME/Parser/Filer.pm (exorcise_filename): Delete leading and trailing whitespace (Julian Field)
    • Remove all the Benchmark code (Martin Blapp)
    • lib/MIME/Decoder.pm: Add support for BinHex encoded attachments (Julian Field)
    • lib/MIME/Decoder.pm: Require MIME::QuotedPrint 3.03 or newer for correct decoding of binary attachments. (Alexey Kravchuk)
    • lib/MIME/Decoder/QuotedPrint.pm: Attempt to deal sanely with PDF files encoded using quoted-printable encoding by Outlook, which does not follow the RFC guidelines. (Martin Blapp)
    • lib/MIME/Field/ParamVal.pm: Deal with RFC2231-encoded parameters.
    • lib/MIME/Head.pm: Correct "7-bit", "7 bit" and "7_bit" to 7bit; likewise for 8bit lookalikes. (Martin Blapp)
    • lib/MIME/Parser.pm: Add max_parts method to limit maximum number of MIME parts we are willing to parse.
    • DSKOLL took over maintainership of MIME::tools at version 5.411a.

Modules

the body of a MIME message
an object for decoding the body part of a MIME stream
encode/decode a "base64" stream
decode a "binhex" stream
perform no encoding/decoding
decode a "base64" gzip stream
encode/decode a "7bit" or "8bit" stream
encode/decode a "quoted-printable" stream
decode a "uuencoded" stream
class for parsed-and-decoded MIME message
a "Content-transfer-encoding" field
a "Content-disposition" field
a "Content-type" field
subclass of Mail::Field, for structured MIME fields
MIME message header (a subclass of Mail::Header)
experimental class for parsing MIME streams
manage file-output of the parser
a line-oriented reader for a MIME::Parser
results of the last entity parsed
modules for parsing (and creating!) MIME entities
decode RFC 2047 encoded words to a local representation
deal with RFC 2047 encoded words

Provides

in lib/MIME/Body.pm
in lib/MIME/Body.pm
in lib/MIME/Body.pm
in lib/MIME/Parser/Filer.pm
in lib/MIME/Parser/Filer.pm
in lib/MIME/Parser.pm
in lib/MIME/Tools.pm
in lib/MIME/WordDecoder.pm
in lib/MIME/WordDecoder.pm