<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/doc, branch debian/0.34.2-1</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=debian%2F0.34.2-1</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=debian%2F0.34.2-1'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2021-12-04T12:42:31Z</updated>
<entry>
<title>python-cffi: switch to notmuch_database_{open,create}_with_config</title>
<updated>2021-12-04T12:42:31Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-10-30T16:22:35Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=d7f95724132bf658fd151630185899737e2ed829'/>
<id>urn:sha1:d7f95724132bf658fd151630185899737e2ed829</id>
<content type='text'>
Since release 0.32, libnotmuch provides searching for database and
configuration paths. This commit changes the python module notmuch2 to
use those facilities.

This fixes the bug reported in [1], along with a couple of the
deprecation warnings in the python bindings.

Database.default_path is deprecated, since it no longer faithfully
reflects what libnotmuch is doing, and it is also no longer used in
the bindings themselves.

This commit choose the default of config=CONFIG.EMPTY (equivalent to
passing "" to notmuch_database_open_with_config).  This makes the
change upward compatible API-wise (at least as far as the test suite
verifies), but changing the default to CONFIG.SEARCH would probably be
more convenient for bindings users.

[1]: id:87h7d4wp6b.fsf@tethera.net
</content>
</entry>
<entry>
<title>doc/python-cffi: import from built bindings, not installed module</title>
<updated>2021-12-04T00:25:59Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-10-29T14:54:59Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=48b5263646bae2ce40e3ec17e0cfae26a7abc91f'/>
<id>urn:sha1:48b5263646bae2ce40e3ec17e0cfae26a7abc91f</id>
<content type='text'>
Previously the python-cffi bindings either failed to build, or built
for the wrong module by using the installed module.

The fix requires correction the module path, building the bindings
before docs, and helping python find the built libnotmuch.

Based on patch / discussion from Micheal Gruber [1]

[1]: id:cover.1634808719.git.git@grubix.eu
</content>
</entry>
<entry>
<title>doc/sexp-queries: update synopsis and description</title>
<updated>2021-09-05T00:07:19Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-08-24T15:17:45Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=49aa44bb012e8c2412b5447119b78b61842740b8'/>
<id>urn:sha1:49aa44bb012e8c2412b5447119b78b61842740b8</id>
<content type='text'>
I chose to go with a somewhat terse synopsis to try to keep the length
of the page down.
</content>
</entry>
<entry>
<title>lib/parse-sexp: apply macros</title>
<updated>2021-09-05T00:07:19Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-08-24T15:17:41Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=551254eb76c9bb558078f04f21df1f6089cb03d6'/>
<id>urn:sha1:551254eb76c9bb558078f04f21df1f6089cb03d6</id>
<content type='text'>
Macros implement lazy evaluation and lexical scope.  The former is
needed to make certain natural constructs work sensibly (e.g. (tag
,param)) but the latter is mainly future-proofing in case the DSL is
is extended to allow local bindings.

For technical background, see chapters 6 and 17 of [1] (or some other
intermediate programming languages textbook).

[1] http://cs.brown.edu/courses/cs173/2012/book/
</content>
</entry>
<entry>
<title>CLI/config support saving s-expression queries</title>
<updated>2021-09-05T00:07:19Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-08-24T15:17:38Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=81b9dbd110593d6b1a370efb3576bf39585af2ea'/>
<id>urn:sha1:81b9dbd110593d6b1a370efb3576bf39585af2ea</id>
<content type='text'>
This commit does not enable using saved s-expression queries, only
saving and retrieving them from the config file or the database. Use
in queries will be enabled in a following commit.
</content>
</entry>
<entry>
<title>lib/parse-sexp: handle saved queries</title>
<updated>2021-09-05T00:07:19Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-08-24T15:17:37Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=6ab2d9b1a2e62b76960df8e80ff2a45d9c6a8551'/>
<id>urn:sha1:6ab2d9b1a2e62b76960df8e80ff2a45d9c6a8551</id>
<content type='text'>
This provides functionality analogous to query: in the Xapian
QueryParser based parser. Perhaps counterintuitively, the saved
queries currently have to be in the original query syntax (i.e. not
s-expressions).
</content>
</entry>
<entry>
<title>lib/parse-sexp: parse user headers</title>
<updated>2021-09-05T00:07:19Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-08-24T15:17:35Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=a07ef8abf5248c1128ddc75b8139ae807a88abd9'/>
<id>urn:sha1:a07ef8abf5248c1128ddc75b8139ae807a88abd9</id>
<content type='text'>
One subtle aspect is the replacement of _find_prefix with
_notmuch_database_prefix, which understands user headers. Otherwise
the code mainly consists of creating a fake prefix record (since the
user prefixes are not in the prefix table) and error handling.
</content>
</entry>
<entry>
<title>lib/parse-sexp: support infix subqueries</title>
<updated>2021-09-05T00:07:19Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-08-24T15:17:34Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=cc5992a30470222791c24849da04a3c0403ecce5'/>
<id>urn:sha1:cc5992a30470222791c24849da04a3c0403ecce5</id>
<content type='text'>
This is necessary so that programs can take infix syntax queries from
a user and use the sexp query syntax to construct e.g. a refinement of
that query.
</content>
</entry>
<entry>
<title>lib/parse-sexp: expand queries</title>
<updated>2021-09-05T00:07:19Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-08-24T15:17:33Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=afe85e65786df1df9abf261393b4b4e6e2e86009'/>
<id>urn:sha1:afe85e65786df1df9abf261393b4b4e6e2e86009</id>
<content type='text'>
The code here is just gluing together _notmuch_query_expand with the
existing sexp parser infrastructure.
</content>
</entry>
<entry>
<title>lib/parse-sexp: support regular expressions</title>
<updated>2021-09-05T00:07:19Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-08-24T15:17:29Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=1870b3ae4bae5e68296e63acc81965eea04a1a7a'/>
<id>urn:sha1:1870b3ae4bae5e68296e63acc81965eea04a1a7a</id>
<content type='text'>
At least to the degree that the Xapian QueryParser based parser
also supports them. Support short alias 'rx' as it seems to make more
complex queries nicer to read.
</content>
</entry>
</feed>
