Commit Graph

386 Commits (803d3414fd73743ff5bfc0fefe5e3d76d88e58cb)

Author SHA1 Message Date
Manos Pitsidianakis 803d3414fd melib/imap/managesieve: implement some rfc5804 commands
Try with managesieve REPL in src/managesieve.rs:

cargo run --bin managesieve-client ~/.config/meli/config.toml
"accountname"

rfc5804 <https://www.rfc-editor.org/rfc/rfc5804.html>
2 years ago
Manos Pitsidianakis 0ef4dde939 melib/jmap: wrap serde_json deserialize errors in human readable errors 2 years ago
Manos Pitsidianakis 55ed962425 melib/jmap: use server_url instead of server_hostname + server_port in config 2 years ago
Manos Pitsidianakis 129573e0fd melib/maildir: rename root_path to root_mailbox 2 years ago
Manos Pitsidianakis 0c08cb737c melib/jmap: mark mailboxes as subscribed on personal accounts
The spec https://jmap.io/spec-mail.html#mailboxes says a mailbox property `isSubscribed` should be considered true if the account is marked as `isPersonal`.

Closes #157

JMAP incompatible with Stalwart server #157 https://git.meli.delivery/meli/meli/issues/157
2 years ago
Manos Pitsidianakis 117d7fbe04 melib/jmap/rfc8620.rs: make private fields public 2 years ago
Manos Pitsidianakis 347be54305 melib/error: add NetworkErrorKind enum 2 years ago
Manos Pitsidianakis c3fdafde3b Documentation touchups 2 years ago
Manos Pitsidianakis b138d9bc61 melib: fix some clippy lints 2 years ago
Manos Pitsidianakis 388d4e35d6 listing/offline.rs: add in-progress messages while connecting in IMAP 2 years ago
Manos Pitsidianakis a484b397c6 melib/notmuch: show informative error messages if libloading fails
Add instructions on how to solve this, and also a config setting
`library_file_path` to set the path manually if necessary.
2 years ago
Manos Pitsidianakis eb5949dc9b melib/error.rs: switch summary<->details identifiers
They are more intuitive like this.
2 years ago
Manos Pitsidianakis 480000ebbb melib/notmuch: show error if account directory does not contain ".notmuch" subdirectory
Bug reported by user on mailing list.
2 years ago
Manos Pitsidianakis 7fca5f01ef melib/jmap: fix jmap build with isahc 1.7.2 2 years ago
Manos Pitsidianakis ce269c64e1 conf: don't fail on `server_password_command`
Don't fail when parsing an IMAP config when it has
`server_password_command` set.

Closes #139

Meli stopped recognizing server_password_command configuration #139
2 years ago
Manos Pitsidianakis 6a843d4983 melib/maildir: export list_mail_in_maildir_fs() function 2 years ago
Manos Pitsidianakis 721891c295 Update nom dependency 2 years ago
Manos Pitsidianakis 2c23ca34cd Update most Cargo dependencies 2 years ago
Manos Pitsidianakis aa3524dd30
melib/backends/notmuch: fix tag not being removed in set_flags()
May be related to #132

Cannot remove tags in the notmuch backend #132

> Running tag remove TAG on the notmuch backend does nothing. At a
> glance, this seems to be because NotmuchMailbox::set_flags never bothers
> to remove tags that are already present but not in the list of new tags.
> I could try fixing it, but I have no idea how the contribution process
> works here (my guess is the mailing list, but, well, #131).

https://git.meli.delivery/meli/meli/issues/132
2 years ago
Manos Pitsidianakis f5dc25ae0d
conf.rs: check that all conf flags are recognized in validation
This commit adds logic in configuration file validation that checks that
each account "extra" field is empty after getting it back from the
backend validation. This is to ensure the user doesn't set options that
are invalidly stated in the documentation or by accident.

Closes #135

Configuration error (xxx): the following flags are set but are not recognized: ["index_style"] https://git.meli.delivery/meli/meli/issues/135
2 years ago
Manos Pitsidianakis d4b690d5d3
melib/imap: send password as byte literal on LOGIN
Concerns #125

Escape IMAP passwords properly https://git.meli.delivery/meli/meli/issues/125
2 years ago
Manos Pitsidianakis ce2068d36b
melib/jmap: fix background watch using JSON paths incorrectly 2 years ago
Manos Pitsidianakis 0d8bedd2d5
melib/jmap: make is_online() await for connection
Closes	#126 https://git.meli.delivery/meli/meli/issues/126
2 years ago
Manos Pitsidianakis 81d1265601
melib/imap: escape IMAP passwords properly
Closes #125
3 years ago
Manos Pitsidianakis d8e9a00563
melib/imap: add quoted REFERENCES field in parsing of responses 3 years ago
Manos Pitsidianakis 733de5a5fb
Fix some clippy suggestions 3 years ago
Manos Pitsidianakis 526a246430
melib/nntp: update total/new counters on new articles 3 years ago
Manos Pitsidianakis 07e166e1fb
melib/error: Add kinds: NotImplemented, NotSupported, OSError 3 years ago
Manos Pitsidianakis c8da6d2049
melib/nntp: implement refresh 3 years ago
Manos Pitsidianakis 90042379a6
melib/{imap,nntp}: throw error on extra unusued conf flags 3 years ago
Manos Pitsidianakis b49d965695
Fix unused var etc warnings 3 years ago
Manos Pitsidianakis 6235164df2
melib/nntp: increase chunk size 3 years ago
Manos Pitsidianakis 521f634e7b
melib/nntp: implement NNTP posting 3 years ago
Ludovic LANGE b08570349d
Notmuch dynamic library can now be loaded on macos
On macos, the name of dynamic libraries is a little bit different than on Unix.
The code was looking for a `libnotmuch.so.5` library, while on macos
it's installed as `libnotmuch.5.dylib`.

This commit uses cfg attribute to conditionally change the library name.

Closes #106
3 years ago
Manos Pitsidianakis 24b4c117e7
melib: don't use both {set,push}_references()
set_references() already calls push_references()
3 years ago
Manos Pitsidianakis b0fba401e6
melib/mbox: consistent line endings in MboxFormat::append 3 years ago
Manos Pitsidianakis 63d2fb93f4
melib/nntp: fix not connecting with TLS 3 years ago
Manos Pitsidianakis cf9457882a
melib/mbox: add MboxMetadata type and write support 3 years ago
Manos Pitsidianakis 3dae84182c
melib/mbox: add module-level doc 3 years ago
Manos Pitsidianakis 4050f6893f
melib/mbox: add MboxFormat::append() method
Add support for writing mbox files
3 years ago
Manos Pitsidianakis dcccd303ac
melib/mbox: rename MboxReader to MboxFormat 3 years ago
Manos Pitsidianakis 22a64e2d76
melib: Remove unnecessary "pub use" std exports 3 years ago
Manos Pitsidianakis 781a1d0e1b
melib/backends: add collection() method to MailBackend
Keep track of the Collection state in the backend side
3 years ago
Manos Pitsidianakis 2f47f1eebd
melib/jmap: fix mailbox children relationships being ignored 3 years ago
Manos Pitsidianakis a697dfabbd
melib/jmap: use receivedAt as alternative to Date in Envelope gen 3 years ago
Manos Pitsidianakis 23997bdec0
melib/jmap: add UTCDate queries in EmailFilterCondition
Not necessarily working, added as stubs for future work

Closes #62
3 years ago
Manos Pitsidianakis 50cd81772f
melib/jmap: impl watch() with polling
Concerns #22
3 years ago
Manos Pitsidianakis 62db7d7f32
melib/jmap: put JmapSession behind mutex
And deserialize API urls to Arc<String>.
3 years ago
Manos Pitsidianakis db69349251
melib/notmuch: avoid parsing entire email in Envelope creation 3 years ago
Manos Pitsidianakis 806254436b
melib/notmuch: add AccountHash field to NotmuchDb 3 years ago