v3 merged config

Subject: v3 merged config

Date: Sun, 3 Jan 2021 19:35:11 -0400

To: notmuch@notmuchmail.org


From: David Bremner

This series has grown somewhat since

The following are test system improvements and fixes that I noticed
or needed along the way.

>   [PATCH 01/36] test/T750-gzip: don't compress the xapian database
>   [PATCH 02/36] test/T391-python-cffi: run verbosely
>   [PATCH 27/36] bindings/notmuch2: add missing crypto error status

These are the same as the last series, setting up infrastructure

>   [PATCH 03/36] lib: add _notmuch_string_map_set
>   [PATCH 04/36] lib: cache configuration information from database
>   [PATCH 05/36] lib: add stub for notmuch_database_open_with_config
>   [PATCH 06/36] lib/open: add support for config profiles and default
>   [PATCH 07/36] CLI: generalize notmuch_config_mode_t
>   [PATCH 08/36] lib/config: add notmuch_config_key_{get,set}
>   [PATCH 09/36] lib/open: load default values for known configuration
>   [PATCH 10/36] CLI: add (unused) database argument to subcommands.
>   [PATCH 11/36] util: add strsplit_len: simplified strtok with
>   [PATCH 12/36] lib/config: add config values iterator

Most of the individual subcommands are straightforward to convert. The
exception here is notmuch-show, that I'm not completely happy with.

>   [PATCH 13/36] CLI/count: switch to new configuration framework
>   [PATCH 14/36] cli/dump: convert to new config framework
>   [PATCH 15/36] lib: add notmuch_config_get_bool
>   [PATCH 16/36] CLI/restore: convert to new config framework
>   [PATCH 17/36] CLI/insert: convert to new config framework.
>   [PATCH 18/36] cli/reindex: convert new config framework
>   [PATCH 19/36] CLI/reply: convert to new config framework
>   [PATCH 20/36] CLI/{search,address}: convert to new configuration
>   [PATCH 21/36] cli/config: add accessor for config file name
>   [PATCH 22/36] CLI/show: mostly switch show to new config framework
>   [PATCH 23/36] cli/tag: convert to new config framework.
>   [PATCH 24/36] lib/config: add _notmuch_config_cache
>   [PATCH 25/36] lib: split notmuch_database_compact
>   [PATCH 26/36] cli/compact: convert to new configuration framework

The new patches in the series are to convert notomuch-new to the new
configuration framework.  This involves adding a few new status
values, and one new API call.

>   [PATCH 28/36] lib/config: add NOTMUCH_CONFIG_NEW_IGNORE
>   [PATCH 29/36] lib/config: make values iterators restartable
>   [PATCH 30/36] lib/open: factor out first part of open
>   [PATCH 32/36] lib/database: move n_d_create* to open.cc
>   [PATCH 34/36] lib: introduce notmuch_database_create_with_config
>   [PATCH 35/36] cli/new: refactor database upgrade code
>   [PATCH 36/36] cli/new: convert to new config framework

I will send another series for flexible database location that builds
upon this. In particular it needs notmuch-new to be converted to the
new configuration framework.
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-leave@notmuchmail.org