Manos Pitsidianakis
fadf20d7b1
NotificationType: add melib::ErrorKind
2020-09-13 15:23:14 +03:00
Manos Pitsidianakis
352f7505fc
melib/imap: don't poll \Noselect mailboxes for updates
2020-09-13 00:24:26 +03:00
Manos Pitsidianakis
06a58a70bd
melib/imap: introduce a conf flag for server timeout
...
timeout integer (optional) Timeout to use for server connections in seconds. A timeout of 0 seconds means there's no timeout. (16)
2020-09-12 22:07:42 +03:00
Manos Pitsidianakis
96985c9c1f
melib/imap: set conn to Err if watch returns Err
2020-09-12 21:34:34 +03:00
Manos Pitsidianakis
7c6e3658c7
melib/imap: try NOOPing in connect()
2020-09-12 21:33:25 +03:00
Manos Pitsidianakis
5079881a4c
melib/imap: add tags to tag_index when setting new tags
2020-09-12 21:32:19 +03:00
Manos Pitsidianakis
6d9cdce923
melib/imap: don't fail utterly if cache fails on fetch
...
Show notice to user, and then try a fresh fetch. Also try resetting the
cache if possible.
2020-09-12 21:29:09 +03:00
Manos Pitsidianakis
7b324359c5
melib/imap: ignore case for supported capability report in
...
MailBackendExtensionStatus
2020-09-12 21:22:17 +03:00
Manos Pitsidianakis
4829e13c47
melib/maildir: impl copy_messages for Maildir
2020-09-11 17:02:27 +03:00
Manos Pitsidianakis
9e20f6556a
melib/imap: refactor command generation on copy_messages
2020-09-11 17:02:27 +03:00
Manos Pitsidianakis
d00055fdb1
melib/imap: update online instant only on server read IO
2020-09-11 17:02:27 +03:00
Manos Pitsidianakis
1751509739
melib/imap: prevent false IDLE wakeups
...
Prevent IDLE loop waking up when receiving continuation "+ " lines
2020-09-11 17:02:27 +03:00
Manos Pitsidianakis
5cd03fff0f
melib/email/parser: add mailing list parser module
...
Specifically, rfc2369 list header action list
2020-09-11 00:08:56 +03:00
Manos Pitsidianakis
927a0c3cc0
melib/imap: prevent panic in untagged fetch response
2020-09-11 00:06:32 +03:00
Manos Pitsidianakis
faa12a2d41
melib/email/address: add contains_address,subaddress methods
2020-09-10 21:19:38 +03:00
Manos Pitsidianakis
c0c588be9c
melib/maildir: add message flag initialize in bytes
...
Maildir flags from filesystem path was not set correctly on Envelope
initialization in maildir backend
2020-09-10 21:19:38 +03:00
Manos Pitsidianakis
be57b65dae
melib/email: add flags arg to Mail::new
2020-09-10 21:19:38 +03:00
Manos Pitsidianakis
d57dd9c98e
melib/email/address: return Option in get_display_name
2020-09-10 21:19:38 +03:00
Manos Pitsidianakis
c6c0da7fcb
melib: cleanup commit
...
Cleanup melib module exports, add some document tests, change some
documentation.
2020-09-10 21:19:38 +03:00
Manos Pitsidianakis
d14f26569e
melib/email/parser: Add rfc5322 compliant parser for MessageID
2020-09-10 20:36:25 +03:00
Manos Pitsidianakis
5d107db8b8
melib/email/parser: add new RFC5322 compliant parsers for header bodies
2020-09-10 20:36:25 +03:00
Manos Pitsidianakis
0de39cb658
melib/email/address: add constructors, and fix debug print
2020-09-10 20:36:25 +03:00
Manos Pitsidianakis
46c44ced96
line_break: check of eof in LB13
2020-09-10 20:36:25 +03:00
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