<feed xmlns='http://www.w3.org/2005/Atom'>
<title>npub1sh4dwqc9ypguemh6m8tmxxl8xuzfsz0j8av8vq7t3xd3mldsg9ls4ew80h/ngit-cli-mirror, branch v2.2.3</title>
<subtitle>Personal mirror of DanConwayDev/ngit-cli on git.upleb.uk
</subtitle>
<id>https://upleb.uk/npub1sh4dwqc9ypguemh6m8tmxxl8xuzfsz0j8av8vq7t3xd3mldsg9ls4ew80h/ngit-cli-mirror/atom?h=v2.2.3</id>
<link rel='self' href='https://upleb.uk/npub1sh4dwqc9ypguemh6m8tmxxl8xuzfsz0j8av8vq7t3xd3mldsg9ls4ew80h/ngit-cli-mirror/atom?h=v2.2.3'/>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1sh4dwqc9ypguemh6m8tmxxl8xuzfsz0j8av8vq7t3xd3mldsg9ls4ew80h/ngit-cli-mirror/'/>
<updated>2026-02-27T17:29:01+00:00</updated>
<entry>
<title>chore: bump version to v2.2.3</title>
<updated>2026-02-27T17:29:01+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-27T17:29:01+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1sh4dwqc9ypguemh6m8tmxxl8xuzfsz0j8av8vq7t3xd3mldsg9ls4ew80h/ngit-cli-mirror/commit/?id=f91a0d00bafe2af1f6b6828c3de3d3e5d65153c3'/>
<id>urn:sha1:f91a0d00bafe2af1f6b6828c3de3d3e5d65153c3</id>
<content type='text'>
Mark v2.2.2 as yanked in changelog; include annotated-tag sync
regression fix in this release.
</content>
</entry>
<entry>
<title>fix: skip ^{} peeled-tag refs in sync to prevent invalid refspec crash</title>
<updated>2026-02-27T17:19:20+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-27T17:17:12+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1sh4dwqc9ypguemh6m8tmxxl8xuzfsz0j8av8vq7t3xd3mldsg9ls4ew80h/ngit-cli-mirror/commit/?id=e7d7f933cd7eac19434f09096a311adeb5e60747'/>
<id>urn:sha1:e7d7f933cd7eac19434f09096a311adeb5e60747</id>
<content type='text'>
Regression introduced in 28ad5440: ngit sync crashed with
'invalid refspec refs/remotes/origin/v1.4.4^{}:refs/tags/v1.4.4^{}'
on repos with annotated tags. Fixed by guarding all three iteration
sites in sync.rs and identify_remote_sync_issues in list.rs; also
corrected the always-false logic bug in invalid_nostr_state_ref.
</content>
</entry>
<entry>
<title>chore: bump version to v2.2.2</title>
<updated>2026-02-27T16:29:46+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-27T16:29:46+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1sh4dwqc9ypguemh6m8tmxxl8xuzfsz0j8av8vq7t3xd3mldsg9ls4ew80h/ngit-cli-mirror/commit/?id=7ca0db29952ddbb27d74e30937562210cfbba56a'/>
<id>urn:sha1:7ca0db29952ddbb27d74e30937562210cfbba56a</id>
<content type='text'>
Bump Cargo.toml version to 2.2.2 and promote CHANGELOG [Unreleased]
entries to [2.2.2].
</content>
</entry>
<entry>
<title>fix: include KIND_PULL_REQUEST IDs in proposal_ids for fetch filters</title>
<updated>2026-02-27T16:11:36+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-27T16:11:36+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1sh4dwqc9ypguemh6m8tmxxl8xuzfsz0j8av8vq7t3xd3mldsg9ls4ew80h/ngit-cli-mirror/commit/?id=ba87592c87eb964b1c3a2d17543e38b9b70ed1a6'/>
<id>urn:sha1:ba87592c87eb964b1c3a2d17543e38b9b70ed1a6</id>
<content type='text'>
kind-5 deletion events that only #e-tag a PR Kind event (kind 1618)
were never fetched because proposal_ids was built from Kind::GitPatch
events only. The deleted PR event remained in the local cache and
continued to appear as a remote ref (refs/heads/pr/&lt;branch&gt;).
</content>
</entry>
<entry>
<title>feat: ngit sync --force republishes state event even with no ref changes</title>
<updated>2026-02-27T15:53:11+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-27T15:51:01+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1sh4dwqc9ypguemh6m8tmxxl8xuzfsz0j8av8vq7t3xd3mldsg9ls4ew80h/ngit-cli-mirror/commit/?id=71cd982e5ca3e6f60fdf33fd41d0db3eabdbf39f'/>
<id>urn:sha1:71cd982e5ca3e6f60fdf33fd41d0db3eabdbf39f</id>
<content type='text'>
allows users to repair repos whose state event is missing ^{} peeled refs
for annotated tags (or any other corruption) without needing to push a new
ref. the new event is signed with a fresh timestamp and broadcast to all
repo relays and the user's write relays.
</content>
</entry>
<entry>
<title>fix: annotated tags missing from list due to dropped peeled refs</title>
<updated>2026-02-27T15:46:37+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-27T15:40:24+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1sh4dwqc9ypguemh6m8tmxxl8xuzfsz0j8av8vq7t3xd3mldsg9ls4ew80h/ngit-cli-mirror/commit/?id=28ad5440c7184de9833f8448bc90153ee4499c83'/>
<id>urn:sha1:28ad5440c7184de9833f8448bc90153ee4499c83</id>
<content type='text'>
RepoState::try_from was explicitly discarding all refs/tags/*^{} entries
("peeled" refs) when parsing the nostr state event. This meant the list
command only advertised the tag object OID, but git requires two lines for
annotated tags:

  &lt;tag-object-oid&gt; refs/tags/v1.0.0
  &lt;commit-oid&gt;     refs/tags/v1.0.0^{}

Without the ^{} peeled line git cannot resolve the tag to a commit, so
git fetch --prune treats it as unresolvable and deletes it.

The nostr state event already stores both entries correctly (written by
generate_updated_state in push.rs). The fix simply stops try_from from
discarding the ^{} entries on read, so they flow through to the list
output unchanged.
</content>
</entry>
<entry>
<title>fix: update fallback signer relays</title>
<updated>2026-02-27T14:26:48+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-27T14:18:11+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1sh4dwqc9ypguemh6m8tmxxl8xuzfsz0j8av8vq7t3xd3mldsg9ls4ew80h/ngit-cli-mirror/commit/?id=3aa9b7a8e49d8ec5a87693d3f52ae2c77f036ff2'/>
<id>urn:sha1:3aa9b7a8e49d8ec5a87693d3f52ae2c77f036ff2</id>
<content type='text'>
Replace nsec.app with bucket.coracle.social and nos.lol.
</content>
</entry>
<entry>
<title>fix: deselected items re-appear as selected when adding new item</title>
<updated>2026-02-27T14:25:36+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-27T14:10:06+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1sh4dwqc9ypguemh6m8tmxxl8xuzfsz0j8av8vq7t3xd3mldsg9ls4ew80h/ngit-cli-mirror/commit/?id=b4eb83de8637b56d7d742f5e64bda454ef8c2410'/>
<id>urn:sha1:b4eb83de8637b56d7d742f5e64bda454ef8c2410</id>
<content type='text'>
Sync the defaults vector to the user's actual selections after each
prompt in multi_select_with_custom_value, so deselected items are not
shown as checked on the next loop iteration.
</content>
</entry>
<entry>
<title>fix: connect to relay before user acknowledges nostrconnect QR/URL</title>
<updated>2026-02-27T14:25:34+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-27T13:49:28+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1sh4dwqc9ypguemh6m8tmxxl8xuzfsz0j8av8vq7t3xd3mldsg9ls4ew80h/ngit-cli-mirror/commit/?id=bccac9db18b93a08e5087578231ca9ac0df1903c'/>
<id>urn:sha1:bccac9db18b93a08e5087578231ca9ac0df1903c</id>
<content type='text'>
Previously NostrConnect was only instantiated after the user selected
'waiting for signer app to connect...', so any connection made while
the prompt was visible was missed. Now listening starts immediately
after the QR/URL is displayed, with a spinner that auto-resolves on
connection rather than requiring a manual prompt dismissal.
</content>
</entry>
<entry>
<title>feat: only show login profile search and warnings in verbose mode</title>
<updated>2026-02-27T14:24:58+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-27T10:23:23+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1sh4dwqc9ypguemh6m8tmxxl8xuzfsz0j8av8vq7t3xd3mldsg9ls4ew80h/ngit-cli-mirror/commit/?id=7b393f2e249e3bda141994d0c67aa9812d87302a'/>
<id>urn:sha1:7b393f2e249e3bda141994d0c67aa9812d87302a</id>
<content type='text'>
reduces noise in normal usage; messages still appear with -v flag
</content>
</entry>
</feed>
