[Mailman-Developers] Twisted NNTP

Barry Warsaw barry at list.org
Tue Jul 3 22:30:55 CEST 2012


On Jul 03, 2012, at 02:55 PM, Alexander Sulfrian wrote:

>I working for gsoc creating NNTP access to the mailing list archives
>for Mailman 3. Therefor I tried Twisted NNTP, during the last days. I
>noticed, that it is not standard conform in any way. For example: it
>missing required commands and returns wrong error codes on unknown sub
>commands.
>
>I will try to fix it. But while I modify it, I could port it to
>asyncore/async_chat. Would it be preferred? anyncore is bundled with
>core python and so the new implementation would be runnable without
>depending on Twisted. But if patching the Twisted implementation,
>other projects using it could gain profit, too.

I guess one question is whether it's more work to fix Twisted's NNTP protocol
support or bootstrap the whole thing from scratch async.  I don't know how
involved NNTP is, so a careful reading of RFC 6048 would be in order first.
Last time I tried it (admittedly many years ago), Twisted was good enough for
a couple of NNTP clients I tried.

Does the NNTP server part of it have to be fully conformant for you to show
progress on the Mailman integration work?  IOW, maybe it's good enough that
you don't need to be side-tracked right now on fixing Twisted's support.
Maybe if nntplib, Thunderbird (and selfishly, Claws) can read the archives via
NNTP, that would be enough for now.  If you go that route, definitely file
bugs with Twisted for any protocol defects you find.

In a similar way, if you think implementing RFC 6048 on top of async will not
distract you too much, then don't worry about getting that perfect.  Get it
good enough for a few clients to do the common things, and then work on the
Mailman integration parts.  If you're still interested, you can come back to
the NNTP bits and refine them.  (An nntpd.py would be an interesting
subproject, and probably mostly standalone from Mailman.)

How much can you get done without committing to either Twisted or a new
async-based NNTP server?  Maybe there would be a lot of commonality between
the two backends, so that you could work on the code in such a way that it
wouldn't be difficult to switch between them.

Hope that helps,
-Barry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: not available
URL: <http://mail.python.org/pipermail/mailman-developers/attachments/20120703/e9a923e1/attachment.pgp>


More information about the Mailman-Developers mailing list