<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/lib/query.cc, branch debian/0.24.2-1</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=debian%2F0.24.2-1</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=debian%2F0.24.2-1'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2017-03-05T00:47:25Z</updated>
<entry>
<title>lib: query make exclude handling non-destructive</title>
<updated>2017-03-05T00:47:25Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2017-02-25T16:09:13Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=dfacfe14f337b6603ba0784e4a395489923fd6dd'/>
<id>urn:sha1:dfacfe14f337b6603ba0784e4a395489923fd6dd</id>
<content type='text'>
We filter added exclude at add time, rather than modifying the query by
count search. As noted in the comments, there are several ignored
conditions here.
</content>
</entry>
<entry>
<title>lib: centralize query parsing, store results.</title>
<updated>2017-03-05T00:47:25Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2017-02-25T16:09:11Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=e209b7187365b9f5a356b21f3d11dd2f41fd5a1c'/>
<id>urn:sha1:e209b7187365b9f5a356b21f3d11dd2f41fd5a1c</id>
<content type='text'>
The main goal is to prepare the way for non-destructive (or at least
less destructive) exclude tag handling. It does this by having a
pre-parsed query available for further processing. This also allows us
to provide slightly more precise error messages.
</content>
</entry>
<entry>
<title>lib: optimize counting documents</title>
<updated>2017-01-28T01:54:44Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2017-01-12T02:01:15Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=70519319b59ca55d511c5b44ff8c299cbe93c572'/>
<id>urn:sha1:70519319b59ca55d511c5b44ff8c299cbe93c572</id>
<content type='text'>
From #xapian

olly&gt; bremner: btw, i noticed notmuch count see ms to request all the documents and then ignores them

bremner&gt; hmm. There's something funny about the way that notmuch uses matches in general iirc

olly&gt; it should be able to do: mset = enquire.get_mset (0, 0, notmuch-&gt;xapian_db-&gt;get_doccount ());
...
olly&gt; get_matches_estimated() will be exact because check_at_least is the size of the database
</content>
</entry>
<entry>
<title>lib: provide _notmuch_database_log_append</title>
<updated>2016-08-09T00:34:11Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2016-07-15T10:25:41Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=293186d6c6b1c4d158413de5412e6b4345e94970'/>
<id>urn:sha1:293186d6c6b1c4d158413de5412e6b4345e94970</id>
<content type='text'>
_notmuch_database_log clears the log buffer each time. Rather than
introducing more complicated semantics about for this function, provide
a second function that does not clear the buffer. This is mainly a
convenience function for callers constructing complex or multi-line log
messages.

The changes to query.cc are to make sure that the common code path of
the new function is tested.
</content>
</entry>
<entry>
<title>Use https instead of http where possible</title>
<updated>2016-06-05T11:32:17Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2016-06-02T16:26:14Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=6a833a6e83865f6999707cc30768d07e1351c2cb'/>
<id>urn:sha1:6a833a6e83865f6999707cc30768d07e1351c2cb</id>
<content type='text'>
Many of the external links found in the notmuch source can be resolved
using https instead of http.  This changeset addresses as many as i
could find, without touching the e-mail corpus or expected outputs
found in tests.
</content>
</entry>
<entry>
<title>lib: whitespace cleanup</title>
<updated>2016-06-05T11:23:28Z</updated>
<author>
<name>Tomi Ollila</name>
<email>tomi.ollila@iki.fi</email>
</author>
<published>2016-05-28T17:45:31Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=cf09631a45d276826255d197c1d5c913a29c79f4'/>
<id>urn:sha1:cf09631a45d276826255d197c1d5c913a29c79f4</id>
<content type='text'>
Cleaned the following whitespace in lib/* files:

lib/index.cc:              1 line:  trailing whitespace
lib/database.cc            5 lines: 8 spaces at the beginning of line
lib/notmuch-private.h:     4 lines: 8 spaces at the beginning of line
lib/message.cc:            1 line:  trailing whitespace
lib/sha1.c:                1 line:  empty lines at the end of file
lib/query.cc:              2 lines: 8 spaces at the beginning of line
lib/gen-version-script.sh: 1 line:  trailing whitespace
</content>
</entry>
<entry>
<title>lib: make a global constant for query parser flags</title>
<updated>2016-05-25T10:40:44Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2016-03-22T10:54:53Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=30caaf52b022be5f0f695f3088286fb56e82c782'/>
<id>urn:sha1:30caaf52b022be5f0f695f3088286fb56e82c782</id>
<content type='text'>
It's already kindof gross that this is hardcoded in two different
places. We will also need these later in field processors calling back
into the query parser.
</content>
</entry>
<entry>
<title>Add internal functions to search for alternate doc types</title>
<updated>2016-04-15T10:07:23Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2016-04-09T01:54:49Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=011fc41d4d1a1dc9ae3765c9f08ee603eea7bc7e'/>
<id>urn:sha1:011fc41d4d1a1dc9ae3765c9f08ee603eea7bc7e</id>
<content type='text'>
Publicly we are only exposing the non-ghost documents (of "type"
"mail").  But internally we might want to inspect the ghost messages
as well.

This changeset adds two new private interfaces to queries to recover
information about alternate document types.
</content>
</entry>
<entry>
<title>lib: add versions of n_q_count_{message,threads} with status return</title>
<updated>2015-10-05T22:44:07Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2015-09-27T15:31:57Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=87ee9a53e36f395e73e16da12cb268a708147259'/>
<id>urn:sha1:87ee9a53e36f395e73e16da12cb268a708147259</id>
<content type='text'>
Although I think it's a pretty bad idea to continue using the old API,
this allows both a more gentle transition for clients of the library,
and allows us to break one monolithic change into a series
</content>
</entry>
<entry>
<title>lib: constify arguments to notmuch_query_get_*</title>
<updated>2015-09-23T11:58:19Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2015-09-23T11:31:19Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=93ee4faa4d60e78c8cfeb95580919cac07ac0eca'/>
<id>urn:sha1:93ee4faa4d60e78c8cfeb95580919cac07ac0eca</id>
<content type='text'>
These functions are all just accessors, and it's pretty clear they don't
modify the query struct. This also fixes one warning I created when I
introduced status.c.
</content>
</entry>
</feed>
