From 88c9a999f78916700b35b6a893a5b779a4f86db0 Mon Sep 17 00:00:00 2001 From: Yusuke Tanaka Date: Thu, 2 Mar 2023 17:50:17 -0400 Subject: chore(cli): update deno_lint to 0.41.0 (#17997) This commit updates deno_lint crate to 0.41.0. The new version contains a braking change that requries a minor code fix here, which is also addressed in this commit. --- cli/Cargo.toml | 2 +- cli/lsp/analysis.rs | 3 +-- cli/lsp/diagnostics.rs | 2 +- cli/tools/lint.rs | 10 ++++++---- 4 files changed, 9 insertions(+), 8 deletions(-) (limited to 'cli') diff --git a/cli/Cargo.toml b/cli/Cargo.toml index ad2850705..9f48e2d0a 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -47,7 +47,7 @@ deno_core = { workspace = true, features = ["include_js_files_for_snapshotting"] deno_doc = "0.57.0" deno_emit = "0.16.0" deno_graph = "=0.44.2" -deno_lint = { version = "0.40.0", features = ["docs"] } +deno_lint = { version = "0.41.0", features = ["docs"] } deno_lockfile.workspace = true deno_runtime = { workspace = true, features = ["dont_create_runtime_snapshot", "include_js_files_for_snapshotting"] } deno_task_shell = "0.10.0" diff --git a/cli/lsp/analysis.rs b/cli/lsp/analysis.rs index 182ad940e..23bfeccd1 100644 --- a/cli/lsp/analysis.rs +++ b/cli/lsp/analysis.rs @@ -21,7 +21,6 @@ use once_cell::sync::Lazy; use regex::Regex; use std::cmp::Ordering; use std::collections::HashMap; -use std::sync::Arc; use tower_lsp::lsp_types as lsp; use tower_lsp::lsp_types::Position; use tower_lsp::lsp_types::Range; @@ -121,7 +120,7 @@ fn as_lsp_range(range: &deno_lint::diagnostic::Range) -> Range { pub fn get_lint_references( parsed_source: &deno_ast::ParsedSource, - lint_rules: Vec>, + lint_rules: Vec<&'static dyn LintRule>, ) -> Result, AnyError> { let linter = create_linter(parsed_source.media_type(), lint_rules); let lint_diagnostics = linter.lint_with_ast(parsed_source); diff --git a/cli/lsp/diagnostics.rs b/cli/lsp/diagnostics.rs index f938ba6f4..380323dba 100644 --- a/cli/lsp/diagnostics.rs +++ b/cli/lsp/diagnostics.rs @@ -490,7 +490,7 @@ async fn generate_lint_diagnostics( fn generate_document_lint_diagnostics( config: &ConfigSnapshot, lint_options: &LintOptions, - lint_rules: Vec>, + lint_rules: Vec<&'static dyn LintRule>, document: &Document, ) -> Vec { if !config.specifier_enabled(document.specifier()) { diff --git a/cli/tools/lint.rs b/cli/tools/lint.rs index 0f81ec89d..4eebf9e16 100644 --- a/cli/tools/lint.rs +++ b/cli/tools/lint.rs @@ -234,7 +234,7 @@ pub fn print_rules_list(json: bool) { pub fn create_linter( media_type: MediaType, - rules: Vec>, + rules: Vec<&'static dyn LintRule>, ) -> Linter { LinterBuilder::default() .ignore_file_directive("deno-lint-ignore-file") @@ -247,7 +247,7 @@ pub fn create_linter( fn lint_file( file_path: &PathBuf, source_code: String, - lint_rules: Vec>, + lint_rules: Vec<&'static dyn LintRule>, ) -> Result<(Vec, String), AnyError> { let file_name = file_path.to_string_lossy().to_string(); let media_type = MediaType::from(file_path); @@ -263,7 +263,7 @@ fn lint_file( /// Treats input as TypeScript. /// Compatible with `--json` flag. fn lint_stdin( - lint_rules: Vec>, + lint_rules: Vec<&'static dyn LintRule>, ) -> Result<(Vec, String), AnyError> { let mut source_code = String::new(); if stdin().read_to_string(&mut source_code).is_err() { @@ -530,7 +530,9 @@ fn sort_diagnostics(diagnostics: &mut [LintDiagnostic]) { }); } -pub fn get_configured_rules(rules: LintRulesConfig) -> Vec> { +pub fn get_configured_rules( + rules: LintRulesConfig, +) -> Vec<&'static dyn LintRule> { if rules.tags.is_none() && rules.include.is_none() && rules.exclude.is_none() { rules::get_recommended_rules() -- cgit v1.2.3