Commit Graph

32 Commits

Author SHA1 Message Date
Dirk-Jan C. Binnema 7822d2633e update contacts-cache users for MessageContact
Since contacts-cache now uses MessageContact, update its users
2022-02-21 23:51:46 +02:00
Dirk-Jan C. Binnema a82bd77d09 lib: rename contacts into contacts-cache
Plus dependents.
2022-02-21 23:22:42 +02:00
Dirk-Jan C. Binnema 80f947024a server: lock run_query
So the query-results don't outlive the lock.
2022-02-17 23:49:17 +02:00
Dirk-Jan C. Binnema 4eabf1a64a *: update for for mu-maildir changes
Update the dependencies.
2022-02-17 23:48:59 +02:00
Dirk-Jan C. Binnema 3820118246 store: rename "metadata" into "properties"
properties are the constant (for the duration) values for a store; metadata may
change, so reserve that name for that.
2022-02-14 11:12:26 +02:00
Dirk-Jan C. Binnema a0ec982789 mu4e/server: honor rename-move for view-message, too
It's technically a 'move', so apply user preference.
2022-02-13 14:33:12 +02:00
Dirk-Jan C. Binnema c3503ba663 server: flush the "indexing complete" message 2022-02-06 14:18:23 +02:00
Dirk-Jan C. Binnema 4d0ecf7f85 server: make indexing asynchronous
Perform indexing in a background thread.
2022-02-03 23:04:18 +02:00
Dirk-Jan C. Binnema b6d7d142f6 server: support flushing the output
So we can get some progress output
2022-02-03 23:04:18 +02:00
Dirk-Jan C. Binnema ebc9b88f80 store/query: update for new store/query api
Update to the new API.
2022-01-30 14:52:41 +02:00
Dirk-Jan C. Binnema dfe592ac4f mu-server: check for message readability
When querying, avoid showing any messages that do not exists on the file system.
2022-01-15 10:21:32 +02:00
Dirk-Jan C. Binnema e672f952a8 index: ignore .update when store is empty
This somewhat emulates the 1.4 behavior.
2021-11-11 21:58:23 +02:00
Dirk-Jan C. Binnema 503d7224e0 mu: update the index 'processed' -> 'checked'
The 'processed' statistic for indexing was more-or-less synonymous for
'updated'; let's change to something more useful, 'checked' which roughly means
the number of messages checked for updates (typically a cheap timestamp check).
2021-11-10 22:32:28 +02:00
Dirk-Jan C. Binnema f17995b113 lib/server: send query results in batches
Instead of one message (header) at a time, send batches of them; this allows for
much faster handling in mu4e.
2021-10-22 08:33:51 +03:00
Dirk-Jan C. Binnema 701ca75536 mu4e/server: split message / metadata
Split message and metadata, so we can use pristine (possibly pre-cached)
messages. Update dependencies.
2021-10-20 22:41:48 +03:00
Dirk-Jan C. Binnema 3dd721d5a3 clang-format: update c/cc coding style
Update all cc code using .clang-format; please do so as well for future PRs
etc.; emacs has a handy 'clang-format' mode to make this automatic.

For comparing old changes with git blame, we can disregard this one using
--ignore-rev

(see https://www.moxio.com/blog/43/ignoring-bulk-change-commits-with-git-blame )
2021-10-20 12:26:16 +03:00
Dirk-Jan C. Binnema e3080e39ab lib/mu-server: remove unneeded code
With the demise of the old mu4e-view, we can get rid of extract / verify.
2021-08-29 21:40:42 +03:00
Dirk-Jan C. Binnema e52683f0ed server: when marking-as-read, include duplicates
When marking a message a read, do the same for the duplicates; this
was the old behavior and the intention of the new behavior but didn't
quite work.

Fixes: #2071.
2021-08-04 23:55:41 +03:00
Dirk-Jan C. Binnema e26767b842 mu-server: mark _all_ messages with message-id as read
Not just the one we're viewing.
2021-08-03 22:17:56 +03:00
Dirk-Jan C. Binnema c8a2151cb9 mu: use g_strerror instead of strerror
Some #includes were missing for the latter (but only noticeable on some
systems - e.g., build breaks on Cygwin).

So let's replace with something that works equally everywhere.

Fixes: #2060
2021-07-29 00:02:30 +03:00
Nicolas Avrutin ee4bf5664a query: fix include-related.
mu-query.cc:
- make_related_enquire: don't include first query in qvec, we already have all
  thread IDs we need to query in thread_ds.
- run_related: always sort first query by date, explained by the comment.
- run_related: include qflags (in particular ascending vs descending) in
  leader_qflags.
- run_theaded: don't limit results to maxnum, that results in threads
  potentially being cut off.

mu-server.cc:
- output_sexp: don't limit results to maxnum so as to match the behaviour of
  mu find (and avoid cuttong off threads).

Fixes #1924 and #1911.
2021-07-11 16:23:39 -04:00
Dirk-Jan C. Binnema 473d3998ce mu: calculate thread subjects
Calculate the thread subject, that is, the subject of the (sub)thread _or_
empty if it's the same as the previous subject.

This is for the UI feature of _not_ showing the subject when it's just
repeating from the previous.
2021-05-04 17:34:47 +03:00
Dirk-Jan C. Binnema bed6058fdc mu-server: add thread-date as emacs timestamp
So we can more easily deal with it from elisp.
2021-05-02 23:30:32 +03:00
Dirk-Jan C. Binnema 38f7075daa mu-server: use orphan, not empty-parent
So we use only one term.
2021-05-02 23:30:32 +03: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 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 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 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 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
Dirk-Jan C. Binnema ed4a640c39 lib/query: refactor & rework
- Move the lib/query/ stuff up a level into lib/
- Associate directly with the Query object
- Rework the Query object to be C++ rather than mixed with C
- Update all dependencies, tests
2020-11-04 23:35:30 +02:00
Dirk-Jan C. Binnema 812b5c3e65 server: improve help output 2020-11-01 14:04:15 +02:00
Dirk-Jan C. Binnema aea64c4a08 mu/lib: refactor mu(-cmd)-server code
Split off the parsing/handling code from the mu command server into
mu-server, and only leave the external interface (the mu4e repl) in
mu-cmd-server.
2020-10-31 09:46:13 +02:00