<feed xmlns='http://www.w3.org/2005/Atom'>
<title>npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/tests, branch v2.2.3</title>
<subtitle>Personal mirror of DanConwayDev/ngit-cli on git.upleb.uk
</subtitle>
<id>https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/atom?h=v2.2.3</id>
<link rel='self' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/atom?h=v2.2.3'/>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/'/>
<updated>2026-02-26T16:35:59+00:00</updated>
<entry>
<title>fix: correct merge-base in PR events from git push of pr/ branch</title>
<updated>2026-02-26T16:35:59+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-26T16:35:59+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=01aeb2a3265bcafa162987c85dd281981770bba7'/>
<id>urn:sha1:01aeb2a3265bcafa162987c85dd281981770bba7</id>
<content type='text'>
When pushing a pr/ branch, the ahead slice is reversed by callers before
being passed to generate_patches_or_pr_event_or_pr_updates, making it
oldest-first. The tip/first_commit assignments were backwards (using
first()/last() as if the slice were youngest-first), so the merge-base
was computed as the parent of the PR tip rather than the parent of the
oldest commit. Multi-commit PRs therefore showed only 1 commit when
applied via ngit apply.

Adds an integration test that pushes a two-commit large-file PR branch
and asserts the merge-base tag equals the main branch tip.
</content>
</entry>
<entry>
<title>fix: advertise only state events with resolvable git objects</title>
<updated>2026-02-26T15:26:20+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-26T14:00:12+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=d8b85cbce5cba9bfb8b15a8bd5c1b7200ff3e488'/>
<id>urn:sha1:d8b85cbce5cba9bfb8b15a8bd5c1b7200ff3e488</id>
<content type='text'>
git-remote-nostr now walks the per-relay state events captured in
FetchReport::state_per_relay (newest first) and advertises the first
one whose every OID is either present on at least one git server
(confirmed via list_refs) or already available locally.  If no such
state event exists it falls back to the raw git server state.

Previously the latest nostr state event was always used regardless of
whether its OIDs had been pushed to any server, causing catastrophic
missing-object errors during clone or fetch when a state event was
published ahead of the corresponding git push.
</content>
</entry>
<entry>
<title>fix: update hardcoded libgit2 version strings in tests to 1.9.2</title>
<updated>2026-02-25T12:27:56+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-25T12:27:56+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=ca2df272594a7b055c740ccda0b9c31b3b7e43cc'/>
<id>urn:sha1:ca2df272594a7b055c740ccda0b9c31b3b7e43cc</id>
<content type='text'>
The Nix environment provides libgit2 1.9.2 via nixpkgs, which
libgit2-sys picks up at build time instead of using its bundled version.
This caused test assertions that hardcode the libgit2 version string
(appended by libgit2 to patch output) to fail after commit 319bb7f
added new Cargo dependencies, though the exact mechanism by which those
dependencies triggered the switch from the bundled 1.9.1 to the system
1.9.2 remains unclear.

Also bump git2 from 0.20.2 to 0.20.4 in both Cargo.toml files so the
bundled libgit2-sys version (0.18.3+1.9.2) properly aligns with the
1.9.2 version in use.
</content>
</entry>
<entry>
<title>fix: apply push-options to patch series generation</title>
<updated>2026-02-17T15:09:03+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-17T12:44:13+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=4cbba068d1ddbd14ba41d75def3ae266989aced8'/>
<id>urn:sha1:4cbba068d1ddbd14ba41d75def3ae266989aced8</id>
<content type='text'>
The title and description push-options were previously only applied to PR
creation but not to patch series generation. When force-pushing to update
an existing patch series, the custom title and description were ignored.

This change passes the title_description parameter to the patch generation
function, allowing users to customize patch series cover letters via:
  git push --force --push-option=title="Title" \
    --push-option=description="Description" origin branch

Includes integration test for force-pushing patches with custom cover letter.
</content>
</entry>
<entry>
<title>feat: support multiline descriptions in push-options via \n escape</title>
<updated>2026-02-17T14:04:32+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-17T12:11:33+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=5cc8ae28cb462d2cb0b7f74dfa5238e62d17eb70'/>
<id>urn:sha1:5cc8ae28cb462d2cb0b7f74dfa5238e62d17eb70</id>
<content type='text'>
Git push-options are line-based so literal newlines cannot be sent.
Users can now write the two-character sequence \n which is decoded
into real newlines before publishing. Use \\n for a literal backslash-n.

Includes unit tests, integration test, help text, and changelog entry.
</content>
</entry>
<entry>
<title>feat: add push-options for title and description to git-remote-nostr</title>
<updated>2026-02-17T11:38:26+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-17T10:42:33+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=fe5addc2a61022824e83c3523a83fce7690ca8e8'/>
<id>urn:sha1:fe5addc2a61022824e83c3523a83fce7690ca8e8</id>
<content type='text'>
Allows setting PR title and description via git push options:
  git push --push-option=title="My PR" \
    --push-option=description="Details" origin pr/branch
</content>
</entry>
<entry>
<title>fix: report wording `fetching` ~&gt; `checking`</title>
<updated>2026-02-16T10:57:39+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-16T10:57:39+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=1d08d2e77dec6dc2c5a8df8776b74f4ba5405e8d'/>
<id>urn:sha1:1d08d2e77dec6dc2c5a8df8776b74f4ba5405e8d</id>
<content type='text'>
to be consistent with the summary version
</content>
</entry>
<entry>
<title>fix: report wording `maintainers ~&gt; announcements</title>
<updated>2026-02-16T10:51:03+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-16T10:49:28+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=504d3632900decb82cbe9280b7aeca5fcd4a51e3'/>
<id>urn:sha1:504d3632900decb82cbe9280b7aeca5fcd4a51e3</id>
<content type='text'>
'maintainers' is missleading as the announcement authors may not be in
the maitnainer set
</content>
</entry>
<entry>
<title>rename --relays flag to --relay</title>
<updated>2026-02-11T16:20:19+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-11T16:20:19+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=e340e9eab2f9fa268b7fa677ab9480c712c6273b'/>
<id>urn:sha1:e340e9eab2f9fa268b7fa677ab9480c712c6273b</id>
<content type='text'>
Allow multiple values via repeated --relay flags

instead of the less intuitive plural --relays form.
</content>
</entry>
<entry>
<title>rename --grasp-servers flag to --grasp-server</title>
<updated>2026-02-11T16:16:09+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-11T16:09:52+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=3ca30c5ca49ce4b011ca73207c2355c3261c1dd3'/>
<id>urn:sha1:3ca30c5ca49ce4b011ca73207c2355c3261c1dd3</id>
<content type='text'>
Allow multiple values via repeated --grasp-server flags
instead of the less intuitive plural --grasp-servers form.
</content>
</entry>
</feed>
