Commit Graph

1326 Commits (c6c0da7fcb4b8fd0ec6be4fe7cbbfb98c1d62c24)

Author SHA1 Message Date
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 8f46c4ebe7
Small fixes 2020-08-27 17:29:27 +03:00
Manos Pitsidianakis b94342c52b
themes/regexp: fix unwrap check on regexp match byte offsets 2020-08-27 17:27:45 +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 6302d9d618
Rename testing crate to tools, and add README 2020-08-27 17:18:58 +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 25b325dbda
Keep bytes copy in SaveMessage job in case of failure 2020-08-26 20:00:25 +03:00
Manos Pitsidianakis ca0f37e1f3
Send AccountStatusChange event on receiving mailboxes 2020-08-26 19:59:27 +03:00
Manos Pitsidianakis 843616221e
Add logging level to Generic jobs
Not every job success should be shown to the user, for example updating
the sqlite3 database. So introduce a level to only show relevant
notifications.
2020-08-26 19:17:54 +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 9e9be0b5f3
Remove block_on from mailbox creation/deletion 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 b545a0b905
Show error if watch job fails 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 629997397f
Allow toggle_help (default ?) remapping 2020-08-26 00:54:06 +03:00
Manos Pitsidianakis 53e924eb33
Add edit envelope action back as async 2020-08-26 00:54:06 +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 d95aae1987
terminal/keys: add `Space` identifier in Key Display impl 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 bb4754e38a
themes/shortcuts: preserve order of keys 2020-08-26 00:54:05 +03:00
Manos Pitsidianakis 8a6bf3b217
Preserve Account order from configuration file
Use IndexMap to preserve the order of accounts in the UI from the
account definitions.
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