<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/notmuch-restore.c, branch 0.22_rc0</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.22_rc0</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.22_rc0'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2015-08-14T16:23:49Z</updated>
<entry>
<title>cli: add global option "--uuid"</title>
<updated>2015-08-14T16:23:49Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2015-04-05T22:39:55Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=f76d8f82dd004cf14426a91e8a80dcd2a4b97317'/>
<id>urn:sha1:f76d8f82dd004cf14426a91e8a80dcd2a4b97317</id>
<content type='text'>
The function notmuch_exit_if_unmatched_db_uuid is split from
notmuch_process_shared_options because it needs an open notmuch
database.

There are two exceptional cases in uuid handling.

1) notmuch config and notmuch setup don't currently open the database,
   so it doesn't make sense to check the UUID.

2) notmuch compact opens the database inside the library, so we either
   need to open the database just to check uuid, or change the API.
</content>
</entry>
<entry>
<title>cli: define shared options, use for --help and --version</title>
<updated>2015-06-01T05:32:54Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2015-04-05T13:13:03Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=0018a8d787a98f80c665061daa9b0c73839d3666'/>
<id>urn:sha1:0018a8d787a98f80c665061daa9b0c73839d3666</id>
<content type='text'>
Unfortunately it seems trickier to support --config globally

The non-trivial changes are in notmuch.c; most of the other changes
consists of blindly inserting two lines into every subcommand.
</content>
</entry>
<entry>
<title>restore: transparently support gzipped input</title>
<updated>2014-04-12T10:59:44Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2014-03-29T18:12:28Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=4c62d9366a389b7ddca796009d1dfe6a885cfde0'/>
<id>urn:sha1:4c62d9366a389b7ddca796009d1dfe6a885cfde0</id>
<content type='text'>
We rely completely on zlib to do the right thing in detecting gzipped
input. Since our dump format is chosen to be 7 bit ascii, this should
be fine.
</content>
</entry>
<entry>
<title>cli: abstract dump file open from the dump command</title>
<updated>2014-03-30T22:23:16Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2014-03-25T17:48:57Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=3863755f6d9f3e7666c1484822384c036a4426c3'/>
<id>urn:sha1:3863755f6d9f3e7666c1484822384c036a4426c3</id>
<content type='text'>
Also expose the dump function to the rest of notmuch. No functional
changes, except for slight improvement in error handling.
</content>
</entry>
<entry>
<title>cli: clean up exit status code returned by the cli commands</title>
<updated>2014-01-18T18:45:26Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2014-01-10T21:28:53Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=c7453773064efbd0b2cd17b15ba483edbd28ce1e'/>
<id>urn:sha1:c7453773064efbd0b2cd17b15ba483edbd28ce1e</id>
<content type='text'>
Apart from the status codes for format mismatches, the non-zero exit
status codes have been arbitrary. Make the cli consistently return
either EXIT_SUCCESS or EXIT_FAILURE.
</content>
</entry>
<entry>
<title>cli: move config open/close to main() from subcommands</title>
<updated>2013-03-08T11:54:41Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2013-03-03T21:55:09Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=4ef2106792439f5ade157b3ba3b8f7fa86fcb3ed'/>
<id>urn:sha1:4ef2106792439f5ade157b3ba3b8f7fa86fcb3ed</id>
<content type='text'>
This allows specifying config file as a top level argument to notmuch,
and generally makes it possible to override config file options in
main(), without having to touch the subcommands.

If the config file does not exist, one will be created for the notmuch
main command and setup and help subcommands. Help is special in this
regard; the config is created just to avoid errors about missing
config, but it will not be saved.

This also makes notmuch config the talloc context for subcommands.
</content>
</entry>
<entry>
<title>cli: config: make notmuch_config_open() "is new" parameter input only</title>
<updated>2013-03-07T13:39:12Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2013-03-03T21:55:08Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=e76f6517de020783d828be59f461f1d4f465c4b4'/>
<id>urn:sha1:e76f6517de020783d828be59f461f1d4f465c4b4</id>
<content type='text'>
We now have a notmuch_config_is_new() function to query whether a
config was created or not. Change the notmuch_config_open() is_new
parameter into boolean create_new to determine whether the function
should create a new config if one doesn't exist. This reduces the
complexity of the API.
</content>
</entry>
<entry>
<title>dump/restore: Use Xapian queries for batch-tag format</title>
<updated>2013-01-07T02:40:32Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2013-01-06T20:22:41Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=425e2bc81263230df301c67d93c64ff9685ff840'/>
<id>urn:sha1:425e2bc81263230df301c67d93c64ff9685ff840</id>
<content type='text'>
This switches the new batch-tag format away from using a home-grown
hex-encoding scheme for message IDs in the dump to simply using Xapian
queries with Xapian quoting syntax.

This has a variety of advantages beyond presenting a cleaner and more
consistent interface.  Foremost is that it will dramatically simplify
the quoting for batch tagging, which shares the same input format.
While the hex-encoding is no better or worse for the simple ID queries
used by dump/restore, it becomes onerous for general-purpose queries
used in batch tagging.  It also better handles strange cases like
"id:foo and bar", since this is no longer syntactically valid.
</content>
</entry>
<entry>
<title>restore: Make missing messages non-fatal (again)</title>
<updated>2013-01-07T02:39:23Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2013-01-06T20:22:37Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=baca1219af0ef1f81985759e868a68e9dd78e0d1'/>
<id>urn:sha1:baca1219af0ef1f81985759e868a68e9dd78e0d1</id>
<content type='text'>
Previously, restore would abort if a message ID in the dump was
missing.  Furthermore, it would only report this as a warning.  This
patch makes it distinguish abort-worthy lookup failures like
out-of-memory from non-fatal failure to find a message ID.  The former
is reported as an error and causes restore to abort, while the latter
is reported as a warning and does not cause an abort.

This restores 0.14's non-fatal handling of missing message IDs in
restore (though 0.14 also considered serious errors non-fatal; we
retain the new and better handling of serious errors).
</content>
</entry>
<entry>
<title>notmuch-restore: handle empty input file, leading blank lines and comments.</title>
<updated>2013-01-06T14:04:19Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2012-12-26T19:36:33Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=d705a6a45bf691b60101203bd09a459be255dceb'/>
<id>urn:sha1:d705a6a45bf691b60101203bd09a459be255dceb</id>
<content type='text'>
This patch corrects several undesirable behaviours:

1) Empty files were not detected, leading to buffer read overrun.

2) An initial blank line cause restore to silently abort

3) Initial comment line caused format detection to fail
</content>
</entry>
</feed>
