Murray's Blog

Evolution and IMAP

Evolution is great

I love Evolution. I’ve used it for years for POP3 access and it has easily handled huge amounts of email and allowed me to quickly find information. I can not use a command-line email client to read my email. I am not like that. Years ago when I first started using Linux, I had a Windows partition (actually a removable disk) just so I could boot into that to check my email with Outlook. That was tedious. Then Evolution let me use Linux all day every day. It was familiar but far more stable and faster and less confusing than Outlook.

Evolution is still great for POP3 and getting better all the time, and possibly for some other protocols that I haven’t used.

Evolution with IMAP is not so great

But about a month ago I switched Evolution from POP3 to IMAP, because I got tired of not having access to old emails when away from my main PC, for instance when I use my laptop or when I use the webmail interface. This has mostly given me what I wanted, though dreamhost’s squirrelmail times out when searching my old messages, which are archived to a separate folder after a few days for performance reasons. But it means that I don’t stumble over not having the information in an email that someone sent me yesterday, and then realise the next day that I forgot to check it while at home.

However, it’s very slow, so slow that it rarely finishes whatever it’s doing before I shut my computer down. The status bar is always showing a couple of “Working oxb1208ad8” or similar messages. I think it’s doing more things with hexidecimal names, but it only shows two at a time. Every time I click on a folder it seems to give itself lots more work, and is determined to finish whatever it started doing for the last folder, even though I’ve lost patience with that already and just hope it can forget and maybe be quicker with another folder instead.

I’m not 100% convinced that this is caused by Evolution or instead by IMAP in general, or maybe by a problem with my IMAP server, or with IMAP servers in general.

Maybe (I have no idea) IMAP is a fundamentally slow or high-latency protocol, but it seems theoretically possible for Evolution to not be slow about showing me what’s already on my local disk. If it wants to check for new stuff on the server then that should happen in the background. I’m not saying it’s easy to implement, but it should be possible.

This whole downloading local copies thing is confusing in Evolution:

I just built Evolution 2.8 from source (I usually use 2.6 on Ubuntu Dapper) to see whether it’s faster, but I don’t notice any significant difference.

I suspect that some of the slowdown is caused by me having 40 filter rules to sort my emails into different folders for each mailing list. Unlike with POP3, it has to tell the server to move these instead of just moving them on the local disk. I guess server-based rules would be more efficient but I have no way to specify such rules with my hosted email server, and Evolution certainly doesn’t offer any way to do this. Turning off email filters or junk filtering (in the account setup) doesn’t make it noticeably faster when switching folders, but I didn’t try this for a few hours, and Evolution does seem to get slower with use.

By the way, why can’t Evolution just arrange all my mailing list emails automatically without me having to create folders and filters for each one?

It also seems slightly faster when not using encrypted IMAP (with TLS or SSL), but not fast enough, and a) I like encryption, and b) It was fast enough when using encrypted POP3.

I have tried Thunderbird. It seems slightly faster, but I haven’t tried recreating my 40 filter rules to test whether it’s faster when doing that. It does at least show a pulsing progress bar when it has to download an email, instead of showing me a blank email for a minute or so. It has the same UI problems when saying what should be downloaded locally – there’s no way to say “download everything and keep downloading everything, so you can be fast”. One great thing about IMAP is that you can easily try other email clients.

I’m not complaining about the hard-working developers. Evolution does a lot of great stuff and I’m not ready to move away from it, particularly because Evolution integrates more with my desktop than Thunderbird is ever likely to. I’m sure they’ll fix whatever they can in time – I recognise that getting an email application right is not easy. I just wanted to get my thoughts written down. I am not jumping on the bandwagon.

Update: I should give Evolution 2.8 more of a chance over the next few days. I guess it does feel a bit snappier.

Exit mobile version