<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch, branch feature/git-remote</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=feature%2Fgit-remote</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=feature%2Fgit-remote'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2025-08-11T12:52:10Z</updated>
<entry>
<title>debian: install git-remote-notmuch</title>
<updated>2025-08-11T12:52:10Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2024-10-03T11:33:09Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=9ecc1833f2211697c962b1864cebd8f13605f243'/>
<id>urn:sha1:9ecc1833f2211697c962b1864cebd8f13605f243</id>
<content type='text'>
</content>
</entry>
<entry>
<title>cli/git-remote: add check for missing messages</title>
<updated>2025-08-11T12:52:10Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2025-07-12T23:11:40Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=cca2c869e4a26b4bb8b0b43c6034c4ec6f0b69d2'/>
<id>urn:sha1:cca2c869e4a26b4bb8b0b43c6034c4ec6f0b69d2</id>
<content type='text'>
In cases where a given 'export' both adds and deletes messages, we may
not know what messages are actually missing until the end of
processing. We thus do single pass of all remaining message-ids, and
report any that are still missing at the end of the "export"
operation.
</content>
</entry>
<entry>
<title>cli/git-remote: handle message deletions</title>
<updated>2025-08-11T12:52:10Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2025-07-12T23:06:01Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=448c8ca81a3ca9f5c7d2cc20671bb81d7a551f67'/>
<id>urn:sha1:448c8ca81a3ca9f5c7d2cc20671bb81d7a551f67</id>
<content type='text'>
There are two main possibilities. One is explicit delete ('D' command
in the stream from git fast-export) and one is files disappearing
between commits. It is less clear the latter can happen in well formed
sequence of commits, but it could result e.g. from manual changes to
the repo.
</content>
</entry>
<entry>
<title>cli/git-remote: add export command</title>
<updated>2025-08-11T12:52:10Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2024-08-24T15:43:03Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=271dede0c9a8083aa56af153d55388af8521f6c8'/>
<id>urn:sha1:271dede0c9a8083aa56af153d55388af8521f6c8</id>
<content type='text'>
Two (sub)features are stubbed out in this initial implementation:
deleting messages (as opposed to tags), and missing messages. There
are two corresponding tests marked as broken in T860-git-remote.sh.
A third test passes with the stub, which is maybe not ideal, but at
least it acts as a regression test.
</content>
</entry>
<entry>
<title>cli/git-remote: add import command</title>
<updated>2025-08-11T12:52:10Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2024-08-24T15:13:46Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=f6526e6571847d1f27e0e4fead59a3b18c5fe455'/>
<id>urn:sha1:f6526e6571847d1f27e0e4fead59a3b18c5fe455</id>
<content type='text'>
The output in default.import is based on a modified version
of Felipe's git-remote-nm with Blake2 hashing replaced by SHA1
(for portability). This enable fetch/pull/clone, so test that as well.
</content>
</entry>
<entry>
<title>cli: start remote helper for git.</title>
<updated>2025-08-11T12:52:10Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2024-08-17T15:40:40Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=b8c2e8743ef21ea8e3c44f91a54132b16e92f1ba'/>
<id>urn:sha1:b8c2e8743ef21ea8e3c44f91a54132b16e92f1ba</id>
<content type='text'>
This is closely based on git-remote-nm (in ruby) by Felipe Contreras.
Initially just implement the commands 'capabilites' and 'list'.  This
isn't enough to do anything useful so start some unit tests. Testing
of URL passing will be done after clone (import command) support is
added.
</content>
</entry>
<entry>
<title>util: refactor sync_dir and mkdir_recursive</title>
<updated>2025-08-09T11:19:43Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2024-08-18T00:33:44Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=337ac48b227ef310e4d3fe8c403113ef8868777c'/>
<id>urn:sha1:337ac48b227ef310e4d3fe8c403113ef8868777c</id>
<content type='text'>
Moving these functions to libnotmuch_util will allow re-user from
either multiple CLI compilation units or from the library. To avoid
future surprises, replace printing to stderr with the usual status
string mechanism.
</content>
</entry>
<entry>
<title>lib/config: add config keys for git-remote-notmuch.</title>
<updated>2025-08-09T11:19:43Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2024-10-12T00:58:41Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=de97e0cbdbf48bd5f7576ca0107c1e8542277cdf'/>
<id>urn:sha1:de97e0cbdbf48bd5f7576ca0107c1e8542277cdf</id>
<content type='text'>
The precise function will be explained in a future update to
notmuch-config(1).
</content>
</entry>
<entry>
<title>lib: return NOTMUCH_STATUS_OPERATION_INVALIDATED where appropriate</title>
<updated>2025-08-09T10:12:23Z</updated>
<author>
<name>Anton Khirnov</name>
<email>anton@khirnov.net</email>
</author>
<published>2025-08-06T05:43:06Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=aa761727999b105711ba4ca789e0836a0a05cf9f'/>
<id>urn:sha1:aa761727999b105711ba4ca789e0836a0a05cf9f</id>
<content type='text'>
The overall goal is to allow clients to restart operations in
situations where that is the response recommended by the underlying
Xapian library.

Amended-by: db, added above explanation
</content>
</entry>
<entry>
<title>lib/database-private: undef XAPIAN_DEPRECATED before redefining it</title>
<updated>2025-08-04T13:44:52Z</updated>
<author>
<name>Anton Khirnov</name>
<email>anton@khirnov.net</email>
</author>
<published>2025-07-27T14:11:47Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=bee7a53194606757997f069f0e95ac862fbba0e0'/>
<id>urn:sha1:bee7a53194606757997f069f0e95ac862fbba0e0</id>
<content type='text'>
Silences compiler warnings about redefining a macro.
</content>
</entry>
</feed>
