Dirk-Jan C. Binnema
|
18490a818d
|
store/server: centralize docids-for-msgid
No need for two near-identical impls
Remove some dead declarations.
|
2023-07-10 23:17:06 +03:00 |
Dirk-Jan C. Binnema
|
0b4f7c4cbe
|
lib: xapian-db/store: simplify
No need for "pimpl" in xapian-db; keep it simple.
|
2023-07-10 23:15:40 +03:00 |
Dirk-Jan C. Binnema
|
4171fe14c3
|
store: removing trailing / for root_maildir
Other code depends on that.
|
2023-07-06 21:49:50 +03:00 |
Dirk-Jan C. Binnema
|
91c5a9bac5
|
store: only write last-change _once_
xapian-db does it, no longer needed in store.cc
|
2023-07-06 21:49:50 +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
|
3791d0c375
|
lib/store: rework to use xapian-db / config
Simplifies the implementation.
|
2023-07-02 00:06:56 +03:00 |
Dirk-Jan C. Binnema
|
a3538e5ef1
|
store: small cleanups
Remove readonly/inmemory from properties. Add read_only() accessor.
|
2023-04-23 20:26:16 +03:00 |
Dirk-Jan C. Binnema
|
10838a2c58
|
mu-store: fix typo
|
2023-01-14 20:02:05 +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
|
6b04158925
|
mu-store: create mu cache path if needed
|
2023-01-06 19:48:40 +02:00 |
Dirk-Jan C. Binnema
|
87c3ceb7b1
|
store: update move_message API
Update the move_message API so to allow for updating duplicate messages
too (not implemented yet), and return all updated messages.
|
2022-12-07 18:22:29 +02:00 |
Dirk-Jan C. Binnema
|
a417b38624
|
store: update for new sexp api
And use improved cached_sexp api (automatically handled with
mu-document now)
|
2022-11-07 18:38:03 +02:00 |
Dirk-Jan C. Binnema
|
27a85eada2
|
store: fix move ctor
indexer_ is holding a ptr to the _old_ store; clear it so it gets
regenerated.
|
2022-10-26 21:51:53 +03:00 |
Dirk-Jan C. Binnema
|
5367122c08
|
store: support reinit
Support reinitializing, based on some current store. This is useful for
upgrading. Note that this is only the backend implementation + tests.
|
2022-10-02 18:24:23 +03:00 |
Dirk-Jan C. Binnema
|
97459beed9
|
maildir: improve testing coverage
Remove some dead/unused code. Update docs. Add test cases.
|
2022-06-29 22:19:26 +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
|
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
|
6e37790012
|
mu: improve error reporting
|
2022-05-15 13:40:44 +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
|
d79d770958
|
store: improve error handling
Detect store-lock
|
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
|
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
|
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
|
6126d7ee62
|
store: ensure updates update message sexp too
And turn all "add" into "replace" so old messages get removed.
Update tests too.
|
2022-05-05 01:40:17 +03:00 |
Dirk-Jan C. Binnema
|
ee4b3bda2d
|
message: support 'personal' flag for messages
Add a new flag 'personal' for a message, which means that at least one of the
contact fields is personal.
|
2022-05-05 01:38:25 +03:00 |
Dirk-Jan C. Binnema
|
fea596ae3b
|
message/field: cache the message's sexp
Keep it in the store; much faster than generating on the fly.
|
2022-05-05 01:38:25 +03:00 |
Dirk-Jan C. Binnema
|
9e0173f387
|
store: set XAPIAN_FLUSH_THRESHOLD above internal commit
Don't auto-flush more often than the internal handling.
|
2022-05-05 01:38:25 +03:00 |
Dirk-Jan C. Binnema
|
525fef479a
|
store: update to use Message; big cleanup
Remove much of the message processing from the store
|
2022-04-30 10:40:45 +03:00 |
Dirk-Jan C. Binnema
|
9b8353fc37
|
lib: update Store & QueryResults in terms of Mu::Message
|
2022-04-30 10:40:45 +03:00 |
Dirk-Jan C. Binnema
|
27ebfb3b3c
|
lib+guile: use Mu::Option, not std::optional
We need the extensions, and/or let's use _one_ optional implementation everywhere.
|
2022-03-28 08:58:04 +03:00 |
Dirk-Jan C. Binnema
|
8ed09a9a82
|
store: cosmetics
|
2022-03-26 17:19:10 +02:00 |
Dirk-Jan C. Binnema
|
f7c84006d7
|
many: update for lib/message updates
Adapt to the new names / directory. Big commit, but mostly just very boring renaming.
|
2022-03-26 17:19:10 +02:00 |
Dirk-Jan C. Binnema
|
7f15767faf
|
message: fields: rationalize flags
Improve naming.
|
2022-03-26 17:19:10 +02:00 |
Dirk-Jan C. Binnema
|
056fecd6aa
|
store::for_each_term: use field-id
We were trying to convert a field (string) to a xapian prefix back to a
field (enum). That's unnecessarily complicated and worse, step 2 won't work.
|
2022-03-14 09:38:59 +02:00 |
Dirk-Jan C. Binnema
|
a8654a616a
|
lib/store: use mu-message-fields
|
2022-03-07 06:50:18 +02:00 |
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
|
39c45abc38
|
mu-store: use Mu::MessageContact
Use the new contact class. And a lot of whitespace cleanups.
|
2022-02-21 23:22:42 +02:00 |
Dirk-Jan C. Binnema
|
8cea933a51
|
mu-store: take mu_util_get_hash
mu-store is the only user left, move the implementation there.
|
2022-02-19 19:09:25 +02:00 |
Dirk-Jan C. Binnema
|
c0da564bba
|
lib: fix clang compatibility / warnings
|
2022-02-18 10:49:56 +02:00 |
Dirk-Jan C. Binnema
|
831d26052a
|
store: expose the mutex so we can lock query-results
The QueryResults must not outlive the lock (when in a MT context), so expose for
clients (mu-server) to handle it.
|
2022-02-17 23:49:17 +02:00 |
Dirk-Jan C. Binnema
|
f6f17d5d6b
|
*: update code for Mu::MessageFlags
Migrate the code to use the new niceness
|
2022-02-17 23:48:59 +02:00 |
Dirk-Jan C. Binnema
|
3086238b33
|
store: expose metadata()/set_metadata()
Allow for storing metadata in the database, and consider the cache.
|
2022-02-14 11:12:26 +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
|
23fc8bdba8
|
update code for Mu::MessagePriority
Update dependent code
|
2022-02-14 11:12:26 +02:00 |
Dirk-Jan C. Binnema
|
43c44cf6cd
|
store: catch dtor exception
|
2022-02-07 22:34:49 +02:00 |
Dirk-Jan C. Binnema
|
77bca5463f
|
store: don't lock for_each_term
It's only called from the parser with a store, and when we _already_
hold the lock.
|
2022-02-05 08:44:43 +02:00 |