Commit Graph

438 Commits (0a34b082f695f3cd84d36eab1a9371248441a981)

Author SHA1 Message Date
Manos Pitsidianakis b00d3c28c5
parser: fix panic on invalid encoded_word, display_addr
found by cargo-fuzz
4 years ago
Manos Pitsidianakis 5981f98f17
parser: fix panic on invalid message id 4 years ago
Manos Pitsidianakis f2ecb81612
parser: fix panic on invalid input
Found with cargo-fuzz
4 years ago
Manos Pitsidianakis 5d07a5147b
datetime: fix panic on invalid cstr conversion 4 years ago
Manos Pitsidianakis 330134af5a
maildir: update mailbox unread count on file rename event 4 years ago
Manos Pitsidianakis e9a935dbf7
melib: add search method in mail backends 4 years ago
Manos Pitsidianakis 3d7b9ff7cb
Move Query to melib 4 years ago
Manos Pitsidianakis c37d8bd331
imap: add mutex timeout lock and remove unwraps 4 years ago
Manos Pitsidianakis 5842a63e37
melib: ignore Draft body if empty for multipart mail 4 years ago
Manos Pitsidianakis ad2a51891b
melib: print attachment name in Display for text/* 4 years ago
Manos Pitsidianakis 6ccb9d3d75
melib/src/email/address.rs: Fix invalid UTF8 panic
In StrBuilder::display there's an assumption that the string is valid utf-8 but if an email contains an invalid string inside the MIME encoded word part the conversion panics. Change it to a lossy UTF-8 conversion instead. Fixes #19

Reported-By: cycomanic
4 years ago
Manos Pitsidianakis 9afb636894
melib/email: fix whitespace duplication in mime encoding 4 years ago
Manos Pitsidianakis 8eca8b34ed
jmap: fix two error messages 4 years ago
Manos Pitsidianakis c77af98b26
imap: prevent deadlock in operations.rs
imap/operations.rs could deadlock with imap/watch.rs when both lock the
main IMAP connection but both also need to lock UIDStore
4 years ago
Manos Pitsidianakis 5c2b93ee18
jmap: add parser for rfc3339 dates
Reported-by:cycomanic
Concerns #18 https://git.meli.delivery/meli/meli/issues/18
4 years ago
Manos Pitsidianakis 61be6e4c96
notmuch: fix wrong mailbox path in save()
mailbox path was passed to save_to_mailbox() with a cur/ tail and
save_to_mailbox() added an extra cur/ tail
4 years ago
Manos Pitsidianakis 7a770c7f7b
imap: fetch RFC822 instead of RFC822.HEADER
RFC822.HEADER is not parsed in imap/protocol_parser.rs
4 years ago
Manos Pitsidianakis a8c1016f37
Add various logic checks 4 years ago
Manos Pitsidianakis 6ca8c3b964
imap: add server_password_command 4 years ago
Manos Pitsidianakis 1811fb51cb
Fix unused imports/code compiler warnings 4 years ago
Manos Pitsidianakis 651dda67cf
Respect autoload mailbox setting 4 years ago
Manos Pitsidianakis a3600c0cd2
Add `filter` option in mail list
Filter mail in mail list.

Example:
[listing]
filter = "not flags:seen" # show only unseen messages
4 years ago
Manos Pitsidianakis 6c76db2063
Add delete, copy actions for envelopes 4 years ago
Manos Pitsidianakis 6079909f9c
imap: add managesieve connection
So far only the connection is implemented, and using the
testing/manage_sieve binary you can get a shell to a managesieve server.

The managesieve interface will be used in the UI from a plugin, but the
plugin's interface isn't implemented yet.
4 years ago
Manos Pitsidianakis 6b2a1f7757
imap: Don't fail on WouldBlock on ImapBlockingConnection 4 years ago
Manos Pitsidianakis ca51077f53
imap: Add support for untagged FETCH (FLAG.. messages
IDLE connection can get untagged "* FETCH (FLAGS ({flag_list))" messages
if any client has changed flags. Support this refresh event.
4 years ago
Manos Pitsidianakis c1a64d6c33
Add imports in tag_hash macro 4 years ago
Manos Pitsidianakis 33c1bf6558
Add consume newlines flag to phrase() 4 years ago
Manos Pitsidianakis 303c530488
Load libnotmuch dynamically 4 years ago
Manos Pitsidianakis ac71d627f1
Implement search for CellBuffer 4 years ago
Manos Pitsidianakis 4ac52d9d5b
Replace every use of Folder with Mailbox
Use Mailbox for consistency.
4 years ago
Manos Pitsidianakis 1245eae0be
Add Knuth–Morris–Pratt to pager 4 years ago
Manos Pitsidianakis 45c0160cb6
Fix ThreadListing
ThreadListing was broken after the ThreadGroup introduction
4 years ago
Manos Pitsidianakis 68007a0842
View decoded email source by default
Toggle between decoded/raw source with view_raw_source shortcut, default
M-r
4 years ago
Manos Pitsidianakis 499fd59c6e
melib/imap: implement refresh() 4 years ago
Manos Pitsidianakis bbdc9d69b4
melib/imap: add ImapConnection::connect() 4 years ago
Manos Pitsidianakis f38d03e43a
melib: {create,delete}_folder returns updated folders
Potential parent folders will have their children fields updated, so
just return all folders.
4 years ago
Manos Pitsidianakis 9a46e58029
imap: don't retry command on reconnection
If a command fails and connection is restarted, don't try the command
again; it only made sense in the previous connection's context.
4 years ago
Manos Pitsidianakis b6efb14824
melib: remove Mailbox
Refactor Collection from melib to hold what folders have what envelopes.

Frontend accounts will now have a FolderEntry for each logical folder
and will unify many Account fields into one and eliminate a lot of
duplicate/dead code.
4 years ago
Manos Pitsidianakis e26ed83331
Update native-tls to 0.2.3 4 years ago
Manos Pitsidianakis c678b16711
melib/jmap: fix macro path 4 years ago
Manos Pitsidianakis 9616fbb544
melib/maildir: fix wrong subscription status in folders
MaildirFolder::new() was checking for subscribed status though that is
supposed to be done in MaildirType::new()
4 years ago
Manos Pitsidianakis b107424258
melib: update GlobMatch algorithm
Taken from https://research.swtch.com/glob
4 years ago
Manos Pitsidianakis 6b7dea35dc
melib/parser: fix minor encoded word error 4 years ago
Manos Pitsidianakis 6afac835e0
melib/datetime: fix overflow panic on early date input 4 years ago
Manos Pitsidianakis f131e01bfc
Fix drawing getting stuck in empty terminal
Fix drawing getting stuck in loops when terminal is too small by
checking for it.
4 years ago
Manos Pitsidianakis f5e694cf5a
Make small cosmetic fixes 4 years ago
Manos Pitsidianakis f208948651
melib: add mailbox delete/create to IMAP 4 years ago
Manos Pitsidianakis 05b91f1c02
Remove text_processing
Unwrap text_processing into melib

In preparation for uploading meli as a separate crate on crates.io.
4 years ago
Manos Pitsidianakis 8b6ea8de9a
Remove ui crate
Merge ui crate with root crate.

In preparation for uploading `meli` as a separate crate on crates.io.

Workspace crates will need to be published as well and having a separate
`ui` crate and binary perhaps doesn't make sense anymore.
4 years ago