Commit Graph

2538 Commits (598a70f9df36a640345158ff15c779f9fa5fb3c3)
 

Author SHA1 Message Date
Manos Pitsidianakis 598a70f9df
CI: move lints.yaml actions to Makefile.lint
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
4 weeks ago
Manos Pitsidianakis 1b3f2732b2
CI: Move build.yaml actions to Makefile.build
So that they can easily be performed locally with

make -f .gitea/Makefile.build

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
4 weeks ago
Manos Pitsidianakis e6fa7093bf
view/envelope: trim headers values to 3 lines maximum
Prevent large header values (e.g. big list of recipients in To/Cc) take
big part of the view. Allow the full value to be visible when the
`expand_headers` option is toggled on.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
4 weeks ago
Manos Pitsidianakis 0b6988b7cf
gpgme: add always trust flag to encrypt op
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
4 weeks ago
Manos Pitsidianakis 23395491db
compose/pgp: add encrypt_for_self flag
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
4 weeks ago
Manos Pitsidianakis c82341f3af
File: try trimming filename if ENAMETOOLONG
Commit 8f0e1d6640 added human-readable
identifiers in temp draft files but neglected to handle cases where
those identifiers were too darn long.

Fixes: 8f0e1d664 ("Add human-readable identifiers in temp draft files")
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
4 weeks ago
Manos Pitsidianakis b1f24cbe95
view/filters: forward events on child filters
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
4 weeks ago
Manos Pitsidianakis a69122f8b0
pgp: use default sign/encrypt keys when no keys are selected
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
4 weeks ago
Manos Pitsidianakis 7cfcbb7ab1
Add patch_retrieve module
Allow patches to be retrieved from sources like lore.kernel.org or other
public-inbox instances.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 128b959f36
nntp: prepend Newsgroups header if missing on NntpType::submit()
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis b27bac7f85
nntp: use DEFLATE when available by default
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 6eeb4571b7
nntp: make all fields public
The backend structs are public, fields should be public too.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 9a9cd03d9d
nntp: add NntpType::article_message_id() method
Add a method to retrieve an article by message id.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 592ce15903
mbox: use Uuid::nil() as default envelope from
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis fc3308e428
melib: Add Mail::as_mbox() method
While at it, cleanup Debug impl to prevent printing huge byte arrays.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis b33433e457
Don't create backends as Box<dyn MailBackend>, but as Box<Self>
It's unnecessary and makes it difficult for an API consumer to turn a
backend back to its original type.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 5f120309f9
nntp: add select_group_by_name() method
Add NntpConnection::select_group_by_name() method.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 6bc0caf4e0
melib: remove redundant get_path_hash macro
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis d4636bcc70
nntp: interpret IMPLEMENTATION cap as metadata
When returning MailBackendCapabilities for an Nntp backend, interpret
the IMPLEMENTATION capability as server metadata.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis aaea3a5ab4
nntp: add timeout conf flag
To match IMAP and JMAP, add a configuration flag `timeout` to use for
server connections.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis b048c95a86
BUILD.md: add instructions for Android build
With termux's unofficial Rust toolchain package.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis f78884ce02
melib/nntp: fix an ancient FIXME
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 571ae390b8
pager.rs: don't set self dirty after filter selector
After generating a filter selector global dialog, there's no need to
set self as dirty.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 2ddd28ee85
main.rs: always send a JobFinished event to all components
JobFinished events were sent from account job handlers, but that means
the events would never be generated when using meli without accounts
e.g. with the `view` subcommand.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 7dbee81dad
view: fix nested filter jobs never being completed
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 46b2c3b1f7
Add listing.thread_layout config flag
Allows the user to set the default thread layout and takes the values
"auto" | "vertical" | "horizontal". The layout can always be changed at
runtime with the `listing.toggle_layout` shortcut.

Closes #484

Resolves: <https://git.meli-email.org/meli/meli/issues/484>
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis d0c81749ee
conf::data_types: minor style and error msg fixups
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis ba3ad8ed18
listing: always show mail_view_divider
`mail_view_divider` was only drawn in the path where the sidebar was
visible.

Concerns #483

Fixes: 719e2eb271 ("listing: add customizable view divider like sidebar's")
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 719e2eb271
listing: add customizable view divider like sidebar's
Closes #483

Resolves: <https://git.meli-email.org/meli/meli/issues/483>
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis b88dc4412b
Comment out `svgfeature`; no need to ship it
Svg feature was meant for taking SVG screenshots for the readme/website.
There's no real need to ship it, considering a lot of distros enable all
features by default.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis e9a72072bf
Remove unused/obsolete plugins code and mentions
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis c051190114
Update debian/meli.{docs,examples} and Cargo exclude
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis d20a9d0afa
Fix new clippy lints
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 601e37117c
Add vCard exports
Add shortcut to export contact under cursor in the contact list as a
.vcf file (default: `E`).

Also add an export button in the contact editor form.

Closes #424

Resolves: <https://git.meli-email.org/meli/meli/issues/424>
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis dc9e91df1f
contacts/editor: Use FormButtonAction in form
Instead of bool.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 6d520605ff
Vendor vobject crate
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 0c0f821000
Add a "move to Trash" shortcut
Add send_to_trash shortcut (default value: `D`) to send an entry or
selected entries to the Trash folder.

Closes #389

Resolves: <https://git.meli-email.org/meli/meli/issues/389>
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 8f0e1d6640
Add human-readable identifiers in temp draft files
Draft files that are created in temp directories to be opened and edited
by the user's editor get UUID filenames with the `.eml` extension. Give
them filenames with the draft subject, recipient and date to make it
easier to discern a file's identity on the filesystem.

Closes #466

Resolves: <https://git.meli-email.org/meli/meli/issues/466>
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis e9b87b2e40
melib/maildr: add rename_regex config option
Add optional rename_regex configuration option to allow stripping
patterns from pathnames when renaming them. This is useful when other
programs depend on specific substrings being unique like mbsync which
erroneously assumes UIDs are unique instead of UID+UIDVALIDITY+mailbox
name like the IMAP standard specifies.

Closes #463

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 4c44c440f6
melib: `#[ignore]` shellexpand tests
These tests fail sometimes, #[ignore] them until the bug is found.

Closes #442

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 5c4faea539
Add transpose shortcut and tests for text field
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 2af5c8b6fd
terminal: add QuerySynchronizedOutputSupport WIP
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 00236b86f6
docs: add meli.conf.examples(5) WIP
Closes #461

Resolves: <https://git.meli-email.org/meli/meli/issues/461>
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 90974e7c0d
imap: cache miss if row env hash != row hash
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 4a26cfa106
logging: disable `tracing` from output
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis cbafdcf734
terminal: color report WIP
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
1 month ago
Manos Pitsidianakis 7c056e4bdb
Retry loading mailbox on recoverable error
If a mailbox status is an error and it is recoverable (e.g. a connection
time-out) allow retrying.

Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2 months ago
Manos Pitsidianakis 8205c7f51a
melib: add JsContact module
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2 months ago
Manos Pitsidianakis ac1349b850
command: alias `pwd` to `cwd`
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2 months ago
Manos Pitsidianakis 32acc3474f
view: show signature verification properly
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
2 months ago