1changes(3)            User Contributed Perl Documentation           changes(3)
2
3
4

CHANGE LOG

6       Version 3.030
7           Make send_by_sendmail set sender like documentation says it does
8           (thanks, Michael Schout!)
9
10       Version 3.029
11           Allow the MIME-Version header to be replaced (thanks, Florian!)
12
13       Version 3.028
14           Various documentation fixes
15
16       Version 3.027
17           Add send_to_testfile method (Thanks, AlexanderBecker)
18
19       Version 3.026
20           Fix tests to pass with MIME::Types 1.28
21
22       Version 3.025
23           Added back support for providing a non-default SMTP port (#21156,
24           #48783, thanks John Bokma!).
25
26       Version 3.024
27           add git repo link to metadata
28
29       Version 3.023
30           Correct erroneous changelog entry
31
32           Fix typo in perldoc: utf-8, not utf8
33
34       Version 3.022
35           Behave on Cygwin as on Win32 with regard to defaulting to SMTP
36           sending.
37
38           Respect crazy people who put multiple Cc or Bcc headers in message
39           (#30574, thanks Pavel V. Rochnyack!)
40
41           We no longer rewrite array and hash refs in the send_by_sendmail
42           args so aggressively.
43
44           Cope with missing local sendmail (thanks to Debian for patching for
45           this, and for putting up with me (rjbs) being an insufferable
46           jerk!)
47
48           Fix weird unicode-in-$1 bug (thanks SREZIC!)
49
50           Other minor bug fixes.
51
52       Version 3.021
53           Replace Email::Date with Email::Date::Format to limit prereqs
54           (Email::Date::Format produced just for this!)
55
56           Begin the process of removing use of ExtUtils::TBone for testing
57
58       Version 3.020
59           Optimized code for speedup of creation of two-part messages. The
60           internal structure of the object has changes, but that won't matter
61           if you were using the published interface.  (Sam Tregar)
62
63           Removed the "advanced features", ie auto-fallback delivery, from
64           send_by_smtp. They didn't belong there in the first place.
65
66       Version 3.01_06 (2007/07/29)
67           First release from Perl Email Project.  Updated packaging.
68
69       Version 3.01_04 (2004/05/05)
70           Reworked the new send_by_smtp stuff. Documentation modifications.
71
72       Version 3.01_02 (2003/08/28)
73           Well, it seems 3.01_01 failed tests on Win32 due to me accidentally
74           changing the line ending format to DOSish. Also the way that email
75           extraction for SMTP with or without Mail::Address was different
76           (from 2.117 even).  So ive fixed that.
77
78           Anybody depending on the undocumented extract_addrs() is in for a
79           suprise.  I suggest you look at using Mail::Address.
80
81       Version 3.01_01 (2003/04/25 - 2003/08/21)
82           (This version is a test release, if its ok then I'll re-release it
83           as 3.02)
84
85           Patched the pod to use correct entities Thanks to Ed Avis  for the
86           patch.  Added better support for funky names in the from field when
87           sending via SMTP, thanks to prodding by Darren Hemphill and Ollie
88           Gallardo. (Actually I kind of messed this up orginally and no doubt
89           Darren wasn't impressed. I ended up using something pretty close to
90           his solution.  My bad for not paying more attention. Sorry mate.)
91
92           08/21: Apparently I never uploaded my changes for this version to
93           CPAN. Sigh.
94
95           *** Win32 CHANGES ***
96
97           Up until this release the default send() method for all OS'es has
98           been to invoke sendmail and pipe the mail to it. This behaviour has
99           now changed on Win32 to default to using SMTP.  This means that if
100           your /site/lib/Net/libnet.cfg file is properly configured then you
101           can use SMTP without specifying a send method explicitly.  This
102           seemed a rational decision as most Win32 users who send mails are
103           using an SMTP server and not a tool like sendmail.
104
105           *** SMTP CHANGES ***
106
107           Jonathan Eunice <jeunice at illuminata dot com> pointed out an
108           interesting bug in the interaction between MIME::Lite and
109           Net::SMTP/Net::CMD.  This was that sending a mail ending in "\n\n"
110           without additional encoding would cause Net::CMD to send an
111           incorrect end of mail signal to the SMTP server which would result
112           in A) The mail failing to be sent due to a timeout, and B)
113           MIME::Lite to report that all was well.
114
115           This has been fixed by checking to make sure that if the last
116           character sent was \n, but the last two chars were not \r\n then
117           the \n is turned into an \r, which Net::CMD then adds an \n to and
118           then sends the normal ".\r\n" to terminate the message.  Weird
119           error, that im not entirely sure has been resolved properly. Please
120           inform me if this screws anything up that it shouldn't.
121
122           As stated earlier send_by_smtp wasnt extracting the _real_ email
123           address from the overall fancy once specified in the From: field.
124           This is resolved now, fancy display names are now possible while
125           using SMTP.
126
127           *** Content-Id ***
128
129           It was pointed out by alex via CPAN RT that Content-Id needs to
130           have angle brackets around it or HTML mails dont show up properly
131           in many mail clients, furthermore the RFC mandates it (to be honest
132           im taking his word on this, please feel free to yell at me if this
133           causes trouble), so as he suggested I am automatically adding them
134           in they arent provided.
135
136           *** sendmail path ***
137
138           Dom pointed out via CPAN RT that despite some effort going in to
139           trying to discover the correct location of sendmail, that it was
140           still using a bad default. Fixed.
141
142           *** Date Stamping ***
143
144           Kurt reported via RT that datestamps were not being correctly
145           formatted. His patch has been incorporated with only one change, a
146           comment where Perl was spelled PERL :-)
147
148           *** Quoted printable fix ***
149
150           Klaus Rusch noted a bug in how quoted-printable handled weird \r\n
151           combinations. Fixed now.
152
153       Version 3.01 (2003/04/25)
154           Eryq has reappeared long enough to graciously hand over the
155           maintaince of the module to me. Thanks.
156
157       Version 3.00 (2003/04/24)
158           Eryq has disappeared. His web site remains but he doesnt answer
159           emails.
160
161           I have taken it onto myself to take over maintenance until he
162           returns to reclaim his excellent work.
163
164           I don't intend to develop this in an serious way. I'll patch it if
165           people have a patch and generally keep it ticking over, but dont
166           expect new features.
167
168           This release has code that actually works with MIME::Lite now. As
169           well as a few other minor additions (like a test for this
170           functionailty)
171
172           For stuff that could be done, a first place would be to rewrite and
173           extend the test suite. It should use Test::More or Test::Builder at
174           the very least.
175
176           I also might rip out the preformatted doc pages. It makes the
177           distro way fatter than it needs to be. I reckon the package
178           contains the POD in at least three forms.  A wee tad overkill I
179           think. :-)
180
181       Version 2.117   (2001/08/20)
182           The terms-of-use have been placed in the distribution file
183           "COPYING".  Also, small documentation tweaks were made.
184
185       Version 2.116   (2001/08/17)
186           Added long-overdue patch which makes the instance method form of
187           send() do the right thing when given HOW... arguments.  Thanks to
188           Casey West for the patch.
189
190       Version 2.114   (2001/08/16)
191           New special 'AUTO' content type in new()/build() tells MIME::Lite
192           to try and guess the type from file extension.  To make use of
193           this, you'll want to install MIME::Types.  The "AUTO" setting can
194           be made the default default (instead of "TEXT") if you set
195           "$AUTO_CONTENT_TYPE = 1, $PARANOID = 0".  Thanks to Ville Skyttä
196           for these patches.
197
198           File::Basename is used if it is available.  Thanks to Ville Skyttä
199           for this patch.
200
201           SMTP failures (in send_by_smtp) now add the $smtp->message to the
202           croak'ed exception, so if things go wrong, you get a better idea of
203           what and why.  Thanks to Thomas R. Wyant III for the patch.
204
205           Made a subtle change to "as_string" which supposedly fixes a failed
206           MIME data.t test with Perl 5.004_04 on NT 4 sp6.  The problem might
207           only exist in this old perl, but as the patch author says, not
208           everyone has climbed higher on the Perl ladder.  Thanks to John
209           Gotts for the patch.
210
211           Added "contrib" directory, with MailTool.pm.  Thanks to Tom Wyant
212           for this contribution.
213
214           Improved HTML documentation (notice the links to the individual
215           methods in the top menu).
216
217           Corrected some mis-docs.
218
219       Version 2.111   (2001/04/03)
220           Added long-overdue "parts()" and "parts_DFS()" methods.
221
222               No instance method
223                  For accessing the subparts?
224               That can't be right.  D'OH!
225
226           Added long-overdue auto-verify logic to "print()" method.
227
228           Added long-overdue "preamble()" method for getting/setting the
229           preamble text.  Thanks to Jim Daigle for inspiring this.
230
231       Version 2.108   (2001/03/30)
232           New "field_order()" allows you to set the header order, both on a
233           per-message basis, and package-wide.  Thanks to Thomas Stromberg
234           for suggesting this.
235
236           Added code to try and divine "sendmail" path more intelligently.
237           Thanks to Slaven Rezic for the suggestion.
238
239       Version 2.107   (2001/03/27)
240           Fixed serious bug where tainted data with quoted-printable encoding
241           was causing infinite loops.  The "fix" untaints the data in
242           question, which is not optimal, but it's probably benign in this
243           case.  Thanks to Stefan Sautter for tracking this nasty little
244           beast down.  Thanks to Larry Geralds for a related patch.
245
246               "Doctor, O doctor:
247                  it's painful when I do *this* --"
248               "Simple: don't *do* that."
249
250           Fixed bugs where a non-local $_ was being modified... again!  Will
251           I never learn?  Thanks to Maarten Koskamp for reporting this.
252
253               Dollar-underscore
254                  can poison distant waters;
255              'local' must it be.
256
257           Fixed buglet in "add()" where all value references were being
258           treated as arrayrefs, instead of as possibly-self-stringifying
259           object refs.  Now you can send in an object ref as the 2nd
260           argument.  Thanks to dLux for the bug report.
261
262               That ref is a string?
263                  Operator overload
264               has ruined my day.
265
266           Added "Approved" as an acceptable header field for "new()", as per
267           RFC1036.  Thanks to Thomax for the suggestion regarding MIME-tools.
268
269           Small improvements to docs to make different uses of attach() and
270           various arguments clearer.  Thanks to Sven Rassman and Roland
271           Walter for the suggestions.
272
273       Version 2.106   (2000/11/21)
274           Added Alpha version of scrub() to make it easy for people to
275           suppress the printing of unwanted MIME attributes (like Content-
276           length).  Thanks to the many people who asked for this.
277
278           Headers with empty-strings for their values are no longer printed.
279           This seems sensible, and helps us implement scrub().
280
281       Version 2.105   (2000/10/14)
282           The regression-test failure was identified, and it was my fault.
283           Apparently some of the \-quoting in my "autoloaded" code was making
284           Perl 5.6 unhappy.  For this nesting-related idiocy, a nesting
285           kaiku.  Thanks to Scott Schwartz for identifying the problem.
286
287               In a pattern, my
288                  backslash-s dwells peacefully,
289               unambiguous --
290
291                  but I embed it
292                     in a double-quoted string
293                  doubling the backslash --
294
295                     interpolating
296                        that same double-quoted string
297                     in other patterns --
298
299                        and, worlds within worlds,
300                           I single-quote the function
301                        to autoload it --
302
303                     changing the meaning
304                  of the backslash and the 's';
305               and Five-Point-Six growls.
306
307       Version 2.104   (2000/09/28)
308           Now attempts to load and use Mail::Address for parsing email
309           addresses before falling back to our own method.  Thanks to
310           numerous people for suggesting this.
311
312               Parsing addresses
313                  is too damn hard. One last hope:
314               Let Graham Barr do it!
315
316           For the curious, the version of Mail::Address appears as the "A"
317           number in the X-Mailer:
318
319               X-Mailer: MIME::Lite 2.104  (A1.15; B2.09; Q2.03)
320
321           Added FromSender option to send_by_sendmail().  Thanks to Bill
322           Moseley for suggesting this feature.
323
324       Version 2.101   (2000/06/06)
325           Major revision to print_body() and body_as_string() so that "body"
326           really means "the part after the header", which is what most people
327           would want in this context.  This is not how it was used 1.x, where
328           "body" only meant "the body of a simple singlepart".  Hopefully,
329           this change will solve many problems and create very few ones.
330
331           Added support for attaching a part to a "message/rfc822", treating
332           the "message" type as a multipart-like container.
333
334           Now takes care not to include "Bcc:" in header when using
335           send_by_smtp, as a safety precaution against qmail's behavior.
336           Thanks to Tatsuhiko Miyagawa for identifying this problem.
337
338           Improved efficiency of many stringifying operations by using
339           string-arrays which are joined, instead of doing multiple appends
340           to a scalar.
341
342           Cleaned up the "examples" directory.
343
344       Version 1.147   (2000/06/02)
345           Fixed buglet where lack of Cc:/Bcc: was causing extract_addrs to
346           emit "undefined variable" warnings.  Also, lack of a "To:" field
347           now causes a croak.  Thanks to David Mitchell for the bug report
348           and suggested patch.
349
350       Version 1.146   (2000/05/18)
351           Fixed bug in parsing of addresses; please read the WARNINGS section
352           which describes recommended address formats for "To:", "Cc:", etc.
353           Also added automatic inclusion of a UT "Date:" at top level unless
354           explicitly told not to.  Thanks to Andy Jacobs for the bug report
355           and the suggestion.
356
357       Version 1.145   (2000/05/06)
358           Fixed bug in encode_7bit(): a lingering "/e" modifier was removed.
359           Thanks to Michael A. Chase for the patch.
360
361       Version 1.142   (2000/05/02)
362           Added new, taint-safe invocation of "sendmail", one which also sets
363           up the "-f" option.  Unfortunately, I couldn't make this automatic:
364           the change could have broken a lot of code out there which used
365           send_by_sendmail() with unusual "sendmail" variants.  So you'll
366           have to configure "send" to use the new mechanism:
367
368               MIME::Lite->send('sendmail');       ### no args!
369
370           Thanks to Jeremy Howard for suggesting these features.
371
372       Version 1.140   (2000/04/27)
373           Fixed bug in support for "To", "Cc", and "Bcc" in send_by_smtp():
374           multiple (comma-separated) addresses should now work fine.  We try
375           real hard to extract addresses from the flat text strings.  Thanks
376           to John Mason for motivating this change.
377
378           Added automatic verification that attached data files exist, done
379           immediately before the "send" action is invoked.  To turn this off,
380           set $MIME::Lite::AUTO_VERIFY to false.
381
382       Version 1.137   (2000/03/22)
383           Added support for "Cc" and "Bcc" in send_by_smtp().  To turn this
384           off, set $MIME::Lite::AUTO_CC to false.  Thanks to Lucas Maneos for
385           the patch, and tons of others for the suggestion.
386
387           Chooses a better default content-transfer-encoding if the content-
388           type is "image/*", "audio/*", etc.  To turn this off, set
389           $MIME::Lite::AUTO_ENCODE to false.  Thanks to many folks for the
390           suggestion.
391
392           Fixed bug in QP-encoding where a non-local $_ was being modified.
393           Thanks to Jochen Stenzel for finding this very obscure bug!
394
395           Removed references to "$`", "$'", and $& (bad variables which slow
396           things down).
397
398           Added an example of how to send HTML files with enclosed in-line
399           images, per popular demand.
400
401       Version 1.133   (1999/04/17)
402           Fixed bug in "Data" handling: arrayrefs were not being handled
403           properly.
404
405       Version 1.130   (1998/12/14)
406           Added much larger and more-flexible send() facility.  Thanks to
407           Andrew McRae (and Optimation New Zealand Ltd) for the Net::SMTP
408           interface.  Additional thanks to the many folks who requested this
409           feature.
410
411           Added get() method for extracting basic attributes.
412
413           New... "t" tests!
414
415       Version 1.124   (1998/11/13)
416           Folded in filehandle (FH) support in build/attach.  Thanks to Miko
417           O'Sullivan for the code.
418
419       Version 1.122   (1998/01/19)
420           MIME::Base64 and MIME::QuotedPrint are used if available.
421
422           The 7bit encoding no longer does "escapes"; it merely strips 8-bit
423           characters.
424
425       Version 1.121   (1997/04/08)
426           Filename attribute is now no longer ignored by build().  Thanks to
427           Ian Smith for finding and patching this bug.
428
429       Version 1.120   (1997/03/29)
430           Efficiency hack to speed up MIME::Lite::IO_Scalar.  Thanks to David
431           Aspinwall for the patch.
432
433       Version 1.116   (1997/03/19)
434           Small bug in our private copy of encode_base64() was patched.
435           Thanks to Andreas Koenig for pointing this out.
436
437           New, prettier way of specifying mail message headers in "build()".
438
439           New quiet method to turn off warnings.
440
441           Changed "stringify" methods to more-standard "as_string" methods.
442
443       Version 1.112   (1997/03/06)
444           Added "read_now()", and "binmode()" method for our non-Unix-using
445           brethren: file data is now read using binmode() if appropriate.
446           Thanks to Xiangzhou Wang for pointing out this bug.
447
448       Version 1.110   (1997/03/06)
449           Fixed bug in opening the data filehandle.
450
451       Version 1.102   (1997/03/01)
452           Initial release.
453
454       Version 1.101   (1997/03/01)
455           Baseline code.  Originally created: 11 December 1996.  Ho ho ho.
456
457
458
459perl v5.30.0                      2019-07-26                        changes(3)
Impressum