Manos Pitsidianakis
ab1b946fd9
melib/error: don't print details if it's an empty string.
...
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
9 months ago
Manos Pitsidianakis
506ae9f594
melib/error: Add ErrorKind::LinkedLibrary variant
...
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
10 months ago
Manos Pitsidianakis
f900dbea46
Use cargo-derivefmt to sort derives alphabetically
...
Used https://github.com/dcchut/cargo-derivefmt
With command:
cargo install --locked \
--git https://github.com/dcchut/cargo-derivefmt \
--bin cargo-derivefmt \
--rev 2ff93de7fb418180458dd1ba27e5655607c23ab6
Since it's not on crates.io at the moment.
Sample diff:
-#[derive(Debug, Deserialize, Clone, Serialize)]
+#[derive(Clone, Debug, Deserialize, Serialize)]
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
10 months ago
Manos Pitsidianakis
b3858de2f4
melib/error: impl From<io::ErrorKind> for ErrorKind
...
We inspect errors in the frontend to check for network errors. If the
network error comes from std::io, this would get converted to an Error
with description "timed out", kind OSError, and source the actual
networking error.
This commit converts network std::io::ErrorKinds into appropriate
native ErrorKinds.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 year ago
Manos Pitsidianakis
5c2b04719b
Normalize std::fmt::* imports
1 year ago
Manos Pitsidianakis
7db930cabd
melib: rename `jmap_backend` feature to `jmap`
1 year ago
Manos Pitsidianakis
5f29faa640
melib: clippy lint fixes
1 year ago
Manos Pitsidianakis
f98e36cee5
melib: Replace old-style /*! module doc comments with //!
1 year ago
Manos Pitsidianakis
5699baecfb
melib: add utils::{futures, random}
1 year ago
Manos Pitsidianakis
4da5366959
Remove bincode dep, use serde_json for sqlite3 values
1 year ago
Manos Pitsidianakis
8f14a2373e
melib/imap: put imap-codec logic under the imap_backend feature
1 year ago
Damian Poddebniak
330887c4f5
refactor: Introduce imap-codec.
1 year ago
Manos Pitsidianakis
235fceaf21
melib: Add standard heeder constants in email::headers
...
Like `http` crate does
1 year ago
Manos Pitsidianakis
8c671935f9
Add compose (pre-submission) hooks for validation/linting
...
compose-hooks run before submitting an e-mail.
They perform draft validation and/or transformations.
If a hook encounters an error or warning, it will show up as a notification.
The currently available hooks are:
- past-date-warn
Warn if Date header value is far in the past or future.
- important-header-warn
Warn if important headers (From, Date, To, Cc, Bcc) are missing or invalid.
- missing-attachment-warn
Warn if Subject, draft body mention attachments but they are missing.
- empty-draft-warn
Warn if draft has no subject and no body.
They can be disabled with [composing.disabled_compose_hooks] setting.
1 year ago
Manos Pitsidianakis
b1a7188771
Clippy fixes
1 year ago
Manos Pitsidianakis
5634f95553
Rename MeliError struct to Error
2 years ago
Manos Pitsidianakis
bd22f986f0
melib: fix clippy lints
2 years ago
Manos Pitsidianakis
347be54305
melib/error: add NetworkErrorKind enum
2 years ago
Manos Pitsidianakis
388d4e35d6
listing/offline.rs: add in-progress messages while connecting in IMAP
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
07e166e1fb
melib/error: Add kinds: NotImplemented, NotSupported, OSError
3 years ago
Manos Pitsidianakis
17a4ccdcbc
melib/imap: perform reconnect on IDLE failure
4 years ago
Manos Pitsidianakis
fadf20d7b1
NotificationType: add melib::ErrorKind
4 years ago
Manos Pitsidianakis
b4fe34eacf
melib/imap: add ImapCache trait
4 years ago
Manos Pitsidianakis
f02dde46da
melib/error:Add ErrorKind::Timeout
...
Timeout errors lead to automatic restart of connections without
bothering the user about the details, compared to actual network errors.
4 years ago
Manos Pitsidianakis
4217839155
melib/email: remove Envelope::from_token
4 years ago
Manos Pitsidianakis
8c6c9806b5
Fix some clippy lints
4 years ago
Manos Pitsidianakis
30c390443a
melib: Add native_tls behind feature
...
native_tls error conversion was held behind `imap_backend` feature, but
tls is also used in smtp.
4 years ago
Manos Pitsidianakis
a712bf6c3c
melib/jmap: make backend async
...
Replace reqwest with isahc which supports async IO
4 years ago
Manos Pitsidianakis
52cec59215
melib/error: add From<&MeliError> for MeliError
4 years ago
Manos Pitsidianakis
97c76cc6a1
melib/error: add ErrorKind struct
4 years ago
Manos Pitsidianakis
a7e177586a
Fix clippy lints
4 years ago
Manos Pitsidianakis
03522c0298
melib: Fixup warnings in imap_async, maildir
4 years ago
Manos Pitsidianakis
a38764f490
Add somewhat-working async IMAP backend
4 years ago
Manos Pitsidianakis
8bfdce6658
melib/error: do not discard old summary in set_summary
4 years ago
Manos Pitsidianakis
b4dfc1f89d
imap: add experimental header caching with sqlite3
...
Add support for header caching. It is currently unstable and should not
be used. It can be turned on by specifying "X_header_caching" to true in
the IMAP account's configuration.
The header cache is saved in a sqlite3 database in your XDG_DATA_DIR,
for example:
/home/epilys/.local/share/meli/17328072387188469646_header_cache.db
Concerns #31 https://git.meli.delivery/meli/meli/issues/31
4 years ago
Manos Pitsidianakis
6ec249dd7f
melib: update nom dependency from 3.2.0 to 5.1.1
...
That was hecking exhausting
4 years ago
Manos Pitsidianakis
db4c401828
melib/error: add chain_err_summary() method
4 years ago
Manos Pitsidianakis
84976b1dc9
Update libloading dependency to 0.6.2
4 years ago
Manos Pitsidianakis
b8261ee36a
Overhaul input thread
...
Remove raw/non raw distinction.
Use a pipe for input thread commands and poll stdin/pipe for events
4 years ago
Manos Pitsidianakis
3ea1ce5454
errors: add `source` field to MeliError
4 years ago
Manos Pitsidianakis
5d07a5147b
datetime: fix panic on invalid cstr conversion
4 years ago
Manos Pitsidianakis
a9842cacee
ui: add theming support
...
Configuration flag "terminal.themes" has two default theme entries,
"dark" and "light".
This commit alters only CompactListing for theme support.
5 years ago
Manos Pitsidianakis
ca7d72e732
melib: Replace String with Cow<'static, str>
5 years ago
Manos Pitsidianakis
a43f6919cc
JMAP WIP
5 years ago
Manos Pitsidianakis
dab9b39f4d
melib/imap: detect tag (\* flag) support
5 years ago
Manos Pitsidianakis
a059e4ad4c
melib: add summary field to MeliError
5 years ago
Manos Pitsidianakis
d1184d4ea5
ui/search: add sorting in search
5 years ago
Manos Pitsidianakis
6e75160b70
melib: turn unicode algos and backends into features
5 years ago