[Email-SIG] fixing the current email module

Barry Warsaw barry at python.org
Thu Oct 8 03:25:16 CEST 2009


On Oct 6, 2009, at 5:28 AM, Glenn Linderman wrote:

> I observe that binary transport is more efficient than 7bit or 8bit.

A few principles that I think we should adopt as far as efficiency and  
performance go.

I am not concerned about performance.  Yes, we want to make things as  
fast as possible, but it's more important to be as right as possible.   
Look at some of the tricks that the parser has to jump through to  
properly handle MIME nesting.  Yuck, and not fast, but mostly right  
(it could be improved but I think we're darn close).

Memory footprint efficiency is very important, in some cases.  I don't  
particularly care about headers or some of the more compact MIME body  
formats (perhaps like text/*), but some are very problematic.  For  
example, the Twisted guys have told me that can't use the email  
package because let's say you read a 10MB image/jpg MIME part.  You  
really can't store thousands of these in memory at a time!  So again  
that dictates that our APIs have to support external storage hook  
points, for parsing, generating, accessing MIME parts on disk or in a  
database, etc.  It's fine if by default we store everything in memory,  
but we have to at least give applications the ability to parse  
straight from the wire, store some parts on disk, and still return  
Message objects that are completely consistent.

-Barry

-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 832 bytes
Desc: This is a digitally signed message part
URL: <http://mail.python.org/pipermail/email-sig/attachments/20091007/2edc30fb/attachment.pgp>


More information about the Email-SIG mailing list