There was no point in using SmallVec with this large a size; it was
32768 bytes, or 32KiB. Let's allocate that to the heap instead.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Since 2af5c8b6fd ("terminal: add
QuerySynchronizedOutputSupport WIP") we send a synchronised output
support query [1] to the terminal but we don't parse the response. If the
terminal replies, it gets parsed as user input. And if the user happens
to press a navigation key such as scroll_down which supports a number
modifier, the `2026` part of the mode response which was parsed as user
input makes meli scroll down 2026 lines.
Fixes: #502 ("Initial navigation state in mailbox index view is wrong")
[1]:
<https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036>
Resolves: <https://git.meli-email.org/meli/meli/issues/502>
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
If ProgressSpinnerSequence / progress_spinner_sequence had a value of
just an array of strings, it could not be parsed correctly. Fix that
with a custom serde impl and also add unit tests.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Rename functions to follow the convention of being prefixed with the
module path before the function name (e.g. `fn
test_module_a_module_b_test_desc() {`)
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Update commit message entries to new format, by making commit sha
monospace and bold so that they take the same width in the list.
Also, make all commit messages be surrounded by ` to show them in
monospace as well; they might not always include English words but
identifiers and abbreviations instead.
Vim substitutions used:
- %s/- [[]\(........\)[]]/- \[**`\1`**\]/
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Add a helper script to generate a new release entry to add to
CHANGELOG.md when it's time to tag a new release.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
While there was a delete-mailbox command, there was no option for it in
the manage-mailboxes interface, so add it.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Don't accept new Display Messages if it has the same content as the
latest one in the display message stack.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Some stuff that are only used with gpgme feature were not guarded by
#[cfg(feature = "gpgme")], so fix that.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
base64 is used in melib::backends::utf7 without any sort of conditional
compilation. Make base64 a mandatory dependency.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Allow mbox to be built without the `notify` dependency. Add feature
`mbox-notify` to provide that instead.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Add an example for `fzf` use with the `add-attachment-file-picker < `
command when composing e-mail.
Closes#507
Resolves: <https://git.meli-email.org/meli/meli/issues/507>
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
When printing multipart boundaries, e.g.
`--bzz_bzz__bzz__xxxxxxxxxxxxxxxxxxxxxxxxxxx` after ending a sub-part,
ensure there's a CRLF already at the end of the accumulator string
before adding the `--...` boundary tag.
Fixes#503 ("Sending attachments does not work properly")
Resolves: <https://git.meli-email.org/meli/meli/issues/503>
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Selecting by searching for was missing for the threaded index style, so
add it.
Related to #513
Resolves: <https://git.meli-email.org/meli/meli/issues/513>
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Somehow, filter (searching) was not implemented for the threaded index
style, so fix it.
Fixes: #513
Resolves: <https://git.meli-email.org/meli/meli/issues/513>
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
The generated bindgen layout tests make hard-coded assumptions about
target specific sizes like pointers, let's disable them for now before
we figure out a better long-term solution for gpgme compatibility.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Meli previously returned only subscribed mailboxes for IMAP. This was
erroneous behavior for two reasons:
- the front end should be able to see all mailboxes because the user is
allowed to change subscription settings for remote mailboxes from the
manage-mailboxes interface
- special usage mailboxes, e.g. a Trash folder, would not be visible to
meli if it was not subscribed
Fixes#508.
Resolves: <https://git.meli-email.org/meli/meli/issues/508>
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
They were previously silently ignored despite tables (DataColumns)
having support for scrolling on the x axis.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Change select_entry to toggle only one's selection entry (default 'V'),
while select_motion (default 'v') inherits the original functionality of
performing a select motion when combined with a number and motion verb
(scroll up/down etc)
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Lift error checks earlier in the function, before forking, allowing any
potential errors to show up properly in the main process.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Ugh, annoying. It doesn't take the fact that markdown links do not
appear long when rendered. Anyway, fix them errors.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Semantically Composer actions should be tab actions since a composer is
a tab. Move them to a new enum in preparation for the next commit which
adds a new Discard draft action.
No functional change intended.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Move the components for :manage-jobs and :manage-mailboxes into the same
submodule, `manage`. No functional change intended.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Attempt to parse u64 hash from Blob column type. This is to fix a
regression from the frontend storing envelope hashes as big endian byte
blobs instead of an i64.
Fixes#504
Resolves: https://git.meli-email.org/meli/meli/issues/504
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Crate fails to build when dynamically linked.
The feature is implicitly enabled when statically linked,
as part of feature bundled-full.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Add config values to `composing` config section to enable signatures:
signature_file Path (optional) Plain text file with signature that will pre-populate an email draft. Signatures must be explicitly enabled to be used, otherwise this setting will be ignored. (None)
use_signature bool Pre-populate email drafts with signature, if any. meli will lookup the signature value in this order:
1. The signature_file setting.
2. ${XDG_CONFIG_DIR}/meli/<account>/signature
3. ${XDG_CONFIG_DIR}/meli/signature
4. ${XDG_CONFIG_DIR}/signature
5. ${HOME}/.signature
6. No signature otherwise.
(false)
signature_delimiter String (optional) Signature delimiter, that is, text that will be prefixed to your signature to separate it from the email body. (‘\n\n-- \n’)
Closes#498
Resolves: https://git.meli-email.org/meli/meli/issues/498
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>