[Mailman-Developers] GSoC 2012 - NNTP archive access

Alexander Sulfrian alexander at sulfrian.net
Sun Apr 1 16:08:00 CEST 2012


On Tue Mar 27 22:52:04 CEST 2012, Barry Warsaw wrote:
> On Mar 27, 2012, at 09:09 PM, Alexander Sulfrian wrote:
> > What are the next steps you would propose. I unfortunately not up
> > to date with the development of mailman 3. But I am a little bit
> > familiar with the mailman 2 source code.
> MM3 will be a better platform to build something like the NNTP
> access on.  The question in my mind is whether this should be done
> as part of the various independent (but related) archiver projects,
> or whether it should be done as a separate "archiver".

there is a second question connected with that: Should the messages
be kept in an additional storage for NNTP access or should the default
archiver be responsible for storage and should be extended with methods
for accessing specific messages?

> In mm3, there's an API for feeding posted messages to an IArchiver,
> but this is quite flexible.  I could imagine that something on the
> other end of this vended messages via NNTP instead of HTTP. 

This would be the scenario if implementing the NNTP access in a new
archiver, separated from the other.

> The one key difference is that you'd like to be able to post to the
> mailing list through NNTP, with probably some additional posting
> rules (e.g. if you're not a member, but we "know" you, or you've
> been approved for posting a few times, your message wouldn't get
> held for moderator approval).

If it should be possible to post messages over the NNTP transport,
that does not match the classic design of an archiver. I do not know,
whether there is an API to post messages, but eventually it would be
better to implement the NNTP archive as external module, that could
maybe even run on a separate server. 

> If I was doing this, I'd probably looks seriously at Twisted as the
> basis for implementing the NNTP side of things.  I haven't looked in
> quite a while, but at the time, it had great support for NNTP
> server-side.

Yes, twisted should be the right choice. There is a twisted module for
implementing a NNTPServer[1], but it is not very well documented. But
even if it is not working, it should not be hard to implement it. The
NNTP commands described in RFC3977[2] do not look very complicated.

Additional to that, there is also the question, whether it should be
possible to sync a few mailman server over the NNTP protocol. That
would be a possibility to do clustering for load balancing or
something like that.

> Cheers,
> -Barry


[1] http://twistedmatrix.com/documents/current/api/twisted.news.nntp.NNTPServer.html
[2] http://tools.ietf.org/html/rfc3977
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://mail.python.org/pipermail/mailman-developers/attachments/20120401/4a4626e6/attachment.pgp>

More information about the Mailman-Developers mailing list