The XO and email

Asheesh Laroia asheesh at creativecommons.org
Thu Feb 21 20:55:45 EST 2008


On Thu, 21 Feb 2008, Shikhar wrote:

> Hi,
>
> I would like to get the general feeling about the XO and email. There is
> a Gmail activity but no possibility of composing and viewing emails
> offline, which I think is important.

I think that might be nice also!

> - With Python, an email activity can be accomplished with the
> RFC-compliant email modules (for POP, SMTP, IMAP, MIME) and using sqlite
> for storage. So while building upon Tinymail
> (http://wiki.laptop.org/go/Tinymail) is an idea, it makes sense to just
> go with Python email modules and sqlite if the next point is to be
> implemented :-)

You suggest using sqlite for storage, and further, as I understand it, 
writing your own mail storage layer.  But on the other hand, you could use 
an existing top-notch Free Software mail store, like Dovecot.  Dovecot 
comes with full-text indexing for search of email, for example, and header 
caching to optimize common queries ("Tell me all the From, Subject, To, 
and Date headers").

That's my main contribution to this thread - I fear you won't re-use some 
already great software.  The rest of your suggestions could perhaps be 
implemented as Dovecot plugins to minimize wasted work; for the most part, 
I agree with them. (-:

Once you start thinking of this in terms of interoperability with existing 
mail systems, I think you'll find you have way less work to do.  For 
example:

> - Email threading: there is some Python code at
> http://www.amk.ca/python/code/jwz, which could be adapted

Built-into IMAP, which Dovecot implements.

> - Search using sql queries
>
> I have a good mental picture of what I want to do - maybe I am not
> communicating it too well, but I am willing to elaborate. I would really
> like your feedback especially on the fundamental idea of using Python
> email modules and sqlite in case I am thinking in the wrong direction,
> although this appears to me to be the best approach

IMAP provides SEARCH TEXT, which Dovecot can now (as of 1.1.rc1) store an 
index for, and therefore return answers in split-second times in many 
cases.

-- Asheesh.

--
You're already carrying the sphere!



More information about the Devel mailing list