=item Version 3.01 (2003/04/25)
Eryq has reappeared long enough to graciously hand over the maintaince of the module to me. Thanks.
=item Version 3.00 (2003/04/24)
Eryq has disappeared. His web site remains but he doesnt answer emails.
I have taken it onto myself to take over maintenance until he returns to reclaim his excellent work.
I don't intend to develop this in an serious way. I'll patch it if people have a patch and generally keep it ticking over, but dont expect new features.
This release has code that actually works with MIME::Lite now. As well as a few other minor additions (like a test for this functionailty)
For stuff that could be done, a first place would be to rewrite and extend the test suite. It should use Test::More or Test::Builder at the very least.
I also might rip out the preformatted doc pages. It makes the distro way fatter than it needs to be. I reckon the package contains the POD in at least three forms. A wee tad overkill I think. :-)
send()do the right thing when given HOW... arguments. Thanks to Casey West for the patch.
new()/build()tells MIME::Lite to try and guess the type from file extension. To make use of this, you'll want to install MIME::Types. The ``AUTO'' setting can be made the default default (instead of ``TEXT'') if you set
$AUTO_CONTENT_TYPE = 1, $PARANOID = 0. Thanks to Ville Skyttä for these patches.
File::Basename is used if it is available. Thanks to Ville Skyttä for this patch.
SMTP failures (in send_by_smtp) now add the $smtp->message to the croak'ed exception, so if things go wrong, you get a better idea of what and why. Thanks to Thomas R. Wyant III for the patch.
Made a subtle change to
as_string which supposedly fixes a
failed MIME data.t test with Perl 5.004_04 on NT 4 sp6.
The problem might only exist in this old perl, but as the patch
author says, not everyone has climbed higher on the Perl ladder.
Thanks to John Gotts for the patch.
contrib directory, with MailTool.pm.
Thanks to Tom Wyant for this contribution.
Improved HTML documentation (notice the links to the individual methods in the top menu).
Corrected some mis-docs.
No instance method For accessing the subparts? That can't be right. D'OH!
Added long-overdue auto-verify logic to
preamble() method for getting/setting
the preamble text.
Thanks to Jim Daigle for inspiring this.
field_order()allows you to set the header order, both on a per-message basis, and package-wide. Thanks to Thomas Stromberg for suggesting this.
Added code to try and divine ``sendmail'' path more intelligently. Thanks to Slaven Rezic for the suggestion.
"Doctor, O doctor: it's painful when I do *this* --" "Simple: don't *do* that."
Fixed bugs where a non-local
$_ was being modified... again!
Will I never learn?
Thanks to Maarten Koskamp for reporting this.
Dollar-underscore can poison distant waters; 'local' must it be.
Fixed buglet in
add() where all value references were being treated
as arrayrefs, instead of as possibly-self-stringifying object refs.
Now you can send in an object ref as the 2nd argument.
Thanks to dLux for the bug report.
That ref is a string? Operator overload has ruined my day.
Added ``Approved'' as an acceptable header field for
new(), as per RFC1036.
Thanks to Thomax for the suggestion regarding MIME-tools.
Small improvements to docs to make different uses of
and various arguments clearer.
Thanks to Sven Rassman and Roland Walter for the suggestions.
scrub()to make it easy for people to suppress the printing of unwanted MIME attributes (like Content-length). Thanks to the many people who asked for this.
Headers with empty-strings for their values are no longer printed. This seems sensible, and helps us implement scrub().
In a pattern, my backslash-s dwells peacefully, unambiguous --
but I embed it in a double-quoted string doubling the backslash --
interpolating that same double-quoted string in other patterns --
and, worlds within worlds, I single-quote the function to autoload it --
changing the meaning of the backslash and the 's'; and Five-Point-Six growls.
Parsing addresses is too damn hard. One last hope: Let Graham Barr do it!
For the curious, the version of Mail::Address appears as the ``A'' number in the X-Mailer:
X-Mailer: MIME::Lite 2.104 (A1.15; B2.09; Q2.03)
Added FromSender option to send_by_sendmail(). Thanks to Bill Moseley for suggesting this feature.
body_as_string()so that ``body'' really means ``the part after the header'', which is what most people would want in this context. This is not how it was used 1.x, where ``body'' only meant ``the body of a simple singlepart''. Hopefully, this change will solve many problems and create very few ones.
Added support for attaching a part to a ``message/rfc822'', treating the ``message'' type as a multipart-like container.
Now takes care not to include ``Bcc:'' in header when using send_by_smtp, as a safety precaution against qmail's behavior. Thanks to Tatsuhiko Miyagawa for identifying this problem.
Improved efficiency of many stringifying operations by using string-arrays which are joined, instead of doing multiple appends to a scalar.
Cleaned up the ``examples'' directory.
/emodifier was removed. Thanks to Michael A. Chase for the patch.
-foption. Unfortunately, I couldn't make this automatic: the change could have broken a lot of code out there which used
send_by_sendmail()with unusual ``sendmail'' variants. So you'll have to configure ``send'' to use the new mechanism:
MIME::Lite->send('sendmail'); ### no args!
Thanks to Jeremy Howard for suggesting these features.
Added automatic verification that attached data files exist, done immediately before the ``send'' action is invoked. To turn this off, set $MIME::Lite::AUTO_VERIFY to false.
Chooses a better default content-transfer-encoding if the content-type is ``image/*'', ``audio/*'', etc. To turn this off, set $MIME::Lite::AUTO_ENCODE to false. Thanks to many folks for the suggestion.
Fixed bug in QP-encoding where a non-local
$_ was being modified.
Thanks to Jochen Stenzel for finding this very obscure bug!
Removed references to
$& (bad variables
which slow things down).
Added an example of how to send HTML files with enclosed in-line images, per popular demand.
send()facility. Thanks to Andrew McRae (and Optimation New Zealand Ltd) for the Net::SMTP interface. Additional thanks to the many folks who requested this feature.
get() method for extracting basic attributes.
New... ``t'' tests!
The 7bit encoding no longer does ``escapes''; it merely strips 8-bit characters.
encode_base64()was patched. Thanks to Andreas Koenig for pointing this out.
New, prettier way of specifying mail message headers in
New quiet method to turn off warnings.
Changed ``stringify'' methods to more-standard ``as_string'' methods.
binmode()method for our non-Unix-using brethren: file data is now read using
binmode()if appropriate. Thanks to Xiangzhou Wang for pointing out this bug.