LWN ran an article on Archiveopteryx. Some points.
It's BSD-licensed, not OSL-licensed. It was OSL-licensed until last year.
One commenter opined that we might not have tested big mailboxes. Well, we have. Not sure exactly how big. We've routinely tested up to a million, bigger occasionally. At a million it's quite simple: Most mail readers fall over. Mutt downloads a quarter-gigabyte at startup, several others download twenty megs every few minutes.
If even Thunderbird needs hours or even days to reindex a mailbox, then I think the mailbox is unusable, no matter how badly or how well the server does. That's why we don't bother to test ten-million-message mailboxes.
Searching deserves a post of its own. Later. Suffice to say that Archiveopteryx includes a clever query engine, but IMAP clients mostly don't search well, and those that try are limited by IMAP's unripe search facilities.
IMAP's search looked good to me when I first read the RFCs, but now
I think the RFC is based on insufficient experience. (No,
ESEARCH doesn't help with
this. It's not meant to, it just provides
count(*)… and a few others, and opens a framework for other
About mangling: When we canonicalise messages, we do not break valid messages. Usually we recover all meaning, and even when we can't it's not too bad.
A particularly nasty example: Suppose a message arrives claiming to be
encoded using euc-2022-jp. RFC 1468 says
start with ASCII, then
send a control code to switch to double-byte kanji encoding, then
another control code to switch to ASCII. In reality, some of those
double-byte segments contain an odd number of bytes. (I've seen this
happen when Japanese eudora and pine users quoted
a reply to me.) In that case, Archiveopteryx
fixes the situation
by changing the undecodable character to
(in my case
Arguably it might be better to keep the syntax error. My take is
that I want to use my old email, so I need the search to be fast. Most
mail (>99.99%) is either 822 compliant or can be made so. The remnant
is small enough that I'd rather have fast search and occasionally see
Finally, maintenance. I'll keep working on Archiveopteryx, doing what pleases me. What I want to do decides what I do, and if you send me a bug report I may well ask you to test the fix, rather than test it myself.