At least no one tried to use YAML on the wire, so far anyway.
(Source: implemented both serverside and clientside IMAP.)
IMAP is basically a database query language and as such it works as it should.
. SELECT INBOX.Archive
* 1239 EXISTS
* 0 RECENT
* FLAGS (\Answered \Flagged \Draft \Deleted \Seen $X-ME-Annot-2 $HasAttachment $IsNotification $IsMailingList $NotJunk $CanUnsubscribe)
* OK [PERMANENTFLAGS (\Answered \Flagged \Draft \Deleted \Seen $X-ME-Annot-2 $HasAttachment $IsNotification $IsMailingList $NotJunk $CanUnsubscribe \*)] Ok
* OK [UNSEEN 1221] Ok
* OK [UIDVALIDITY 1108730350] Ok
* OK [UIDNEXT 2231] Ok
* OK [HIGHESTMODSEQ 40306873] Ok
* OK [MAILBOXID (210306ee-5833-456b-bede-6d04757128b3)] Ok
* OK [URLMECH INTERNAL] Ok
* OK [ANNOTATIONS 65536] Ok
. OK [READ-WRITE] Completed
. FETCH 1 MODSEQ
* OK [HIGHESTMODSEQ 40306873] CONDSTORE enabled by FETCH MODSEQ
* 1 FETCH (MODSEQ (39570709))
. OK Completed (0.000 sec)
And... the * operator ranges. . FETCH 2231:* (UID MODSEQ)
* 1239 FETCH (UID 2230 MODSEQ (40306872))
. OK Completed (0.001 sec)
Source: have also implemented both client and server side IMAP, and reviewed RFC9051 very closely.And it is a pretty bad query language compared to something like SQL.
Yes. Regardless of the email protocol, third-party clients will always be horrible as long as corporations view email as their enterprise moat.