unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* RFC convert remaining CLI to new configuration
@ 2021-02-20 16:44 David Bremner
  2021-02-20 16:44 ` [PATCH 01/18] lib: add missing status strings David Bremner
                   ` (17 more replies)
  0 siblings, 18 replies; 19+ messages in thread
From: David Bremner @ 2021-02-20 16:44 UTC (permalink / raw)
  To: notmuch

This is an early version of a series to convert the remaining CLI
(config, setup, and notmuch_command) to the new configuration framework.

There are a few design decisions / compromomises that people might
have opinions about.

- The merged config API uses a notmuch_data_t as the primary
  "object". This mostly makes sense (since you nead a database
  anyway), but here I needed to add a function
  "notmuch_database_load_config", which does not really open the database.

- There is a bit of growth in the public API here, including
  notmuch_database_get_config_values, and the config_pairs iterators.

- The notmuch_config_set_{field} API is kept around soley for use in
  notmuch-setup

- The location of the backups when upgrading is now configurable, with
  the default changing to a subdirectory. The latter change is
  arguably gratitous.

- The behaviour of "notmuch config set" is changed with respect to
  storing in the database. Rather than silently doing so for a
  selected set of keys, it now does so optionally for any set of keys.
  I think this is positive for users, but requires e.g. a few tweaks
  to our test suite. It is conceivable that it may require some
  updates to advanced users scripts as well.

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2021-02-20 16:47 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-20 16:44 RFC convert remaining CLI to new configuration David Bremner
2021-02-20 16:44 ` [PATCH 01/18] lib: add missing status strings David Bremner
2021-02-20 16:44 ` [PATCH 02/18] test: convert random-corpus to use n_d_open_with_config David Bremner
2021-02-20 16:44 ` [PATCH 03/18] lib/open: pull _load_key_file out of _choose_database_path David Bremner
2021-02-20 16:44 ` [PATCH 04/18] WIP: add notmuch_database_load_config David Bremner
2021-02-20 16:44 ` [PATCH 05/18] WIP: add n_d_get_config_values David Bremner
2021-02-20 16:44 ` [PATCH 06/18] lib/config: add config_pairs iterators David Bremner
2021-02-20 16:44 ` [PATCH 07/18] lib/config: set defaults for user full name David Bremner
2021-02-20 16:44 ` [PATCH 08/18] lib/config: set default for primary user email David Bremner
2021-02-20 16:44 ` [PATCH 09/18] CLI/notmuch: replace use of notmuch_config_get_* David Bremner
2021-02-20 16:44 ` [PATCH 10/18] CLI/config: WIP: load merged config David Bremner
2021-02-20 16:44 ` [PATCH 11/18] WIP: CLI/config: use merged config for "config get" David Bremner
2021-02-20 16:44 ` [PATCH 12/18] WIP: switch notmuch-setup to new configuration framework David Bremner
2021-02-20 16:44 ` [PATCH 13/18] WIP: CLI/config: switch list to new config David Bremner
2021-02-20 16:44 ` [PATCH 14/18] CLI/config: migrate notmuch_config_open " David Bremner
2021-02-20 16:44 ` [PATCH 15/18] WIP: cli/config: convert to new config API David Bremner
2021-02-20 16:44 ` [PATCH 16/18] cli/config: drop obsolete notmuch_config_get_* David Bremner
2021-02-20 16:44 ` [PATCH 17/18] CLI/config: drop cached data from notmuch_config_t David Bremner
2021-02-20 16:44 ` [PATCH 18/18] WIP: CLI/config: make storing configuration in database optional David Bremner

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).