[Python-3000] email libraries: use byte or unicode strings?
Barry Warsaw
barry at python.org
Thu Nov 6 18:23:03 CET 2008
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Nov 6, 2008, at 1:04 AM, Glenn Linderman wrote:
> So I would hope that the users of such Betas would quickly discover
> that they were producing garbage, report it to M$, and go back to
> using a release version with only the usual expectation of bugs,
> inconsistencies, standards violations, and security exploits, but
> not expect that Beta software is, or should be, fully compatible
> with other applications that handle proper email.
It's a nice thought, but it's completely impossible for real-world
applications to ignore broken messages. "Be lenient in what you
accept and strict in what you produce" is the only way you can
operate, and the email package has a very strong design goal toward
that tenant.
> Did Python's 2.x mail library handle the data that you describe?
> Did anyone seriously expect it to? Did Mozilla clients handle it?
> Can you provide a list of email clients that handled it gracefully,
> other than the same Outhouse Excess client that produced it? And if
> not, why would you expect Python's 3.0 mail library to handle it?
Yes, Python 2.x's email package handles broken messages, and email-ng
must too. "Handling it" means:
1) never throw an exception
2) record defects in a usable way for upstream consumers of the
message to handle
it currently also means
3) ignore idempotency for defective messages.
- -Barry
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Darwin)
iQCVAwUBSRMn93EjvBPtnXfVAQINZQP/QeaDuDI9gRK7VQwpgkSCQ/i07v8Be6EP
q8Xijd5NHt34wCxZVCWp+ttAH6FrrbKSUktLvI9CBVUzYPE+T5GhPC7vvVlnp3rF
JsO5tJv8qFHjJi1jlwvgxQo1KXJB/kSxNyZiKXGZ9i16RGEoqXTbj+1XVgu8MONI
0EkEpD9bIq8=
=a1sq
-----END PGP SIGNATURE-----
More information about the Python-3000
mailing list