Commit Graph

1212 Commits

Author SHA1 Message Date
Dirk-Jan C. Binnema bb5c36c658 tests: add some very basic CLD2_TEST
just to check if it works at all; no need to check cld2 at all.
2024-03-01 23:05:33 +02:00
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 dcbcd697f4 mu-init: insist that --maildir is absolute 2024-02-26 01:08:44 +02:00
Dirk-Jan C. Binnema 915335fd76 tests: check setlocale return value
It might fail while nl_langinfo does not.
2024-02-25 17:11:29 +02:00
Dirk-Jan C. Binnema 5a763af970 lib/mu-store: don't assume non-empty in remove_slash
HT: Arsen Arsenović

Fixes #2633.
2024-02-25 17:11:29 +02:00
Dirk-Jan C. Binnema 62f0a9a902 lib/mu-xapian-db: handle exception with dec_transaction_level
I.e., do our book-keeping beforehand.
2024-01-23 19:15:30 +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 b4c768e6d0 mu-init: guess maildir when --maildir is missing
Re-instate the guessing that's in the manpage. Add unit tests.
Update documentation.

Fixes #2616.
2024-01-01 10:33:03 +02:00
Dirk-Jan C. Binnema 8366e009cb xapian-db: handle doc-not-found error in catch handler 2023-12-31 07:50:54 +02:00
Dirk-Jan C. Binnema bae290e718 server: perform_move: throw when message not found
Warning & continuing is not the right thing...
2023-12-31 07:49:56 +02:00
Dirk-Jan C. Binnema 1999d9e6ef compose: remove server-side handling
It's no longer needed: composition happens on the mu4e side only (until
a message is saved).
2023-12-29 23:23:13 +02:00
Dirk-Jan C. Binnema f3f4ea65ab xapian-db: improve some error messages
Correctly handle re-opening a transaction after one has finished.

Recognize some database opening errors and give some better user hints.

Fixes #2615.
2023-12-29 22:28:10 +02:00
Dirk-Jan C. Binnema 146b80113f lib: move transaction handling to mu-xapian
Instead of handling transactions in the store, handle it in xapian-db.
Make the code a bit more natural / cleaner-out

Handle transaction automatically (with a batch-size) and add some RAII
Transaction object, which makes all database interaction transactable
for the duration. So, no more need for explicit parameters to
add_message while indexing.
2023-12-22 21:24:41 +02:00
Dirk-Jan C. Binnema 25776da557 mu-result: small tweaks 2023-12-13 21:48:43 +02:00
Dirk-Jan C. Binnema 8bdf6b42a2 lib: debug-log moving / unlinking 2023-12-06 20:29:27 +02:00
Dirk-Jan C. Binnema 6dac4423e2 mu-contacts: remove some debug logging 2023-10-30 22:55:37 +02:00
Dirk-Jan C. Binnema de302e7609 lib/tests: add one more foo-bar regexp test 2023-10-29 17:16:05 +02:00
Dirk-Jan C. Binnema 51ecf46d81 wip: xapianizer unit tests 2023-10-14 16:25:58 +03:00
Dirk-Jan C. Binnema f4a930cd19 lib: query-processor: fix handling unknown flags
Fixes #2567.
2023-10-09 23:50:08 +03:00
Dirk-Jan C. Binnema fcd89039eb expand_path: better handle paths with spaces
I.e., work around surprising behavior of wordexp

Fixes #2566.
2023-10-07 00:18:56 +03:00
Dirk-Jan C. Binnema ee18c02762 maildir: improve unit tests
And get some more info from run_command.
2023-09-24 21:33:18 +03:00
Dirk-Jan C. Binnema 4a0eba8ddf improve unit tests 2023-09-24 20:21:57 +03:00
Dirk-Jan C. Binnema e16e1f78ce command-handler: more unit tests 2023-09-24 17:29:56 +03:00
Dirk-Jan C. Binnema fa22fc28d9 error: more unit tests 2023-09-24 17:29:56 +03:00
Dirk-Jan C. Binnema abb0fb4fd5 utils/add: improve unit test coverage 2023-09-24 17:29:56 +03:00
Dirk-Jan C. Binnema b0dca49dc0 store: better handling moving messages
sort results (for testing)

with the ChangeName flag, also apply to dup messages.
2023-09-24 17:29:56 +03: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 1a3dc46866 lib: maildir/store: more tests 2023-09-23 09:28:45 +03:00
Dirk-Jan C. Binnema 655a6b0499 lib: xapian-db/config: more tests
...and xapian-db gets a small API update, update store as well.
2023-09-23 09:27:46 +03:00
Dirk-Jan C. Binnema 11003000e8 mu: log warning when exiting with error 2023-09-23 09:26:37 +03:00
Dirk-Jan C. Binnema 04e3a2f9a8 mu-utils: improve tests 2023-09-21 23:41:15 +03:00
Dirk-Jan C. Binnema 6ce94ce914 mu-utils: add to_string_view 2023-09-21 23:41:15 +03:00
Dirk-Jan C. Binnema 8ba153067b mu-maildir: use the new run_command0
And fix some docstrings.
2023-09-21 23:41:15 +03:00
Dirk-Jan C. Binnema b771fd6394 query-parser: handle naked NOT, add tests
We weren't correctly expanding "naked NOT" -> AND_NOT

Fixes #2559.
2023-09-21 19:29:59 +03:00
Dirk-Jan C. Binnema 1df4452ff3 server: properly delete output-stream files
logic inversion
2023-09-20 21:35:55 +03:00
Dirk-Jan C. Binnema 24add72126 mu-file-utils: add run_command0
To ensure command ran and had exit-code=0 in one go.
2023-09-19 22:26:45 +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 472f69beb2 utils-file: default args for canonicalize_filename / determine_dtype
Make a little easier to use
2023-09-19 22:26:30 +03:00
Dirk-Jan C. Binnema b5b90a0673 query-parser: 'not' should take units
NOT should bind more tightly.
2023-09-19 22:11:18 +03:00
Dirk-Jan C. Binnema 5bda8c321b query: move phrasification to mu-query-parser
Do the "phrasification" for matching fields later during query parsing;
this allows for handling combination fields correctly.

Also match both the normal term and the "phrase term", so we catch more
cases. Update/extend unit tests.

This fixes the "kata-container" issue also for body test.

Fixes #2167.
2023-09-17 18:11:21 +03:00
Dirk-Jan C. Binnema 7cbab21099 utils: add utf8_wordbreak
Determine if a string has wordbreaks in a mostly Xapian-compatible way.
We need this to determine what strings should be considered "phrases".
2023-09-17 18:11:10 +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 a2046dc2b1 mu-index: add blocking start()
Useful for unit tests
2023-09-16 11:12:16 +03:00
Dirk-Jan C. Binnema c78dafd723 provide end-user hints and show them
Only a few for now.
2023-09-16 11:12:16 +03:00
Dirk-Jan C. Binnema 3123f3e983 mu-error: allow for adding end-user hints 2023-09-16 11:12:16 +03:00
Dirk-Jan C. Binnema 0a12b70d7b utils-file: improve mu_play
implement in terms of run_command
2023-09-13 23:03:51 +03:00
Dirk-Jan C. Binnema 9dcbe1d96c lib: unit tests: improve / better coverage 2023-09-13 23:02:53 +03:00
Dirk-Jan C. Binnema 7c16d080d2
Merge pull request #2552 from dme/devel/misc
mu: Fix "expected command" server error report
2023-09-12 22:28:30 +03:00
Dirk-Jan C. Binnema 2f5602b938 unit tests: improve
and add a new one for the indexer
2023-09-12 21:38:57 +03:00