ietf
[Top] [All Lists]

Re: [Jmap] WG Review: JSON Mail Access Protocol (jmap) - reducing configuration complexity

2017-02-13 13:52:39
On 13 February 2017 at 18:48, Ted Lemon <mellon(_at_)fugue(_dot_)com> wrote:
On Feb 13, 2017, at 12:17 PM, Dave Cridland <dave(_at_)cridland(_dot_)net> 
wrote:

If JMAP is to supplant IMAP - and I think that's a worthy goal even if
its likelihood remains a matter for debate - then JMAP has to support
the same model.

The model of IMAP is that:

* Each message resides in a single mailbox,
* Each message has a set of independent flags,
* Each message is immutable.


This would be unfortunate.  The "mailbox" paradigm really doesn't work
well—as someone mentioned earlier in this thread, it makes synchronization
needlessly slow and painful, and it also restricts the end user's ability to
tag messages with more than one meaning.


I'm not claiming it's a good model, or even (see John's messages) that
this precludes any other model being made to fit. But I *am* asserting
this is the model around which IMAP was designed. In fact, I could go
further and suggest that at least some portions of the IMAP design
assume that a mailbox is embodied by a single file, but workarounds
for that issue have been long-implemented in the community. And other
models are possible to expose with greater or lesser degrees of
fidelity.

When gmail, for example, exposes its mailstore over IMAP, it does so
by playing fast and loose (and often loose) with the IMAP model. So
messages are visible in multiple mailboxes, but there's no method
exposed within IMAP that allows a client to understand that - to the
client, they're distinct messages with the same content. Flags (or
labels, which are exposed as mailbox names) change on all the copies
in step, but the copies remain copies, from an IMAP perspective.

Within JMAP, the semantics available are a proper superset of IMAP, so
while the IMAP model can be exposed, so can a more gmail-like concept
wherein the same message can appear in multiple mailboxes, for
example. This means, as a casual observation, that the JMAP model (and
therefore protocol) can be used to expose nearly every mailstore
available. Curiously, this was the driver behind some of IMAP's design
choices at the time.

I'd recommend, if you're interested in the differences between the
JMAP and IMAP models, to go look at the https://jmap.io site, which
explains them very thoroughly.

I'd note in passing that I was deeply skeptical of JMAP initially, and
I've been persuaded by solid technical argument as well as market
pressures. I'd be curious about concrete issues rather than
hypothetical issues.

Dave.


<Prev in Thread] Current Thread [Next in Thread>