<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/test/dump-restore, branch 0.17</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.17</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.17'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2013-01-07T02:40:32Z</updated>
<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>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>
<entry>
<title>test/dump-restore: new tests for empty files and leading comments/whitespace.</title>
<updated>2013-01-06T13:35:41Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2012-12-26T19:36:32Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=4dea9bb442f18081347708bc5446db505441fbba'/>
<id>urn:sha1:4dea9bb442f18081347708bc5446db505441fbba</id>
<content type='text'>
Three of these are marked broken; the third is a regression test,
since it passes by virtue of batch-tag being the default input format.
</content>
</entry>
<entry>
<title>test/dump-restore: add test for warning/error messages</title>
<updated>2012-12-09T17:33:34Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2012-12-08T12:34:00Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=0f066ece0f6aa7c02116f8ba3f06b5a005091678'/>
<id>urn:sha1:0f066ece0f6aa7c02116f8ba3f06b5a005091678</id>
<content type='text'>
We want to test both that error/warning messages are generated when
they should be, and not generated when they should not be. This varies
between restore and batch tagging.
</content>
</entry>
<entry>
<title>test: second set of dump/restore --format=batch-tag tests</title>
<updated>2012-12-09T17:33:34Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2012-11-24T21:20:15Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=f9878f917352d8f49c44496b6a0a4ce38ef901d4'/>
<id>urn:sha1:f9878f917352d8f49c44496b6a0a4ce38ef901d4</id>
<content type='text'>
These one need the completed functionality in notmuch-restore. Fairly
exotic tags are tested, but no weird message id's.

We test each possible input to autodetection, both explicit (with
--format=auto) and implicit (without --format).
</content>
</entry>
<entry>
<title>test: update dump-restore roundtripping test for batch-tag format</title>
<updated>2012-12-09T17:33:34Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2011-12-13T03:22:53Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=452f8748c45d38b96706cc04e7b2dc98fc72ec78'/>
<id>urn:sha1:452f8748c45d38b96706cc04e7b2dc98fc72ec78</id>
<content type='text'>
Now we can actually round trip these crazy tags and and message ids.
hex-xcode is no longer needed as it's built in.
</content>
</entry>
<entry>
<title>test: add sanity check for dump --format=batch-tag.</title>
<updated>2012-12-08T14:40:55Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2012-12-05T02:48:37Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=10085656d5db8e9d26f83ad0b62f9428bb5425c0'/>
<id>urn:sha1:10085656d5db8e9d26f83ad0b62f9428bb5425c0</id>
<content type='text'>
It's important this does not rely on restore, since it hasn't been
written yet.
</content>
</entry>
<entry>
<title>test: add broken roundtrip test</title>
<updated>2012-12-02T23:09:01Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2012-08-05T18:13:13Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=953c3fa853749bd647611c1258b282fb09fb1fdf'/>
<id>urn:sha1:953c3fa853749bd647611c1258b282fb09fb1fdf</id>
<content type='text'>
We demonstrate the current notmuch restore parser being confused by
message-id's and tags containing non alpha numeric characters
(particularly space and parentheses are problematic because they are
not escaped by notmuch dump).

We save the files as hex escaped on disk so that terminal emulators
will not get confused if the test fails (as we mostly expect it to do).
</content>
</entry>
<entry>
<title>test: add nontrivial test for restore --accumulate.</title>
<updated>2012-11-17T14:24:24Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2012-11-16T12:31:19Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=be66f3f70937454b367b01bdee0238e38fbf12fa'/>
<id>urn:sha1:be66f3f70937454b367b01bdee0238e38fbf12fa</id>
<content type='text'>
It seems we have never tested the case that restore --accumulate
actually adds tags. I noticed this when I started optimizing and no
tests failed.

The bracketing with "restore --input=dump.expected" are to make sure
we start in a known state, and we leave the database in a known state
for the next test.
</content>
</entry>
<entry>
<title>test: add more informative titles to restore --accumulate tests</title>
<updated>2012-11-17T14:18:00Z</updated>
<author>
<name>David Bremner</name>
<email>bremner@debian.org</email>
</author>
<published>2012-11-17T14:18:00Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=7d1a2ca0ce0b20a5436225824c0982dfa0c29b45'/>
<id>urn:sha1:7d1a2ca0ce0b20a5436225824c0982dfa0c29b45</id>
<content type='text'>
Thanks to Ethan for the suggestion.
</content>
</entry>
</feed>
