Another stab at IMAP IDLE
Ethan Glasser-Camp
glasse at cs.rpi.edu
Wed Jan 19 14:56:54 GMT 2011
On 01/18/2011 04:13 PM, Leon Bogaert wrote:
> I'm very interested in this too. I would be glad to help a hand. By
> testing or
> by coding pieces of it.
>
> Regards,
> Leon
Hey,
Regarding current status: I haven't written any code since the last
patch series I sent to the mailing list. I did spend a lot of time
tracking down a mysterious hang that eventually seems to be related to a
multithreading deadlock. It's sporadic so I couldn't nail down what
exactly caused it, but it certainly might have something to do with
imaplib2.
I think the next step is to rewrite the patch series in a more
approachable form. Nicholas suggested that we not go to too much effort
to preserve the form of the commits as they were originally written,
especially the commit messages, so I was figuring to have commits for:
- introducing the newest imaplib2 as a file, but not using it.
- switching over to it, including any semantic changes that are necessary.
- introducing IDLE functionality based on the timer hack originally
implemented by James Bunton in
http://delx.net.au/blog/2009/02/offlineimap-idle-support/ .
Plus whatever else seems necessary. I'm kind of busy for the next week
or two, so if you wanted to beat the commit series into shape, that
would be great.
Since imaplib2 was dropped due to reliability concerns, it seems pretty
important that we not cause any horrible crashes or hangs in switching
over to imaplib2. I'd love to have more testers running the version of
offlineimap that supports IDLE, whether they enable it or not. I'm
definitely seeing a sporadic hang on my extremely crappy Internet
connection, more commonly when the connection is overloaded, and if
anyone could reproduce that and track it down, that would be great.
I think if we get the above patches merged, then we'd be in good shape.
So the two above things are my major concerns for when I get some free time.
Ethan
More information about the OfflineIMAP-project
mailing list