nmh-workers
[Top] [All Lists]

Re: Has anyone looked at JMAP?

2020-08-31 17:46:53
I haven't gotten very far into the details, but the move to a stateless
protocol seemed like an improvement (at least potentially) over IMAP to me.

Well, so ... here's my opinion on that.

The "stateless" part really is talking about the network protocol.  My
reading of the JMAP spec is that you definitely need to remember things
between requests.  Like if you find out a mailbox or message id, you need
to remember for later use.  Yes, I see what you mean about you can do
some interesting batching, where the output of one query can be fed into
another query ... but I am not sure that is directly usable by nmh.

Nmh really wants to work on "message numbers", so you need to map that
to "message identifiers", be it IMAP or JMAP.  The solutions for that
are relatively obvious, but that does mean most of the time you won't
be able to do a query without translating those results into MH message
numbers and that prevents batching.

But in terms of cutting down round trips ... you can batch up a lot of stuff
in an IMAP request, and you're allowed to send multiple commands at
once (each command is prefixed with a tag so you can distinguish
the responses).  And you can do intelligent things like only ask for the
parts of the message you care about.  So, I _think_ it's probably a wash
in terms of how nmh would use it.  And preliminary tests suggested that
the round trips weren't too awful (see the archives).

As to GMail, there's some uncertainty about the scheduling, since a big
step was apparently delayed recently, but it has to do with "Less Secure
App" access:

 https://support.google.com/accounts/answer/6010255?hl=en

Right, we already support that!

AIUI, Google was planning on discontinuing LSA access late this year for
gmail accounts (hosted GSuite accounts had a different timeline but the
same goal). Instead, apps can apply for an app-specific "secret", but on
terms that specifically disallow open-source code from shipping the secret.

Well ... we've been dealing with this as well.  Our reading of the terms
is that the issue isn't with open source software at all, but more about
how you prove that you're "you" (we shipped a secret that worked until
very recently).  I don't see anything that really disallows OSS, though!

--Ken

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