go-imap icon indicating copy to clipboard operation
go-imap copied to clipboard

v2: client status

Open emersion opened this issue 1 year ago • 0 comments

Continuation of https://github.com/emersion/go-imap/pull/490

  • [ ] Consider adding separate types for FetchItemData{Body,Binary}Section.Section
  • [x] Add support for LITERAL+
  • [x] ~~Add IMAP4rev1 fallback for IDLE~~ (#543)
  • [x] Consider restarting IDLE every 30min (#542)
  • [x] Consider setting SEARCH charset for IMAP4rev1
  • [ ] ENABLE IMAP4rev2 on servers which also support IMAP4rev1
  • [x] ~~Consider turning SearchCriteria.Not into a pointer, instead of a slice~~ (#505)
  • [x] Add support for NAMESPACE
  • [x] Add support for ESEARCH
  • [x] Add support for SEARCHRES
  • [x] Decode literal8
  • [ ] Make command methods extensible (see RFC 4466)
  • [x] Canonicalize message flags and mailbox attrs
  • [x] Parse date in envelope
  • [x] Add tests which can run against any IMAP server
  • [x] Consider turning lists of items into bool fields (e.g. SearchOptions.Return)
  • [x] Drop Client.StartTLS in favor of a function which constructs an already-secured TLS connection
  • [ ] Ignore responses that don't make sense given the connection state (section 11.3)
  • [ ] Consider re-using the same *FetchBodySection pointers in the returned map, or make it easier to match a *FetchBodySection from a command
  • [ ] Drop Command because it's not extensible
  • [ ] Some values can be either seq num or UID, how to represent these? Examples: SearchData.Min/Max, SortCommand.Wait, ThreadData.Chain. Should we add separate UID types for each?
  • [x] Add support for more extensions
    • [x] METADATA
    • [x] QUOTA (#492)
    • [x] SORT
    • [x] THREAD

emersion avatar Mar 17 '23 12:03 emersion