<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/test, branch 0.17_rc2</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.17_rc2</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.17_rc2'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2013-11-28T11:02:15Z</updated>
<entry>
<title>test/crypto: disable gpg version printing</title>
<updated>2013-11-28T11:02:15Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2013-11-27T15:35:46Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=456799d514473187758f51c0569b0676575db978'/>
<id>urn:sha1:456799d514473187758f51c0569b0676575db978</id>
<content type='text'>
This was causing test failures because version strings varied in
length between GNU/Linux and GNU/KFreeBSD. One can also imagine
different versions of gnupg causing the same failure.
</content>
</entry>
<entry>
<title>test: replace $PWD with YYY in emacs &amp; emacs-show tests</title>
<updated>2013-11-24T00:25:29Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2013-11-23T11:01:16Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=2560996b7ebb08cca7e20fbb182998bc2e0e2151'/>
<id>urn:sha1:2560996b7ebb08cca7e20fbb182998bc2e0e2151</id>
<content type='text'>
When executed command line is written to *Notmuch errors* buffer,
shell-quote-argument will backslash-escape any char that is not in
"POSIX filename characters" (i.e. matching "[^-0-9a-zA-Z_./\n]").

Currently in two emacs tests shell has expanded $PWD as part of
emacs variable, which will later be fed to #'shell-quote-argument
and finally written to ERROR file. If $PWD contained non-POSIX
filename characters, data in ERROR file will not match $PWD when
later comparing in shell. Therefore, in these two particular cases
the escaped $PWD is replaced with YYY in ERROR file and expected
content is adjusted accordingly.
</content>
</entry>
<entry>
<title>emacs: Fix search tagging races</title>
<updated>2013-11-09T00:52:00Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2013-10-24T15:19:11Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=96c0ce28f8288773870bff5a6ef1c43ff3a931f8'/>
<id>urn:sha1:96c0ce28f8288773870bff5a6ef1c43ff3a931f8</id>
<content type='text'>
This fixes races in thread-local and global tagging in notmuch-search
(e.g., "+", "-", "a", "*", etc.).  Previously, these would modify tags
of new messages that arrived after the search.  Now they only operate
on the messages that were in the threads when the search was
performed.  This prevents surprises like archiving messages that
arrived in a thread after the search results were shown.

This eliminates `notmuch-search-find-thread-id-region(-search)'
because these functions strongly encouraged racy usage.

This fixes the two broken tests added by the previous patch.
</content>
</entry>
<entry>
<title>emacs: Add known-broken tests for search tagging races</title>
<updated>2013-11-09T00:46:53Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2013-10-24T15:19:10Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=23fb842e04938513517adfed860d8b40ad910096'/>
<id>urn:sha1:23fb842e04938513517adfed860d8b40ad910096</id>
<content type='text'>
These tests check that both thread-local and global search tagging
operations are race-free.  They are currently known-broken because
they aren't race-free.
</content>
</entry>
<entry>
<title>search: Add stable queries to thread search results</title>
<updated>2013-11-09T00:43:29Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2013-10-24T15:19:08Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=abeac48522ded66e2f0e9aae704482355cb46e6a'/>
<id>urn:sha1:abeac48522ded66e2f0e9aae704482355cb46e6a</id>
<content type='text'>
These queries will match exactly the set of messages currently in the
thread, even if more messages later arrive.  Two queries are provided:
one for matched messages and one for unmatched messages.

This can be used to fix race conditions with tagging threads from
search results.  While tagging based on a thread: query can affect
messages that arrived after the search, tagging based on stable
queries affects only the messages the user was shown in the search UI.

Since we want clients to be able to depend on the presence of these
queries, this ushers in schema version 2.
</content>
</entry>
<entry>
<title>emacs: Use notmuch tag --batch for large tag queries</title>
<updated>2013-11-09T00:35:13Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2013-10-24T15:19:07Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=730b8f61e0cf4b2e8c0f123c0914d472d6df38fc'/>
<id>urn:sha1:730b8f61e0cf4b2e8c0f123c0914d472d6df38fc</id>
<content type='text'>
(Unfortunately, it's difficult to first demonstrate this problem with
a known-broken test because modern Linux kernels have argument length
limits in the megabytes, which makes Emacs really slow!)
</content>
</entry>
<entry>
<title>test: Fix missing erase-buffer in emacs test</title>
<updated>2013-11-09T00:18:24Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2013-10-24T15:19:04Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=c7e18288ae677b50344aed7d8f1746d1c72a30c2'/>
<id>urn:sha1:c7e18288ae677b50344aed7d8f1746d1c72a30c2</id>
<content type='text'>
The first subprocess error exit code test assumed the *Notmuch errors*
buffer would be empty.  Rather than assuming, make it so.
</content>
</entry>
<entry>
<title>test: tree: remove require from tests</title>
<updated>2013-11-07T11:52:22Z</updated>
<author>
<name>Mark Walters</name>
<email>markwalters1009@gmail.com</email>
</author>
<published>2013-11-01T09:23:42Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=10bf1b740096b75da2618bb2b1a9f79257eb76ca'/>
<id>urn:sha1:10bf1b740096b75da2618bb2b1a9f79257eb76ca</id>
<content type='text'>
Now tree is included by default we don't need to "require it" in the
test.
</content>
</entry>
<entry>
<title>emacs: tree: remove test for emacs from tree test</title>
<updated>2013-11-07T11:43:45Z</updated>
<author>
<name>Mark Walters</name>
<email>markwalters1009@gmail.com</email>
</author>
<published>2013-10-29T22:55:33Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=7d7c702d7290c049dd59383e4b1e28ab4280eb1c'/>
<id>urn:sha1:7d7c702d7290c049dd59383e4b1e28ab4280eb1c</id>
<content type='text'>
Now the test is in mainline we can remove the check that emacs exists.
</content>
</entry>
<entry>
<title>test: move emacs-tree test into mainline</title>
<updated>2013-11-07T11:40:28Z</updated>
<author>
<name>Mark Walters</name>
<email>markwalters1009@gmail.com</email>
</author>
<published>2013-10-29T22:55:32Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=81b2ad57f06f6b7619aae81dc2a0b79ec426ca73'/>
<id>urn:sha1:81b2ad57f06f6b7619aae81dc2a0b79ec426ca73</id>
<content type='text'>
We move the emacs-tree test and associated files into the main test
directory and add the test to the list in notmuch-test.
</content>
</entry>
</feed>
