From 56625012587ecf7dfdca6dddfd44289d0786cbd8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Silva?= <123550+andresilva@users.noreply.github.com> Date: Mon, 27 Apr 2020 21:01:35 +0100 Subject: [PATCH] cli: fix unused unsafe-pruning flag (#5803) --- substrate/client/cli/src/commands/mod.rs | 4 ++-- substrate/client/cli/src/config.rs | 11 ++++++++--- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/substrate/client/cli/src/commands/mod.rs b/substrate/client/cli/src/commands/mod.rs index 143ff491ae..3a4861543d 100644 --- a/substrate/client/cli/src/commands/mod.rs +++ b/substrate/client/cli/src/commands/mod.rs @@ -235,10 +235,10 @@ macro_rules! substrate_cli_subcommands { } } - fn pruning(&self, is_dev: bool, role: &::sc_service::Role) + fn pruning(&self, unsafe_pruning: bool, role: &::sc_service::Role) -> $crate::Result<::sc_service::config::PruningMode> { match self { - $($enum::$variant(cmd) => cmd.pruning(is_dev, role)),* + $($enum::$variant(cmd) => cmd.pruning(unsafe_pruning, role)),* } } diff --git a/substrate/client/cli/src/config.rs b/substrate/client/cli/src/config.rs index 1d07355f0a..0517724174 100644 --- a/substrate/client/cli/src/config.rs +++ b/substrate/client/cli/src/config.rs @@ -200,9 +200,9 @@ pub trait CliConfiguration: Sized { /// /// By default this is retrieved from `PruningMode` if it is available. Otherwise its /// `PruningMode::default()`. - fn pruning(&self, is_dev: bool, role: &Role) -> Result { + fn pruning(&self, unsafe_pruning: bool, role: &Role) -> Result { self.pruning_params() - .map(|x| x.pruning(is_dev, role)) + .map(|x| x.pruning(unsafe_pruning, role)) .unwrap_or(Ok(Default::default())) } @@ -411,6 +411,11 @@ pub trait CliConfiguration: Sized { let role = self.role(is_dev)?; let max_runtime_instances = self.max_runtime_instances()?.unwrap_or(8); + let unsafe_pruning = self + .import_params() + .map(|p| p.unsafe_pruning) + .unwrap_or(false); + Ok(Configuration { impl_name: C::impl_name(), impl_version: C::impl_version(), @@ -428,7 +433,7 @@ pub trait CliConfiguration: Sized { database: self.database_config(&config_dir, database_cache_size, database)?, state_cache_size: self.state_cache_size()?, state_cache_child_ratio: self.state_cache_child_ratio()?, - pruning: self.pruning(is_dev, &role)?, + pruning: self.pruning(unsafe_pruning || is_dev, &role)?, wasm_method: self.wasm_method()?, execution_strategies: self.execution_strategies(is_dev)?, rpc_http: self.rpc_http()?,