[Mailman-Users] Support for Internationalized Domain Names and Email Addresses

Mark Sapiro mark at msapiro.net
Wed Jul 20 14:32:35 EDT 2016

On 07/20/2016 10:51 AM, Russ Housley wrote:
> My add addresses that include IDN or EAI have not worked.  Subscriptions are rejected.

This is going to be tricky. Several things need to be considered.

First, Modifications to the ValidateEmail() function in Mailman/Utils.py
may be required. This will depend on how the address is to be
represented in Mailman. If Mailman's internal representation is to be
the "on the wire" encoded address, this may not be required.

There will also probably need to be changes to the MemberAdaptor
(default Mailman/OldStyleMemberships.py) in the various methods that
test membership add membership and set/retrieve various attributes,
depending on exactly how these addresses are to be represented
internally in Mailman. I haven't researched exactly what's involved in
IDN and EAI encodings, so if Mailman's internal representation is going
to be what the address looks like "on the wire", there MAY not need to
be changes in this area.

There also need to be changes in the web UI to allow mass subscribing
such addresses and properly displaying them. This raises the issue of
what to do if an address contains a character not representable in
Mailman's character set for the list's language. (This is simpler in MM
3 because everything is Unicode and UTF-8.)

In short, it is possible (I don't know for sure) that we could store
addresses internally in their "on the wire" encoded form, and changes to
ValidateEmail() and the MemberAdaptor may not be required or may be very
simple. The hard part will be translating between the "on the wire" form
and the display form in the web UI.

This definitely needs to be addressed in Mailman 3. As far as Mailman
2.1 is concerned, I probably won't try to do it, but if someone wants to
try to implement this in a fork of the bzr branch at
<https://code.launchpad.net/~mailman-coders/mailman/2.1>, I will
definitely consider a merge request.

For Mailman 3, it would be good to file an issue at
<https://gitlab.com/mailman/mailman/issues> so we have something to pin
it to.

Mark Sapiro <mark at msapiro.net>        The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan

More information about the Mailman-Users mailing list