<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/lib/message.cc, branch debian/0.28.3-1</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=debian%2F0.28.3-1</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=debian%2F0.28.3-1'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2018-09-06T11:07:13Z</updated>
<entry>
<title>lib: calculate message depth in thread</title>
<updated>2018-09-06T11:07:13Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2018-08-30T11:29:08Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=0a7181dd163babefaefa9988ed51dc66c892eb3e'/>
<id>urn:sha1:0a7181dd163babefaefa9988ed51dc66c892eb3e</id>
<content type='text'>
This will be used in reparenting messages without useful in-reply-to,
but with useful references
</content>
</entry>
<entry>
<title>lib: read reference terms into message struct.</title>
<updated>2018-09-06T11:07:12Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2018-08-30T11:29:05Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=d0b844b358f7bb7bc7c6f152223577efcebfc89b'/>
<id>urn:sha1:d0b844b358f7bb7bc7c6f152223577efcebfc89b</id>
<content type='text'>
The plan is to use these in resolving threads.
</content>
</entry>
<entry>
<title>lib/thread: sort sibling messages by date</title>
<updated>2018-09-06T11:07:12Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2018-08-30T11:29:04Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=9b568e73e1afc211306d18dac3d27df4a07a0fdd'/>
<id>urn:sha1:9b568e73e1afc211306d18dac3d27df4a07a0fdd</id>
<content type='text'>
For non-root messages, this should not should anything currently, as
the messages are already added in date order. In the future we will
add some non-root messages in a second pass out of order and the
sorting will be useful. It does fix the order of multiple
root-messages (although it is overkill for that).
</content>
</entry>
<entry>
<title>lib: make notmuch_message_get_database() take a const notmuch_message_t*</title>
<updated>2018-05-26T14:32:01Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2018-05-11T06:57:54Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=6a9f26b4a04e20529203938a99658516876c67f3'/>
<id>urn:sha1:6a9f26b4a04e20529203938a99658516876c67f3</id>
<content type='text'>
This is technically an API change, but it is not an ABI change, and
it's merely a statement that limits what the library can do.

This is in parallel to notmuch_query_get_database(), which also takes
a const pointer.
</content>
</entry>
<entry>
<title>lib: expose notmuch_message_get_database()</title>
<updated>2018-05-26T14:30:32Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2018-05-11T06:57:52Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=9088db76d89264b733f6b45e776d8952da237921'/>
<id>urn:sha1:9088db76d89264b733f6b45e776d8952da237921</id>
<content type='text'>
We've had _notmuch_message_database() internally for a while, and it's
useful.  It turns out to be useful on the other side of the library
interface as well (i'll use it later in this series for "notmuch
show"), so we expose it publicly now.
</content>
</entry>
<entry>
<title>lib: define specialized get_thread_id for use in thread subquery</title>
<updated>2018-05-07T11:42:53Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2018-01-28T02:50:42Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=f0131af6c59704e29d58eb74ed5e4bc298455272'/>
<id>urn:sha1:f0131af6c59704e29d58eb74ed5e4bc298455272</id>
<content type='text'>
The observation is that we are only using the messages to get there
thread_id, which is kindof a pessimal access pattern for the current
notmuch_message_get_thread_id
</content>
</entry>
<entry>
<title>cli/reindex: destroy stashed session keys when --decrypt=false</title>
<updated>2017-12-08T12:08:47Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2017-12-08T06:24:00Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=6a9626a2fdddf6115bcf97982fd10053bf48e942'/>
<id>urn:sha1:6a9626a2fdddf6115bcf97982fd10053bf48e942</id>
<content type='text'>
There are some situations where the user wants to get rid of the
cleartext index of a message.  For example, if they're indexing
encrypted messages normally, but suddenly they run across a message
that they really don't want any trace of in their index.

In that case, the natural thing to do is:

   notmuch reindex --decrypt=false id:whatever@example.biz

But of course, clearing the cleartext index without clearing the
stashed session key is just silly.  So we do the expected thing and
also destroy any stashed session keys while we're destroying the index
of the cleartext.

Note that stashed session keys are stored in the xapian database, but
xapian does not currently allow safe deletion (see
https://trac.xapian.org/ticket/742).

As a workaround, after removing session keys and cleartext material
from the database, the user probably should do something like "notmuch
compact" to try to purge whatever recoverable data is left in the
xapian freelist.  This problem really needs to be addressed within
xapian, though, if we want it fixed right.
</content>
</entry>
<entry>
<title>crypto: index encrypted parts when indexopts try_decrypt is set.</title>
<updated>2017-10-21T22:53:19Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2017-10-21T02:25:41Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=4dfcc8c9b2e1dbb965f69283dca50c7581c88050'/>
<id>urn:sha1:4dfcc8c9b2e1dbb965f69283dca50c7581c88050</id>
<content type='text'>
If we see index options that ask us to decrypt when indexing a
message, and we encounter an encrypted part, we'll try to descend into
it.

If we can decrypt, we add the property index.decryption=success.

If we can't decrypt (or recognize the encrypted type of mail), we add
the property index.decryption=failure.

Note that a single message may have both values of the
"index.decryption" property: "success" and "failure".  For example,
consider a message that includes multiple layers of encryption.  If we
manage to decrypt the outer layer ("index.decryption=success"), but
fail on the inner layer ("index.decryption=failure").

Because of the property name, this will be automatically cleared (and
possibly re-set) during re-indexing.  This means it will subsequently
correspond to the actual semantics of the stored index.
</content>
</entry>
<entry>
<title>reindex: drop all properties named with prefix "index."</title>
<updated>2017-10-21T22:53:08Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2017-10-21T02:25:40Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=0bb05ff693737c5b91d6a64f6209984a6c418c46'/>
<id>urn:sha1:0bb05ff693737c5b91d6a64f6209984a6c418c46</id>
<content type='text'>
This allows us to create new properties that will be automatically set
during indexing, and cleared during re-indexing, just by choice of
property name.
</content>
</entry>
<entry>
<title>lib: convert notmuch_bool_t to stdbool internally</title>
<updated>2017-10-10T01:27:16Z</updated>
<author>
<name>Jani Nikula</name>
<email>jani@nikula.org</email>
</author>
<published>2017-10-07T08:44:05Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=008a5e92eb157e2bb8622cb2fbf644deba5ba4b4'/>
<id>urn:sha1:008a5e92eb157e2bb8622cb2fbf644deba5ba4b4</id>
<content type='text'>
C99 stdbool turned 18 this year. There really is no reason to use our
own, except in the library interface for backward
compatibility. Convert the lib internally to stdbool.
</content>
</entry>
</feed>
