Dirk-Jan C. Binnema
08890dee2d
lib/sexp: Clean up contact name/email
...
Don't allow control characters.
Fixes : #1944 .
2021-03-16 17:10:35 +02:00
Dirk-Jan C. Binnema
f56aca7c23
lib/contacts: Use remove_ctrl
...
Use the new helper function rather than `wash'.
2021-03-16 17:09:37 +02:00
Dirk-Jan C. Binnema
15aca5e396
utils: cleanup whitespace
2021-03-16 17:07:39 +02:00
Dirk-Jan C. Binnema
725826231f
utils: Add remove_ctrl
...
Add a helper function to remove control characters / multi-spaces, and a
test.
2021-03-16 16:51:01 +02:00
Dirk-Jan C. Binnema
6e9a60c385
mu: fix some compiler warnings
...
and whitespace.
2021-03-12 22:20:48 +02:00
Dirk-Jan C. Binnema
98abcf8e84
store: support in-memory database
...
For testing, this is faster / and doesn't pollute the file system.
2021-02-16 19:32:15 +02:00
Dirk-Jan C. Binnema
98a742e5e5
query: honor maxnum in threaded searches
2021-02-15 22:45:33 +02:00
Dirk-Jan C. Binnema
45655da948
mu-msg-file: calculate sha1 for messages
...
And use this to generate a message-id for messages that do not have one.
2021-02-15 22:29:38 +02:00
Dirk-Jan C. Binnema
108a33f16e
query: avoid expected warning
...
Remove some debug leftover.
2021-02-15 21:43:47 +02:00
Dirk-Jan C. Binnema
579f841bdd
query: filter out docs without query-matches
...
This avoid including unwanted messages in threaded results.
Also some cleanups.
2021-02-15 19:11:22 +02:00
Dirk-Jan C. Binnema
bba8af8d51
mu-query: tweaks threaded/threaded querying
2021-02-13 00:48:07 +02:00
Dirk-Jan C. Binnema
50511a7460
mu-query: update deciders (avoid warning)
...
Don't report non-warning.
2021-02-12 23:48:02 +02:00
Dirk-Jan C. Binnema
ffc809a01e
query: improve thread-key-maker
...
For threading, we still get the _full_ set of messages (since the mset is
limited, but not the enquire); so no need to warn about docids we
haven't seen before.
Also, ensure the unwanted docids are sorted after the wanted ones.
Fixes : #1926 .
2021-02-12 19:14:37 +02:00
Dirk-Jan C. Binnema
7a70942e67
build: experimental support for the meson build system
2021-02-12 00:49:35 +02:00
Dirk-Jan C. Binnema
a3c6e74869
lib: replace some #define with constexpr
...
minor cleanup.
2021-02-11 18:54:25 +02:00
Dirk-Jan C. Binnema
936fd3f485
mu-query: sort "related" input by date
...
When doing 'related' searches, sort the initial (bounded) query results
by date, so we get the newest (or oldest)
2021-02-10 22:04:42 +02:00
Dirk-Jan C. Binnema
6ff9829ce1
lib: improve threaded sorting
...
Improve threaded sorting:
- rework the recursive algo (which should a crash noted earlier)
- sort by thread key (as in 1.5.7)
Fixes : #1923
Fixes : #1922
Fixes : #1911
Fixes : #1916
2021-02-10 12:35:19 +02:00
Dirk-Jan C. Binnema
ba895bc65e
mu-query-result: detect thread-subjects
...
Ongoing... try to determine the thread-subject, to be used in mu4e
later.
2021-01-29 22:44:45 +02:00
Dirk-Jan C. Binnema
fdcbc5257d
query-match-deciders: mark as leader / related
...
So we can use that as metadata later
2021-01-29 22:41:59 +02:00
Dirk-Jan C. Binnema
ad86e2c4fc
mu-contacts: cosmetic
2021-01-29 22:41:12 +02:00
Dirk-Jan C. Binnema
72fdfec3eb
lib: clean up mu_msg_to_sexp API
...
move out the QueryMatch
2021-01-29 22:39:21 +02:00
Dirk-Jan C. Binnema
e5a52e45fd
mu-threads: improve sorting, duplicate handling
...
And add some more tests.
2021-01-27 22:28:58 +02:00
Dirk-Jan C. Binnema
7f70149c95
threads: don't assert on remove_child
...
Investigate this, seems to hit in the wild.
2021-01-25 21:44:02 +02:00
Dirk-Jan C. Binnema
3e64fdfb0f
threads: avoid assert
...
The assert failure was spotted in the wild... we need to investigate,
but we can ignore it now to avoid SIGABRT.
2021-01-25 18:11:50 +02:00
Dirk-Jan C. Binnema
086999c2d1
query: in related/threaded mode, search all
...
In the related query, search _all_ messages, not just the amount asked;
this increases the chance of full threads.
2021-01-25 10:12:48 +02:00
Dirk-Jan C. Binnema
cec25d3166
query: fix some typos
2021-01-25 10:11:46 +02:00
Dirk-Jan C. Binnema
01db0a4269
Merge pull request #1910 from rhgg2/contact-less-than-antisymmetric
...
Make order relation on contacts antisymmetric
2021-01-23 10:57:33 +02:00
Dirk-Jan C. Binnema
451fa65ffb
build: fix compiler flags
2021-01-23 01:00:47 +02:00
Richard Garner
f65bb4196c
Make order relation on contacts antisymmetric
2021-01-23 09:07:35 +11:00
Dirk-Jan C. Binnema
3db19ce92b
mu-msg-sexp: Improve list-post regexp
...
This should catch some more addresses.
Fixes : #1909 .
2021-01-22 23:24:53 +02:00
Dirk-Jan C. Binnema
035a10ab49
remove obsolete threading tests
2021-01-22 23:24:53 +02:00
Dirk-Jan C. Binnema
98744c66f7
remove some dead code
2021-01-22 23:24:53 +02:00
Dirk-Jan C. Binnema
36684c9e97
mu: use sha-1 for fallback msgid
...
We were using a hash based on the path, but it's better to have
something that's constant even if the path chnages.
2021-01-22 22:53:35 +02:00
Dirk-Jan C. Binnema
af386824f2
contacts: remove some dead code
2021-01-22 22:53:35 +02:00
Dirk-Jan C. Binnema
fb34824232
contacts: only sort recent contacts by recency
...
Fixes : #1857
2021-01-22 22:51:33 +02:00
Dirk-Jan C. Binnema
e282d80bc0
lib: Update for new querying machinery
...
Port to c++ and use new APIs.
2021-01-22 22:51:33 +02:00
Dirk-Jan C. Binnema
95dffb98a6
query: Rework querying/threading machinery
...
Rewrite the query machinery in c++:
- use an MSet decorator instead of the mu-msg-iter stuff
- use mu-query-decider to mark duplicates/unreadable/related messages
- use mu-query-threader to replace the older container/thread code
Algorithm did not substantially change, but the implementation details
did.
2021-01-20 14:09:04 +02:00
Dirk-Jan C. Binnema
a3865d6ba9
index: wait with cleanup until work-queue is empty
2021-01-15 21:07:38 +02:00
Dirk-Jan C. Binnema
0ebf456612
lib: comment out some future unit test
...
Don't break the build!
2020-12-05 12:20:19 +02:00
Dirk-Jan C. Binnema
ecafe54c99
parser: restore most unit tests
2020-12-05 11:42:54 +02:00
Dirk-Jan C. Binnema
3010e614a3
parser: using correct field for regexp expansion
...
Fixes : #1848
2020-12-05 11:42:54 +02:00
Dirk-Jan C. Binnema
d0e357c150
utils: Improve option/result types
...
And add the beginnings of unit tests.
2020-11-28 10:46:38 +02:00
Dirk-Jan C. Binnema
4b6d9a0ce8
utils: add RAII stopwatch
...
For benchmarking
2020-11-28 10:46:38 +02:00
Evan Klitzke
bd2fe50a74
use readdir(3) instead of deprecated readdir_r(3) in mu-maildir.c
2020-11-15 12:46:59 -08:00
Dirk-Jan C. Binnema
7d6475758c
scripts: using GUILE_BINARY from configure
...
I.e., do not hard-code guile-2.2, it may be guile-3.0 instead.
2020-11-15 17:20:52 +02:00
Dirk-Jan C. Binnema
c8b507f826
mu: remove obsolete MU_FEATURE_CRYPTO
2020-11-15 17:20:52 +02:00
Dirk-Jan C. Binnema
3f4e0cff62
mu-indexer: clean up state management
2020-11-15 17:20:52 +02:00
Dirk-Jan C. Binnema
558add3843
mu-msg: cosmetic
2020-11-15 17:20:52 +02:00
Dirk-Jan C. Binnema
702a1d8452
utils: add Result / Option types
...
Add some Rust-style Result/Option types, based on TartanLlama's
expected, optional classes.
There's std::optional of course, but we can't depend on C++17 yet.
2020-11-15 17:20:52 +02:00
Dirk-Jan C. Binnema
a1d1619bda
use c++ for some more sources
...
Do a (superficial) port to c++ of some of the c sources. Update
deps. Fix a few compiler warnings.
2020-11-07 14:11:59 +02:00