Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-06-18 | Fix warnings, lints, and 2018 errors | Manos Pitsidianakis | |
2019-06-10 | don't add newlines in encoded words | Manos Pitsidianakis | |
2019-06-10 | wcwidth: add emoji table | Manos Pitsidianakis | |
2019-06-10 | parser: fix empty header value when header is last or when prefixed with | Manos Pitsidianakis | |
'\n' when an empty header is last, the rest of the body keeps getting parsed as headers. when header starts with '\n' because the value is long, the value gets parsed as a name and the header parser fails. closes #100 closes #101 closes #122 | |||
2019-06-10 | add testing crate with emailparse bin | Manos Pitsidianakis | |
2019-06-10 | merge FirstName/LastName fields in Contacts | Manos Pitsidianakis | |
First names and Last names are an anglocentric concept and do not apply cleanly to the rest of the world's cultures. | |||
2019-06-10 | melib: add has_attachments property to Envelope | Manos Pitsidianakis | |
Check subattachments in has_attachments check. Instead of getting a flattened attachment view of multipart/mixed (eg [multipart/mixed, text/plain, text/plain]) get only the subattachments (eg [text/plain, text/plain]). Don't count text-only multipart/mixed as attachments | |||
2019-06-10 | melib: correct out of bounds access | Manos Pitsidianakis | |
2019-06-10 | melib: unwrap mailbox module | Manos Pitsidianakis | |
2019-06-10 | move StackVec to melib | Manos Pitsidianakis | |
closes #120 | |||
2019-06-10 | ui: move Collection to Account | Manos Pitsidianakis | |
Each account had one mailbox per folder, which had one associated collection. Now each Account has one Collection for all folders and each Mailbox object holds only the hashes of each message. Collection also gets Threads for each folder in order to mix messages (ie from/to Sent folder). Insert Sent emails in chronological order if inserted unsorted, mails a, b with a happened-before b, might never get added. Fix multiple insertions in ThreadTree upon insert_reply insert_reply was creating multiple copies in threading | |||
2019-06-10 | melib: track modified paths in maildir | Manos Pitsidianakis | |
Keep modified path status in maildir to prevent not-found panics | |||
2019-06-10 | End of line in grapheme_clusters? | Manos Pitsidianakis | |
2019-06-10 | move grapheme stuff to melib | Manos Pitsidianakis | |
2019-06-10 | melib: dont allocate new string | Manos Pitsidianakis | |
2019-06-10 | ui: toggle thread snooze flag | Manos Pitsidianakis | |
snooze field translated to whether the user wants to be notified of new email in the thread or not. This is toggled with an (temp) EX cmd: `toggle_thread_snooze` closes #112 | |||
2019-06-10 | save Account to disk | Manos Pitsidianakis | |
closes #114 | |||
2019-06-10 | fix warnings and lints | Manos Pitsidianakis | |
2019-06-10 | ui: draw thread arrows correctly in other sortings | Manos Pitsidianakis | |
thread arrows in ThreadListing weren't drawn correctly when subsorting was changed (eg date -> subject) has_sibling was delegated to ThreadsIterator. | |||
2019-06-10 | melib: return $val in debug! | Manos Pitsidianakis | |
2019-06-10 | ui: add "application/pgp-signature" content type | Manos Pitsidianakis | |
2019-06-10 | melib: format maildir/backend.rs | Manos Pitsidianakis | |
2019-06-10 | melib: drop MutexGuard before calling add_path_to_index | Manos Pitsidianakis | |
In some cases add_path_to_index was called with the mutex already held, and a deadlock occurred. | |||
2019-06-10 | melib: detect plain text in multipart/alternative | Manos Pitsidianakis | |
2019-06-10 | melib: link threads with empty intermediates | Manos Pitsidianakis | |
A thread's chain link would get broken when empty intermediate ThreadNodes exist. The pruning of the empty node did not properly chain the empty node's parent with the empty node's children. Old behaviour: - [A] /* [B] is missing */ - [C] /* [D] is missing */ - [E] New behaviour (`x` represents deleted links) - [A] | |xxx> [empty node of B] | x | x | \/ |_______>[C] | |xxx> [empty node of D] | x | x | \/ |_______>[E] | |||
2019-06-10 | melib: fix address_spec parse without displayname | Manos Pitsidianakis | |
addresses like "<user@domain.tld>" were parsed as "ser@domain.tld". Fix this by checking for displayname length. | |||
2019-06-10 | melib: keep old_hash in Collection temporarily | Manos Pitsidianakis | |
When renaming envelopes, keep old_hash in collection until we receive an EnvelopeRename event in ui | |||
2019-06-10 | add literal print to debug! | Manos Pitsidianakis | |
2019-06-10 | melib: fix typo and unused val | Manos Pitsidianakis | |
2019-06-10 | melib: multipart/mixed with html messages not displayed as html | Manos Pitsidianakis | |
2019-06-10 | add name in single var print in debug! | Manos Pitsidianakis | |
2019-06-10 | add debug! macro to replace eprintlns | Manos Pitsidianakis | |
2019-06-10 | ui: watch root_folder instead of every folder | Manos Pitsidianakis | |
2019-06-10 | ui: file_name() does not return full file_name | Manos Pitsidianakis | |
move_to_cur doesn't retain the full envelope name when moving | |||
2019-06-10 | ui: Refer to child/parents with FolderHash in BackendFolder | Manos Pitsidianakis | |
- use a stack to build folder order list in conf/accounts.rs - update side menu print | |||
2019-06-10 | melib: fix debug prints not debug-build only | Manos Pitsidianakis | |
2019-06-10 | melib: encode header values | Manos Pitsidianakis | |
closes #102 | |||
2019-06-10 | melib: add fqdn to MID | Manos Pitsidianakis | |
2019-06-10 | melib/ui: refer to Folders by FolderHash | Manos Pitsidianakis | |
2019-06-10 | ui: remove debug_log feature, add log positions | Manos Pitsidianakis | |
2019-06-10 | ui: fix `editing messages duplicates headers` | Manos Pitsidianakis | |
closes #94 | |||
2019-06-10 | melib: create new threadnode if it's missing inside rebuild_thread | Manos Pitsidianakis | |
2019-06-10 | ui: make Composer account specific | Manos Pitsidianakis | |
2019-06-10 | ui: make html filter optional in config | Manos Pitsidianakis | |
closes #92 | |||
2019-06-10 | Run clippy for 2018 edition | Manos Pitsidianakis | |
2019-06-10 | run cargo fmt | Manos Pitsidianakis | |
2019-06-10 | update to 2018 edition | Manos Pitsidianakis | |
2019-06-10 | melib: fix invalid folder hierarchy in Backend::folders() | Manos Pitsidianakis | |
2019-06-10 | melib: fix crash in node_build( | Manos Pitsidianakis | |
2019-06-10 | melib: fix duplication of thread nodes in update envelope event | Manos Pitsidianakis | |