diff --git a/src/admin/delete_crate.rs b/src/admin/delete_crate.rs index 617a291d8b..1b7c23c5f1 100644 --- a/src/admin/delete_crate.rs +++ b/src/admin/delete_crate.rs @@ -70,7 +70,7 @@ pub async fn run(opts: Opts) -> anyhow::Result<()> { } println!(); - if !opts.yes && !dialoguer::confirm("Do you want to permanently delete these crates?") { + if !opts.yes && !dialoguer::confirm("Do you want to permanently delete these crates?")? { return Ok(()); } diff --git a/src/admin/delete_version.rs b/src/admin/delete_version.rs index 8c3f2f2647..1e004cc569 100644 --- a/src/admin/delete_version.rs +++ b/src/admin/delete_version.rs @@ -47,7 +47,7 @@ pub async fn run(opts: Opts) -> anyhow::Result<()> { } println!(); - if !opts.yes && !dialoguer::confirm("Do you want to permanently delete these versions?") { + if !opts.yes && !dialoguer::confirm("Do you want to permanently delete these versions?")? { return Ok(()); } diff --git a/src/admin/dialoguer.rs b/src/admin/dialoguer.rs index 14232a01aa..9701e6fb3c 100644 --- a/src/admin/dialoguer.rs +++ b/src/admin/dialoguer.rs @@ -1,12 +1,11 @@ use ::dialoguer::{theme::Theme, Confirm}; -pub fn confirm(msg: &str) -> bool { +pub fn confirm(msg: &str) -> dialoguer::Result { Confirm::with_theme(&CustomTheme) .with_prompt(msg) .default(false) .wait_for_newline(true) .interact() - .unwrap() } #[derive(Debug, Copy, Clone)] diff --git a/src/admin/transfer_crates.rs b/src/admin/transfer_crates.rs index 2dec50d5bb..cc1a74955c 100644 --- a/src/admin/transfer_crates.rs +++ b/src/admin/transfer_crates.rs @@ -47,7 +47,7 @@ fn transfer(opts: Opts, conn: &mut PgConnection) -> anyhow::Result<()> { println!("from: {:?}", from.gh_id); println!("to: {:?}", to.gh_id); - if !dialoguer::confirm("continue?") { + if !dialoguer::confirm("continue?")? { return Ok(()); } } @@ -56,7 +56,7 @@ fn transfer(opts: Opts, conn: &mut PgConnection) -> anyhow::Result<()> { "Are you sure you want to transfer crates from {} to {}?", from.gh_login, to.gh_login ); - if !dialoguer::confirm(&prompt) { + if !dialoguer::confirm(&prompt)? { return Ok(()); } @@ -74,7 +74,7 @@ fn transfer(opts: Opts, conn: &mut PgConnection) -> anyhow::Result<()> { } } - if !dialoguer::confirm("commit?") { + if !dialoguer::confirm("commit?")? { return Ok(()); } diff --git a/src/admin/upload_index.rs b/src/admin/upload_index.rs index 6a8afe61f9..fd99bb461a 100644 --- a/src/admin/upload_index.rs +++ b/src/admin/upload_index.rs @@ -27,7 +27,7 @@ pub async fn run(opts: Opts) -> anyhow::Result<()> { let files = repo.get_files_modified_since(opts.incremental_commit.as_deref())?; println!("found {} files to upload", files.len()); - if !dialoguer::confirm("continue with upload?") { + if !dialoguer::confirm("continue with upload?")? { return Ok(()); } diff --git a/src/admin/yank_version.rs b/src/admin/yank_version.rs index b9c726213c..0d7b66075a 100644 --- a/src/admin/yank_version.rs +++ b/src/admin/yank_version.rs @@ -53,7 +53,7 @@ fn yank(opts: Opts, conn: &mut PgConnection) -> anyhow::Result<()> { "Are you sure you want to yank {crate_name}#{version} ({})?", v.id ); - if !dialoguer::confirm(&prompt) { + if !dialoguer::confirm(&prompt)? { return Ok(()); } }