ChangeLog:
Revision history for Perl extension Mail::Audit.
2.223 2008-04-17
localize $@ in DESTROY to prevent clobbering of outer $@
(thanks HDP; sorry to have cost you a day!)
2.222 2007-11-01
count body lines without exploding
https://rt.cpan.org/Ticket/Display.html?id=29781
2.221 2007-09-17
correct bugs exposed by new Test::More
2.220 2007-07-14
fix a test to use File::HomeDir, to allow install as sudo-to-root
Pkgsrc changes:
- Removed requirement for p5-Mail-ListDetector, Mail::Audit::List is no
longer part of this module. p5-Mail-Audit is a leaf package in pkgsrc,
so this has no further impact.
- New requirements are p5-File-HomeDir and p5-File-Tempdir.
- No compiler needed.
- Security fixes in patch-aa and patch-ab are finally integrated with
v2.219.
Changes since version 2.1:
==========================
2.219 2007-06-14
For security reasons, the log is now ~/mail-audit.log, not
/tmp/username-audit.log
fix bug: logging wasn't working when processing mime messages
add optional "reason" argument to ignore method
_log method renamed to log and documented
2.218 2007-03-06
remove List, Razor, and PGP plugins to their own dists
this is the first step in paring down Mail::Audit
2.217 2007-03-05
make the test skipped in 2.216 pass reliable (thanks to HDP for idea)
2.216 2007-02-26
skip a test that doesn't pass reliably
2.215 2007-02-19
subclass File::Tempdir to avoid cleaning up in forked child
2.214 2007-02-15
refactor internals of emergency and default destinations
2.213 2007-02-15
add a no_log option
2.212 2006-10-31
try to avoid letting temp dirs linger too long
2.211 2006-09-19
fix Mail::Audit::List breakage; it needs tests!; rt #20934
2.210 2006-09-19
use File::HomeDir to reduce unix-o-centrism
2.203 2006-07-21
update PEP information
2.202 2006-07-21
test fix: don't rely on default mbox not existing; force it to fail
prune list of sysexits.h-like error code constants
2.201 2006-07-16
use File::Temp a few places where it's indicated
add a munge_name arg to Mail::Audit::List
pipe now returns the exit status of the pipe
fix directory permissions
fixed bugs in proc2ma (ticket 2982, thanks MARKSTOS)
2.200_05 2006-06-04
more testing
more tweaking
more frustration
2.200_04 2006-06-04
log now uses on-object filehandles, rather than globals
delivery to msgprefix completely removed, as it was never implemented
exit behavior somewhat encapsulated for testability
PGP plugin now replaces, rather than adds, content type headers
more tests
2.200_03 2006-06-01
our first meaningful tests!
also some POD tests
POD cleaned up
many undocumented modules given a _-prefix
removed undocumented, bizarre inreplyto_and_references method
2.200_02 2006-05-30
various code cleanup, including perltidy
extra options, previously an optional hashref passed as first arg,
should now be passed as the last arg; factored out and deprecation
warning added; they were mostly undocumented
moved to Module::Install
2.200_01 2006-05-24
maintenance assumed by RJBS
changes inherited from Meng Wong
2.1 - Tue Jan 15 17:59:46 EST 2002
- Meng Weng Wong made some edits.
(1) ~username and strftime interpolation into accept() arguments.
$mail->accept("~/Mail/In/%Y%m%d");
260(accept): accepting to /home/matest/Mail/In/20020115
(2) multiple-argument accept() will deliver to multiple
maildirs using single-inode multiple-hardlink style.
$mail->accept("~/maildir1/", "~/maildir2/");
20020115-01:55:31 matest@dumbo:~% ll maildir?/*/*
-rw------- 2 matest matest 416 Jan 15 01:55 maildir1/new/1011077720.13062_0.dumbo
-rw------- 2 matest matest 416 Jan 15 01:55 maildir2/new/1011077720.13062_1.dumbo
(3) emergency mailbox support if none of the accept()s work.
$mail->accept("/etc/bogus");
296(accept): calling accept handler accept_to_mbox(/etc/bogus)
359(accept_to_mbox): Couldn't open /etc/bogus: Permission denied
319(accept): unable to write to /etc/bogus; wrote to emergency mailbox /var/spool/mail/matest.
(4) deferral back to mailqueue if emergency couldn't get delivered.
296(accept): calling accept handler accept_to_mbox(/etc/bogus)
359(accept_to_mbox): Couldn't open /etc/bogus: Permission denied
359(accept_to_mbox): Couldn't open /etc/emergency: Permission denied
320(accept): unable to write to /etc/bogus or to emergency mailbox /etc/emergency either; exiting EX_TEMPFAIL
(5) fixed the From header bug http://rt.cpan.org/NoAuth/Bug.html?id=118
(6) fixed the user method override bug with (@_) argument passing
(7) autocreation of parent and maildir cur/new/tmp dirs as necessary.
260(accept): accepting to /home/mengwong/tmp/blah/some/really/deep/directory/
761(mkdir_p): /home/mengwong/tmp/blah/some/really/deep/directory/tmp doesn't exist, creating.
761(mkdir_p): /home/mengwong/tmp/blah/some/really/deep/directory doesn't exist, creating.
761(mkdir_p): /home/mengwong/tmp/blah/some/really/deep doesn't exist, creating.
761(mkdir_p): /home/mengwong/tmp/blah/some/really doesn't exist, creating.
761(mkdir_p): /home/mengwong/tmp/blah/some doesn't exist, creating.
761(mkdir_p): /home/mengwong/tmp/blah/some/really/deep/directory/new doesn't exist, creating.
761(mkdir_p): /home/mengwong/tmp/blah/some/really/deep/directory/cur doesn't exist, creating.
492(accept_to_maildir): maildir: hardlinking to /home/mengwong/tmp/blah/some/really/deep/directory/new/1011077537.12691_3.dumbo
304(accept): delivered successfully to 1 destinations.
(8) support for MIME, with direct inheritance from
Mail::Internet and MIME::Entity (as appropriate) instead
of containment in ->{obj}. added ->is_mime method.
(9) added "reply" method. uses Mail::Mailer::sendmail.
(10) STDERR is directed to the logfile.
(11) added test infrastructure.
`Mail::Audit' was inspired by Tom Christiansen's audit_mail and
deliverlib programs. It allows a piece of email to be logged, examined,
accepted into a mailbox, filtered, resent elsewhere, rejected, and so
on. It's designed to allow you to easily create filter programs to stick
in a .forward file or similar.
Provided in pkg/13848 by Sen Nagata <sen@eccosys.com>.