search: Add stable queries to thread search results
authorAustin Clements <amdragon@MIT.EDU>
Thu, 24 Oct 2013 15:19:08 +0000 (11:19 -0400)
committerDavid Bremner <david@tethera.net>
Sat, 9 Nov 2013 00:43:29 +0000 (20:43 -0400)
commitabeac48522ded66e2f0e9aae704482355cb46e6a
tree3f0df784ca77999c880b9000d6d4281b6b9a7143
parent730b8f61e0cf4b2e8c0f123c0914d472d6df38fc
search: Add stable queries to thread search results

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.
devel/schemata
notmuch-client.h
notmuch-search.c
test/json
test/missing-headers
test/sexp