From 8c763d0483309c85a32a7f4a20ba0279083ee40f Mon Sep 17 00:00:00 2001 From: DanConwayDev Date: Fri, 29 Nov 2024 16:09:38 +0000 Subject: feat(init): set remote `origin` check whether remote `origin` is nostr url and if not attempt to set it. --- src/lib/client.rs | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'src/lib/client.rs') diff --git a/src/lib/client.rs b/src/lib/client.rs index 534eb9e..cd9a75c 100644 --- a/src/lib/client.rs +++ b/src/lib/client.rs @@ -832,7 +832,13 @@ pub async fn get_repo_ref_from_cache( ] .concat(); for e in events { - if let Ok(repo_ref) = RepoRef::try_from(e.clone()) { + if let Ok(repo_ref) = RepoRef::try_from(( + e.clone(), + repo_coordinates + .iter() + .next() + .map(|coordinate| coordinate.public_key), + )) { for m in repo_ref.maintainers { if maintainers.insert(m) { new_coordinate = true; @@ -846,12 +852,16 @@ pub async fn get_repo_ref_from_cache( } } repo_events.sort_by_key(|e| e.created_at); - let repo_ref = RepoRef::try_from( + let repo_ref = RepoRef::try_from(( repo_events .first() .context("no repo events at specified coordinates")? .clone(), - )?; + repo_coordinates + .iter() + .next() + .map(|coordinate| coordinate.public_key), + ))?; let mut events: HashMap = HashMap::new(); for m in &maintainers { @@ -1179,7 +1189,7 @@ async fn process_fetched_events( )); } // if contains new maintainer - if let Ok(repo_ref) = &RepoRef::try_from(event.clone()) { + if let Ok(repo_ref) = &RepoRef::try_from((event.clone(), None)) { for m in &repo_ref.maintainers { if !request .repo_coordinates_without_relays // prexisting maintainers -- cgit v1.2.3