I was curious if the Python email package that TMDA makes extensive use 
of was still being developed, and it appears that it is.

http://www.python.org/community/sigs/current/email-sig/

Though Python now ships with the email module, TMDA bundles it's own 
copy so we can keep behavior consistent amongst TMDA users of different 
Python versions.  TMDA currently uses v2.5.5.  I caught up on the 
email-sig list traffic since I stopped reading in late 2003, and a few 
things caught my attention --

Mainly the "FeedParser" which was added to email 3.0.  See 
http://mail.python.org/pipermail/email-sig/2004-November/000191.html

"New FeedParser provides an incremental parsing API for applications 
that may need to read email messages from blocking sources (e.g. 
sockets).  FeedParser is also more standards compliant than the old 
parser and is "non-strict", so that it should never raise parse errors 
when parsing broken messages."

and from 
http://www.python.org/community/sigs/current/email-sig/docs/node6.html

"The FeedParser is extremely accurate when parsing standards-compliant 
messages, and it does a very good job of parsing non-compliant messages"

This is good news for TMDA, since TMDA needs to be able to handle 
messages of all kinds, and since it processes spam which is often 
non-compliant and broken, it needs to be ultra flexible.  The old parser 
was not so forgiving which led to exceptions raised in LOGFILE_DEBUG 
when TMDA choked on a broken message.  Users would interpret that as a 
bug and report it as such.  Tim Legant and I hacked around that fairly 
well, but not completely.  Switching to FeedParser might be very good 
for us.

Then there is v4.0 of the email package which was released earlier this 
year --

http://mail.python.org/pipermail/email-sig/2006-March/000266.html

I'm not clear it would buy us a whole lot over 3.0, but perhaps it has 
some additional bug fixes.  I think Mailman 2.2 is using email 4.0.

I think I will take a hard look at both next week and integrate one of 
them into TMDA and see how it works.  Since TMDA 1.1.x requires Python 
2.3 or greater we have the flexibility to use either email 3.0 or 4.0.

_________________________________________________
tmda-workers mailing list ([email protected])
http://tmda.net/lists/listinfo/tmda-workers

Reply via email to