<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/lib, branch debian/0.24_rc0-1</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=debian%2F0.24_rc0-1</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=debian%2F0.24_rc0-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: use delete[] to free buffer allocated using new[]</title>
<updated>2017-03-05T00:42:39Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2017-03-04T17:38:41Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=f3edc5dc86a2d819ae92998ccfc5ac507dbbc5b0'/>
<id>urn:sha1:f3edc5dc86a2d819ae92998ccfc5ac507dbbc5b0</id>
<content type='text'>
Fix warning caught by clang:

lib/regexp-fields.cc:41:2: warning: 'delete' applied to a pointer that was allocated
      with 'new[]'; did you mean 'delete[]'? [-Wmismatched-new-delete]
        delete buffer;
        ^
              []
lib/regexp-fields.cc:37:17: note: allocated with 'new[]' here
        char *buffer = new char[len];
                       ^
</content>
</entry>
<entry>
<title>lib: add mid: as a synonym for id:</title>
<updated>2017-03-03T21:46:48Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2017-02-27T02:34:21Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=6cb1c617a70466c4d8acc67cb70254e5b8385f88'/>
<id>urn:sha1:6cb1c617a70466c4d8acc67cb70254e5b8385f88</id>
<content type='text'>
mid: is the url scheme suggested by URL 2392. We also plan to
introduce more flexible searches for mid: than are possible with
id: (in order not to break assumptions about the special behaviour of
id:, e.g. identifying at most one message).
</content>
</entry>
<entry>
<title>lib: regexp matching in 'subject' and 'from'</title>
<updated>2017-03-03T21:46:48Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2017-02-27T02:34:20Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=55524bb063c95ae51a1762eb0b1aacce6ca49223'/>
<id>urn:sha1:55524bb063c95ae51a1762eb0b1aacce6ca49223</id>
<content type='text'>
the idea is that you can run

% notmuch search subject:/&lt;your-favourite-regexp&gt;/
% notmuch search from:/&lt;your-favourite-regexp&gt;/

or

% notmuch search subject:"your usual phrase search"
% notmuch search from:"usual phrase search"

This feature is only available with recent Xapian, specifically
support for field processors is needed.

It should work with bindings, since it extends the query parser.

This is easy to extend for other value slots, but currently the only
value slots are date, message_id, from, subject, and last_mod. Date is
already searchable;  message_id is left for a followup commit.

This was originally written by Austin Clements, and ported to Xapian
field processors (from Austin's custom query parser) by yours truly.
</content>
</entry>
<entry>
<title>lib: create field processors from prefix table</title>
<updated>2017-03-03T11:15:13Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2017-02-27T02:34:19Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=31b8ce4558de69860c95bf319a0a162316dce6c6'/>
<id>urn:sha1:31b8ce4558de69860c95bf319a0a162316dce6c6</id>
<content type='text'>
This is a bit more code than hardcoding the two existing field
processors, but it should make it easy to add more.
</content>
</entry>
<entry>
<title>lib/message.cc: use view number to invalidate cached metadata</title>
<updated>2017-02-26T01:15:38Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2017-02-24T18:33:07Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=7bd63833bfbaff88fdf4d3cd2809ce68e8e0f976'/>
<id>urn:sha1:7bd63833bfbaff88fdf4d3cd2809ce68e8e0f976</id>
<content type='text'>
Currently the view number is incremented by notmuch_database_reopen
</content>
</entry>
<entry>
<title>lib: handle DatabaseModifiedError in _n_message_ensure_metadata</title>
<updated>2017-02-26T01:13:50Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2017-02-18T01:28:05Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=e0b22c139c0a9cd2b7dc5afb96e4ccec4f6b1641'/>
<id>urn:sha1:e0b22c139c0a9cd2b7dc5afb96e4ccec4f6b1641</id>
<content type='text'>
The retries are hardcoded to a small number, and error handling aborts
than propagating errors from notmuch_database_reopen. These are both
somewhat justified by the assumption that most things that can go
wrong in Xapian::Database::reopen are rare and fatal. Here's the brief
discussion with Xapian upstream:

   24-02-2017 08:12:57 &lt; bremner&gt; any intuition about how likely
      Xapian::Database::reopen is to fail? I'm catching a
      DatabaseModifiedError somewhere where handling any further errors is
      tricky, and wondering about treating a failed reopen as as "the
      impossible happened, stopping"

   24-02-2017 16:22:34 &lt; olly&gt; bremner: there should not be much scope for
    failure - stuff like out of memory or disk errors, which are probably a
    good enough excuse to stop
</content>
</entry>
<entry>
<title>lib: add _notmuch_database_reopen</title>
<updated>2017-02-26T01:09:17Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2017-02-24T01:38:24Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=e17a914b77230d942b36639c261c345849fe9d52'/>
<id>urn:sha1:e17a914b77230d942b36639c261c345849fe9d52</id>
<content type='text'>
The main expected use is to recover from a Xapian::DatabaseChanged
exception.
</content>
</entry>
<entry>
<title>Merge branch 'release'</title>
<updated>2017-02-23T13:08:15Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2017-02-23T13:08:15Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=e0e8586fc72763571f9eafeb831c7bc79a15273d'/>
<id>urn:sha1:e0e8586fc72763571f9eafeb831c7bc79a15273d</id>
<content type='text'>
Merge in g_hash_table read-after-free fix
</content>
</entry>
</feed>
