[UA-EAI] Seeking input UA-readiness of Open Source Code

John Levine john.levine at standcore.com
Mon Sep 2 13:19:03 UTC 2019


>>> No. EAI is designed such that APIs tend to need no changes.
>> That's a rather debatable assertion.

> What does that mean for APIs?

Look at the python smtp client module.  It does EAI and has a new 
SMTPNotSupportedError which is thrown if you send an EAI message and the 
server at the other end doesn't advertise SMTPUTF8.

The smtpd module, an SMTP server, does EAI, and has a new enable_SMTPUTF8 
option.  It's deprecated in favor of the thready aiosmtpd which also has a 
similar option.

The the email module which does header and MIME parsing and deparsing has 
an email.policy submodule with a utf8 option that says whether to put 
unencoded UTF-8 into headers or to MIME encode it.

There's doubtless more but that's what I found in a few minutes by 
searching the docs for SMTPUTF8.

> This was solved using two separate pieces of software: One that accepts email 
> via SMTP, and another that interprets messages as they arrive and reacts to 
> calendar-related attachments.
>
> Finding and classifying the first is simple. How does this survey mean to 
> find and classify the second? (Ignoring it is a valid answer, of course.)

I'd guess it'd be like the smtp module, you'd want an option to tell it to 
accept EAI mail.  How you check for that other than by a lot of code 
examination and test messages is a good question.

Regards,
John Levine, john.levine at standcore.com
Standcore LLC



More information about the UA-EAI mailing list