Revision history for Sisimai/formerly known as bounceHammer version 4
4.14.1 Sat, 26 Dec 2015 20:00:00 +0900 (JST)
- eg/ directory has been renamed and sample email files have been moved to
github.com/set-of-emails repository as master data, issue #153.
4.14.0 Fri, 25 Dec 2015 11:04:14 +0900 (JST)
- Repository URL has been changed to https://github.com/sisimai/p5-Sisimai
- Sisimai::MTA->SMTPCOMMAND has been obsoleted. Use Sisimai::SMTP->command
instead, issue #136.
- Sisimai::MTA->LONGFIELDS and Sisimai::MTA->RFC822HEADERS are obsoleted.
Use Sisimai::RFC5322->LONGFIELDS() and Sisimai::RFC5322->HEADERFIELDS()
instead.
- Change internal method names of Sisimai::Message/rewrite() begins parse(),
resolve() begins make().
- Issue #110, #122 Code for reading email files in a directory is improved
and got faster than before: merged Pull-Request #123.
- Fixed bug reported at issue #124: warning message: `use of uninitialized
value in substr at` is displayed when Sisimai::Message->resolve() method
parses an UNIX mbox which begins from blank line.
- Merged Pull-Request #125, filehandle will not be closed until EOF of each
UNIX mbox in Sisimai::Mail::Mbox->read() method.
- Merged Pull-Request #126, replace while(<$f>) with do {block for reading
each email file in the directory at Sisimai::Mail::Maildir->read method.
- Merged Pull-Request #132, Resolve issue #127: Sisimai cannot parse a mail
which message body is MIME encoded. Thanks to @mrwushu.
- Issue #134, Sisimai::RFC3463 and Sisimai::RFC5321 have been obsoleted but
are not removed. Use Sisimai::SMTP::Status, Sisimai::SMTP::Reply instead.
- Merged Pull-Request #138, some code blocks in Sisimai::Message->resolve()
have been divided into some methods.
- Fixed bug at issue #142, Sisimai can not parse an email that TAB or Space
character exists at the end of each line. Thanks to M Miyamoto.
- Fixed bug at issue #144, support date format like "Thursday, Apr 29, ..".
- Improved code of Sisimai::MTA::IMailServer for support more error message
patterns: issue #143.
- Issue #145 Code improvements: back port from Ruby version of Sisimai.
- Fix bug in regular expression to detect SMTP command in Sisimai::MTA::X4
and Sisimai::MTA::qmail.
4.13.1 Tue, 17 Nov 2015 14:13:10 +0900 (JST)
- Issue #95, Add some sample emails for Sisimai::MTA::Exim.
- Improved code Sisimai::MTA::Exim to get the reason and the SMTP command
from LMTP error message.
- Improved error message patterns at the following modules: UserUnknown,
Rejected, and Blocked.
- Issue #96, Improved Sisimai::MTA::Exim for parsing "Frozen message".
- Issue #101, Improved code for getting DSN value in Sisimai::MTA::Exim.
- Issue #107, Improved slow regular expression in Sisimai::MSP::JP::EZweb.
- Issue #114 (MTA Order Optimization) issue #116 (Performance tunings), and
issue #118 (Regular expression across the MTA modules) are merged. These
improvements that were taught from two white cats in my dream on Nov. 7,
and have made Sisimai 1.15 times faster. Thanks to sensible white cats.
4.13.0 Thu, 5 Nov 2015 16:11:12 +0900 (JST)
- Issue #85, Use Semantic Versioning from this release. New version number
is v4.13.0 <= v4.1.30.
- Issue #84, Experimental implementation: New module Sisimai::MTA::X5 and
added a sample email(x5-01.eml) for the module. Thanks to Masayoshi.M .
- Issue #86, Removed unused version() method from the following modules:
Sisimai::RFC3464, Sisimai::RFC3834, Sisimai::ARF, Sisimai::MTA::*, and
Sisimai::MSP::*::*.
- Issue #88, #89: fixed Sisimai::MTA::Notes and added notes-04.eml.
- Issue #90, #91: fixed code around Sisimai::Data->alias().
- Improved codes of Sisimai::MTA::*, Sisimai::MSP::*, Sisimai::RFC3464 and
Sisimai::ARF as a precaution against serious bug reported on issue #89.
- Improved codes and serious bug fix for issue #89 have made Sisimai 1.10
times faster than before.
- Issue #92, All the methods have YARD format comment.
- Issue #93, #94: Fixed bug and improved code for getting alias address and
setting the error reason in Sisimai::MTA::Exim.
4.1.29 Tue, 6 Oct 2015 10:55:00 +0900 (JST)
- Issue #83, New MTA module implemented as "Sisimai::MSP::US::ReceivingSES".
This module parse bounce mails from Amazon SES(Receiving).
- Improved code for getting and setting the value of Status: field.
- Improved document in Sisimai::Data and Sisimai::Reason, imported from web
site: http://libsisimai.org/ .
- Added new sample email rfc3834-03.eml to test code for Sisimai::RFC3834.
- Added new sample emails: sendmail-26,27,28,29,30,31,32.eml.
4.1.28 Sun, 16 Aug 2015 14:50:20 +0900 (JST)
- Happy 1st Birthday To Sisimai !!
- Experimental implementation about issue #76: New module Sisimai::RF3834
is for detecting auto replied message and decides a reason as "vacation".
- Fixed bug in Sisimai::Message for setting the order of MTA, MSP modules.
- Issue #70, Implemented code for using user defined MTA module and added
Sisimai::MTA::UserDefined as a sample.
- Issue #78, Implement new accessor "softbounce" in Sisimai::Data object.
4.1.27 Fri, 17 Jul 2015 11:45:05 +0900 (JST)
- New method implemented: Sisimai->dump('/path/to/mbox') return parsed data
as JSON string.
- Updated error message patterns: Sisimai::Reason::NoRelaying, TooManyConn,
and Blocked.
- Fixed code in Sisimai::Reason::MesgTooBig. Error reason of bounce message
that the value of "Status" field is 5.2.3 will be set as "exceedlimit".
- Fixed code for getting the value of Message-Id header in the original
message at Sisimai::Data.
- Sisimai reports the bounce reason as "onhold" when Sisimail::Reason->get
method did not decide the reason and the value of "diagnosticcode" is not
empty.
- Issue #74 is that reported at CPAN Testers Report might be fixed.
- Issue #75, Improved code for parsing 2-digit year value in a Date: header
at Sisimai::DateTime.
- Test codes for Sisimai::MTA, Sisimai::MSP, Sisimai::ARF, Sisimai::RFC3464
have been integrated and improved.
4.1.26 Sat, 4 Jul 2015 11:34:44 +0900 (JST)
- Module name changed from Sisimai::Reason::RelayingDenied to "NoRelaying".
- Registered new error reason "TooManyConn". This reason is bounced due to
that too many connections or exceeded connection rate limit.
- Included many error messages listed in SendGrid "Deliverability Center":
"https://sendgrid.com/deliverabilitycenter/" as a regular expression at
Sisimai::Reason::*. Thanks to Bogdan B. and SendGrid.
- Experimental implementation: Sisimai::Reason->match() is for detecting a
bounce reason from given text as an error message.
- Experimental impelmentation about issue #61: New MTA module implemented
as "Sisimai::MTA::ApacheJames". The module is for parsing bounce emails
which are generated by Apache James/Java Apache Mail Enterprise Server.
Thanks to John Aldrich Quan.
- Issue #72, Support SMTP reply code in Sisimai::Data object.
- Fixed code: Add 'SystemFull' reason into Sisimai::Reason->anotherone().
- Improved regular expression in Sisimai::MSP::US::Google.
4.1.25 Mon, 22 Jun 2015 11:45:29 +0900 (JST)
- Reason name has been changed from "NoSpam" to "SpamDetected".
- Package name has been changed from Sisimai::Time to Sisimai::DateTime.
- Implemnet Sisimai::Time again as a child class of Time::Piece.
- The class of "timestamp" is now Sisimai::Time in Sisimai::Data object.
- Implement Sisimai::Reason::HasMoved.
- 2 emails bounced due to "expired" reason have been added as a sample for
issue #50.
- Fix bug in Sisimai::MTA::MailMarshalSMTP for a bounce mail which have no
boundary strings.
- Fix bug in Sisimai::MTA::Exim for setting an error reason decided by SMTP
MAIL command.
- Improved regular expression in Sisimai::RFC3464.
- Update Sisimai::MDA, add an error message pattern defined in dovecot 1.2,
dovecot/src/plugins/quota/quota.c.
- Update message patterns at SpamDetected, SystemError, Blocked, Filtered,
RelayingDenied, NetworkError, MesgTooBig, MailboxFull, SecurityError,
UserUnknown and Suspend.
- Fix code for detecting MIME encoded string in Sisimai::MIME.
- Implement TO_JSON method in Sisimai::Address for JSON module.
- Add test code for sample emails in CRLF.
- Add sample emails which is an IDN email.
- Add sample emails which could not be parsed yet into eg/cannot-parse-yet/
directory and implement test code.
- Add sample emails which reason is "undefined" into eg/reason-is-undefined
directory and implement test code.
4.1.24 Mon, 11 Jun 2015 22:20:59 +0900 (JST)
- Improved fallback code in Sisimai::RFC3464.
- Add message patterns at NoSpam and HostUnknown in Sisimai/Reason.
4.1.23 Thu, 11 Jun 2015 13:20:59 +0900 (JST)
- Sisimai works on Perl 5.22.0.
- New MTA module Sisimai::MTA::X4 for qmail clone MTAs.
- Performance tuning, Sisimai is now 1.39 times faster than before.
- Improved code in Sisimai/Message.pm: 1.62 times faster than before.
- Bug fix in Sisimai::MSP::JP::EZweb and Sisimai::MSP::JP::KDDI.
- Support "2015-04-29 01:23:45" date format in Sisimai::Time.
- Support the value of Diagnostic-Code without the value of diagnostic-type
field in Sisimai::RFC3464.
- Emails in https://github.com/sendgrid/go-gmime/tree/master/gmime/fixtures
and some emails have been added as a sample in eg/ directory.
- Add message patterns at NoSpam, MailboxFull, RelayingDenied, UserUnknown,
Blocked, Filtered, SecurityError, Expired, HostUnknown, and NetworkError
in Sisimai/Reason.
- Fix bug in Sisimai::Data for calling Sisimai::Time->parse() method.
- Sisimai::MTA::IMailServer and Sisimai::MTA::InterScanMSS updated.
- Implement fallback code in Sisimai::RFC3464: parse entire message body to
get a recipient address and error messages. The value of the "smtpagent"
parsed by this code is "RFC3464::Fallback".
4.1.22 Thu, 28 May 2015 14:20:59 +0900 (JST)
- Merged pull request #59 (Support for Microsoft custom ARF format) at
https://github.com/azumakuniyuki/p5-Sisimai/pull/59 . Thanks to jleroy.
- Add Time::Piece and Module::Load to ./cpanfile. Thanks to kkdYodoKazahaya
at issue #60.
- Update Sisimai::ARF for parsing Amazon SES Complaints bounces.
4.1.21 Tue, 21 Apr 2015 14:20:59 +0900 (JST)
- Update regular expressions of error message pattern at Sisimai::Reason::
NoSpam, Suspend, Blocked, UserUnknown, Expired, NetworkError, MailboxFull
and MesgTooBig.
- Fix bug for setting the value of SMTP command at Sisimai::Data.
- Update regular expression of "expired" in Sisimai::MTA::Exim.
- Add three sample emails for "make test" in eg/ directory.
4.1.20 Thu, 9 Apr 2015 14:20:59 +0900 (JST)
- Update regular expressions of error message pattern at SystemError.pm,
MesgTooBig.pm and NoSpam.pm in Sisimai/Reason.
- Add two sample emails for "make test" in eg/ directory.
4.1.19 Mon, 6 Apr 2015 14:20:59 +0900 (JST)
- Update regular expressions of error message pattern at Rejected.pm,
Mailboxfull.pm, MesgTooBig.pm, and UserUnknown.pm in Sisimai/Reason.
- New error reason "nospam" implemented.
- Some message patterns have moved from Sisimai::Reason::SecurityError to
Sisimai::Reason::NoSpam module.
4.1.18 Fri, 27 Mar 2015 12:59:07 +0900 (JST)
- Repository name on github has been changed to p5-Sisimai.
- Fixed code around regular expressions of "mailboxfull", "expired" in MTA
modules: Sisimai::MTA::qmail and Sisimai::MTA::Exim.
Thanks to m-walk at issue #57.
- Update regular expressions of error message pattern at SecurityError.pm
and Blocked.pm in Sisimai/Reason.
4.1.17 Mon, 2 Mar 2015 16:01:20 +0900 (JST)
- Improved regular expressions of networkerror, expired and related code in
Sisimai::MTA::qmail. Thanks to m-walk at issue #56.
4.1.16 Wed, 18 Feb 2015 16:01:20 +0900 (JST)
- Add bounce emails as a sample from Postfix 3.0.0.
- Improved code for reading mail data from STDIN at Sisimai::Mail.
- Try to load YAML::Syck module instead of YAML module when string "yaml"
is specified in the argument of Sisimai::Data->dump() method.
4.1.15 Wed, 11 Feb 2015 13:59:59 +0900 (JST)
- Improved code for detecting abuse message "opt-out" in Sisimai::ARF.
- Minor improvements in Sisimai::MTA::Postfix.
4.1.14 Fri, 6 Feb 2015 13:29:59 +0900 (JST)
- Update Sisimai::MSP::US::Outlook for delayed message.
- Changed accessor name "data" to "path" in Sisimai::Mail module.
- Implement new module: Sisimai::Mail::STDIN for reading email data from
standard-in.
- Changed accessor names in Sisimai::Mail::Mbox and Sisimai::Mail::Maildir.
"name" to "file", "files" to "inodes".
- Accessor "path" always return the path to a mailbox or path to each mail
file in Maildir/ at Sisimai::Mail::Mbox and Sisimai::Mail::Maildir.
- Implement new accessor "dir", it returns the path to directory of given
argument in Sisimai::Mail::Mbox and Sisimai::Mail::Maildir.
4.1.13 Tue, 27 Jan 2015 15:00:55 +0900 (JST)
- Fixed bug in test code for Sisimai::DATA::YAML. Thanks to CPAN Testers
Reports.
- Implement new method Sisimai::Reason->index(), returns the list of bounce
reasons.
4.1.12 Sat, 24 Jan 2015 15:00:59 +0900 (JST)
- Update sample code in POD at Sisimai::RFC5322 and test codes (RT#101436,
Issue #41, See https://rt.cpan.org/Ticket/Display.html?id=101436). Thanks
to Mark Stosberg.
- Changed accessor name: "data" => "path" in Sisimai::Mail.
- Space character will be inserted after ":" in Sisimai::Data::JSON.
- Improved regular expression for getting the value of email header at each
MTA module.
- Message patterns related to DNS or network error have been moved to new
module: Sisimai::Reason::NetworkError.
- New error reason "networkerror": the value of reason for bounce messages
returned due to network related errors will be set as the reason.
- Sisimai does not rely on Try::Tiny module from this version.
4.1.11 Thu, 15 Jan 2015 15:01:59 +0900 (JST)
- Improved code in Sisimai/Mail/Mbox.pm: using substr() function instead of
a regular expression is 1.46 times faster than before.
- Code improvement in Sisimai/Reason.pm: using grep {} block instead of a
regular expression is 133% faster than before.
- Revert commit 0c7782cecafdc923d3c82b81a201a787611654ea for Sisimai::Time.
- Improvement of pattern match in Sisimai/Message.pm is 2.27 times faster.
- Improvement of regular expressions in each MTA module is 115% faster than
before.
4.1.10 Mon, 12 Jan 2015 17:59:35 +0900 (JST)
- Implement Sisimai::MSP::UK::MessageLabs for email bounces from Symantec.
cloud: formerly MessageLabs.
- Added 2 sample emails: arf05.eml, arf-06.eml and improved Sisimai::ARF
from pull request #37, Thanks to @jcbf.
- Merged pull request #38, Updated Sisimai::US::Facebook and DMARC forensic
related codes, and error message patterns in Sisimai::Reason::* modules.
Thanks to @jcbf.
- Implement Sisimai::MSP::US::Bigfoot for email bounces from bigfoot.com.
- Merged pull request #39, Updated Sisimai::RFC3464 and message patterns in
Sisimai::Reason::SecurityError and Suspended. Thanks to @jcbf.
- Regular expression improvements in each MTA module(Issue #40) is between
122% and 800% faster than Sisimai 4.1.9.
4.1.9 Wed, 31 Dec 2014 18:59:22 +0900 (JST)
- Implement Sisimai::MTA::X3 for email bounces from Unknown MTA(3).
- Improved code for getting error message in a bounce mail from MXLogic.
- Added 4 sample emails from pull request #32, Thanks to @jcbf.
- Implement Sisimai::MSP::DE::EinsUndEins for email bounces from 1&1.
- Added 4 sample emails and updated error message patterns in some files in
Sisimai/Reason directory from pull request #34, Thanks to @jcbf.
- Implement Sisimai::MTA::MailMarshalSMTP for email bounces from Trustwave
Secure Email Gateway: formerly MailMarshal SMTP.
- Improved code for getting FBL related values in Sisimai::ARF.
4.1.8 Fri, 19 Dec 2014 17:22:59 +0900 (JST)
- Support new data format: YAML(optional, "YAML" module required).
4.1.7 Thu, 18 Dec 2014 23:59:59 +0900 (JST)
- Tiny code improvement of Sismai::MSP::RU::Yandex.
- Implement Sisimai::MSP::US::Zoho for email bounces from Zoho Mail.
- Improved code for detecting email bounce from MXLogic.
- Implement Sisimai::MTA::X2 for email bounces from Unknown MTA(2).
- Add some message patterns into Sisimai::Reason::Expired.
- Improved code for getting error message in a bounce mail from Zoho Mail.
4.1.6 Sun, 7 Dec 2014 22:44:36 +0900 (JST)
- Improved code for parsing email bounce from @nokiamail.com.
- Implement Sisimai::MSP::RU::Yandex for email bounces from Yandex.Mail.
4.1.5 Fri, 5 Dec 2014 18:20:22 +0900 (JST)
- Fix newline of some sample emalis in eg/ directory.
4.1.4 Thu, 4 Dec 2014 20:40:22 +0900 (JST)
- Implement Sisimai::MSP::RU::MailRu for email bounces from @mail.ru.
- Implement Sisimai::MSP::DE::GMX for email bounces from GMX.
- Improved code for checking bounce mail in Sisimai::MTA::OpenSMTPD.
4.1.3 Sun, 23 Nov 2014 21:22:55 +0900 (JST)
- Improved code for detecting error reason in Sisimai::Reason.
- Implement Sisimai::MTA::MessagingServer for email bounces from Oracle
Communications Messaging Server and Sun Java System Messaging Server.
- Implement Sisimai::MTA::X1 for email bounces from Unknown MTA(1).
- Implement Sisimai::MSP::US::Yahoo for email bounces from Yahoo! MAIL.
- Implement Sisimai::MSP::US::Aol for email bounces from Aol Mail.
- Implement Sisimai::MSP::US::Outlook for email bounces from Outlook.com.
4.1.2 Sat, 22 Nov 2014 22:22:22 +0900 (JST)
- Require Time::Local 1.19 or later for fixing issue #21, #23, and #24.
- Key name of time stamp has been changed from "date" to "timestamp".
- Data sources and hash algorithm of token string in parsed data have been
changed.
- Implement Sisimai::MTA::InterScanMSS for email bounces from Trend Micro
InterScan Messaging Security Suite.
- Implement Sisimai::MTA::SurfControl for email bounces from WebSense Surf-
Control.
- Implement Sisimai::MTA::V5sendmail for email bounces from old version of
Sendmail(v5) and other MTAs based on V5 Sendmail.
- Fixed bounce reason names in Sisimai::RFC3463.
4.1.1 Mon, 10 Nov 2014 15:59:03 +0900 (JST)
- Fix tiny bug in Sisimai::MTA::Exim.
- Add many sample emails into eg/ directory.
- Improved code for detecting connection errors at Sendmail and Courier.
- Sisimai::RFC3464 and Sisimai::MTA::Exchange imporved.
- Implement Sisimai::MTA::Notes for email bounces from Lotus Notes.
- Implement Sisimai::MTA::McAfee and Sisimai::MTA::MXLogic for email bounce
from McAfee Products.
- Implement Sisimai::MTA::MailFoundry for email bounces from MailFoundry.
- Implement Sisimai::MTA::IMailServer for email bounces from IPSWITCHI
IMail Server.
- Improved code for deciding error reason at Sendmail and qmail.
- Implement Sisimai::MTA::mFILTER for email bounces from DigitalArts
m-FILTER.
- Implement Sisimai::MTA::Activehunter for email bounces from TransWARE
Active!hunter.
4.1.0 Sat, 4 Oct 2014 15:09:09 +0900 (JST)
- Sisimai::Group: child classes, "provider", and "category" in the parsed
data have been removed permanently.
- Fix the newline in sample email files for `make test`.
4.0.2 Wed, 10 Sep 2014 22:45:43 +0900 (JST)
- Implement Sisimai::MSP::US::AmazonSES, Sisimai::MSP::US::SendGrid modules
for parsing bounce mail from email cloud services.
- Implement Sisimai::MTA::Domino module for email bounces from IBM Domino.
- Large scale code refactoring at Sisimai::RFC3464.
4.0.1 Sun, 17 Aug 2014 23:00:00 +0900 (JST)
- Fixed bug for reading each email file in the Maildir given as an argument
of Sisimai::Mail::Maildir->read method.
- Refactoring around codes to return the parsed data.
- Implement "make" method to get bounce data at Sisimai.pm.
4.0.0 Sat, 16 Aug 2014 20:00:00 +0900 (JST)
- The first release of Sisimai.