1
0
Fork 0
mirror of https://git.sr.ht/~rjarry/aerc synced 2025-02-22 06:23:58 +01:00
aerc/worker
Robin Jarry 985ce7a92b jmap: explicitly fetch body structure subparts
When requesting the bodyStructure email property, the spec says that the
default returned body part properties are: ["partId", "blobId", "size",
"name", "type", "charset", "disposition", "cid", "language",
"location"].

Specifically, the "subParts" property is *NOT* expected by default.

Fastmail servers seem to use a different default "bodyProperties" list
and implicitly return "subParts" even if not requested.

Other JMAP server implementations (e.g. Apache James) do use the RFC
default "bodyProperties" and therefore omit returning "subParts" unless
explicitly asked to.

Change the requested "bodyProperties" to include "subParts" as well.
Aerc needs them to display messages.

NB: for later, we should probably change our message abstraction not to
include any body structure. This makes very little sense to expose that
to users. In fact, aerc has code to explicitly prevent users from
selecting multipart/* parts. Not requesting that information to the
server would make it easier.

Link: https://datatracker.ietf.org/doc/html/rfc8621#section-4.2
Reported-by: Benoit Tellier <btellier@linagora.com>
Signed-off-by: Robin Jarry <robin@jarry.cc>
Reviewed-by: Tim Culverhouse <tim@timculverhouse.com>
2025-02-11 21:02:24 +01:00
..
handlers watchers: move filesystem monitoring stuff in lib 2023-08-04 11:32:40 +02:00
imap treewide: fix English spelling 2025-01-21 13:39:01 +01:00
jmap jmap: explicitly fetch body structure subparts 2025-02-11 21:02:24 +01:00
lib completion: display descriptions next to choices 2024-10-23 10:22:51 +02:00
maildir treewide: replace uint32 uids with opaque strings 2024-08-28 12:06:01 +02:00
mbox mbox: handle invalid URL scheme in command line 2024-10-16 19:49:14 -05:00
middleware imap: extend SEARCH with X-GM-RAW for full Gmail search syntax 2024-08-04 18:24:42 +02:00
notmuch completion: display descriptions next to choices 2024-10-23 10:22:51 +02:00
types jmap: handle copy-to and :send -t 2024-12-21 17:02:31 +01:00
handler_notmuch.go format: reformat code with go 1.17 2021-12-11 23:24:08 +01:00
worker.go aerc: use single event loop 2022-10-07 10:51:53 +02:00
worker_enabled.go watchers: move filesystem monitoring stuff in lib 2023-08-04 11:32:40 +02:00