Commit Graph

19 Commits (56cda63c83897e09c36f7650718c23bb951837ff)

Author SHA1 Message Date
Manos Pitsidianakis 5761f854e2
melib: Add FolderPermissions
permissions() method on BackendFolder and SetPermissions in
FolderOperation enum.
5 years ago
Manos Pitsidianakis f56b89dde3
melib: add as_any() method to MailBackend trait
Cast the trait object into an &Any object. Then we can downcast it to
its actual type with downcast_ref().
5 years ago
Manos Pitsidianakis d926cadc4d
melib: remove argument from MailBackend operation()
The operation() method on the MailBackend trait returns a trait object
that can read or modify an Envelope directly from the backend. This is
used to get eg the envelope's text, or set flags. It has two arguments,
envelope hash and folder hash.

Only the Maildir backend needed the latter argument, and it can be replaced with a dictionary to match envelope hashes to folder hashes within the Maildir backend.
5 years ago
Manos Pitsidianakis e5b6faf6bd
Add account online status
Add a boolean field to accounts that states if the account can be
accessed. Local backends (Maildir/mbox) return true every time, but
remote backends (IMAP) may not. Accounts start as offline and then get
initialised when their status goes to online. Right now if an IMAP
account startup but later get offline, there are crashes. With this
change the account can be switched back to offline when that happens.
5 years ago
Manos Pitsidianakis 6e75160b70
melib: turn unicode algos and backends into features 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 ecb3fd7f3d
Add dyn keyword to Trait objects
And fix some unused var warnings as well
5 years ago
Manos Pitsidianakis c3e3c98fb0
melib: filter subscribed folders in MailBackend::new() 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 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 38da6c83b9
melib: add read-only support for mbox 5 years ago
Manos Pitsidianakis a62f1d6c01
add read-only option in accounts 5 years ago
Manos Pitsidianakis 14f1527e61
melib: remove BackendOpGenerator 5 years ago
Manos Pitsidianakis c6674a294d
melib: unwrap mailbox module 5 years ago