From 29688c2cfe32a27dd9faabd66691f6db1cd4818a Mon Sep 17 00:00:00 2001 From: DanConwayDev Date: Thu, 3 Apr 2025 17:13:50 +0100 Subject: feat(send): add description to event signing process resolving nostr:note1qu8le4a8qz9hhxy6q85txejcq0kln0r3s9vdtwrhtqwvauc6nxuqn3fj0z so it doesnt appear frozen when there are lots of events being signed by a remote signer --- src/bin/git_remote_nostr/push.rs | 8 +++++++- src/lib/client.rs | 6 +++++- src/lib/git_events.rs | 10 +++++++++- src/lib/repo_ref.rs | 1 + 4 files changed, 22 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/bin/git_remote_nostr/push.rs b/src/bin/git_remote_nostr/push.rs index 3e2282a..6113c0a 100644 --- a/src/bin/git_remote_nostr/push.rs +++ b/src/bin/git_remote_nostr/push.rs @@ -1348,6 +1348,7 @@ async fn create_merge_status( .concat(), ), signer, + "PR merge".to_string(), ) .await } @@ -1536,7 +1537,12 @@ impl BuildRepoState for RepoState { value.clone(), ])); } - let event = sign_event(EventBuilder::new(STATE_KIND, "").tags(tags), signer).await?; + let event = sign_event( + EventBuilder::new(STATE_KIND, "").tags(tags), + signer, + "git state".to_string(), + ) + .await?; Ok(RepoState { identifier, state, diff --git a/src/lib/client.rs b/src/lib/client.rs index b06ae2e..478a16a 100644 --- a/src/lib/client.rs +++ b/src/lib/client.rs @@ -675,10 +675,14 @@ fn get_dedup_events(relay_results: Vec>>) -> Vec pub async fn sign_event( event_builder: EventBuilder, signer: &Arc, + description: String, ) -> Result { if signer.backend() == SignerBackend::NostrConnect { let term = console::Term::stderr(); - term.write_line("signing event with remote signer...")?; + term.write_line(&format!( + "signing event ({}) with remote signer...", + description + ))?; let event = signer .sign_event(event_builder.build(signer.get_public_key().await?)) .await diff --git a/src/lib/git_events.rs b/src/lib/git_events.rs index 2b3df42..3ce7637 100644 --- a/src/lib/git_events.rs +++ b/src/lib/git_events.rs @@ -241,6 +241,11 @@ pub async fn generate_patch_event( .concat(), ), signer, + if let Some((n, total)) = series_count { + format!("commit {n}/{total}") + } else { + "commit 1/1".to_string() + }, ) .await .context("failed to sign event") @@ -407,7 +412,10 @@ pub async fn generate_cover_letter_and_patch_events( .map(|pk| Tag::public_key(*pk)) .collect(), ].concat(), - ), signer).await + ), + signer, + format!("commit 0/{}",commits.len()), +).await .context("failed to create cover-letter event")?); } diff --git a/src/lib/repo_ref.rs b/src/lib/repo_ref.rs index b21a911..d37d7a9 100644 --- a/src/lib/repo_ref.rs +++ b/src/lib/repo_ref.rs @@ -195,6 +195,7 @@ impl RepoRef { .concat(), ), signer, + "repo announcement".to_string(), ) .await .context("failed to create repository reference event") -- cgit v1.2.3