Commit Graph

847 Commits (b1a71887710153f0f98b25b2f224fbe37f7a6889)

Author SHA1 Message Date
Manos Pitsidianakis b1a7188771
Clippy fixes 2023-04-30 20:47:53 +03:00
Manos Pitsidianakis 39d9c2af3b
melib/smtp: fix test smtp server logic 2023-04-26 12:08:15 +03:00
Manos Pitsidianakis d679a74450
melib/jmap: Implement Bearer token authentication
Fastmail now uses an API token in a http header for authentication.

This can be used either as a server_password or provided by a
server_password_command like oauth2.
2023-04-10 20:58:49 +03:00
Manos Pitsidianakis d9c07def0f
Add command to select charset encoding for email
Open dialog to select charset with `d`.
2023-04-10 11:42:50 +03:00
Manos Pitsidianakis 939dc15e28
Fix melib tests 2023-04-10 11:19:14 +03:00
Manos Pitsidianakis 3adf72aed0
Add support for utf-7 encoding
Closes #175
2023-04-10 10:33:46 +03:00
Johannes Schilling 2447a2cbfe melib/jmap: avoid relying on hardcoded hash values
The hash values seem to have changed in the meantime, or aren't the same
on all environments.
2023-03-09 10:37:58 +02:00
Manos Pitsidianakis d7ec97f03b Small rustfmt change 2023-03-09 10:37:00 +02:00
Johannes Schilling fbc1007ff4 jmap: deserialize `null` to empty vec for messageId
The spec says MessageId can be `null`, handle that case and deserialize
it to an empty Vec.
2023-03-09 10:30:34 +02:00
Manos Pitsidianakis 11140b4a76 Fix test output
test_compose_reply_subject_prefix requires access to / path, and fails
when building with deb-dist
2023-03-06 09:49:02 +02:00
Johannes Schilling 12cb717bda melib: add server_password_command to jmap
Move the handling of either `server_password` or
`server_password_command` from the imap backend to the common
`AccountSettings` struct and add it for jmap as well.
2023-03-06 09:11:55 +02:00
Manos Pitsidianakis 660bacb926 Add `mailto` command to open composer with initial values from mailto template 2022-12-30 17:02:10 +02:00
Manos Pitsidianakis de2f46fe61 rustfmt changes 2022-12-27 18:40:26 +02:00
Manos Pitsidianakis 5443b7e8f3 melib/sieve: remove literal_map() parse combinator 2022-12-27 18:38:20 +02:00
Manos Pitsidianakis 3c847ad26a melib/sieve.rs: add beginning of sieve parser
Concerns #153

Support filtering rules to move mails to folders #153 <https://git.meli.delivery/meli/meli/issues/153>
2022-12-27 18:29:27 +02:00
Manos Pitsidianakis 2878bbb8c8 melib/addressbook: add parser for mutt alias file 2022-12-23 02:32:22 +02:00
Manos Pitsidianakis 40c6647db8 Fix multipart/related with main text/html part not displayed correctly 2022-12-09 14:06:20 +02:00
Manos Pitsidianakis 7606317f24 melib/notmuch: add support for virtual mailbox hierarchy
Add optional "parent" property to notmuch mailbox configuration.

Closes #167

https://git.meli.delivery/meli/meli/issues/167
2022-12-09 12:35:10 +02:00
Manos Pitsidianakis 5634f95553 Rename MeliError struct to Error 2022-12-08 22:20:05 +02:00
Manos Pitsidianakis 259aeb0087 Convert {Account,Mailbox}Hash from typedef to wrapper struct 2022-12-08 22:10:58 +02:00
Manos Pitsidianakis 7382e30160 Convert EnvelopeHash from typedef to wrapper struct 2022-12-08 20:43:52 +02:00
Manos Pitsidianakis eaecc5ea12 melib/notmuch: remove hardcoded major .so version for non linux/macos target_os
Credits to http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/ports/mail/meli/patches/patch-melib_src_backends_notmuch_rs?rev=1.1&content-type=text/x-cvsweb-markup for discovering this.
2022-12-04 15:44:20 +02:00
Manos Pitsidianakis 2224a7100f melib/imap: reset imap cache on init error 2022-12-01 21:06:33 +02:00
Manos Pitsidianakis 7924aa8bfe melib/jmap: fix compilation 2022-11-28 16:56:37 +02:00
Manos Pitsidianakis bd22f986f0 melib: fix clippy lints 2022-11-14 19:14:19 +02:00
_ ded9adde61 More descriptive "Unimplemented" messages 2022-11-13 19:04:29 +02:00
Manos Pitsidianakis b776409d6c melib/thread.rs: add thread, env hash index fields 2022-11-07 16:26:47 +02:00
Manos Pitsidianakis 56fc43bcf8 melib: add As{Ref,Mut} impls for RwRef{,Mut} 2022-11-07 16:25:37 +02:00
Manos Pitsidianakis 88a1f0d4bc melib/imap/parser: fix FETCH response parsing bug
Closes #160
Closes #128
2022-10-23 21:05:06 +03:00
Manos Pitsidianakis 64346dd3fe melib/parsec: add map_res, quoted_slice, is_a, alt, take, take_literal 2022-10-22 22:47:14 +03:00
Manos Pitsidianakis 17b42b1a6c melib/parsec: add json deserialization tests 2022-10-22 22:47:10 +03:00
Manos Pitsidianakis 6d20abdde7 melib/gpgme: add #[allow(deref_nullptr)] in bindgen tests 2022-10-22 22:45:15 +03:00
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>
2022-10-22 21:14:53 +03:00
Manos Pitsidianakis 3697b7d960 melib/datetime: don't use LC_ category in place of LC_ masks in libc calls
LC_ masks are bit masks, whereas category values are not.

Concerns #159

[imap] all mail timestamps are zero/epoch #159
https://git.meli.delivery/meli/meli/issues/159
2022-10-17 18:06:58 +03:00
Manos Pitsidianakis 0ef4dde939 melib/jmap: wrap serde_json deserialize errors in human readable errors 2022-10-13 10:59:10 +03:00
Manos Pitsidianakis 55ed962425 melib/jmap: use server_url instead of server_hostname + server_port in config 2022-10-13 10:40:48 +03:00
Manos Pitsidianakis 16646976d7 compose: fix reply subject prefixes stripping original prefix
Unintelligent heuristic but should cover most cases?

Configurable subject response prefix #142
https://git.meli.delivery/meli/meli/issues/142

Closes #142
2022-10-09 18:31:01 +03:00
Manos Pitsidianakis 7e09b1807f melib/collection: replace _Ref deref unwraps with expect() 2022-10-09 18:28:41 +03:00
Manos Pitsidianakis 129573e0fd melib/maildir: rename root_path to root_mailbox 2022-10-09 18:28:07 +03:00
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
2022-10-04 15:58:36 +03:00
Manos Pitsidianakis 117d7fbe04 melib/jmap/rfc8620.rs: make private fields public 2022-10-04 15:51:43 +03:00
Manos Pitsidianakis 347be54305 melib/error: add NetworkErrorKind enum 2022-10-04 15:49:34 +03:00
Manos Pitsidianakis c3fdafde3b Documentation touchups 2022-09-26 18:04:53 +03:00
Manos Pitsidianakis c6bdda03cf melib/backends.rs: fix notmuch error shown on any missing backend 2022-09-24 22:23:43 +03:00
Manos Pitsidianakis b87d54ea3f melib/backends.rs: impl Into<BTreeSet<EnvelopeHash>> for EnvelopeHashBatch 2022-09-19 15:18:25 +03:00
Manos Pitsidianakis b138d9bc61 melib: fix some clippy lints 2022-09-19 15:18:25 +03:00
Manos Pitsidianakis 388d4e35d6 listing/offline.rs: add in-progress messages while connecting in IMAP 2022-09-11 15:00:30 +03:00
Manos Pitsidianakis 9cbbf71e0f melib/email/attachments: Add DecodeOptions struct for decoding 2022-09-11 01:22:06 +03:00
Manos Pitsidianakis 3688369278 melib/smtp: add smtp test 2022-09-10 21:39:56 +03:00
Manos Pitsidianakis 3c0f5d8274 melib/smtp: add BINARYMIME support to smtp client
Concerns #49

IMAP: Lemonade profile tracking issue
2022-09-10 19:02:17 +03:00