IMAP in OCaml
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Fix build warnings and odoc documentation errors

- Add explicit unix library dependency to dune files (html5rw, tomlt)
- Fix odoc heading levels ({0 -> {1) in imap subject.mli and thread.mli
- Fix code block indentation in subject.mli and h2_stream.mli
- Change unresolved module references to plain text (Bytesrw_unix,
Bytesrw_eio, Webfinger.Jrd.t)
- Fix @raise tags to use Error instead of Error.t
- Escape @mention/@mentions text in poe docs to avoid unknown tag warnings
- Remove unreachable flag_perm rule and redundant list_mailbox production
from IMAP grammar

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

+8 -14
+7 -7
lib/imap/subject.mli
··· 3 3 SPDX-License-Identifier: ISC 4 4 ---------------------------------------------------------------------------*) 5 5 6 - (** {0 Base Subject Extraction} 6 + (** {1 Base Subject Extraction} 7 7 8 8 Implements {{:https://datatracker.ietf.org/doc/html/rfc5256#section-2.1}RFC 5256 Section 2.1} 9 9 for extracting the "base subject" from email Subject headers. ··· 22 22 {li Unwraps [\[fwd: ... \]] wrapper pattern} 23 23 } 24 24 25 - {1 ABNF from RFC 5256 Section 5} 25 + {2 ABNF from RFC 5256 Section 5} 26 26 27 27 {v 28 - subj-refwd = ("re" / ("fw" ["d"])) *WSP [subj-blob] ":" 29 - subj-blob = "[" *BLOBCHAR "]" *WSP 30 - subj-trailer = "(fwd)" / WSP 31 - subj-fwd-hdr = "[fwd:" 32 - subj-fwd-trl = "]" 28 + subj-refwd = ("re" / ("fw" ["d"])) *WSP [subj-blob] ":" 29 + subj-blob = "[" *BLOBCHAR "]" *WSP 30 + subj-trailer = "(fwd)" / WSP 31 + subj-fwd-hdr = "[fwd:" 32 + subj-fwd-trl = "]" 33 33 v} *) 34 34 35 35 val base_subject : string -> string
+1 -1
lib/imap/thread.mli
··· 3 3 SPDX-License-Identifier: ISC 4 4 ---------------------------------------------------------------------------*) 5 5 6 - (** {0 RFC 5256 THREAD Extension} 6 + (** {1 RFC 5256 THREAD Extension} 7 7 8 8 Message threading algorithms as specified in 9 9 {{:https://datatracker.ietf.org/doc/html/rfc5256}RFC 5256 Section 3}.
-6
lib/imapd/grammar.mly
··· 181 181 | SP f = flag fs = flag_list_rest { f :: fs } 182 182 ; 183 183 184 - (* flag-perm = flag / "\*" *) 185 - flag_perm: 186 - | f = flag { f } 187 - | FLAG_PERM_ALL { Keyword "\\*" } 188 - ; 189 184 190 185 (* === Fetch items === *) 191 186 ··· 436 431 437 432 list_mailbox: 438 433 | s = astring { s } 439 - | s = QUOTED_STRING { s } 440 434 ; 441 435 442 436 (* === LIST-EXTENDED grammar - RFC 5258 Section 3 === *)