From efe956b4fd51818e3a982b9d7c4111c408d07291 Mon Sep 17 00:00:00 2001 From: Zheyu Zhang Date: Thu, 4 Nov 2021 23:12:12 +0800 Subject: fix(lint): use recommended tag if there is no tags in config file or flags (#12644) --- cli/tools/lint.rs | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) (limited to 'cli/tools/lint.rs') diff --git a/cli/tools/lint.rs b/cli/tools/lint.rs index 706ecbbd8..8a5f2460b 100644 --- a/cli/tools/lint.rs +++ b/cli/tools/lint.rs @@ -51,9 +51,9 @@ pub async fn lint( watch: bool, ) -> Result<(), AnyError> { let LintFlags { - rules_tags, - rules_include, - rules_exclude, + maybe_rules_tags, + maybe_rules_include, + maybe_rules_exclude, files: args, ignore, json, @@ -102,9 +102,9 @@ pub async fn lint( // and `--rules-include` CLI flag, only the flag value is taken into account. let lint_rules = get_configured_rules( maybe_lint_config.as_ref(), - rules_tags, - rules_include, - rules_exclude, + maybe_rules_tags, + maybe_rules_include, + maybe_rules_exclude, )?; let resolver = |changed: Option>| { @@ -488,20 +488,20 @@ fn sort_diagnostics(diagnostics: &mut Vec) { pub(crate) fn get_configured_rules( maybe_lint_config: Option<&LintConfig>, - rules_tags: Vec, - rules_include: Vec, - rules_exclude: Vec, + maybe_rules_tags: Option>, + maybe_rules_include: Option>, + maybe_rules_exclude: Option>, ) -> Result>, AnyError> { if maybe_lint_config.is_none() - && rules_tags.is_empty() - && rules_include.is_empty() - && rules_exclude.is_empty() + && maybe_rules_tags.is_none() + && maybe_rules_include.is_none() + && maybe_rules_exclude.is_none() { return Ok(rules::get_recommended_rules()); } let (config_file_tags, config_file_include, config_file_exclude) = - if let Some(lint_config) = maybe_lint_config.as_ref() { + if let Some(lint_config) = maybe_lint_config { ( lint_config.rules.tags.clone(), lint_config.rules.include.clone(), @@ -511,26 +511,26 @@ pub(crate) fn get_configured_rules( (None, None, None) }; - let maybe_configured_include = if !rules_include.is_empty() { - Some(rules_include) + let maybe_configured_include = if maybe_rules_include.is_some() { + maybe_rules_include } else { config_file_include }; - let maybe_configured_exclude = if !rules_exclude.is_empty() { - Some(rules_exclude) + let maybe_configured_exclude = if maybe_rules_exclude.is_some() { + maybe_rules_exclude } else { config_file_exclude }; - let configured_tags = if !rules_tags.is_empty() { - rules_tags + let maybe_configured_tags = if maybe_rules_tags.is_some() { + maybe_rules_tags } else { - config_file_tags.unwrap_or_else(Vec::new) + config_file_tags }; let configured_rules = rules::get_filtered_rules( - Some(configured_tags), + maybe_configured_tags, maybe_configured_exclude, maybe_configured_include, ); -- cgit v1.2.3