[Imap-protocol] SELECT/EXAMINE clarification of UNSEEN

Mark Crispin mrc+imap at panda.com
Tue Nov 15 18:24:17 PST 2011

On Wed, 16 Nov 2011, Timo Sirainen wrote:

> MSNs still seem like a

> good idea, although UIDs possibly could be strings (but then can you

> copy the same mail into same mailbox to create a duplicate UID?)

That brings up the possibility of GUIDs (and possibly using uint64 instead
of uint32). Unfortunately, this also would cause the loss of strict
ascendency; a principle characteristic that makes IMAP UIDs more useful
than POP3 UIDs.

> Keyword = mailbox mapping might be nice.

If I were to do that, I abolish separate mailboxes as a concept entirely,
and go to named views ala Gmail. That, in turn, would infuriate everybody
that uses a timesharing system style mail store with multiple mailboxes as
separate filesystem objects. A major part of the design of IMAP was to
export pre-existing mail stores.

There's always a tension between those who want a mail access protocol to
export something pre-existing, and those who want it to export their
notion of an ideal.

On the other hand, replacing mailboxes with named views (and the resulting
abolition of COPY) makes GUIDs more viable. Synchronization would always
be with the "all" view, and thus we can keep strict ascendency even though
messages may come and go in a certain view.

On the OTHER hand (three hands here?) doesn't that also preclude shared
mailboxes? Oh dear, oh my...

Choices, choices... :)

If we keep the facility of separate mailboxes, albeit for such
functionality as shared mailboxes, then keywords should evolve into named
views; and servers should use these and NOT mailbox naming for views.

My understanding is that Google perceived keywords as not commonly
implemented, and thus needing to do view/mailbox mapping. It's been a
major problem; a classic case of kludge tower building because it was
perceived that they couldn't do it right to begin with.

> Using more command pipelining would be

> nice (e.g. search <stuff> | store <here>).

I've thought of that, but in a more limited context of "apply search
criteria" as the sequence for a command.

-- Mark --

Democracy is two wolves and a sheep deciding what to eat for lunch.
Liberty is a well-armed sheep contesting the vote.

More information about the Imap-protocol mailing list