summaryrefslogtreecommitdiff
path: root/lib/message/mu-document.cc
AgeCommit message (Collapse)Author
2025-08-28mu-document: improve sexp updatingDirk-Jan C. Binnema
Ensure the cached message sexp gets updated in all cases where it's necessary.
2023-09-17fields: 'phrasable' instead of 'indexable'Dirk-Jan C. Binnema
'Phrasable' is probably a bit clearer description.
2023-09-09support xapian ngramsDirk-Jan C. Binnema
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-08-04mu-document: Make sexp() lazy (optimization)Dirk-Jan C. Binnema
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-07-25message: use html-to-text scraper for html partsDirk-Jan C. Binnema
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-08migrate to fmt-based logging in some more placesDirk-Jan C. Binnema
and improve logging.
2023-07-05update to use fmt-based apisDirk-Jan C. Binnema
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-01-31mu: index html text as if it were plain textDirk-Jan C. Binnema
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.
2022-11-07message: updates for new sexpDirk-Jan C. Binnema
Update for API changes.
2022-08-11tests: update test helpers and usersDirk-Jan C. Binnema
Move test-mu-common to mu-test-utils. Use mu_test_init as a wrapper for g_test_init. Update users.
2022-06-29document: cosmeticDirk-Jan C. Binnema
2022-06-29document: index some sub-parts as wellDirk-Jan C. Binnema
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-05-06message: cosmeticsDirk-Jan C. Binnema
2022-05-05message/document: update sexp on the flyDirk-Jan C. Binnema
Keep the sexp for the document up to date during scan / change, instead of having a separate step.
2022-05-05message/document: allow updating flagsDirk-Jan C. Binnema
Some flags (such as 'personal') can only be set just before storing; so allow for update the flags.
2022-05-05contacts: expose contact typeDirk-Jan C. Binnema
Instead of the Field::Id, keep a specific Contact::Type so we can distinguish Sender, ReplyTo as well. Update dependents. Some cleanup.
2022-04-30message:document/fields: update and tie downDirk-Jan C. Binnema
Update many of the field flags; remove obsolete ones. Ensure they are handled correctly in mu-document
2022-03-26message: update implementationDirk-Jan C. Binnema
Add more of the Message class (and various helpers), which are to replace all the `mu-msg-*` code. Add more tests.
2022-03-26message: move to lib/message, update namingDirk-Jan C. Binnema
Basically, move/rename lib/mu-message* to lib/mu-*. Add the beginnings of a Message class.