Manos Pitsidianakis
f8f3f1817d
melib/notmuch: fix search
...
Search was not available, it had been left out of date
2020-08-28 14:27:46 +03:00
Manos Pitsidianakis
b4fe34eacf
melib/imap: add ImapCache trait
2020-08-28 00:31:35 +03:00
Manos Pitsidianakis
e878c50af5
tools/imapshell: actually send LOGOUT instead of just closing socket
2020-08-28 00:16:37 +03:00
Manos Pitsidianakis
75f59ee726
melib/imap: split by lines when reading IDLE unsolicited responses
2020-08-27 17:26:39 +03:00
Manos Pitsidianakis
be2d268a20
melib/imap: build uid<>msn cache in {select,examine}_mailbox()
2020-08-27 17:26:07 +03:00
Manos Pitsidianakis
209bd98814
melib/imap: fix cache not being updated in some events
2020-08-27 17:25:05 +03:00
Manos Pitsidianakis
a37faf0bec
Fix imapconn IMAP shell binary
...
IMAP shell hasn't been working since updating IMAP to async. Now it
works by using block_on executor.
2020-08-27 17:07:19 +03:00
Manos Pitsidianakis
e9a80b32ac
melib/imap: small cleanups
2020-08-26 20:08:44 +03:00
Manos Pitsidianakis
f02dde46da
melib/error:Add ErrorKind::Timeout
...
Timeout errors lead to automatic restart of connections without
bothering the user about the details, compared to actual network errors.
2020-08-26 20:01:39 +03:00
Manos Pitsidianakis
c6f11fb592
melib: update notify to 4.0.15
2020-08-26 19:17:54 +03:00
Manos Pitsidianakis
e349882ea7
melib/email/parser: use SmallVec in encoded words
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
14663e46b9
Remove some old TODO comments
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
4217839155
melib/email: remove Envelope::from_token
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
1df25f36ef
melib/email: case insensitive match on charset from bytes
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
96a3da3d7b
melib/imap: fix deflate feature flags
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
f7ac1703e8
melib/notmuch: add watch/refresh methods to backend
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
974836776d
melib/email: trim raw input for some fields
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
341ff9164b
melib/notmuch: add Message,TagIterator,Thread types
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
8c6c9806b5
Fix some clippy lints
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
fc25c7b165
Fix compiler warnings
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
f7c9f21575
melib/imap: add CONDSTORE support
...
Closes #52
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
1ca0bd0d96
sqlite3: add schema versioning
...
To potentially be used with automatic migrations on version update
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
8d50e83a33
melib/email: add case-insensitive Header struct
...
- HeaderName is either 32 or less inlined bytes or heap-allocated vec for more than that.
- Equality and hashing is case-insensitive
- A HeaderMap is a hashmap from HeaderName to Strings that can be
indexed with &str, case insensitive. Insertion order is also preserved
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
0f3bf858a3
melib/imap: impl UNSELECT via nonexistent mailbox
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
876e1bc510
melib/imap: turn ImapResponse From to TryFrom
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
94433cfc40
melib/backends: cleanup MailBackend trait definition
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
3eadaba34e
Replace old pseudo-async code with blocking rust async
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
a190805384
melib/backends: Add BackendEvent enum
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
9928ee78e7
Add Reply{ToAuthor,ToAll} actions
...
- previous Reply action now lets you select recipients by default
- ReplyToAuthor selects the Envelope author as recipient
- ReplyToAll selects all addresses
2020-08-26 00:54:05 +03:00
Manos Pitsidianakis
9afbdd4887
Add insert_user_agent option in composing
...
Add option for automatically inserting a 'User-Agent' header in new
drafts.
2020-08-26 00:54:05 +03:00
Manos Pitsidianakis
be31d35ff6
melib/line_break: fix missing Break on B2 class
...
Graphemes of B2 class, such as the Em dash can break before and after.
However this case wasn't handled in the line break iterator.
2020-08-26 00:54:05 +03:00
Manos Pitsidianakis
dede8d2a9e
melib/imap: timeout when establishing connection
2020-08-16 19:57:28 +03:00
Manos Pitsidianakis
d1a9f4e28a
melib/collection: remove unnecessary mut references
2020-08-16 15:38:11 +03:00
Manos Pitsidianakis
b9e53a7451
melib/smtp: add recipient argument in mail_transaction()
2020-08-16 15:16:27 +03:00
Manos Pitsidianakis
30c390443a
melib: Add native_tls behind feature
...
native_tls error conversion was held behind `imap_backend` feature, but
tls is also used in smtp.
2020-08-15 13:42:30 +03:00
Manos Pitsidianakis
1affee183a
melib/nntp: fetch all articles of group
2020-08-09 21:23:13 +03:00
Manos Pitsidianakis
92a9127758
melib/notmuch: don't read messages to String
2020-08-09 20:29:55 +03:00
Manos Pitsidianakis
79b2b38e32
melib: add supports_submission backend capability
...
To be used by NNTP, JMAP and some IMAP servers with BURL capability
2020-08-09 14:56:34 +03:00
Manos Pitsidianakis
560f9e5399
melib/email: parse empty attachments correctly
2020-08-09 09:50:20 +03:00
Manos Pitsidianakis
c0f8bc1aed
melib/email/attachments: add Content-Disposition
2020-08-09 09:49:32 +03:00
Manos Pitsidianakis
b2c14abd6e
melib/jmap: add {flag,tag} set support
...
Closes #61
2020-08-09 09:47:01 +03:00
Manos Pitsidianakis
a712bf6c3c
melib/jmap: make backend async
...
Replace reqwest with isahc which supports async IO
2020-08-07 13:51:44 +03:00
Manos Pitsidianakis
6d61d0651c
melib/jmap: add special keywords to search
2020-08-06 21:13:20 +03:00
Manos Pitsidianakis
c88eac1cc5
melib/jmap: implement search
...
Closes #59
2020-08-06 19:46:46 +03:00
Manos Pitsidianakis
5485e7b941
melib/notmuch: fetch mail in chunks
...
notmuch fetch took too much time on large mailboxes because it sent the
result as one big vec, instead of chunking it.
2020-08-02 16:52:19 +03:00
Manos Pitsidianakis
e8a98f87e3
Change version to 0.6.1
2020-08-02 01:25:06 +03:00
Manos Pitsidianakis
890000bd0e
status page: trim extension name at 30 chars
...
NNTP has some long protocol extension names
2020-08-02 00:48:44 +03:00
Manos Pitsidianakis
1bdecd62c7
melib/nntp: add AUTH support
2020-08-02 00:44:45 +03:00
Manos Pitsidianakis
ce45cf5f17
melib/{imap,nntp}: flush after write_all
...
IMAP IDLE got stuck, because the IDLE connection used `send_raw` that
didn't flush output after `write_all`, *if* DEFLATE was on. DEFLATE
needs to flush output.
2020-08-02 00:22:15 +03:00
Manos Pitsidianakis
ec0153e7b2
melib: add protocol extension info in MailBackendCapabilities
2020-08-02 00:22:15 +03:00