From 54cae48123bb683a25f7f4c67fdde763699cccb9 Mon Sep 17 00:00:00 2001 From: Awiteb Date: Sat, 14 Jun 2025 10:46:55 +0000 Subject: [PATCH] chroe: Check if the naddrs exists for `issue new` and `patch send` Signed-off-by: Awiteb --- src/cli/commands/issue/new.rs | 4 ++-- src/cli/commands/patch/send.rs | 5 +++-- src/nostr_utils/utils.rs | 9 +++++++++ 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/cli/commands/issue/new.rs b/src/cli/commands/issue/new.rs index ce69856..827189d 100644 --- a/src/cli/commands/issue/new.rs +++ b/src/cli/commands/issue/new.rs @@ -95,10 +95,10 @@ impl NewArgs { impl CommandRunner for NewArgs { async fn run(self, options: CliOptions) -> N34Result<()> { - let naddrs = utils::naddrs_or_file( + let naddrs = utils::check_empty_naddrs(utils::naddrs_or_file( self.naddrs.flat_naddrs(&options.config.sets)?, &utils::nostr_address_path()?, - )?; + )?)?; let relays = options.relays.clone().flat_relays(&options.config.sets)?; let client = NostrClient::init(&options, &relays).await; let user_pubk = options.pubkey().await?; diff --git a/src/cli/commands/patch/send.rs b/src/cli/commands/patch/send.rs index 015a8e4..978c979 100644 --- a/src/cli/commands/patch/send.rs +++ b/src/cli/commands/patch/send.rs @@ -71,10 +71,11 @@ pub struct SendArgs { impl CommandRunner for SendArgs { async fn run(self, options: CliOptions) -> N34Result<()> { - let naddrs = utils::naddrs_or_file( + let naddrs = utils::check_empty_naddrs(utils::naddrs_or_file( self.naddrs.flat_naddrs(&options.config.sets)?, &utils::nostr_address_path()?, - )?; + )?)?; + let repo_coordinates = naddrs.clone().into_coordinates(); let relays = options.relays.clone().flat_relays(&options.config.sets)?; let user_pubk = options.pubkey().await?; diff --git a/src/nostr_utils/utils.rs b/src/nostr_utils/utils.rs index f8b2717..2939525 100644 --- a/src/nostr_utils/utils.rs +++ b/src/nostr_utils/utils.rs @@ -282,3 +282,12 @@ pub fn smart_wrap(text: &str, max_width: usize) -> String { .collect::>() .join("\n") } + +/// Returns an error if the given naddrs is empty otherwise returned it +pub fn check_empty_naddrs(naddrs: Vec) -> N34Result> { + if naddrs.is_empty() { + return Err(N34Error::EmptyNaddrs); + } + + Ok(naddrs) +}