Most active commenters
  • woodruffw(3)
  • frumplestlatz(3)

←back to thread

309 points StalwartLabs | 19 comments | | HN request time: 1.039s | source | bottom
1. sylens ◴[] No.45674189[source]
We need better client support for JMAP. Apple Mail, Thunderbird, Outlook (as if), and so on. I'm surprised some of the smaller ones like Canary or Spark don't implement it as a product differentiator.
replies(3): >>45674372 #>>45675000 #>>45675410 #
2. woodruffw ◴[] No.45674372[source]
Serious question: what’s the differentiator if major email providers don’t support it?

(This should not be interpreted as a defense of IMAP.)

replies(4): >>45674503 #>>45674641 #>>45675645 #>>45676469 #
3. dijit ◴[] No.45674503[source]
I'd make a reasonable guess that it enables much better Javascript clients, either via Electron or the Web Browser.

You don't need major providers to support it, they support SMTP and that's how messages are relayed. JMAP is just so you: the client, can fetch your mail from wherever you host your mail.

4. sylens ◴[] No.45674641[source]
Fastmail supports it, and it sounds like Thundermail will too
replies(1): >>45676067 #
5. Eric_WVGG ◴[] No.45675000[source]
We need better server support first.

I’ve got a friend who’s been pitching me on building a new email client for years. “I’ll do it if we exclusively use JMAP.” “okay does that include Gmail and Apple/iCloud accounts?” “Nope.”

I could sort of see dual-supporting Gmail's proprietary API and JMAP, but unless the #2-5 competitors support it… what’s the point? (sorry to put on the pessimism hat)

6. frumplestlatz ◴[] No.45675410[source]
There isn’t really a great motivating feature or use-case driving client or server adoption.

To be honest, I’m not sure why end-users would want JMAP for e-mail access.

It would be interesting if they do successfully roll out all of these additional RFC proposals providing a cohesive “groupware” protocol covering calendering, contacts, file shares, etc, we see notable server implementations, and interest is enough to drive client support.

That’s a lot of “ifs”.

replies(1): >>45675438 #
7. tjoff ◴[] No.45675438[source]
Because IMAP is horrible, it is another driving reason why we are moving towards the dystopian world of webmail.
replies(1): >>45675451 #
8. frumplestlatz ◴[] No.45675451{3}[source]
Horrible how, exactly?

People say things like that, and I wonder if I’ve just been living in a gilded tower of using Apple Mail with decent IMAP server implementations.

I’m also pretty familiar with the wire protocol and its implementation — it’s never struck me as particularly horrible.

A new protocol isn’t likely to solve the problem of poorly implemented clients and servers — e.g. Google doesn’t really care about good IMAP support, so they’re unlikely to care much about JMAP, either. They just want you to use their webapp.

replies(2): >>45675546 #>>45675944 #
9. ◴[] No.45675546{4}[source]
10. mjrpes ◴[] No.45675645[source]
One big differentiator is JMAP allows one network connection to track new emails that may get delivered across different folders. With IMAP you need a connection open for each folder.
replies(3): >>45675675 #>>45676450 #>>45676464 #
11. woodruffw ◴[] No.45675675{3}[source]
Okay, that's a great feature! But I guess I'm asking what the differentiator is if major email providers don't use it.
12. isaachinman ◴[] No.45675944{4}[source]
Gilded tower? Are we living in separate universes?

Shameless plug for a client with true offline-first IMAP support:

https://marcoapp.io

replies(1): >>45677410 #
13. Vinnl ◴[] No.45676067{3}[source]
Thundermail will be built on Stalwart, so yeah :)
14. mmooss ◴[] No.45676450{3}[source]
Why is that necessarily a good thing? If there's a problem with one folder - or just a large email - all are delayed?
15. kilburn ◴[] No.45676464{3}[source]
Implementing IMAP NOTIFY [1] would be a simpler path assuming you have IMAP implemented already though.

[1] https://www.rfc-editor.org/rfc/rfc5465.html

16. whatevaa ◴[] No.45676469[source]
IMAP is a shit protocol in general. Notably, email UIDs are not guaranteed to be static across sessions (aka, next time you connect they may be different), which is just straight up dumb. You IMAP client has to do a lot of workarounds just for this, which leads to gnarly bugs and inefficiences.
replies(2): >>45676646 #>>45678693 #
17. woodruffw ◴[] No.45676646{3}[source]
I don’t even remotely disagree with this. But that wasn’t the point: the point was that JMAP is only a competitive advantage if (major) email providers actually adopt it. Bad technologies regularly win because of inertia.
18. frumplestlatz ◴[] No.45677410{5}[source]
Sounds like it :) I’ve been very happy with Mail.app since MacOS 10.0. My use has always been with my employer’s IMAP servers, and my own cryus (and eventually) dovecot self-hosted IMAP servers.

Mail.app is what NeXT used internally, and Apple uses to this day AFAIK. Steve Jobs historically paid a lot of attention to it and wasn’t shy about weighing in on any changes.

Most of the complaints that I’ve heard about it seemed to stem from poor IMAP servers (e.g. Gmail), but it sounds like your knowledge in the space would be a lot more detailed and recent than mine, so I would be very interested in your thoughts.

19. brongondwana ◴[] No.45678693{3}[source]
That's not strictly true. IMAP has two things, UIDs which are mostly static (there's a UIDVALIDITY cache invalidation key to let a client know that UID information has been lost and recalculated); and message numbers.

UIDs don't change, but of course they can be deleted so it's a gappy list, meaning you can request even quite a large looking range of UIDs and get nothing back.

Message numbers change in every session, and also change every time you get an EXPUNGE. They're basically an ordered list without gaps, so you do a memmove at the offset of the EXPUNGE each time you get an expunge.

There are efforts like UIDONLY (RFC9586) to avoid having to keep that mapping at all, and there's OBJECTID (RFC8474) to let you cache a lot more even when UIDs are changed or when messages are moved between folders.