cos
256a3e252e
Update minimum supported rust version
...
Code requires label_break_value feature, which was [stabilized][0] in
release 1.65.0 of the toolchain.
[0]: https://github.com/rust-lang/rust/pull/99332
2023-03-06 09:56:43 +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
Manos Pitsidianakis
a72c96a26a
melib/smtp: add 8BITMIME support to smtp client
...
Concerns #49
IMAP: Lemonade profile tracking issue
2022-09-10 19:02:17 +03:00
Manos Pitsidianakis
8c7b001aa5
listing/conversations.rs: add thread_subject_pack
command to pack different inner thread subjects in entry title
2022-09-09 02:03:13 +03:00
Manos Pitsidianakis
2de69d17f1
melib/compose: fix erroneous placement of newlnes for wrap_header_preamble suffix
2022-09-03 17:47:58 +03:00
Manos Pitsidianakis
cbe593cf31
mail/compose: add configurable header preample suffix and prefix for editing
...
This commit adds a new configuration value for the composing section of
settings. Quoting the documentation:
wrap_header_preamble: Option<(String, String)>
optional
Wrap header preample when editing a draft in an editor. This allows you
to write non-plain text email without the preamble creating syntax
errors. They are stripped when you return from the editor. The values
should be a two element array of strings, a prefix and suffix. This can
be useful when for example you're writing Markdown; you can set the
value to ["<!--",\ "-->"] which wraps the headers in an HTML comment.
2022-09-02 16:09:45 +03:00
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.
2022-09-02 15:17:30 +03:00
Manos Pitsidianakis
eb5949dc9b
melib/error.rs: switch summary<->details identifiers
...
They are more intuitive like this.
2022-09-02 12:12:12 +03:00
Manos Pitsidianakis
da9c80ccfd
melib: Enhance SubjectPrefix with strip_prefixes_from_list() method
...
And make it public.
2022-09-01 22:32:33 +03:00
Manos Pitsidianakis
480000ebbb
melib/notmuch: show error if account directory does not contain ".notmuch" subdirectory
...
Bug reported by user on mailing list.
2022-08-30 12:23:25 +03:00
Manos Pitsidianakis
29042aba59
melib/datetime: add mbox date format parse
2022-08-29 11:19:21 +03:00
Manos Pitsidianakis
7650805c60
Bring stripped binary size down to 7MiB
2022-08-27 16:18:56 +03:00
Guillaume Ranquet
9205f3b8af
conf.rs: handle a per account mail order parameter
...
The new order parameter adds the possibility to specify a
sort order on a per account basis.
Signed-off-by: Guillaume Ranquet <granquet@baylibre.com>
2022-08-25 12:52:39 +03:00
Manos Pitsidianakis
7fca5f01ef
melib/jmap: fix jmap build with isahc 1.7.2
2022-08-18 18:12:44 +03:00
Manos Pitsidianakis
daa900ec9a
Fix embed terminal in macos
...
Pseudoterminal wasn't created correctly on macos
2022-07-31 18:17:59 +03:00
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
2022-06-04 17:57:41 +03:00
Manos Pitsidianakis
d6355a3043
melib/email/parser: impl Debug for ParsingError
2022-06-04 17:46:22 +03:00
Manos Pitsidianakis
6a843d4983
melib/maildir: export list_mail_in_maildir_fs() function
2022-06-04 17:46:22 +03:00
Manos Pitsidianakis
9558b2ae92
melib/email: parse Cp1253 as windows1253 encoding
2022-06-04 17:19:06 +03:00
Manos Pitsidianakis
721891c295
Update nom dependency
2022-05-02 17:04:13 +03:00
Manos Pitsidianakis
2c23ca34cd
Update most Cargo dependencies
2022-05-02 17:03:56 +03:00
Manos Pitsidianakis
81184b182c
Add extra_identities configuration flag
...
Closes #119
Multi identies per account #119 https://git.meli.delivery/meli/meli/issues/119
2022-03-21 20:53:37 +02:00
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
2022-03-21 13:13:47 +02:00
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
2022-03-20 16:35:18 +02:00
Manos Pitsidianakis
e9aaa7b067
melib/datetime: use *const c_char instead of *const i8 for portability
...
Using *const i8 broke compatibility with arm64.
Fixes #127
2022-02-07 13:34:26 +02:00
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
2022-01-10 15:51:27 +02:00
Manos Pitsidianakis
ce2068d36b
melib/jmap: fix background watch using JSON paths incorrectly
2022-01-08 20:00:26 +02:00
Manos Pitsidianakis
0d8bedd2d5
melib/jmap: make is_online() await for connection
...
Closes #126 https://git.meli.delivery/meli/meli/issues/126
2022-01-08 19:36:11 +02:00
Manos Pitsidianakis
81d1265601
melib/imap: escape IMAP passwords properly
...
Closes #125
2021-12-12 11:59:22 +02:00
Manos Pitsidianakis
d8e9a00563
melib/imap: add quoted REFERENCES field in parsing of responses
2021-11-25 17:53:01 +02:00
Manos Pitsidianakis
36e29cb6fd
Add configurable mailbox sort order
...
Closes #25
```
sort_order unsigned integer (optional) Override sort order on the sidebar for this mailbox. Example:
[accounts."imap.example.com".mailboxes]
"INBOX" = { index_style = "plain" }
"INBOX/Sent" = { sort_order = 0 }
"INBOX/Drafts" = { sort_order = 1 }
"INBOX/Lists" = { sort_order = 2 }
```
2021-10-31 18:15:39 +02:00
Manos Pitsidianakis
5f003a31be
melib/addressbook/vcard: Parse vCards with just LF instead of CRLF line endings
...
According to the vcard RFC
https://datatracker.ietf.org/doc/html/rfc6350#section-3.2 all lines must
end with CRLF (\r\n or 0x0d 0x0a)
Some VCard sources use only newline, which, while spec violating is easy
to recover from. So parse them as if they are correct.
Closes #121
2021-10-24 14:31:22 +03:00
Manos Pitsidianakis
2580522931
melib/addressbook: log vcard parsing failures
2021-10-24 14:18:29 +03:00
Manos Pitsidianakis
15ca25af73
Bump version to 0.7.2
2021-10-15 12:36:37 +03:00
Manos Pitsidianakis
37d0846195
melib/email/address: quote display_name if it contains ","
2021-10-15 12:29:52 +03:00
Manos Pitsidianakis
ffc498a5d0
melib/smtp: fix Cc and Bcc ignored when sending mail
2021-10-15 12:27:51 +03:00
Manos Pitsidianakis
240374950a
melib/email/address: quote display_name if it contains "."
2021-10-04 12:36:22 +03:00
Manos Pitsidianakis
505adca54d
Add forward mail option
...
Forward email with shortcut 'forward' (default ctrl+f)
This opens a composing tab letting you to select receiver etc.
"composing" config setting "forward_as_attachment" selects the
forwarding behavior:
- "ask" asks you ever time
- true always forwards by attaching the entire email as a single
attachment
- false always forwards by inlining the email, like most email clients
do.
Closes #120
2021-10-02 13:38:50 +03:00
Manos Pitsidianakis
733de5a5fb
Fix some clippy suggestions
2021-09-12 14:33:00 +03:00
Manos Pitsidianakis
bc08bf1d13
Bump version to 0.7.1
2021-09-08 16:20:02 +03:00
Manos Pitsidianakis
7533df86e0
Fix compilation for netbsd-9.2
...
$ rustc -V
rustc 1.52.1
$ cargo -V
cargo 1.52.0
Pre-requisite steps needed for build:
- Needed to install mozilla certs
- Needed to set OPENSSL_DIR=/usr
2021-09-06 18:54:40 +03:00
Manos Pitsidianakis
526a246430
melib/nntp: update total/new counters on new articles
2021-09-05 16:02:37 +03:00
Alex.F
69916f267b
add 'GB18030' charset
2021-09-05 13:08:32 +03:00
Manos Pitsidianakis
07e166e1fb
melib/error: Add kinds: NotImplemented, NotSupported, OSError
2021-09-05 12:39:15 +03:00
Manos Pitsidianakis
c8da6d2049
melib/nntp: implement refresh
2021-09-05 12:09:29 +03:00
Manos Pitsidianakis
90042379a6
melib/{imap,nntp}: throw error on extra unusued conf flags
2021-09-04 21:49:31 +03:00
Manos Pitsidianakis
09dc0a2409
melib/conf: deserialize ToggleFlag from bool & string
2021-09-04 20:06:07 +03:00
Manos Pitsidianakis
3bc187c570
melib/collections: add RwRef{,Mut} structs
2021-09-04 17:05:11 +03:00
Manos Pitsidianakis
b49d965695
Fix unused var etc warnings
2021-09-04 16:52:17 +03:00
Manos Pitsidianakis
6235164df2
melib/nntp: increase chunk size
2021-09-04 16:06:42 +03:00
Manos Pitsidianakis
521f634e7b
melib/nntp: implement NNTP posting
2021-09-04 00:42:19 +03:00
Manos Pitsidianakis
978939d8e3
Bump version to 0.7.0
2021-09-03 16:10:37 +03:00
Manos Pitsidianakis
f097593bed
melib/datetime: fix date format string
2021-08-12 10:38:05 +03:00
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
2021-07-19 05:04:04 +03:00
Manos Pitsidianakis
bcca9abe66
docs: Use example.com in documentation
...
Closes #96
2021-01-15 16:41:40 +02:00
Manos Pitsidianakis
24b4c117e7
melib: don't use both {set,push}_references()
...
set_references() already calls push_references()
2021-01-15 16:41:40 +02:00
Manos Pitsidianakis
b0fba401e6
melib/mbox: consistent line endings in MboxFormat::append
2021-01-11 19:11:08 +02:00
Manos Pitsidianakis
63d2fb93f4
melib/nntp: fix not connecting with TLS
2021-01-11 19:11:08 +02:00
Manos Pitsidianakis
cf9457882a
melib/mbox: add MboxMetadata type and write support
2021-01-11 19:11:08 +02:00
Manos Pitsidianakis
3fa9e355c2
melib/email: add Flag is_*() methods
2021-01-11 18:46:22 +02:00