<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/lib, branch debian/0.29.2-2</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=debian%2F0.29.2-2</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=debian%2F0.29.2-2'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2019-05-29T11:14:44Z</updated>
<entry>
<title>indexing: record protected subject when indexing cleartext</title>
<updated>2019-05-29T11:14:44Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2019-05-27T22:40:28Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=5c3a44681f2fffbd3a7d76e424c134a82470ddd2'/>
<id>urn:sha1:5c3a44681f2fffbd3a7d76e424c134a82470ddd2</id>
<content type='text'>
When indexing the cleartext of an encrypted message, record any
protected subject in the database, which should make it findable and
visible in search.

Signed-off-by: Daniel Kahn Gillmor &lt;dkg@fifthhorseman.net&gt;
</content>
</entry>
<entry>
<title>lib/database: index user headers.</title>
<updated>2019-05-25T10:21:13Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2019-02-26T02:10:29Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=adb53b073791f710b93a8fc755b6b7b606bf7fd1'/>
<id>urn:sha1:adb53b073791f710b93a8fc755b6b7b606bf7fd1</id>
<content type='text'>
This essentially involves calling _notmuch_message_gen_terms once for
each user defined header.
</content>
</entry>
<entry>
<title>lib: support user prefix names in term generation</title>
<updated>2019-05-25T10:17:27Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2019-02-26T01:57:40Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=75bdce79527571c12c5de0c630747d6262b73fbd'/>
<id>urn:sha1:75bdce79527571c12c5de0c630747d6262b73fbd</id>
<content type='text'>
This should not change the indexing process yet as nothing calls
_notmuch_message_gen_terms with a user prefix name. On the other hand,
it should not break anything either.

_notmuch_database_prefix does a linear walk of the list of (built-in)
prefixes, followed by a logarithmic time search of the list of user
prefixes. The latter is probably not really noticable.
</content>
</entry>
<entry>
<title>lib: cache user prefixes in database object</title>
<updated>2019-05-25T10:08:20Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2018-11-17T14:09:00Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=b52cda90f0b05ce5055fb840e6d9dd88c09f1f83'/>
<id>urn:sha1:b52cda90f0b05ce5055fb840e6d9dd88c09f1f83</id>
<content type='text'>
This will be used to avoid needing a database access to resolve a db
prefix from the corresponding UI prefix (e.g. when indexing). Arguably
the setup of the separate header map does not belong here, since it is
about indexing rather than querying, but we currently don't have any
other indexing setup to do.
</content>
</entry>
<entry>
<title>lib: setup user headers in query parser</title>
<updated>2019-05-25T09:56:16Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2018-11-17T14:08:59Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=575493e78534f8fd241d663b8690a22d6885e0b1'/>
<id>urn:sha1:575493e78534f8fd241d663b8690a22d6885e0b1</id>
<content type='text'>
These tests will need to be updated if the Xapian
query print/debug format changes.
</content>
</entry>
<entry>
<title>n_m_remove_indexed_terms: reduce number of Xapian API calls.</title>
<updated>2019-05-23T11:00:56Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2019-04-16T01:46:16Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=97939170b3e8b31f88520932aa20bf1b98e469c3'/>
<id>urn:sha1:97939170b3e8b31f88520932aa20bf1b98e469c3</id>
<content type='text'>
Previously this functioned scanned every term attached to a given
Xapian document. It turns out we know how to read only the terms we
need to preserve (and we might have already done so). This commit
replaces many calls to Xapian::Document::remove_term with one call to
::clear_terms, and a (typically much smaller) number of calls to
::add_term. Roughly speaking this is based on the assumption that most
messages have more text than they have tags.

According to the performance test suite, this yields a roughly 40%
speedup on "notmuch reindex '*'"
</content>
</entry>
<entry>
<title>lib/message-file: close stream in destructor</title>
<updated>2019-05-10T15:26:50Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2019-05-10T00:23:24Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=e19954fa188e8a2a9bb4d57a235eb11490880fb9'/>
<id>urn:sha1:e19954fa188e8a2a9bb4d57a235eb11490880fb9</id>
<content type='text'>
Without this,

$ make time-test OPTIONS=--small

leads to fatal errors from too many open files.

Thanks to st-gourichon-fid for bringing this problem to my attention in IRC.
</content>
</entry>
<entry>
<title>lib/message_file: open gzipped files</title>
<updated>2019-05-03T10:48:43Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2019-03-24T03:32:43Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=852167479f552cd396b1fdcbe9b1cb4db40e5e0a'/>
<id>urn:sha1:852167479f552cd396b1fdcbe9b1cb4db40e5e0a</id>
<content type='text'>
Rather than storing the lower level stdio FILE object, we store a
GMime stream. This allows both transparent decompression, and passing
the stream into GMime for parsing. As a side effect, we can let GMime
close the underlying OS stream (indeed, that stream isn't visible here
anymore).

This change is enough to get notmuch-{new,search} working, but there is still
some work required for notmuch-show, to be done in a following commit.
</content>
</entry>
<entry>
<title>gmime-cleanup: pass NULL as default GMimeParserOptions</title>
<updated>2019-05-03T09:58:00Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2019-05-02T13:19:46Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=e9b870b6923afe767a7c9938be24f5390102031a'/>
<id>urn:sha1:e9b870b6923afe767a7c9938be24f5390102031a</id>
<content type='text'>
This is a functional change, not a straight translation, because we
are no longer directly invoking g_mime_parser_options_get_default(),
but the GMime source has indicated that the options parameter for
g_mime_parser_construct_message() is "nullable" since upstream commit
d0ebdd2ea3e6fa635a2a551c846e9bc8b6040353 (which itself precedes GMime
3.0).

Signed-off-by: Daniel Kahn Gillmor &lt;dkg@fifthhorseman.net&gt;
</content>
</entry>
<entry>
<title>gmime-cleanup: pass NULL arguments explicitly where GMime 3.0 expects it</title>
<updated>2019-05-03T09:57:27Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2019-05-02T13:19:45Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=bbe3015b3ea503b2834811f6cdd7276f9742faa1'/>
<id>urn:sha1:bbe3015b3ea503b2834811f6cdd7276f9742faa1</id>
<content type='text'>
Several GMime 2.6 functions sprouted a change in the argument order in
GMime 3.0.  We had a compatibility layer here to be able to handle
compiling against both GMime 2.6 and 3.0.  Now that we're using 3.0
only, rip out the compatibility layer for those functions with changed
argument lists, and explicitly use the 3.0 argument lists.

Signed-off-by: Daniel Kahn Gillmor &lt;dkg@fifthhorseman.net&gt;
</content>
</entry>
</feed>
