Commit Graph

234 Commits (bee1502499ac28a0b14cdac7fbf2a565b1698db4)

Author SHA1 Message Date
Manos Pitsidianakis bee1502499
melib: make References public 5 years ago
Manos Pitsidianakis 32fe8a8b9b
melib: move email.rs back 5 years ago
Manos Pitsidianakis 7accae1774
melib: split address.rs from email.rs 5 years ago
Manos Pitsidianakis b08001ca5d
melib: create address.rs from email.rs 5 years ago
Manos Pitsidianakis 93de60b6d1
maildir: allow Maildir stores as root_folder
Allow top level directories that are not valid maildir folders but
include maildir folders as root_folder of an account.
5 years ago
Manos Pitsidianakis fb7b038ee1
ui: add set_seen shortcut in {Compact,Conversation}
Shortcut sets an entire thread as seen.
5 years ago
Manos Pitsidianakis 7dc3efaedd
imap: allow conn to be offline and retry on demand
Split the TlsStream of the live IMAP connection to an enum to allow both
offline and online states. The connection is restarted if offline when
requested.
5 years ago
Manos Pitsidianakis b98ce8828c
melib: fix wrong validation in Maildir save()
Path of folder was compared to folder names and saving to eg
'INBOX/Sent' would not result into mail being saved to Folder { name:
'Sent', path: 'INBOX/Sent' }
5 years ago
Manos Pitsidianakis 79212621af
Bump version to 0.3.0 5 years ago
Manos Pitsidianakis 8795c2da4f
ui: small configuration fixes
- unused options were removed,
- renamed `index` conf option to `index_style`
5 years ago
Manos Pitsidianakis 080b8ae775
imap: add log entry on connection retry & failure 5 years ago
Manos Pitsidianakis 9e2bfa22b1
melib: add logging module 5 years ago
Manos Pitsidianakis 817c338a13
melib: fix metadata updates in Envelope updates 5 years ago
Manos Pitsidianakis 059d86de93
map: restart connection on failure in read_lines 5 years ago
Manos Pitsidianakis bfc36f63de
imap: add byte cache for Envelopes in IMAP backend 5 years ago
Manos Pitsidianakis f394fde143
add priority and info to jobs and workers
jobs now have a priority given to them, in order to parse some mailboxes
(eg INBOX, Sent) first.

worker threads now can set their names and status
5 years ago
Manos Pitsidianakis 81a55abc7c
Update crossbeam to 0.7.2 and remove chan 5 years ago
Manos Pitsidianakis ecb3fd7f3d
Add dyn keyword to Trait objects
And fix some unused var warnings as well
5 years ago
Manos Pitsidianakis d1d11356db
imap: get() ENVELOPE instead of RFC822.HEADER; it's faster 5 years ago
Manos Pitsidianakis 335a1011de
imap: add watch 5 years ago
Manos Pitsidianakis c3e3c98fb0
melib: filter subscribed folders in MailBackend::new() 5 years ago
Manos Pitsidianakis 64dc44f18f
imap: replace unwraps with checks 5 years ago
Manos Pitsidianakis 525bd16493
imap: add folder operations in backend 5 years ago
Manos Pitsidianakis c9f7b41e47
imap: continuous payload delivery in async workers 5 years ago
Manos Pitsidianakis c561814cd6
imap: add `danger_accept_invalid_certs` option 5 years ago
Manos Pitsidianakis c2c5f2db69
melib: add Failure to RefreshEventKind 5 years ago
Manos Pitsidianakis 0812242f60
Add IMAP backend
TODOs: new message events (untagged responses)
5 years ago
Manos Pitsidianakis 3f7d962abd
melib: remove ThreadTree, use ThreadNodes for root_set
Remove ThreadTree index in Threads {} struct. Keep a Vec<ThreadHash> for
root_set state of mailbox instead of rebuilding ThreadTrees every
time.
5 years ago
Manos Pitsidianakis dc2184a9de
melib: add Folder operations in mail backends
Add following operations in mail backend:
- Create,
- Delete,
- Subscribe,
- Unsubscribe,
- Rename
5 years ago
Manos Pitsidianakis 1328f994f3
Make config objects Serializable with serde 5 years ago
Manos Pitsidianakis b474b44b10
Add special use semantics for mailboxes 5 years ago
Manos Pitsidianakis 76909a1959
add folder subscriptions 5 years ago
Manos Pitsidianakis 84a042411d
melib: remove unnecessary unsafe impls 5 years ago
Manos Pitsidianakis 89b1e381dc
melib: recreate removed email if it comes back
If an email is removed by an outside actor, it is marked as removed.
Renaming files first send a Remove event and then a Rename one. So if a
removed email turns out to have been renamed by someone else, issue a
Create event to get it back.
5 years ago
Manos Pitsidianakis fed13816dd
Bump version to all workspace crates 5 years ago
Manos Pitsidianakis 22f11445e2
Print error and exit if Maildir path config is wrong 5 years ago
Manos Pitsidianakis bc7da4610e
Send MailboxUpdate events when threads are updated
Depending on the insertion order of folders which is non-deterministic
because it relies on the kernel's scheduling of parsing threads, the
listing the user sees might not be up-to-date because later thread
updates are never broadcast. This results in inconsistencies between
threads and mail listings when a thread's root envelope was part of a
not broadcast update leading to `key not found` panics in a listing's
hashmaps.
5 years ago
Matthias Beyer 79becdcc42
Fix: This comment is not a proper rustdoc comment and probably should not be one anyways
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
5 years ago
Matthias Beyer fb36dc58c8
Remove unused variable
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
5 years ago
Manos Pitsidianakis 2492bc91b2
melib: add attachment_from_file() 5 years ago
Manos Pitsidianakis ac04195007
maildir: mark removed paths
Remove events almost always come immediately before Rename events,
showing that the previous name of a file is removed and then renamed.

Keep proper tabs by marking removed paths instead of actually removing them.
5 years ago
Manos Pitsidianakis c87ed5012d
melib: add attachment support in email/compose.rs 5 years ago
Manos Pitsidianakis 391e5b5d13
melib: tighten bounds check in email/parser.rs 5 years ago
Manos Pitsidianakis d73069bc80
melib: add Other and OctetStream content types 5 years ago
Manos Pitsidianakis c17bb24f0d
melib: refactor attachments and attachment_types interfaces 5 years ago
Manos Pitsidianakis 7592e66d6a
maildir: drop mutexes before calling add_path_to_index 5 years ago
Manos Pitsidianakis 572944e917
melib: add version from Cargo manifest to User-Agent field 5 years ago
Manos Pitsidianakis 38da6c83b9
melib: add read-only support for mbox 5 years ago
Manos Pitsidianakis 8a0e702127
melib,ui: add MailboxEntry enum
Use an enum to describe a mailbox's state in ui::conf::Account instead
of Result.
5 years ago
Manos Pitsidianakis d84ceca88e
create text_processing crate 5 years ago