<feed xmlns='http://www.w3.org/2005/Atom'>
<title>npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/src/lib/git/mod.rs, branch v2.2.1</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.1</id>
<link rel='self' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/atom?h=v2.2.1'/>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/'/>
<updated>2026-02-25T12:27:56+00:00</updated>
<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: thread applied OID through patch chain correctly</title>
<updated>2026-02-18T21:17:41+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-18T21:17:41+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=09db17fd719ddd42c5afad24e1a8e71735374f8e'/>
<id>urn:sha1:09db17fd719ddd42c5afad24e1a8e71735374f8e</id>
<content type='text'>
When applying a chain of patches without parent-commit tags, each
patch's parent was resolved independently, meaning patch2 would not
parent off the OID patch1 actually produced. Thread next_parent_override
through the loop and guard the early-return in create_commit_from_patch
so the override is always honoured.
</content>
</entry>
<entry>
<title>fix: harden apply_patch_chain when optional patch tags absent</title>
<updated>2026-02-18T21:04:59+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-18T21:04:59+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=73d829b916d87626f33ea2adead0c48f1d9d737d'/>
<id>urn:sha1:73d829b916d87626f33ea2adead0c48f1d9d737d</id>
<content type='text'>
- Replace .unwrap() calls in filter closure with pattern-let guards
  so a missing/invalid mbox commit id conservatively includes the patch
- Use the OID returned by create_commit_from_patch as branch tip instead
  of the tag commit id, which may differ for GPG-signed commits
- Add module-level doc comment to mbox_parser explaining design rationale
  and known limitations around the mbox envelope SHA1
</content>
</entry>
<entry>
<title>feat: handle missing optional patch tags for pr/ flow</title>
<updated>2026-02-18T14:48:20+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-18T14:48:20+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=fcff4541e1f36b6575596c353637b25aeae9bdcf'/>
<id>urn:sha1:fcff4541e1f36b6575596c353637b25aeae9bdcf</id>
<content type='text'>
- Add mbox_parser module to extract metadata from patch content
- Extract author/committer from From: and Date: headers when tags missing
- Extract commit message body as fallback for description tag
- Implement best-guess parent commit logic using committer timestamps
- Update patch_supports_commit_ids to accept mbox-parseable patches
- Enable patches without optional tags to appear as pr/ branches
</content>
</entry>
<entry>
<title>fix: handle existing local branch that is behind when checking out PR</title>
<updated>2026-02-12T16:19:29+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-12T16:19:29+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=1be46b4fd7a78ce418765ef5467823b7ea5e60eb'/>
<id>urn:sha1:1be46b4fd7a78ce418765ef5467823b7ea5e60eb</id>
<content type='text'>
When a PR branch already exists locally, the previous code would silently
move the branch pointer without checking for tracking or fast-forward safety.

Now:
- If branch has tracking: checkout and warn user to git pull
- If no tracking and fast-forward: safely move pointer
- If no tracking and diverged: show copy-paste commands for reset/rebase
- If commit not found locally: suggest fetching

Uses console crate for yellow output instead of hardcoded ANSI codes.
</content>
</entry>
<entry>
<title>chore: cargo update</title>
<updated>2025-10-17T14:16:03+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-10-17T14:02:53+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=709946c1b49114b71d3080bb8d97e63525f40fd9'/>
<id>urn:sha1:709946c1b49114b71d3080bb8d97e63525f40fd9</id>
<content type='text'>
update patches ahead of wider upgrade. clippy required some autofixes
</content>
</entry>
<entry>
<title>feat(send): add `merge-base` tag to PR (Update)</title>
<updated>2025-10-17T09:20:43+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-10-17T08:30:35+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=2bf98e91e5b5a7d1b18557e65711b5ef3d1a54a3'/>
<id>urn:sha1:2bf98e91e5b5a7d1b18557e65711b5ef3d1a54a3</id>
<content type='text'>
following its inclusion in the NIP-34 spec
</content>
</entry>
<entry>
<title>refactor: move patch size evaluation fn to lib</title>
<updated>2025-08-01T08:39:36+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-08-01T08:39:36+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=a625be66cfbced5f96cb0123a286937543e7273c'/>
<id>urn:sha1:a625be66cfbced5f96cb0123a286937543e7273c</id>
<content type='text'>
so we can use it in ngit as well as remote helper
</content>
</entry>
<entry>
<title>fix(list): improve pr unsupport text</title>
<updated>2025-07-25T15:11:01+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-07-25T14:52:19+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=0cad465dd3f78bd6c680067d12d396d4782829bf'/>
<id>urn:sha1:0cad465dd3f78bd6c680067d12d396d4782829bf</id>
<content type='text'>
and show a more helpful message when proposal can be checked out
using the remote
</content>
</entry>
<entry>
<title>chore: bump nightly rustfmt</title>
<updated>2025-07-16T09:59:20+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-07-16T09:59:20+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=ac53bca7e315848864ff9e51703720b5b466bc42'/>
<id>urn:sha1:ac53bca7e315848864ff9e51703720b5b466bc42</id>
<content type='text'>
to latest available and apply fmt fixes
</content>
</entry>
</feed>
