Commit Graph

361 Commits

Author SHA1 Message Date
5e359fb739 mu: support '-V' for --version
And describe it in the man-page, which erroneously had '-v' which is
used for --verbose.

Fixes: #1927
2021-02-13 13:33:12 +02:00
7a70942e67 build: experimental support for the meson build system 2021-02-12 00:49:35 +02:00
58e4046cbd test-mu-query: fix MacOS compilation 2021-01-30 13:10:46 +02:00
7fe8b3fcbf test-mu-query: neuter test on non-linux for now
But warn.
2021-01-30 12:58:33 +02:00
72fdfec3eb lib: clean up mu_msg_to_sexp API
move out the QueryMatch
2021-01-29 22:39:21 +02:00
1b3fd722ef test-mu-query: avoid compiler warning 2021-01-27 20:17:20 +02:00
c8ab816b37 mu-find: don't pre/post none-message
This gives a runtime-error. Since some tools (like mu4e-alert) merge
stderr & stdout, they get confused.

Fixes: #1914.
2021-01-27 18:58:00 +02:00
7db2e527a8 mu: remove dead test-mu-runtime 2021-01-27 18:57:33 +02:00
9260e4cbe2 mu: avoid some compiler warnings 2021-01-24 14:43:38 +02:00
930adea3b2 test-mu-cmd: turn off unit-test
It breaks the CI test setup.
2021-01-23 00:50:23 +02:00
035a10ab49 remove obsolete threading tests 2021-01-22 23:24:53 +02:00
98744c66f7 remove some dead code 2021-01-22 23:24:53 +02:00
9a1e749cc5 threads: update unit tests 2021-01-22 22:51:33 +02:00
01ced9a356 mu: Update for new querying APIs 2021-01-22 22:51:33 +02:00
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
3ff8fd165f cmd-server: use std::fflush 2020-12-07 00:35:58 +02:00
0ef88af34e cmd-server: fflush before reading next line
Seems this is necessary on Windows/MSYS2. HT to juanjosegarciaripoll.
2020-12-06 17:04:10 +02:00
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
f7452761cb index: improve error handling 2020-11-07 11:43:11 +02:00
c7a874b8d6 lib: convert threader/container to c++
Did change the code much, but it's now compiled as c++
2020-11-07 11:43:11 +02:00
2804087b3a mu: use updated Query API 2020-11-04 23:35:30 +02:00
2135844e1b fix some compiler warnings 2020-11-01 14:25:25 +02:00
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
d2aa1f91b0 mu: support json output directly
Allow for dumping json directly from the Sexp structures, so we don't
need any external libs (i.e. json-glib) anymore.
2020-10-26 18:39:56 +02:00
38b5c25762 mu-index: make progress a bit smoother
Avoid the lock
2020-10-13 23:36:19 +03:00
d1b0938187 mu-cmd-cfind: include <array> 2020-08-15 11:04:36 +03:00
5402e00fc5 mu-cmd-find: don't mark rainbow constexpr
clang/libc++ don't allow constexpr:

```
mu-cmd-find.cc:498:40: error: constexpr variable cannot have non-literal type 'const std::array<Color, 6>' (aka 'const array<Mu::MaybeAnsi::Color, 6>')
        constexpr std::array<Color, 6> rainbow = {
```

So let's make it mere `const` instead.
2020-08-15 10:51:04 +03:00
857a4227a9 Fix mu help doesn't show the init command. Fix a sentence. 2020-08-14 00:00:54 +10:00
148c906d8a fix compilation error / clang warnings 2020-07-25 11:26:08 +03:00
092084b987 cmd: Update find, server for Sexp changes 2020-07-13 21:43:59 +03:00
c8eff488ba cosmetics 2020-06-27 17:07:00 +03:00
ba13a62e90 cmd-server: Update to use the new Indexer 2020-06-27 17:07:00 +03:00
f9415caab7 cmd-index: Use the new Indexer 2020-06-27 17:07:00 +03:00
10dbddec79 mu-cmd: Use the new Store API 2020-06-27 17:07:00 +03:00
4e6bd7dfdf lib/index: Implement new indexer
Implement a new message indexer consisting of a single-threaded scanner
and a multi-threaded indexer.

This allows for a number of optimizations as well as background
indexing, though this initial version should be behave similar to the
old indexer.
2020-06-27 17:07:00 +03:00
0e50bfc02c mu: better output
Improve the output of various mu commands
2020-06-27 17:07:00 +03:00
63a8c72b74 config: add message-size, batch-size option for init 2020-06-27 11:36:34 +03:00
c8e8004f29 server: show complete help by default
And add :terse to get a one-line description.
2020-06-27 10:24:37 +03:00
68533cee0d mu: use g_printerr for errors, instead of g_warning
With the new logging setup, we need g_printerr
2020-06-13 16:56:41 +03:00
9b2746dce5 server: use symbolic names with ':'
After the command-parser changes
2020-06-13 16:56:41 +03:00
3dc4b93989 mu4e/server: implement mark-as-read for (view ...)
Instead of a multi-step process to display an unread message (ie. get
the original, notice it's unread, then update it, replace the message
with update one etc.), we now handle that in the (view /./..) command on
the server side.

Simplifies things, and is faster (which could be noticeable, esp. if
e.g. signature verification is part of the process)
2020-06-13 16:56:41 +03:00
0b427e5ee8 server: use Mu::Store in c++ mode
I.e. Mu::Store instead of mu_store_*
2020-06-13 16:56:41 +03:00
a9fab4abcc mu: convert command-line tools to c++ 2020-06-13 16:56:41 +03:00
87eff66b7d test-mu-cmd: temporarily turn off test 2020-06-11 21:49:55 +03:00
9fa09f2c16 server: use sexp builder for return parameters
Generate sexps programmatically rather than with string-formatting,
using the new mu-sexp capabilities.
2020-06-06 14:27:25 +03:00
3afdc08d50 lib/utils: build s-expression programmatically building
Allow for programmatically buildings sexps, rather that using raw
strings.
2020-06-06 14:27:25 +03:00
3e233cba9a rework logging system
reimplement the old mu-log.[ch] into mu-logging.{cc,hh}

If available (and using an appropriately equipped glib), log to the
systemd journal

Only g_criticals have stderr output, all the other g_* go to the log
file / journal.
2020-05-30 13:29:44 +03:00
b60cfc7df2 mu-server: restore readline-support
Restore readline support for `mu server' (but _only_ when readline is
found and when in tty mode)
2020-05-25 18:34:42 +03:00
53b553124c Merge pull request #1663 from czan/master
mu: always sort descending within threads
2020-05-17 14:45:39 +03:00
564d892701 Fix typos 2020-05-12 23:56:55 +02:00