<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/notmuch-git.py, branch debian/0.38-1</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=debian%2F0.38-1</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=debian%2F0.38-1'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2022-12-27T15:54:57Z</updated>
<entry>
<title>CLI/git: use --exclude=false when calling notmuch-search</title>
<updated>2022-12-27T15:54:57Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-10-16T12:49:00Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=891af1d457a174e12943baf111175af14bb4bb53'/>
<id>urn:sha1:891af1d457a174e12943baf111175af14bb4bb53</id>
<content type='text'>
We use notmuch search in two places in notmuch-git.py: to find which
tags have a given prefix, and to see if message with given id exists
locally. In both cases we do not want the presence of exclude tags
(e.g. deleted) to change the results.
</content>
</entry>
<entry>
<title>CLI/git: opportunistically use bindings to check for known messages</title>
<updated>2022-07-17T00:27:40Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-07-15T14:23:21Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=f599b8873f4fc748ae1befdac776b543e61045d7'/>
<id>urn:sha1:f599b8873f4fc748ae1befdac776b543e61045d7</id>
<content type='text'>
If the bindings are installed, use them to avoid one exec of notmuch
search per message.
</content>
</entry>
<entry>
<title>CLI/git: current cache contents of index</title>
<updated>2022-07-17T00:27:40Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-07-02T23:45:11Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=bd4347499f6ddab1af0967d596ad97996eea74f8'/>
<id>urn:sha1:bd4347499f6ddab1af0967d596ad97996eea74f8</id>
<content type='text'>
Rather than shelling out once per message to get the list of files
corresponding to tags, it is much faster (although potentially a bit
memory intensive) to read them all at once.
</content>
</entry>
<entry>
<title>CLI/git: add --format-version argument to init subcommand</title>
<updated>2022-07-07T10:05:55Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-06-23T12:30:45Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=bf5eacbe7e5b852e030e6a05469dbc9eae48535e'/>
<id>urn:sha1:bf5eacbe7e5b852e030e6a05469dbc9eae48535e</id>
<content type='text'>
This is primarily intended to support testing upward compatibility
with legacy repos.
</content>
</entry>
<entry>
<title>CL/git: add format version 1</title>
<updated>2022-07-07T09:56:05Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-06-23T12:30:44Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=6219e7380ae34cc0c8142f4174bee3cde9bf9662'/>
<id>urn:sha1:6219e7380ae34cc0c8142f4174bee3cde9bf9662</id>
<content type='text'>
The original nmbug format (now called version 0) creates 1
subdirectory of 'tags/' per message. This causes problems for more
than (roughly) 100k messages.

Version 1 introduces 2 layers of hashed directories. This scheme was
chose to balance the number of subdirectories with the number of extra
directories (and git objects) created via hashing.

This should be upward compatible in the sense that old repositories
will continue to work with the updated notmuch-git.
</content>
</entry>
<entry>
<title>CLI/git: replace most mentions of nmbug</title>
<updated>2022-07-07T09:11:04Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-07-04T15:33:48Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=b07e121923a4ca00d0ec68ba9eebe8dafb70e13a'/>
<id>urn:sha1:b07e121923a4ca00d0ec68ba9eebe8dafb70e13a</id>
<content type='text'>
Particularly in help messages, nmbug is confusing for users who may
have never heard of it.
</content>
</entry>
<entry>
<title>CLI/git: add safety checks for checkout and commit</title>
<updated>2022-06-17T11:40:19Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-05-14T18:25:47Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=7d1e5a5348eb348a4e457650ca3b929e85efde70'/>
<id>urn:sha1:7d1e5a5348eb348a4e457650ca3b929e85efde70</id>
<content type='text'>
Commits or checkouts that modify a large fraction of the messages in
the database should be relatively rare (and in some automated process,
probably non-existent). For initial setup, where such operations are
expected, the user can pass --force.
</content>
</entry>
<entry>
<title>CLI/git: support configuration for repo location / prefix</title>
<updated>2022-06-17T11:40:19Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-05-10T10:32:48Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=99e85823c8de570c0f91bca44efa2c47cddb3cbf'/>
<id>urn:sha1:99e85823c8de570c0f91bca44efa2c47cddb3cbf</id>
<content type='text'>
This is probably more convenient than always passing a command line
argument.

Use notmuch-config for consistency with other notmuch CLI tools.

Now that there is something relevant in the config files, test the
--config option.
</content>
</entry>
<entry>
<title>CLI/git: change defaults for repo and prefix</title>
<updated>2022-06-17T11:40:19Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-05-07T13:32:18Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=8ed68c1bbe8c1b7bb69d7bea1e0c8919bfcb0d0a'/>
<id>urn:sha1:8ed68c1bbe8c1b7bb69d7bea1e0c8919bfcb0d0a</id>
<content type='text'>
The previous defaults were not suitable for personal (i.e. not
bugtracking for notmuch development) use.

Provide two ways for the user to select nmbug compatible defaults;
command line argument and checking the name of the script.
</content>
</entry>
<entry>
<title>CLI/git: cache git indices</title>
<updated>2022-06-17T11:40:19Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-04-19T11:32:14Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=66ccf420c20bedec8dd78dc81ed1166761b7a467'/>
<id>urn:sha1:66ccf420c20bedec8dd78dc81ed1166761b7a467</id>
<content type='text'>
If the private index file matches a previously known revision of the
database, we can update the index incrementally using the recorded
lastmod counter. This is typically much faster than a full update,
although it could be slower in the case of large changes to the
database.

The "git-read-tree HEAD" is also a bottleneck, but unfortunately
sometimes is needed. Cache the index checksum and hash to reduce the
number of times the operation is run. The overall design is a
simplified version of the PrivateIndex class.
</content>
</entry>
</feed>
