From adc5974333174bd59796f5b7bb8b010c17479dd0 Mon Sep 17 00:00:00 2001 From: David Sherret Date: Wed, 24 Nov 2021 15:14:19 -0500 Subject: fix(lsp): lsp should respect include/exclude files in format config (#12876) --- cli/tools/fmt.rs | 15 +++++++++++++-- cli/tools/lint.rs | 16 +++++++++++++--- 2 files changed, 26 insertions(+), 5 deletions(-) (limited to 'cli/tools') diff --git a/cli/tools/fmt.rs b/cli/tools/fmt.rs index ae9d68b29..004b390d3 100644 --- a/cli/tools/fmt.rs +++ b/cli/tools/fmt.rs @@ -15,6 +15,7 @@ use crate::diff::diff; use crate::file_watcher; use crate::file_watcher::ResolutionResult; use crate::flags::FmtFlags; +use crate::fs_util::specifier_to_file_path; use crate::fs_util::{collect_files, get_extension, is_supported_ext_fmt}; use crate::text_encoding; use deno_ast::ParsedSource; @@ -55,11 +56,21 @@ pub async fn format( if let Some(fmt_config) = maybe_fmt_config.as_ref() { if include_files.is_empty() { - include_files = fmt_config.files.include.clone(); + include_files = fmt_config + .files + .include + .iter() + .filter_map(|s| specifier_to_file_path(s).ok()) + .collect::>(); } if exclude_files.is_empty() { - exclude_files = fmt_config.files.exclude.clone(); + exclude_files = fmt_config + .files + .exclude + .iter() + .filter_map(|s| specifier_to_file_path(s).ok()) + .collect::>(); } } diff --git a/cli/tools/lint.rs b/cli/tools/lint.rs index 2c68a0dac..b7ae88e4f 100644 --- a/cli/tools/lint.rs +++ b/cli/tools/lint.rs @@ -10,7 +10,7 @@ use crate::config_file::LintConfig; use crate::file_watcher::ResolutionResult; use crate::flags::LintFlags; use crate::fmt_errors; -use crate::fs_util::{collect_files, is_supported_ext}; +use crate::fs_util::{collect_files, is_supported_ext, specifier_to_file_path}; use crate::tools::fmt::run_parallelized; use crate::{colors, file_watcher}; use deno_ast::MediaType; @@ -71,11 +71,21 @@ pub async fn lint( if let Some(lint_config) = maybe_lint_config.as_ref() { if include_files.is_empty() { - include_files = lint_config.files.include.clone(); + include_files = lint_config + .files + .include + .iter() + .filter_map(|s| specifier_to_file_path(s).ok()) + .collect::>(); } if exclude_files.is_empty() { - exclude_files = lint_config.files.exclude.clone(); + exclude_files = lint_config + .files + .exclude + .iter() + .filter_map(|s| specifier_to_file_path(s).ok()) + .collect::>(); } } -- cgit v1.2.3