1
0
mirror of https://github.com/djcb/mu.git synced 2024-06-29 07:51:04 +02:00
Commit Graph

203 Commits

Author SHA1 Message Date
Dirk-Jan C. Binnema
766d1849ff test-utils: add TempTz, RAII temporary timezone 2023-07-29 16:39:08 +03:00
Dirk-Jan C. Binnema
1f0342a91f mu-view: add unit-test 2023-07-28 19:43:46 +03:00
Dirk-Jan C. Binnema
dc29dc8395 html-to-text: add missing include <array> 2023-07-26 23:30:54 +03:00
Dirk-Jan C. Binnema
c06e765d13 html-to-text: be explicit with array type
clang in CI fails to deduce it, so let's help it a bit.
2023-07-26 23:24:29 +03:00
Dirk-Jan C. Binnema
56b8fad89e utils: implement html-to-text
Implement a crude html-to-text scraper function, to extract plain text
from html messages, so we can use it for indexing.
2023-07-25 21:26:36 +03:00
Dirk-Jan C. Binnema
11c807f955 utils/readline: use fmt-based apis 2023-07-25 21:26:01 +03:00
Dirk-Jan C. Binnema
9580d11fef utils/result: add std::move version of Err
Avoid a copy in some situations
2023-07-25 21:26:01 +03:00
Dirk-Jan C. Binnema
6ad5cccc53 store/index: and unit test for circular symlink
Check that we bail out early
2023-07-18 23:18:21 +03:00
Dirk-Jan C. Binnema
cf6c5a36d7 utils: rework running system commands
Use g_spawn and pass arguments, so we don't involve a shell that needs
escaping etc.

Improve error handling.
2023-07-18 20:19:27 +03:00
Dirk-Jan C. Binnema
6f69f5d482 utils/mu-regex: add move constructor 2023-07-11 22:54:01 +03:00
Dirk-Jan C. Binnema
cc65b8b401 utils: add some more helpers for test code
Creating and removing (temp) dirs, running mu commands.
2023-07-10 23:15:40 +03:00
Dirk-Jan C. Binnema
904f64aa03 utils/result: add "unwrap" convenience function 2023-07-10 23:15:40 +03:00
Dirk-Jan C. Binnema
31f0c40893 migrate to fmt-based logging in some more places
and improve logging.
2023-07-08 10:30:36 +03:00
Dirk-Jan C. Binnema
82235b9d49 fmt: more update to use new fmt-based APIs 2023-07-06 21:49:50 +03:00
Dirk-Jan C. Binnema
e48485cb58 sexp: use fmt for parsing_error
Should help with Apple clang build too.
2023-07-05 23:40:36 +03:00
Dirk-Jan C. Binnema
aed1395c53 lib/utils: update library paths 2023-07-05 23:14:34 +03:00
Dirk-Jan C. Binnema
4920b56671 update to use fmt-based apis
Not complete, but a first big stab converting users of Mu::Error and
various g_warning & friends, format to the new libfmt-based APIs.
2023-07-05 23:10:13 +03:00
Dirk-Jan C. Binnema
742ca33740 utils: rework Mu::Error and g_ logging macros with fmt
A bit more C++ template magic to remove a lot of code.
2023-07-05 23:07:11 +03:00
Dirk-Jan C. Binnema
c6fff6a281 all: update for API changes (config etc.)
Use the new & improved APIs.
2023-07-02 00:06:56 +03:00
Dirk-Jan C. Binnema
c28fde9155 lib: create mu-xapian-db, mu-config
XapianDb is a fairly thing wrapper around Xapian, which handles locking,
exception handling and some tracking.

On top of that, Config add a configuration database for type /
introspectable configuration info.
2023-07-02 00:06:56 +03:00
Dirk-Jan C. Binnema
fd7c011195 lib: update for api changes, update tests
With the new Sexp. And expand unit tests.
2023-06-27 00:53:23 +03:00
Dirk-Jan C. Binnema
ae9607530f utils/sexp: extend and improve tests
Extend functionality for parsing; update documentation, tests.
2023-06-27 00:52:07 +03:00
Dirk-Jan C. Binnema
9bab2a4050 utils/sexp: add some convenience
Add some convenience function for dealing the head/tail
Some whitespace / cosmetics
Add operators ==
Add operator !=
Update command handler for this.
2023-06-04 14:56:40 +03:00
Dirk-Jan C. Binnema
eafc81f168 utils: fix non-cld2 build 2023-05-12 21:52:32 +03:00
Dirk-Jan C. Binnema
ad64093183 utils: implement language-detector
A thing wrapper around CLD2 with which we can detect the language of an
e-mail message.
2023-05-11 23:23:52 +03:00
Dirk-Jan C. Binnema
3a05dd8725 lib/utils: implement read_from_stdin 2023-04-29 23:01:12 +03:00
Dirk-Jan C. Binnema
e4af910d04 utils: implement g_cancellable_new_with_timeout 2023-04-29 23:01:12 +03:00
Dirk-Jan C. Binnema
3c578d7a3b utils: add thread_dep for logger test
Needed on some systems

Fixes #2473
2023-04-14 12:48:03 +03:00
Dirk-Jan C. Binnema
8762ac27dc mu: improve error numbers
Ensure they match what mu expects.
2023-04-11 20:47:48 +03:00
Dirk-Jan C. Binnema
ec942a988d tests: always log to file during tests
And set the cachedir (for logging and other things) to a random tmpdir.
2023-04-09 14:43:36 +03:00
Dirk-Jan C. Binnema
9b8a0146e0 logger: create logdir if non-existent 2023-04-09 14:43:17 +03:00
Dirk-Jan C. Binnema
e43452fa18 test: don't "uniqify" link names during test 2023-04-09 11:02:58 +03:00
Dirk-Jan C. Binnema
2aa0d20f39 mu-logger: Add lock for file-logger and stress test
Add a lock to the file logger and add a unit-test to stress test it.
(It does fail without the lock, and passed with it).

Should help for: #2469.
2023-04-08 10:26:15 +03:00
Dirk-Jan C. Binnema
ff1e06c7c8 mu-find: restore JSON output
Fixes #2453
2023-03-30 18:12:33 +03:00
Dirk-Jan C. Binnema
39101cf583 mu-find: brush off --format=links unit test
Enable it by default, and modernize it a little bit
2023-03-28 22:26:56 +03:00
Dirk-Jan C. Binnema
3ec960c609 mu: improve mu-error
Add specific error-code for SchemaMismatch

Combine find/cfind no-matches
2023-01-29 15:38:40 +02:00
Dirk-Jan C. Binnema
cc664b8128 utils: add missing mu-regex.cc
Fixes #2425
2023-01-29 12:49:52 +02:00
Dirk-Jan C. Binnema
40c3d3568e utils: improve xapian exception handling / reporting 2023-01-29 11:25:02 +02:00
Dirk-Jan C. Binnema
a8daec9598 lib: use join_paths
Convert some manual concatenation to the new join_paths helper.
2023-01-29 10:13:29 +02:00
Dirk-Jan C. Binnema
25635c5cfe utils: add join_paths + tests 2023-01-29 10:13:29 +02:00
Dirk-Jan C. Binnema
daef904ca1 utils: add Regex::replace + unit tests 2023-01-29 10:13:29 +02:00
Dirk-Jan C. Binnema
ba69e2104a utils: remove some dead test code 2023-01-29 10:13:29 +02:00
Arsen Arsenović
ce94464652
mu-error: Add missing <cstdint> include
GCC 13s libstdc++ reduced its dependency on some headers like <cstdint>, so it's
no longer transitively included through various headers.  Include it explicitly.

See also: https://gcc.gnu.org/gcc-13/porting_to.html#header-dep-changes

  ../lib/utils/mu-error.hh:36:26: error: ‘uint32_t’ does not name a type
     36 |         static constexpr uint32_t SoftError = 1 << 23;
        |                          ^~~~~~~~
2023-01-21 19:48:57 +01:00
Dirk-Jan C. Binnema
201fe45edc server: add a few stopwatches
For measuring performance.
2023-01-19 22:37:50 +02:00
Dirk-Jan C. Binnema
6979a66630 utils: get rid of mu-util.[ch]
It was getting old...
Remove the unused parts, refactor the few parts still in use.
2023-01-14 20:02:05 +02:00
Dirk-Jan C. Binnema
ef2ec7d5a5 server: split off new server command 'queries'
Instead of being part of the ping command, create a separate
queries command, which is easier for updating. Ie. 'ping' implies "show
main screen" but we don't always want that side-effect.
2023-01-07 15:40:30 +02:00
Dirk-Jan C. Binnema
60e9d54a7c mu-regex: make backward-compatible with older glib 2022-12-31 00:10:24 +02:00
Dirk-Jan C. Binnema
27ecbbdd65 many: use Mu::Regex instead of std::regex
The former is PCRE-compatible, and faster than std::regex.
2022-12-30 11:15:03 +02:00
Dirk-Jan C. Binnema
e97bbb83e3 utils/mu-regex: add PCRE Regex wrapper
Add a thin c++ wrapper for GLib's GRegex (which is a PCRE wrapper
itself). PCRE is much faster than C++ std::regex, it may even matter in
some use-cases.
2022-12-30 11:15:03 +02:00
Dirk-Jan C. Binnema
27ffaba817 mu-utils: use const char* from for time_to_string
To avoid lifetime problems with some(?) compilers.
2022-12-10 19:22:00 +02:00