IDLE again

exarkun at exarkun at
Thu Dec 3 17:58:33 GMT 2009

On 05:00 pm, jgoerzen at wrote:
>Dominic LoBue wrote:
>>I am willing to do the legwork myself on this one to get it working,
>>though I could use your assistance in determining the best approach to
>I suspect that the easiest options would be:
>1) Identify and fix the bugs from imaplib2
>2) Add IDLE support to imaplib (or use imaplib to provide it)
>imaplib2 proved to be a massive user experience problem.  I don't like
>the idea of being "buggy by default" (defaulting to imaplib2 with an
>option to revert to imaplib), nor do I like a "more bugs please, but
>also enable IDLE" sort of option (imaplib default with imaplib2 as an
>option).  Enabling IDLE shouldn't cause people to have trouble.
>>My other thought is to add IDLE support to the twisted imap client
>>library, and switch offlineimap over to twisted.
>I attempted that conversion myself some years ago, and had it mostly
>working, but it was terrible to maintain.  There also seem to be
>questions about the long-term viability of Twisted; I have heard that
>they intend to never port it to Python 3.

Aside from there being questions about the long-term viability of Python 
3 (wink), you can read about Twisted's Python 3 porting plans here:

and some more general thoughts on Python 3 porting on stackoverflow:

The short version is that it'll happen when it's sufficiently useful.

If we can momentarily pretend that the Python 3 question is answered, 
then I'll just toss in that I'd be quite interested to see offlineimap 
use Twisted for it's protocol needs.

I know that twisted.mail.imap4 has issues (I recently filed a pretty 
major ticket against it, in fact: 
<>).  I'm not trying to suggest 
that switching to Twisted's APIs will be a snap.  I don't even have a 
good idea about whether it would be easier than fixing the imaplib2 
issues or adding the necessary features to imaplib (although I do *feel* 
like imaplib is so low-level that, overall, using Twisted's APIs would 
have to be an improvement).

I do know that Twisted development is active, maintenance is ongoing, 
and if there is interest in improving the IMAP4 code, I'm here to help 
with the process.  So if you still decide not to use Twisted, do it for 
reasons other than those. :)

I'll go back to lurking now.


More information about the OfflineIMAP-project mailing list