[Mailman-Developers] Python 3

Barry Warsaw barry at list.org
Sat Dec 27 00:05:20 CET 2014

On Dec 26, 2014, at 11:02 PM, Aurelien Bompard wrote:

>> But there could be!  I took a very quick look at HK (but not KittyStore)
>> and it doesn't look like you need much.  What if I added a REST API to
>> access the core's system configuration settings?
>That would work.

Cool, let me see what I can whip up.

>> Yep, I missed that.  Is it possible to feed HK messages out-of-process?
>> E.g. via the command line?
>Not now. Would an LMTP server be appropriate? If so, could Mailman's internal
>LMTP server be split off into a Py2-compatible library?  What protocol would
>be best suited in your opinion?

LMTP might be a very interesting way to do it.  The core's LMTP server is
actually a relatively thin layer over the stdlib's smtpd library, and not much
really had to be changed in the Py3 port (IIRC, the error status messages
changed from bytes to strs, but that should be relatively easy to straddle via
the six package).

The relevant API is IArchiver.archive_message() which takes an mlist and a
msg, since that's the API that sends the message to the archiver.
.permalink() would be implemented in the core.  It looks like HK/KS just needs
the fqdn listname of the destination list, plus the message.  The latter would
be available over LMTP of course, and while the list name could usually be dug
out of the message headers, it would probably be best to provide it in a
special Mailman header.

The alternative of course is adding a REST API to HK, but that seems a little
heavier weight for what would probably be just one API (for now anyway).  What
do you think?


More information about the Mailman-Developers mailing list