4379e66b9f
bench-store-index: make a bit more realistic
...
```
.',;::::;,'. djcb@evergrey
.';:cccccccccccc:;,. -------------
.;cccccccccccccccccccccc;. OS: Fedora release 36 (Thirty Six) x86_64
.:cccccccccccccccccccccccccc:. Host: MS-7B09 2.0
.;ccccccccccccc;.:dddl:.;ccccccc;. Kernel: 5.17.11-300.fc36.x86_64
.:ccccccccccccc;OWMKOOXMWd;ccccccc:. Uptime: 6 hours, 16 mins
.:ccccccccccccc;KMMc;cc;xMMc:ccccccc:. Packages: 4340 (rpm), 70 (flatpak)
,cccccccccccccc;MMM.;cc;;WW::cccccccc, Shell: zsh 5.8.1
:cccccccccccccc;MMM.;cccccccccccccccc: Resolution: 3840x2160
:ccccccc;oxOOOo;MMM0OOk.;cccccccccccc: WM: sway
cccccc:0MMKxdd:;MMMkddc.;cccccccccccc; Theme: Adwaita [GTK2]
ccccc:XM0';cccc;MMM.;cccccccccccccccc' Icons: Adwaita [GTK2]
ccccc;MMo;ccccc;MMW.;ccccccccccccccc; Terminal: tilix
ccccc;0MNc.ccc.xMMd:ccccccccccccccc; CPU: AMD Ryzen Threadripper 1950X (32) @ 3.399GHz
cccccc;dNMWXXXWM0::cccccccccccccc:, GPU: AMD ATI Radeon RX 470/480/570/570X/580/580X/590
cccccccc;.:odl:.;cccccccccccccc:,. Memory: 7101MiB / 15881MiB
:cccccccccccccccccccccccccccc:'.
.:cccccccccccccccccccccc:;,..
'::cccccccccccccc::;,.
```
% make benchmark
ninja -C /home/djcb/Sources/mu/build benchmark
ninja: Entering directory `/home/djcb/Sources/mu/build'
[0/1] Running benchmark suite.
1/1 bench-store-index OK 17.40s
2022-06-07 23:06:25 +03:00
65e60a6ed5
indexer: make faster
...
Remove an (apparently) unneeded lock which help back much of the multi-core
handing.
2022-06-07 23:06:25 +03:00
30c46fba61
message: fix 'changed' test
2022-06-05 15:22:35 +03:00
3d3fd1aa7a
server: add some more logging for read-marking
...
See what happens with multiple messages.
2022-06-04 00:41:28 +03:00
d89820b26b
lib/tests: move tests to parent
...
Otherwise, the coverage checker won't notice them!
2022-06-04 00:41:28 +03:00
015a7ee0cb
utils: improve locale_workaround
...
Fixes : #2270 .
2022-06-04 00:41:28 +03:00
0fe8f9a613
mu-util-play: simplify
...
Remove some unused options
2022-06-04 00:41:28 +03:00
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
13f0e24241
lib: improve test coverage
...
Add a bunch of tests
2022-06-02 21:07:41 +03:00
a66360eda5
maildir: revamp unit tests
...
Re-enable many of the tests that were turned off, and update them for the new impl.
2022-05-31 23:43:13 +03:00
26d64ec78f
mu-maildir: fix message_file_parts / empty flags
...
Remove the suffix part even with no flags.
Fixes: issue #2268
2022-05-31 23:41:50 +03:00
022ae9c2e3
result: make assert_valid_result a bit more informative
...
For unit tests.
2022-05-31 23:39:50 +03:00
ce1fea6302
store: log whether a message is 'personal'
2022-05-30 20:31:23 +03:00
734445f78d
mu-server: add a bit more debugging info
2022-05-30 20:30:33 +03:00
5df56896fb
lib/meson.build: explicitly add thread_dep
...
For many setups (local, CI), things work fine without this, but apparently not
for all users. So, add thread_dep explicitly.
Fixes : #2266 .
2022-05-29 11:10:58 +03:00
d5632b9ac9
script: avoid compiler warning
2022-05-29 00:17:41 +03:00
ffcb59bfd3
utils: add fallback for time_to_string
...
Still don't understand issue #2230
2022-05-28 00:51:08 +03:00
ad6f8f1190
thirdparty: include in EXTRA_DIST
...
For autotools.
2022-05-28 00:51:08 +03:00
5c161cfdbb
lib/tests: add indexing benchmark
2022-05-28 00:51:08 +03:00
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
91dcd19dad
tests: improve coverage a bit
2022-05-24 19:36:39 +03:00
046398b1ae
utils: avoid compiler warning
2022-05-24 19:36:21 +03:00
277a7e0e10
guile: don't extern-c'ify libguile
...
Already has it... seems to break compilation on some machines?
2022-05-24 19:35:29 +03:00
9c9f9ecae3
lib: improve coverage a bit
2022-05-23 23:55:11 +03:00
8eac392221
guile: re-enable the guile support
...
Update for the internal (Mu::Message) APIs.
Update build.
2022-05-21 17:44:09 +03:00
ce46c44ea9
query-results: ease getting Xapian::Document for iter
...
This makes it easier to construct guile-usable Messages.
2022-05-21 17:42:25 +03:00
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
cc63eca8ad
autotools: improve build
...
*almost* works (except for guile/, which does work yet anyway).
2022-05-19 23:38:49 +03:00
cea3167f3e
lib: remove some dead code (mu-str/utils)
...
Remove unused library code; recycle some electrons.
2022-05-19 23:38:49 +03:00
9af9d0fa94
indexer/store: avoid completed callback
...
This cause havoc / race conditions.
2022-05-18 20:16:48 +03:00
c3778cd467
store: reset indexer in dtor
...
Clear it up as soon as possible.
2022-05-18 18:24:30 +03:00
0be54119d8
store: stop indexer in dtor
2022-05-18 18:07:19 +03:00
2fd133761f
utils: fix unsetting timezone
2022-05-18 01:12:20 +03:00
b03590cca8
tests: skip missing timezones in queries, too
2022-05-18 01:08:40 +03:00
33d30775ee
test-utils: Skip test if timezone is not available
2022-05-18 00:52:28 +03:00
dbd15cf704
mu-maildir: don't allow empty path for new maildir
...
be a bit stricter.
2022-05-18 00:35:02 +03:00
493549a896
mime-object: fix some pedantic compiler warnings
2022-05-18 00:14:01 +03:00
c4cc9795dc
utils: add locale_workaround
...
Attempt to work around some locale handling throwing in some systems.
"locale::facet::_S_create_c_locale name not valid"
Ugly, but maybe it helps.
2022-05-17 22:31:03 +03:00
6e37790012
mu: improve error reporting
2022-05-15 13:40:44 +03:00
e13dd0da98
server: Implement forwarding attachments
...
Using the new infra in Message.
2022-05-15 11:33:14 +03:00
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
9e78d3d13f
utils: insist on semicolon after MU_ENABLE_BITOPS
2022-05-14 12:47:26 +03:00
bf9e083ed4
message: avoid shadowing variable
2022-05-14 12:47:01 +03:00
907751bc7b
test: enable some more
2022-05-13 23:01:33 +03:00
4edbe01aa0
indexer: add extra fsm state "finishing" to fix some races
...
As reported by helgrind
2022-05-13 23:00:20 +03:00
201acfbbd3
store: add lock to index_complete
...
It must be protected.
2022-05-12 23:23:47 +03:00
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
5b5dbf3aae
fields: some small tweaks
2022-05-12 08:56:13 +03:00
d79d770958
store: improve error handling
...
Detect store-lock
2022-05-12 08:56:13 +03:00
34c5ca1627
mu-error: encode retval/flags in enum
2022-05-12 08:56:13 +03:00