[Mailman-Developers] Speaking about kitties (or archivers)

Pierre-Yves Chibon pingou at pingoured.fr
Sun Jun 3 14:49:55 CEST 2012


On Fri, 2012-06-01 at 21:33 -0400, Barry Warsaw wrote:
> * Look at the IMessageStore API.  Is this complete?  IOW, could you
> build a purely Python-level archiver like HyperKitty on top of this
> API?  Here's where proper attachment handling would probably be
> necessary.

I have defined a number of functions in the kittystore interface which
could go into the IMessageStore:
https://github.com/pypingou/kittystore/blob/master/kittystore/__init__.py

Main difference compare to what is in the IMessageStore at the moment is
that I require the fq list name as first argument of each function (ie:
I have one table for each list and need to know where you would like me
to search)

> * How would you want to expose the IMessageStore interface into the
> REST API?
>   My sense is that you could probably take a fairly straightforward
> translation of IMessageStore into REST and *that* would be what you'd
> build the various archiver UIs on top of.  REST needs to answer
> questions like batching which are necessary for efficient transfer of
> data over HTTP but not for direct Python calls.

+1 for the straightforward translation of the interface to REST.
Archiver could then use either the implementation of the interface or
REST.

> * Should threading information be part of the IMessageStore, or a
> separate interface?  If the prototype archiver becomes the default
> implementation for the IMessageStore, it probably needs to grow a lot
> more functionality to support threading information. 

Keeping some info about threading in the database, the KittyStore
interface allows to retrieve for example all the messages of a thread or
the length of a thread.


I can work on merging KittyStore and IMessageStore and providing the
REST interface for it.
Should I provide also an implementation ? Using PostgreSQL as backend ?

Pierre


More information about the Mailman-Developers mailing list