0.5.0 Stabilizing Pt.1

Stabilizing existing features, cleaning, upstreaming, automated testing, quality, etc.
We must also stabilize K2V in Garage.

Following aspects must be studied:

  • The storage trait
  • How emails are queried/streamed
  • The co-routine architecture that requires cloning the HTTPClient and also requires multiple channels (maybe we could replace them with Streams?)
  • The mailbox stuff split into a bayoou -> uid_index -> mailbox -> snapshot -> mailbox_view. The mail/query.rs file.
  • Email streaming decoding
  • Correctly deleting emails

Testing:

  • Test webmail compatibility (Sogo, Roundcube, Rainloop, etc.)

Following features might be considered:

  1. (req) add opentelemetry observability & logging stuff
  2. (req) add an encoder for eml-codec, finalize some RFC, fuzz testing
  3. fuzzy search with tantivy
  4. (deep) integration with sogo
  5. a standalone mode (probably LMDB + filesystem)
  6. IMAP SASL
  7. OIDC

(Target: first production deployment)

2024-12-31
0% Completed