1
0
mirror of https://github.com/djcb/mu.git synced 2024-06-20 06:46:50 +02:00
Commit Graph

103 Commits

Author SHA1 Message Date
Dirk-Jan C. Binnema
0ff1f40679 message: allow extracting message parts to file
And add unit-test.

Fixes #2467
2023-04-06 07:50:28 +03:00
Dirk-Jan C. Binnema
a156b52ddd mu: allow relative message paths in mu commands 2023-04-06 07:50:21 +03:00
Dirk-Jan C. Binnema
f3c3811818 message: fix user-after-scope in test 2023-03-24 23:24:19 +02:00
Dirk-Jan C. Binnema
96e16034c7 contact: fix quoting
Ensure that addresses with commas are quoted. Don't 2047-encode though.

Update tests.
2023-03-14 06:18:56 +02:00
Dirk-Jan C. Binnema
413a2564b6 server: don't encode addresses in contacts_handlers
Seems it doesn't always play nice with composer
2023-02-28 23:23:52 +02:00
Dirk-Jan C. Binnema
a50357966d mu: add müller test-case 2023-02-28 22:42:55 +02:00
Dirk-Jan C. Binnema
bd5ae78c49 mime-object: add missing include 2023-02-23 18:38:18 +02:00
Dirk-Jan C. Binnema
6da223fcb6 mu-message-part: rework cooked_filename a bit
Improve working, add a 'minimal' mode, and add some unit tests.
2023-02-19 10:47:50 +02:00
Dirk-Jan C. Binnema
abfa6f277c mu: index html text as if it were plain text
This is a bit of hack to include html text in results.

Of course, html text is not really plain text, so this is a bit of a
hack until we introduce some html parsing step.
2023-01-31 23:41:57 +02:00
Dirk-Jan C. Binnema
a8daec9598 lib: use join_paths
Convert some manual concatenation to the new join_paths helper.
2023-01-29 10:13:29 +02:00
Dirk-Jan C. Binnema
86a641f748 mu-flags: use implied unread flag
and update tests.

Fixes #2409
2023-01-14 20:02:05 +02:00
Dirk-Jan C. Binnema
6979a66630 utils: get rid of mu-util.[ch]
It was getting old...
Remove the unused parts, refactor the few parts still in use.
2023-01-14 20:02:05 +02:00
Dirk-Jan C. Binnema
46a2432809 mu: test-message: add test for html text from base64 2023-01-13 22:06:19 +02:00
Dirk-Jan C. Binnema
07a69bf206 mu-contact: cosmetic 2022-12-30 15:14:17 +02:00
Dirk-Jan C. Binnema
2229e2e77e message/contact: ensure valid email address in cache
Filter out the (rare but existent) invalid email addresses from the
cache; use the new method Contact::has_valid_email for that.
2022-12-30 11:51:21 +02:00
Dirk-Jan C. Binnema
27ecbbdd65 many: use Mu::Regex instead of std::regex
The former is PCRE-compatible, and faster than std::regex.
2022-12-30 11:15:03 +02:00
Dirk-Jan C. Binnema
62cfc88950 flags: add flags_keep_unmutable + test
When moving we want to maintain _some_ flags; add a function making that
convenient.
2022-12-07 12:32:13 +02:00
Dirk-Jan C. Binnema
4d1352ec56 mu/options: Support date sortfield
Fixes #2368.
2022-11-22 23:16:37 +02:00
Dirk-Jan C. Binnema
58176f8438 message: updates for new sexp
Update for API changes.
2022-11-07 18:38:03 +02:00
Daniel Colascione
f0bba8e1fa message: use fake Message-ID when empty
Previously, mu generated a fake message ID for messages without a
Message-ID header. This fake message ID allows these messages to show in
an --include-related query. However, if a message contained a Message-ID
header with the value equal to the empty string, we did not generate a
fake message ID in the index, and consequently, these messages failed to
appear in an --include-related query. This change uses a fake message ID
when the Message-ID header is absent _or_ empty.
2022-10-24 23:14:17 +03:00
Dirk-Jan C. Binnema
822f49d41a mu-fields: fix string format 2022-10-17 07:33:23 +03:00
Dirk-Jan C. Binnema
3d97db8ffc view: be clearer there's no text body found
There may have been an html body, but mu-view only shows a text-body;
make that clearer.

Add a test case for an html-only message.

Fixes #2349.
2022-10-16 00:57:19 +03:00
Dirk-Jan C. Binnema
bb7c8d880a message: convert mime-parts to utf-8
Ensure that non-utf8 mime-parts are converted to utf8. This fixes a
problem with messages with such parts; added unit test.

Fixes #2333.
2022-09-19 18:27:03 +03:00
Dirk-Jan C. Binnema
e416a5215f autotools: remove
Since 2008, autotools has served us well - thank you!

However, mu is now using meson build, and it's time to remove the
autotools support -- one build system is enough.
2022-08-20 11:19:29 +03:00
Dirk-Jan C. Binnema
fc88158357 message: update references() implementation
Clean up the implementation at bit, and filter out 'fake' message-ids,
such as the ones from protonmail.

Update documentation.

Add Mu::Message::thread_id().

This fixes #2312.
2022-08-11 23:01:29 +03:00
Dirk-Jan C. Binnema
317fe53ff7 tests: update test helpers and users
Move test-mu-common to mu-test-utils. Use mu_test_init as a wrapper for
g_test_init. Update users.
2022-08-11 22:55:10 +03:00
Dirk-Jan C. Binnema
ed93ff4968 message: sanitize maildir
Remove trailing '/' in maildirs, since people have that (like "/foo/"),
and earlier version didn't complain about that.

Fixes #2298
2022-07-13 23:27:54 +03:00
Dirk-Jan C. Binnema
ca8836b631 document: cosmetic 2022-06-29 22:20:34 +03:00
Dirk-Jan C. Binnema
df80935c2e document: index some sub-parts as well
1. Also add 'normal' terms for some indexable fields
2. Add terms for e-mail address components

And add some tests.

This helps for some corner-case queries (see tests).

Fixes #2278
Fixes #2281
2022-06-29 08:00:43 +03:00
Dirk-Jan C. Binnema
0708033e48 build: update autotools build 2022-06-18 15:21:26 +03:00
Dirk-Jan C. Binnema
cade7493fd build: fix some compiler warnings 2022-06-18 15:21:26 +03:00
Dirk-Jan C. Binnema
1f9172a008 message: remove x-ms-has-attach check
Apparently, it's not very useful (marks sigs as attachments).
2022-06-16 22:50:36 +03:00
Dirk-Jan C. Binnema
40669aae49 message/mime-object: add MimeObject::headers
To get a list of all header values.
2022-06-10 23:28:43 +03:00
Dirk-Jan C. Binnema
1ec03ce07c message-file: filter out non-file flags
Only take flags from file names that are actually file-flags, not random other
things
2022-06-10 23:28:43 +03:00
Dirk-Jan C. Binnema
9bf580de3d message: refactor/improve attachment heuristic a bit
Also check for X-MS-Has-Attach
2022-06-10 23:28:43 +03:00
Dirk-Jan C. Binnema
39dcd08fbe message: add calendar flag
For message that contain calendar invitations
2022-06-10 00:47:31 +03:00
Dirk-Jan C. Binnema
49b97e1b6b message/fields: explicit mark contact fields as IndexableTerm
They were so *implicitly*, but the query parser needs the info so contact fields
can use phrase-searces, too.
2022-06-09 00:04:35 +03:00
Dirk-Jan C. Binnema
30c46fba61 message: fix 'changed' test 2022-06-05 15:22:35 +03:00
Dirk-Jan C. Binnema
172ff25bb6 mu-maildir: refactor some duplicate code
mu-flags & mu-maildir were having some duplicate code; refactor it into mu-message-file.{cc,hh}
2022-06-04 00:41:28 +03:00
Dirk-Jan C. Binnema
13f0e24241 lib: improve test coverage
Add a bunch of tests
2022-06-02 21:07:41 +03:00
Dirk-Jan C. Binnema
0adf91f821 fields: include references in sexp
We need them for setting up replies. This requires a db update.
2022-05-28 00:51:08 +03:00
Dirk-Jan C. Binnema
91dcd19dad tests: improve coverage a bit 2022-05-24 19:36:39 +03:00
Dirk-Jan C. Binnema
a3ad04f12f message: make it easier to create heap-allocated messages
We need this for guile to coöperate with its garbage collector.
2022-05-21 17:41:21 +03:00
Dirk-Jan C. Binnema
493549a896 mime-object: fix some pedantic compiler warnings 2022-05-18 00:14:01 +03:00
Dirk-Jan C. Binnema
5d9bb72c0b message: augment cache-path() so it supports subparts
Take an optional index parameter for a *subpart*.

This is for the case where we save attachments from a message (in particular,
when forwarding). We can't save them in the same directory for the (rare) case
when there are multiple attachments with the same name. And we don't want to
uniquify the name, since that shows up in e.g. the forwarded file name.

This can be solved by saving each in their own indexed subdir.
2022-05-15 11:28:48 +03:00
Dirk-Jan C. Binnema
bf9e083ed4 message: avoid shadowing variable 2022-05-14 12:47:01 +03:00
Dirk-Jan C. Binnema
907751bc7b test: enable some more 2022-05-13 23:01:33 +03:00
Dirk-Jan C. Binnema
eb22ec450c message: Don't assume there's a sub-message
Also add unit-test.

Fixes: issue #2256.
2022-05-12 19:59:10 +03:00
Dirk-Jan C. Binnema
5b5dbf3aae fields: some small tweaks 2022-05-12 08:56:13 +03:00
Dirk-Jan C. Binnema
7470a5f8ea store/fields: Use one MaxTermLength everywhere
One should be enough!
2022-05-09 22:25:28 +03:00