Commit Graph

926 Commits

Author SHA1 Message Date
Dirk-Jan C. Binnema 13f0e24241 lib: improve test coverage
Add a bunch of tests
2022-06-02 21:07:41 +03:00
Dirk-Jan C. Binnema 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
Dirk-Jan C. Binnema 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
Dirk-Jan C. Binnema 022ae9c2e3 result: make assert_valid_result a bit more informative
For unit tests.
2022-05-31 23:39:50 +03:00
Dirk-Jan C. Binnema ce1fea6302 store: log whether a message is 'personal' 2022-05-30 20:31:23 +03:00
Dirk-Jan C. Binnema 734445f78d mu-server: add a bit more debugging info 2022-05-30 20:30:33 +03:00
Dirk-Jan C. Binnema 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
Dirk-Jan C. Binnema d5632b9ac9 script: avoid compiler warning 2022-05-29 00:17:41 +03:00
Dirk-Jan C. Binnema ffcb59bfd3 utils: add fallback for time_to_string
Still don't understand issue #2230
2022-05-28 00:51:08 +03:00
Dirk-Jan C. Binnema ad6f8f1190 thirdparty: include in EXTRA_DIST
For autotools.
2022-05-28 00:51:08 +03:00
Dirk-Jan C. Binnema 5c161cfdbb lib/tests: add indexing benchmark 2022-05-28 00:51:08 +03:00
Dirk-Jan C. Binnema 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
Dirk-Jan C. Binnema 91dcd19dad tests: improve coverage a bit 2022-05-24 19:36:39 +03:00
Dirk-Jan C. Binnema 046398b1ae utils: avoid compiler warning 2022-05-24 19:36:21 +03:00
Dirk-Jan C. Binnema 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
Dirk-Jan C. Binnema 9c9f9ecae3 lib: improve coverage a bit 2022-05-23 23:55:11 +03:00
Dirk-Jan C. Binnema 8eac392221 guile: re-enable the guile support
Update for the internal (Mu::Message) APIs.

Update build.
2022-05-21 17:44:09 +03:00
Dirk-Jan C. Binnema 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
Dirk-Jan C. Binnema 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
Dirk-Jan C. Binnema cc63eca8ad autotools: improve build
*almost* works (except for guile/, which does work yet anyway).
2022-05-19 23:38:49 +03:00
Dirk-Jan C. Binnema cea3167f3e lib: remove some dead code (mu-str/utils)
Remove unused library code; recycle some electrons.
2022-05-19 23:38:49 +03:00
Dirk-Jan C. Binnema 9af9d0fa94 indexer/store: avoid completed callback
This cause havoc / race conditions.
2022-05-18 20:16:48 +03:00
Dirk-Jan C. Binnema c3778cd467 store: reset indexer in dtor
Clear it up as soon as possible.
2022-05-18 18:24:30 +03:00
Dirk-Jan C. Binnema 0be54119d8 store: stop indexer in dtor 2022-05-18 18:07:19 +03:00
Dirk-Jan C. Binnema 2fd133761f utils: fix unsetting timezone 2022-05-18 01:12:20 +03:00
Dirk-Jan C. Binnema b03590cca8 tests: skip missing timezones in queries, too 2022-05-18 01:08:40 +03:00
Dirk-Jan C. Binnema 33d30775ee test-utils: Skip test if timezone is not available 2022-05-18 00:52:28 +03:00
Dirk-Jan C. Binnema dbd15cf704 mu-maildir: don't allow empty path for new maildir
be a bit stricter.
2022-05-18 00:35:02 +03:00
Dirk-Jan C. Binnema 493549a896 mime-object: fix some pedantic compiler warnings 2022-05-18 00:14:01 +03:00
Dirk-Jan C. Binnema 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
Dirk-Jan C. Binnema 6e37790012 mu: improve error reporting 2022-05-15 13:40:44 +03:00
Dirk-Jan C. Binnema e13dd0da98 server: Implement forwarding attachments
Using the new infra in Message.
2022-05-15 11:33:14 +03:00
Dirk-Jan C. Binnema 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
Dirk-Jan C. Binnema 9e78d3d13f utils: insist on semicolon after MU_ENABLE_BITOPS 2022-05-14 12:47:26 +03:00
Dirk-Jan C. Binnema bf9e083ed4 message: avoid shadowing variable 2022-05-14 12:47:01 +03:00
Dirk-Jan C. Binnema 907751bc7b test: enable some more 2022-05-13 23:01:33 +03:00
Dirk-Jan C. Binnema 4edbe01aa0 indexer: add extra fsm state "finishing" to fix some races
As reported by helgrind
2022-05-13 23:00:20 +03:00
Dirk-Jan C. Binnema 201acfbbd3 store: add lock to index_complete
It must be protected.
2022-05-12 23:23:47 +03:00
Dirk-Jan C. Binnema 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
Dirk-Jan C. Binnema 5b5dbf3aae fields: some small tweaks 2022-05-12 08:56:13 +03:00
Dirk-Jan C. Binnema d79d770958 store: improve error handling
Detect store-lock
2022-05-12 08:56:13 +03:00
Dirk-Jan C. Binnema 34c5ca1627 mu-error: encode retval/flags in enum 2022-05-12 08:56:13 +03:00
Dirk-Jan C. Binnema 2e9666af0b store/info: Gather some usage statistics
Keep track of the latest-change/latest-index.
2022-05-10 08:16:47 +03:00
Dirk-Jan C. Binnema 81689f0af3 contacts-cache: return most relevant contacts
Return in the contacts in *reverse* rank order, i.e. the most relevant come first.
This is useful since we only want the first maxnum contacts, and those should of
course be the most relevant.

Update mu cfind/server as well.

cfind
2022-05-09 22:25:28 +03:00
Dirk-Jan C. Binnema 80d84bf635 store: use Result<Store> builder, add auto upgrade
Make it a Result type, and add auto-upgrade (not enabled yet)
Update dependents.
2022-05-09 22:25:28 +03:00
Dirk-Jan C. Binnema 7470a5f8ea store/fields: Use one MaxTermLength everywhere
One should be enough!
2022-05-09 22:25:28 +03:00
Dirk-Jan C. Binnema dc69505580 mu-maildir: No need for namespaced function names
Mu::mu_maildir_... -> Mu::maildir_...
2022-05-09 22:25:28 +03:00
Dirk-Jan C. Binnema 48311ea18d mu/mu4e: tweak :list vs :mailing list 2022-05-07 20:48:21 +03:00
Dirk-Jan C. Binnema 80c9ffae1e mu/mu4e: use :mailing-list as the mailing-list property
In queries you can use list: as before

This helps for issue #2246.
2022-05-07 16:10:52 +03:00
Dirk-Jan C. Binnema d79488efdc avoid warnings, update tests 2022-05-06 22:54:41 +03:00