From: David Bremner <david@tethera.net>
To: notmuch@notmuchmail.org
Cc: David Bremner <david@tethera.net>
Subject: [PATCH 27/27] CLI: rename notmuch_config_t to notmuch_conffile_t
Date: Thu, 4 Mar 2021 09:01:39 -0400 [thread overview]
Message-ID: <20210304130139.4046183-28-david@tethera.net> (raw)
In-Reply-To: <20210304130139.4046183-1-david@tethera.net>
The name is a compromise between keeping function names from getting
too long, and avoiding confusion with the newer notmuch_config library
API. Try to make clear that the residual functionality is only about
updating configuration files.
---
notmuch-client.h | 56 +++++++++++++++++++++++-----------------------
notmuch-config.c | 58 ++++++++++++++++++++++++------------------------
notmuch-setup.c | 38 +++++++++++++++----------------
3 files changed, 76 insertions(+), 76 deletions(-)
diff --git a/notmuch-client.h b/notmuch-client.h
index 1976352f..f071da86 100644
--- a/notmuch-client.h
+++ b/notmuch-client.h
@@ -156,7 +156,7 @@ chomp_newline (char *str)
*/
extern int notmuch_format_version;
-typedef struct _notmuch_config notmuch_config_t;
+typedef struct _notmuch_conffile notmuch_conffile_t;
/* Commands that support structured output should support the
* following argument
@@ -260,55 +260,55 @@ typedef enum {
NOTMUCH_COMMAND_CONFIG_LOAD = 1 << 5,
} notmuch_command_mode_t;
-notmuch_config_t *
-notmuch_config_open (notmuch_database_t *notmuch,
- const char *filename,
- bool create);
+notmuch_conffile_t *
+notmuch_conffile_open (notmuch_database_t *notmuch,
+ const char *filename,
+ bool create);
void
-notmuch_config_close (notmuch_config_t *config);
+notmuch_conffile_close (notmuch_conffile_t *config);
int
-notmuch_config_save (notmuch_config_t *config);
+notmuch_conffile_save (notmuch_conffile_t *config);
bool
-notmuch_config_is_new (notmuch_config_t *config);
+notmuch_conffile_is_new (notmuch_conffile_t *config);
void
-notmuch_config_set_database_path (notmuch_config_t *config,
- const char *database_path);
+notmuch_conffile_set_database_path (notmuch_conffile_t *config,
+ const char *database_path);
void
-notmuch_config_set_user_name (notmuch_config_t *config,
- const char *user_name);
+notmuch_conffile_set_user_name (notmuch_conffile_t *config,
+ const char *user_name);
void
-notmuch_config_set_user_primary_email (notmuch_config_t *config,
- const char *primary_email);
+notmuch_conffile_set_user_primary_email (notmuch_conffile_t *config,
+ const char *primary_email);
void
-notmuch_config_set_user_other_email (notmuch_config_t *config,
- const char *other_email[],
- size_t length);
+notmuch_conffile_set_user_other_email (notmuch_conffile_t *config,
+ const char *other_email[],
+ size_t length);
void
-notmuch_config_set_new_tags (notmuch_config_t *config,
- const char *new_tags[],
- size_t length);
+notmuch_conffile_set_new_tags (notmuch_conffile_t *config,
+ const char *new_tags[],
+ size_t length);
void
-notmuch_config_set_new_ignore (notmuch_config_t *config,
- const char *new_ignore[],
- size_t length);
+notmuch_conffile_set_new_ignore (notmuch_conffile_t *config,
+ const char *new_ignore[],
+ size_t length);
void
-notmuch_config_set_maildir_synchronize_flags (notmuch_config_t *config,
- bool synchronize_flags);
+notmuch_conffile_set_maildir_synchronize_flags (notmuch_conffile_t *config,
+ bool synchronize_flags);
void
-notmuch_config_set_search_exclude_tags (notmuch_config_t *config,
- const char *list[],
- size_t length);
+notmuch_conffile_set_search_exclude_tags (notmuch_conffile_t *config,
+ const char *list[],
+ size_t length);
int
notmuch_run_hook (notmuch_database_t *notmuch, const char *hook);
diff --git a/notmuch-config.c b/notmuch-config.c
index 0fca2adc..399ffccc 100644
--- a/notmuch-config.c
+++ b/notmuch-config.c
@@ -114,14 +114,14 @@ struct config_group {
},
};
-struct _notmuch_config {
+struct _notmuch_conffile {
char *filename;
GKeyFile *key_file;
bool is_new;
};
static int
-notmuch_config_destructor (notmuch_config_t *config)
+notmuch_conffile_destructor (notmuch_conffile_t *config)
{
if (config->key_file)
g_key_file_free (config->key_file);
@@ -130,7 +130,7 @@ notmuch_config_destructor (notmuch_config_t *config)
}
static bool
-get_config_from_file (notmuch_config_t *config, bool create_new)
+get_config_from_file (notmuch_conffile_t *config, bool create_new)
{
#define BUF_SIZE 4096
char *config_str = NULL;
@@ -245,21 +245,21 @@ get_config_from_file (notmuch_config_t *config, bool create_new)
* The default configuration also contains comments to guide the
* user in editing the file directly.
*/
-notmuch_config_t *
-notmuch_config_open (notmuch_database_t *notmuch,
- const char *filename,
- bool create)
+notmuch_conffile_t *
+notmuch_conffile_open (notmuch_database_t *notmuch,
+ const char *filename,
+ bool create)
{
char *notmuch_config_env = NULL;
- notmuch_config_t *config = talloc_zero (notmuch, notmuch_config_t);
+ notmuch_conffile_t *config = talloc_zero (notmuch, notmuch_conffile_t);
if (config == NULL) {
fprintf (stderr, "Out of memory.\n");
return NULL;
}
- talloc_set_destructor (config, notmuch_config_destructor);
+ talloc_set_destructor (config, notmuch_conffile_destructor);
if (filename) {
config->filename = talloc_strdup (config, filename);
@@ -294,14 +294,14 @@ notmuch_config_open (notmuch_database_t *notmuch,
return config;
}
-/* Close the given notmuch_config_t object, freeing all resources.
+/* Close the given notmuch_conffile_t object, freeing all resources.
*
* Note: Any changes made to the configuration are *not* saved by this
- * function. To save changes, call notmuch_config_save before
- * notmuch_config_close.
+ * function. To save changes, call notmuch_conffile_save before
+ * notmuch_conffile_close.
*/
void
-notmuch_config_close (notmuch_config_t *config)
+notmuch_conffile_close (notmuch_conffile_t *config)
{
talloc_free (config);
}
@@ -314,7 +314,7 @@ notmuch_config_close (notmuch_config_t *config)
* printing a description of the error to stderr).
*/
int
-notmuch_config_save (notmuch_config_t *config)
+notmuch_conffile_save (notmuch_conffile_t *config)
{
size_t length;
char *data, *filename;
@@ -364,20 +364,20 @@ notmuch_config_save (notmuch_config_t *config)
}
bool
-notmuch_config_is_new (notmuch_config_t *config)
+notmuch_conffile_is_new (notmuch_conffile_t *config)
{
return config->is_new;
}
static void
-_config_set (notmuch_config_t *config,
+_config_set (notmuch_conffile_t *config,
const char *group, const char *key, const char *value)
{
g_key_file_set_string (config->key_file, group, key, value);
}
static void
-_config_set_list (notmuch_config_t *config,
+_config_set_list (notmuch_conffile_t *config,
const char *group, const char *key,
const char *list[],
size_t length)
@@ -386,28 +386,28 @@ _config_set_list (notmuch_config_t *config,
}
void
-notmuch_config_set_database_path (notmuch_config_t *config,
+notmuch_conffile_set_database_path (notmuch_conffile_t *config,
const char *database_path)
{
_config_set (config, "database", "path", database_path);
}
void
-notmuch_config_set_user_name (notmuch_config_t *config,
+notmuch_conffile_set_user_name (notmuch_conffile_t *config,
const char *user_name)
{
_config_set (config, "user", "name", user_name);
}
void
-notmuch_config_set_user_primary_email (notmuch_config_t *config,
+notmuch_conffile_set_user_primary_email (notmuch_conffile_t *config,
const char *primary_email)
{
_config_set (config, "user", "primary_email", primary_email);
}
void
-notmuch_config_set_user_other_email (notmuch_config_t *config,
+notmuch_conffile_set_user_other_email (notmuch_conffile_t *config,
const char *list[],
size_t length)
{
@@ -415,7 +415,7 @@ notmuch_config_set_user_other_email (notmuch_config_t *config,
}
void
-notmuch_config_set_new_tags (notmuch_config_t *config,
+notmuch_conffile_set_new_tags (notmuch_conffile_t *config,
const char *list[],
size_t length)
{
@@ -423,7 +423,7 @@ notmuch_config_set_new_tags (notmuch_config_t *config,
}
void
-notmuch_config_set_new_ignore (notmuch_config_t *config,
+notmuch_conffile_set_new_ignore (notmuch_conffile_t *config,
const char *list[],
size_t length)
{
@@ -431,7 +431,7 @@ notmuch_config_set_new_ignore (notmuch_config_t *config,
}
void
-notmuch_config_set_search_exclude_tags (notmuch_config_t *config,
+notmuch_conffile_set_search_exclude_tags (notmuch_conffile_t *config,
const char *list[],
size_t length)
{
@@ -582,7 +582,7 @@ notmuch_config_command_set (notmuch_database_t *notmuch,
{
char *group, *key;
config_key_info_t *key_info;
- notmuch_config_t *config;
+ notmuch_conffile_t *config;
bool update_database = false;
int opt_index, ret;
char *item;
@@ -625,7 +625,7 @@ notmuch_config_command_set (notmuch_database_t *notmuch,
if (_item_split (item, &group, &key))
return 1;
- config = notmuch_config_open (notmuch,
+ config = notmuch_conffile_open (notmuch,
notmuch_config_path (notmuch), false);
if (! config)
return 1;
@@ -650,9 +650,9 @@ notmuch_config_command_set (notmuch_database_t *notmuch,
break;
}
- ret = notmuch_config_save (config);
+ ret = notmuch_conffile_save (config);
- notmuch_config_close (config);
+ notmuch_conffile_close (config);
return ret;
}
@@ -734,7 +734,7 @@ notmuch_config_command (notmuch_database_t *notmuch, int argc, char *argv[])
}
void
-notmuch_config_set_maildir_synchronize_flags (notmuch_config_t *config,
+notmuch_conffile_set_maildir_synchronize_flags (notmuch_conffile_t *config,
bool synchronize_flags)
{
g_key_file_set_boolean (config->key_file,
diff --git a/notmuch-setup.c b/notmuch-setup.c
index 22769a5a..e0afb1c4 100644
--- a/notmuch-setup.c
+++ b/notmuch-setup.c
@@ -131,7 +131,7 @@ notmuch_setup_command (notmuch_database_t *notmuch,
size_t response_size = 0;
GPtrArray *other_emails;
notmuch_config_values_t *new_tags, *search_exclude_tags, *emails;
- notmuch_config_t *config;
+ notmuch_conffile_t *config;
#define prompt(format, ...) \
do { \
@@ -151,22 +151,22 @@ notmuch_setup_command (notmuch_database_t *notmuch,
fprintf (stderr, "Warning: ignoring --uuid=%s\n",
notmuch_requested_db_uuid);
- config = notmuch_config_open (notmuch,
- notmuch_config_path (notmuch), true);
+ config = notmuch_conffile_open (notmuch,
+ notmuch_config_path (notmuch), true);
if (! config)
return EXIT_FAILURE;
- if (notmuch_config_is_new (config))
+ if (notmuch_conffile_is_new (config))
welcome_message_pre_setup ();
prompt ("Your full name [%s]: ", notmuch_config_get (notmuch, NOTMUCH_CONFIG_USER_NAME));
if (strlen (response))
- notmuch_config_set_user_name (config, response);
+ notmuch_conffile_set_user_name (config, response);
prompt ("Your primary email address [%s]: ",
notmuch_config_get (notmuch, NOTMUCH_CONFIG_PRIMARY_EMAIL));
if (strlen (response))
- notmuch_config_set_user_primary_email (config, response);
+ notmuch_conffile_set_user_primary_email (config, response);
other_emails = g_ptr_array_new ();
@@ -188,10 +188,10 @@ notmuch_setup_command (notmuch_database_t *notmuch,
g_ptr_array_add (other_emails, talloc_strdup (config, response));
} while (strlen (response));
if (other_emails->len)
- notmuch_config_set_user_other_email (config,
- (const char **)
- other_emails->pdata,
- other_emails->len);
+ notmuch_conffile_set_user_other_email (config,
+ (const char **)
+ other_emails->pdata,
+ other_emails->len);
g_ptr_array_free (other_emails, true);
prompt ("Top-level directory of your email archive [%s]: ",
@@ -200,7 +200,7 @@ notmuch_setup_command (notmuch_database_t *notmuch,
const char *absolute_path;
absolute_path = make_path_absolute (config, response);
- notmuch_config_set_database_path (config, absolute_path);
+ notmuch_conffile_set_database_path (config, absolute_path);
}
new_tags = notmuch_config_get_values (notmuch, NOTMUCH_CONFIG_NEW_TAGS);
@@ -212,8 +212,8 @@ notmuch_setup_command (notmuch_database_t *notmuch,
if (strlen (response)) {
GPtrArray *tags = parse_tag_list (config, response);
- notmuch_config_set_new_tags (config, (const char **) tags->pdata,
- tags->len);
+ notmuch_conffile_set_new_tags (config, (const char **) tags->pdata,
+ tags->len);
g_ptr_array_free (tags, true);
}
@@ -227,20 +227,20 @@ notmuch_setup_command (notmuch_database_t *notmuch,
if (strlen (response)) {
GPtrArray *tags = parse_tag_list (config, response);
- notmuch_config_set_search_exclude_tags (config,
- (const char **) tags->pdata,
- tags->len);
+ notmuch_conffile_set_search_exclude_tags (config,
+ (const char **) tags->pdata,
+ tags->len);
g_ptr_array_free (tags, true);
}
- if (notmuch_config_save (config))
+ if (notmuch_conffile_save (config))
return EXIT_FAILURE;
if (config)
- notmuch_config_close (config);
+ notmuch_conffile_close (config);
- if (notmuch_config_is_new (config))
+ if (notmuch_conffile_is_new (config))
welcome_message_post_setup ();
return EXIT_SUCCESS;
--
2.30.1
next prev parent reply other threads:[~2021-03-04 13:02 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-04 13:01 v1: convert remaining CLI to new configuration David Bremner
2021-03-04 13:01 ` [PATCH 01/27] lib: add missing status strings David Bremner
2021-03-04 13:01 ` [PATCH 02/27] test: convert random-corpus to use n_d_open_with_config David Bremner
2021-03-04 13:01 ` [PATCH 03/27] lib/open: pull _load_key_file out of _choose_database_path David Bremner
2021-03-04 13:01 ` [PATCH 04/27] lib: provide notmuch_database_load_config David Bremner
2021-03-04 13:01 ` [PATCH 05/27] lib/config: add notmuch_config_get_values_string David Bremner
2021-03-04 13:01 ` [PATCH 06/27] lib/config: add config_pairs iterators David Bremner
2021-03-04 13:01 ` [PATCH 07/27] lib/config: set defaults for user full name David Bremner
2021-03-04 13:01 ` [PATCH 08/27] lib/config: set default for primary user email David Bremner
2021-03-04 13:01 ` [PATCH 09/27] lib/open: canonicalize relative path read from config file David Bremner
2021-03-04 13:01 ` [PATCH 10/27] CLI: load merged config at top level David Bremner
2021-03-04 13:01 ` [PATCH 11/27] CLI/config: use merged config for "config get" David Bremner
2021-03-04 13:01 ` [PATCH 12/27] test/setup: check file output instead of notmuch config list David Bremner
2021-03-04 13:01 ` [PATCH 13/27] CLI/setup: switch to new configuration framework David Bremner
2021-03-04 13:01 ` [PATCH 14/27] CLI/config: switch "notmuch config list" to merged config David Bremner
2021-03-04 13:01 ` [PATCH 15/27] CLI/config: migrate notmuch_config_open to new config David Bremner
2021-03-04 13:01 ` [PATCH 16/27] CLI/config: use notmuch_database_reopen David Bremner
2021-03-04 13:01 ` [PATCH 17/27] CLI/notmuch: switch notmuch_command to notmuch_config_get David Bremner
2021-03-04 13:01 ` [PATCH 18/27] CLI/config: drop obsolete notmuch_config_get_* David Bremner
2021-03-04 13:01 ` [PATCH 19/27] CLI/config: drop cached data from notmuch_config_t David Bremner
2021-03-04 13:01 ` [PATCH 20/27] CLI/config: default to storing all config in external files David Bremner
2021-03-04 13:01 ` [PATCH 21/27] lib: add NOTMUCH_STATUS_NO_DATABASE David Bremner
2021-03-04 13:01 ` [PATCH 22/27] CLI+lib: detect missing database in split configurations David Bremner
2021-03-04 13:01 ` [PATCH 23/27] lib: provide notmuch_config_path David Bremner
2021-03-04 13:01 ` [PATCH 24/27] CLI/config: support set/get with split configuration David Bremner
2021-03-04 13:01 ` [PATCH 25/27] CLI/config: remove calls to notmuch_config_open from top level David Bremner
2021-03-04 13:01 ` [PATCH 26/27] CLI: drop notmuch_config_t from subcommand interface David Bremner
2021-03-04 13:01 ` David Bremner [this message]
2021-03-04 13:50 ` v1: convert remaining CLI to new configuration David Bremner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://notmuchmail.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210304130139.4046183-28-david@tethera.net \
--to=david@tethera.net \
--cc=notmuch@notmuchmail.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).