On Thu, Sep 23, 2010 at 04:38:33PM -0500, Nicolas Williams wrote:
On Thu, Sep 23, 2010 at 02:13:05PM -0700, Michael Elkins wrote:
Yes, this is the problem.  Mutt expects to see a FETCH response for
each message the server says EXISTS.  The IMAP standard requires
that no "holes" exist in the message sequence numbers, and mutt is
not prepared to handle them.

Mutt could be a lot more asynchronous though.  Mutt could display a
page-ful of messages, filling in slots (re-drawing as necessary) as the
FETCH responses come in.

Right now mutt wants to enumerate a mailbox when opening it.  It has to
for mbox/mh/maildir folders, given their nature.  But IMAP is designed
to allow for listing page-fuls of messages at a time instead of
enumerating folders -- the fact that mutt doesn't do this has me sad.

IMAP is also designed to allow multiple concurrent requests, that is,
it's designed to allow for asynchronous operation.  I've looked at mutt
source code, and ISTM that it'd require massive surgery to add support
for using IMAP this way.

The main issue is that some popular IMAP servers (gmail, exchange), do not support the SORT extensions, so you wouldn't be able to do the pageful-at-a-time and still have all of Mutt's current threading capabilities.

You are correct that major surgery would be required to change Mutt. A few years back I wrote a patch to lazily load the message headers, but the lack of threading support made it mostly useless.

me

Reply via email to