<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/notmuch-config.c, branch 0.32.1</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.32.1</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.32.1'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2021-04-24T11:07:00Z</updated>
<entry>
<title>compat: rename {,notmuch_}canonicalize_file_name</title>
<updated>2021-04-24T11:07:00Z</updated>
<author>
<name>Đoàn Trần Công Danh</name>
<email>congdanhqx@gmail.com</email>
</author>
<published>2021-04-24T01:05:37Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=441a327051f5357175029709030a0ee51131379d'/>
<id>urn:sha1:441a327051f5357175029709030a0ee51131379d</id>
<content type='text'>
When compat canonicalize_file_name was introduced, it was limited to
C code only because it was used by C code only during that time.

&gt;From 5ec6fd4d, (lib/open: check for split configuration when creating
database., 2021-02-16), lib/open.cc, which is C++, relies on the
existent of canonicalize_file_name.

However, we can't blindly enable canonicalize_file_name for C++ code,
because different implementation has different additional signature for
C++ and users can arbitrarily add -DHAVE_CANONICALIZE_FILE_NAME=0 to
{C,CXX}FLAGS.

Let's move our implementation into a util library.

Helped-by: Tomi Ollila &lt;tomi.ollila@iki.fi&gt;
Signed-off-by: Đoàn Trần Công Danh &lt;congdanhqx@gmail.com&gt;
</content>
</entry>
<entry>
<title>CLI: rename notmuch_config_t to notmuch_conffile_t</title>
<updated>2021-04-07T00:32:36Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-02-27T14:11:23Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=1459217e17e94277495c5c644b5a4ca1651c9452'/>
<id>urn:sha1:1459217e17e94277495c5c644b5a4ca1651c9452</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>CLI: drop notmuch_config_t from subcommand interface.</title>
<updated>2021-04-07T00:32:36Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-02-27T14:07:45Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=1c747a501c0ed7df5eaa2b994b9ad11d8981c62c'/>
<id>urn:sha1:1c747a501c0ed7df5eaa2b994b9ad11d8981c62c</id>
<content type='text'>
At this point it is unused in all subcommands.
</content>
</entry>
<entry>
<title>CLI/config: remove calls to notmuch_config_open from top level</title>
<updated>2021-04-07T00:32:36Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-02-27T13:22:32Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=ec4b7efbe4bd6d50bd6046bac5f7ef4ceaa30154'/>
<id>urn:sha1:ec4b7efbe4bd6d50bd6046bac5f7ef4ceaa30154</id>
<content type='text'>
This will allow simplifying the subcommand interface.

Change the internal API to notmuch_config_open to not tie it to the
implementation of subcommands in notmuch.c.

It also fixes a previously broken test, since notmuch_config_open does
not understand the notion of the empty string as a config file name.
</content>
</entry>
<entry>
<title>CLI/config: default to storing all config in external files</title>
<updated>2021-03-27T12:26:14Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-02-19T12:41:36Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=dd9112e7d8e89e8566b90379f5f3b1461a2d2845'/>
<id>urn:sha1:dd9112e7d8e89e8566b90379f5f3b1461a2d2845</id>
<content type='text'>
Previously the fact that some configuration options were only stored
in the database (and thus editing the config file had no effect) was a
source of user confusion. This was fixed with the series ending at
d9af0af1646.

On the other hand, the underlying partition of config options into
those stored by default in the database and those stored in the config
file remained. This is also confusing, since now some invocations of
"notmuch config set" modify the config file, and others silently
modify the database instead.

With this commit, it is up to the user to decide which configuration
to modify. A new "--database" option is provided for notmuch config to
enable modifying the configuration information in the database;
otherwise the default is to update an external config file.
</content>
</entry>
<entry>
<title>CLI/config: drop cached data from notmuch_config_t</title>
<updated>2021-03-27T12:26:14Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-02-14T18:36:18Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=7f6aae4f64add17d9750d2d8491930e15fad4fe1'/>
<id>urn:sha1:7f6aae4f64add17d9750d2d8491930e15fad4fe1</id>
<content type='text'>
The idea is to preserve notmuch_config_t as a thin wrapper for GKeyFile.
</content>
</entry>
<entry>
<title>CLI/config: drop obsolete notmuch_config_get_*</title>
<updated>2021-03-27T12:26:14Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-02-14T18:02:51Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=eb542106b644226852ffa5e80ec778f8a431b227'/>
<id>urn:sha1:eb542106b644226852ffa5e80ec778f8a431b227</id>
<content type='text'>
These are no longer used, replaced by notmuch_config_get.
</content>
</entry>
<entry>
<title>CLI/config: use notmuch_database_reopen</title>
<updated>2021-03-27T12:26:14Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-02-14T17:46:13Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=f055e945627b3b0563262d4d273ac15a53766ef3'/>
<id>urn:sha1:f055e945627b3b0563262d4d273ac15a53766ef3</id>
<content type='text'>
This allows `notmuch config` to use the common configuration
information carried by the notmuch_database_t opened at the top level.
</content>
</entry>
<entry>
<title>CLI/config: migrate notmuch_config_open to new config</title>
<updated>2021-03-27T12:26:14Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-02-14T13:32:41Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=b76da87d29b6c9714e3d62fd8d459733df084f92'/>
<id>urn:sha1:b76da87d29b6c9714e3d62fd8d459733df084f92</id>
<content type='text'>
notmuch_config_open will be preserved in the medium term for use by
the commands that are manipulating the config file directly (config
and setup)
</content>
</entry>
<entry>
<title>CLI/config: switch "notmuch config list" to merged config</title>
<updated>2021-03-27T12:26:14Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-02-14T11:54:22Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=3787fe6c84ae223ba8c34920c3a2495c71abfe6c'/>
<id>urn:sha1:3787fe6c84ae223ba8c34920c3a2495c71abfe6c</id>
<content type='text'>
Use the database opened at the top level rather than opening another
notmuch_database_t.

Test output changes because keys are now listed in alphabetical order,
and because a missing database is no longer an error.
</content>
</entry>
</feed>
