<feed xmlns='http://www.w3.org/2005/Atom'>
<title>npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/src/lib/git_events.rs, branch v2.2.0</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.0</id>
<link rel='self' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/atom?h=v2.2.0'/>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/'/>
<updated>2026-02-18T22:00:35+00:00</updated>
<entry>
<title>fix: remove outdated patch_supports gate and fix fetch parent fallback</title>
<updated>2026-02-18T22:00:35+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-18T22:00:35+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=56b3c149df70af5d441e8527ec1225e5038bde8e'/>
<id>urn:sha1:56b3c149df70af5d441e8527ec1225e5038bde8e</id>
<content type='text'>
Remove the patch_supports_commit_ids gates in checkout.rs and list.rs
that pre-dated the mbox fallback logic. apply_patch_chain already
handles all fallback cases. Also replace the main-branch TODO fallback
in make_commits_for_proposal with get_parent_commit_from_patch, which
uses timestamp-based best-guess when the parent-commit tag is absent.
</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>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>feat(list): add PR fetch and checkout support</title>
<updated>2025-08-19T06:48:16+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-08-18T16:25:50+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=b7d4c5a81f0a008524dcc5b4f286f0cf700013c0'/>
<id>urn:sha1:b7d4c5a81f0a008524dcc5b4f286f0cf700013c0</id>
<content type='text'>
abstracted git remote helper fetch functions

added support to `ngit list` to fetch PR data and checkout as proposal
branch
</content>
</entry>
<entry>
<title>Merge branch 'add-prs-to-ngit-send'</title>
<updated>2025-08-07T16:52:22+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-08-07T16:52:22+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=92c2362a9bed1bc1f256e7948e087c4102b7c4f9'/>
<id>urn:sha1:92c2362a9bed1bc1f256e7948e087c4102b7c4f9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(send): PR fallback to user / custom grasp</title>
<updated>2025-08-07T16:25:50+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-08-06T11:52:59+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=a9b2ebf8216be34950e54dd9a446dbdc0c9c744a'/>
<id>urn:sha1:a9b2ebf8216be34950e54dd9a446dbdc0c9c744a</id>
<content type='text'>
if use is maintainer, push PR to all repo git servers.

if user has a fork, push to all git servers it lists, and repo
grasp servers.

if user hasn't got a fork but has a user grasp list and pushing
push to repo grasp servers fails, create a personal-fork
automatically at each user grasp server and push there.

fallback to prompting user for either grasp servers or git server
with write permission.

if user provides grasp servers, suggesting adding to user preference
list.
</content>
</entry>
<entry>
<title>feat(send): support PR and PR update events</title>
<updated>2025-08-05T08:23:01+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-08-04T10:50:39+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=f48677bad3f3dabb80992806e0e4c8ad4d45c716'/>
<id>urn:sha1:f48677bad3f3dabb80992806e0e4c8ad4d45c716</id>
<content type='text'>
send as a PR if the commit would make patches that are too big for
nostr events.

send as a PR update if the proposal is PR.

send as a PR, revising a patch root, if patches would be too big.

in tests `get_pretend_proposal_root_event` has to be a actual proposal
with a tip, rather than just a cover letter, so we have replaced it.
</content>
</entry>
<entry>
<title>fix: `t` tag `revision-root` ~&gt; `root-revision`</title>
<updated>2025-08-04T07:20:30+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-08-04T07:20:30+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=6ae42e67d9da36f6c2e1356acba30a3a62112bc7'/>
<id>urn:sha1:6ae42e67d9da36f6c2e1356acba30a3a62112bc7</id>
<content type='text'>
NIP-34 specifies patch revisions should have a `t` tag of
`root-revision` whereas we have been using `revision-root`.

this fixes it and and handles events created with the incorrect tag.
</content>
</entry>
<entry>
<title>fix: mention marker ~&gt; q tag NIP-10 update</title>
<updated>2025-07-31T15:38:45+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-07-31T15:28:04+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=436ff29135e3deade80a6e53e53d74dddb613481'/>
<id>urn:sha1:436ff29135e3deade80a6e53e53d74dddb613481</id>
<content type='text'>
required for rust-nostr v0.43 update
</content>
</entry>
<entry>
<title>refactor: abstract `get_status`</title>
<updated>2025-07-25T15:10:57+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2025-07-25T10:48:22+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=9357b62b9824299be6fc85b09f57d93d3902f79a'/>
<id>urn:sha1:9357b62b9824299be6fc85b09f57d93d3902f79a</id>
<content type='text'>
for use by `ngit list`
</content>
</entry>
</feed>
