diff --git a/src/cli/prune.rs b/src/cli/prune.rs index 10fb9f4f26..949ea78349 100644 --- a/src/cli/prune.rs +++ b/src/cli/prune.rs @@ -3,11 +3,10 @@ use std::sync::Arc; use console::style; use eyre::Result; - use crate::backend::Backend; use crate::cli::args::BackendArg; use crate::config::tracking::Tracker; -use crate::config::{Config, Settings}; +use crate::config::{Config, SETTINGS}; use crate::toolset::{ToolVersion, Toolset, ToolsetBuilder}; use crate::ui::multi_progress_report::MultiProgressReport; use crate::ui::prompt; @@ -87,7 +86,6 @@ impl Prune { } fn delete(&self, to_delete: Vec<(Arc, ToolVersion)>) -> Result<()> { - let settings = Settings::try_get()?; let mpr = MultiProgressReport::get(); for (p, tv) in to_delete { let mut prefix = tv.style(); @@ -95,7 +93,10 @@ impl Prune { prefix = format!("{} {} ", prefix, style("[dryrun]").bold()); } let pr = mpr.add(&prefix); - if self.dry_run || settings.yes || prompt::confirm(format!("remove {} ?", &tv))? { + if self.dry_run + || SETTINGS.yes + || prompt::confirm_with_all(format!("remove {} ?", &tv))? + { p.uninstall_version(&tv, pr.as_ref(), self.dry_run)?; pr.finish(); } diff --git a/src/toolset/tool_version.rs b/src/toolset/tool_version.rs index 625970eb86..69043d4a3b 100644 --- a/src/toolset/tool_version.rs +++ b/src/toolset/tool_version.rs @@ -14,6 +14,7 @@ use crate::hash::hash_to_str; use crate::toolset::{tool_request, ToolRequest, ToolVersionOptions}; use console::style; use eyre::Result; +use heck::ToKebabCase; #[cfg(windows)] use path_absolutize::Absolutize; @@ -268,7 +269,7 @@ impl ToolVersion { impl Display for ToolVersion { fn fmt(&self, f: &mut Formatter<'_>) -> core::fmt::Result { - write!(f, "{}@{}", &self.ba().full(), &self.version) + write!(f, "{}@{}", &self.ba().full(), &self.version.to_kebab_case()) } }