Dirk-Jan C. Binnema
df0a33b97c
message: make sure HAVE_CLD2 is found
...
This broke the language detection code
2024-03-01 16:43:13 +02:00
Dirk-Jan C. Binnema
30b8238522
tests: move to tests/, make optional
...
While not recommended, sometimes it can be useful to disable building
the unit tests. This can be done now with
meson -Dtests=disabled build
2024-01-06 18:35:22 +02:00
Dirk-Jan C. Binnema
5d37c18d7d
lib: use flags_maildir_file
...
It's a better name. And fix some typos.
2023-09-24 17:29:56 +03:00
Dirk-Jan C. Binnema
2d20074b99
mu-move: add new move sub command
...
Add sub-command to move messages; add tests and docs.
Fixes #157
2023-09-24 17:29:08 +03:00
Dirk-Jan C. Binnema
ae87be6a48
flags: add flags_mail_dir_file util
...
And some whitespace cleanup
2023-09-19 22:26:45 +03:00
Dirk-Jan C. Binnema
94c90bd0c5
fields: 'phrasable' instead of 'indexable'
...
'Phrasable' is probably a bit clearer description.
2023-09-17 18:11:10 +03:00
Dirk-Jan C. Binnema
c8568eecd4
utils/file: add basename/dirname helpers and use them
2023-09-10 10:15:28 +03:00
Dirk-Jan C. Binnema
89ed21e0c5
lib: improve printability for some types
...
A little fmt pixie dust
2023-09-09 17:26:20 +03:00
Dirk-Jan C. Binnema
264bb092f0
support xapian ngrams
...
Xapian supports an "ngrams" option to help with languages/scripts
without explicit wordbreaks, such as Chinese / Japanese / Korean.
Add some plumbing for supporting this in mu as well. Experimental for
now.
2023-09-09 17:26:20 +03:00
Dirk-Jan C. Binnema
b2918e2bea
mu-priority: implement priority_from_name
2023-08-21 18:29:21 +03:00
Dirk-Jan C. Binnema
bd17c218fb
mu-flags: get flag-info for shortcut, too
2023-08-21 18:29:21 +03:00
Dirk-Jan C. Binnema
04219b55f7
message & friends: make formattable
...
So we can easily debug-print them.
2023-08-09 23:24:47 +03:00
Dirk-Jan C. Binnema
aea95b5be0
mu-server: use strings, not sexps object (optimization)
...
When passing messages to mu, often we got a (parsed from string)
message-sexp from the message document; then appended some more
properties ("build_message_sexp").
Instead, we can do it in terms of the strings; this is _a little_
inelegant, but also much faster; compare:
(base)
[mu4e] Found 500 matching messages; 0 hidden; search: 1298.0 ms (2.60 ms/msg); render: 642.1 ms (1.28 ms/msg)
(with temp-file optimization (earlier commit)
[mu4e] Found 500 matching messages; 0 hidden; search: 1152.7 ms (2.31 ms/msg); render: 270.1 ms (0.54 ms/msg)
(with temp file optimize _and_ the string opt (this commit)
[mu4e] Found 500 matching messages; 0 hidden; search: 266.0 ms (0.53 ms/msg); render: 199.7 ms (0.40 ms/msg)
2023-08-04 00:09:02 +03:00
Dirk-Jan C. Binnema
1018f0f0a1
mu-document: Make sexp() lazy (optimization)
...
This makes queries where we don't need the sexp much faster; e.g.
before:
mu find "a" --include-related 47,51s user 2,68s system 99% cpu 50,651 total
after:
mu find "a" --include-related 7,12s user 1,97s system 87% cpu 10,363 total
2023-08-04 00:09:02 +03:00
Dirk-Jan C. Binnema
b795242d5a
message: use html-to-text scraper for html parts
...
We were dumping the HTML-parts as-is in the Xapian indexer; however,
it's better to remove the html decoration first, and just pass the text.
We use the new built-in html->text scraper for that.
2023-07-25 21:26:36 +03:00
Dirk-Jan C. Binnema
7b38f094c4
migrate some more code to mu_format / join_paths
...
Let's modernize a bit.
2023-07-20 23:14:29 +03:00
Dirk-Jan C. Binnema
31f0c40893
migrate to fmt-based logging in some more places
...
and improve logging.
2023-07-08 10:30:36 +03:00
Dirk-Jan C. Binnema
75a2cab3f1
message: don't check language without cld2 support
...
No point in checking if we do not have the support.
2023-07-06 21:49:50 +03:00
Dirk-Jan C. Binnema
aed1395c53
lib/utils: update library paths
2023-07-05 23:14:34 +03:00
Dirk-Jan C. Binnema
4920b56671
update to use fmt-based apis
...
Not complete, but a first big stab converting users of Mu::Error and
various g_warning & friends, format to the new libfmt-based APIs.
2023-07-05 23:10:13 +03:00
Dirk-Jan C. Binnema
c5f3894374
message: double-check part-type in Multipart
...
Avoid exception for some messages (unsigned messages with signed
attachment).
2023-07-05 20:39:47 +03:00
Dirk-Jan C. Binnema
c6fff6a281
all: update for API changes (config etc.)
...
Use the new & improved APIs.
2023-07-02 00:06:56 +03:00
Dirk-Jan C. Binnema
0bdab5ae06
contact/display-name: quote "names" with '@'
...
Apparently, some mail servers want this, and gnus doesn't handle it
automatically.
2023-06-12 23:37:39 +03:00
Dirk-Jan C. Binnema
b9026c5042
message/fields: add some helpers for combination-fields
...
such as "recip" and "contacts".
2023-06-04 14:56:40 +03:00
Dirk-Jan C. Binnema
7f2eeb1010
message: try to detect body text language
...
Try to detect the language of the e-mail body and make it searchable.
2023-05-11 23:23:52 +03:00
Dirk-Jan C. Binnema
36d89f400f
message: remove control characters from subject
...
And add a unit-test.
Fixes #2477
2023-04-24 21:52:13 +03:00
Dirk-Jan C. Binnema
026a19bcfa
message: allow extracting message parts to file
...
And add unit-test.
Fixes #2467
2023-04-06 07:19:26 +03:00
Dirk-Jan C. Binnema
cd23e6015d
mu: allow relative message paths in mu commands
2023-04-06 07:19:26 +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