Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Having worked with IMAP before myself, the spec is very vague a lot. It's a bad spec.

We had our own IMAP server implementation and had all sorts of problems even between different versions of outlook.

Each project had an inbox which you could cc in, resulting in huge inboxes (for the 2000s at least). You could also drag and drop an email you'd received into the project folder to share it with colleagues. And we had mysterious disappearing emails, but only at some clients.

One (of the many) problems I remember is that messages could have an ID, but the spec declared that it could change between sessions, so one version of outlook stored that in a short uint (max 65535) because why would you need more for a temporary id. So have fun if you sent anything more than that. And of course the client had different versions of outlook on different sites so it took ages to even figure out what was happening.

Another was that you had to make several back and forths on every request, messages about the messages, to say the payload and number of messages, but the spec was gleefully vague about the order this should happen in. So back then what worked for one email client resulted in an empty inbox for another.

I don't think we ever got it working properly with Firebird.



Validation of UIDs is thankfully something I don't have to worry about. It looks like a total nightmare.


Outlook is known to have a horrible IMAP implementation.


I've found Outlook's not too bad actually, and at least they support ActiveSync and MAPI for desktop and mobile. I always had the most problems with Gmail over IMAP.


Could you highlight what you consider as vague?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: