Re: [Evolution] help with IMAP



On Mon, 2003-03-10 at 22:15, Jack Veenstra wrote:
Thanks for the info on getting debug output.  Although the debug output
contains a lot of disconcerting error messages, it was actually helpful
in finding out why Evolution seemed to hang when I tried to read my mail
with IMAP.  Evolution was, indeed, listing the contents of my entire
home directory and sending that to the IMAP server.  And because I have
a lot of files and symbolic links to other large directory trees, it
was taking a long time and appeared to be hung.  

Ignore the error messages. They're mostly harmless and you did ask for
verbose output :)

Hanging the entire UI while talking to the IMAP server is a fairly
severe problem but can be worked around by not asking it to scan your
_entire_ home directory. That workaround is just about OK until your set
of mail folders gets quite large, or unless your IMAP server is accessed
across a slow link.

Why does Evolution send the names of my files to the IMAP server? 
Wouldn't it make more sense to just ask the IMAP server for all my
mail? I guess I need to learn more about the IMAP protocol.

http://www.ietf.org/rfc/rfc2060 makes interesting reading. Also see
outstanding drafts relating to extensions (like server-side threading,
etc.) on www.imap.org. :)

You never want to ask the IMAP server for _all_ the mail. That would
take ages and only a tiny fraction of the mail will ever be displayed.
You don't even want to ask the IMAP server for all the mail in a single
folder -- the server can even do all the threading for you and you only
have to download the messages you actually want to display in the
ten-or-so lines you have in the index pane. Of course you might want to
pre-download some more in case the user scrolls about, but you wouldn't
want to make the user wait while you do that.

Anyway, I fixed the mail problem by following your suggestion and
specifying the namespace "mail/".  I also tried "mail" (with no
trailing
slash) and that did not work.  Only "mail/" works.  Care to explain
why?
Could Evolution be made a little more intelligent in this regard?  I
would never have figured this out without your help.

Not easily. I have a feeling (although it's early and I haven't
confirmed it) that a namespace of just 'mail' specifies files in your
home directory which start with those four letters...

 echo -e "000 list mail %\\n001 list mail/ %\\n002 logout" | imapd

It could perhaps _prompt_ you if your specified namespace doesn't end
with the directory separator -- but that separator isn't the same on all
servers and at the time you're configuring your namespace, Evo doesn't
actually know what it is for this particular server. So you'd have to do
something horrid like asking for confirmation only the first time you
try to connect after changing the namespace, if it looks suspect.

Anyway, if you think that Evo was hard to figure out, try changing it at
the IMAPd side. It's possible, but it'll make your head hurt :)

-- 
dwmw2




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]