[Python-Dev] Patch making the current email package (mostly) support bytes

lutz at rmi.net lutz at rmi.net
Thu Oct 7 18:03:18 CEST 2010

Stephen J. Turnbull wrote (giving me an opening to jump in here):
> R. David Murray writes:
> > In other words, my proposed patch only makes email5 1/8 to 1/4
> > broken, instead of half broken as it is now.  But not un-broken
> > enough for Mailman, it sounds like.
> IMO, not in the long run.  But realistically, in the applications I
> know of, most desired traffic is conformant, and since there aren't
> any Python 3 email apps yet, this isn't even a regression. :-/

Well, yes there are, and yes it is.  As I pointed out in a thread 
on this list back in June, there are multiple large Python 3 email 
"apps" in the new Programming Python, a book which is about to be 
released, and which will be read by at least tens of thousands of 
people, many of whom will be evaluating the stability of Python 3.

These apps include both a simple webmail site, as well as a more
sophisticated 5k-line tkinter email client -- one which I've been 
using for all my personal and business email over the last 6 months,
and which works well with the email package as it is in 3.1 (albeit
with a bit of workaround code).  This includes support for Unicode,
MIME, headers, attachments, and the lot.

I'm forwarding a link to the code of these clients to David by 
private email in case they might be useful as a test case (O'Reilly
has already posted them ahead of the book, but they may be a bit too
heavy for use in formal testing).

The email package is obviously less than ideal today, and there are
many other clients for it besides my own, of course.  But making it 
backward incompatible at this point is likely to be seen as a big 
negative to newcomers evaluating 3.X viability.  And as I tried to 
make clear in June, this list should carefully weigh the PR cost of 
pulling the rug out from under those brave souls who have already 
taken the time to accommodate the 3.X world you've mandated.

To put that more strongly, the Python user base is much larger than 
this list's readership.  If I'm using 3.1 email, so are many others.
People will accept the 3.X world you make up to a point, but it's 
impossible to code to a moving target, much less base a product on 
it.  At some point, they'll simply stop trying to keep up; in fact, 
some already have.

Fixes are a Good Thing, of course, and this particular change's scope
remains to be seen; but to channel most of the users I meet out there
in the real world today: Enough with the 3.X changes already, eh?

--Mark Lutz  (http://learning-python.com, http://rmi.net/~lutz)

More information about the Python-Dev mailing list