diff options
author | Bartek IwaĆczuk <biwanczuk@gmail.com> | 2022-04-11 01:12:51 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-04-11 01:12:51 +0200 |
commit | 8ae17026cbb30ab23fd79ac5cf5c207af5ad90a3 (patch) | |
tree | d627be6104c0903b36ac38c6b56c2603469bbfec /cli/tools | |
parent | a4eee007ef28f918db9165c52a19bc30bd65bad3 (diff) |
feat: Add "deno check" subcommand for type checking (#14072)
This commit adds new "deno check" subcommand.
Currently it is an alias for "deno cache" with the difference that remote
modules don't emit TS diagnostics by default.
Prints warning for "deno run" subcommand if "--check" flag is not present
and there's no "--no-check" flag. Adds "DENO_FUTURE_CHECK" env
variable that allows to opt into new behavior now.
Diffstat (limited to 'cli/tools')
-rw-r--r-- | cli/tools/bench.rs | 4 | ||||
-rw-r--r-- | cli/tools/installer.rs | 12 | ||||
-rw-r--r-- | cli/tools/standalone.rs | 7 | ||||
-rw-r--r-- | cli/tools/test.rs | 4 |
4 files changed, 15 insertions, 12 deletions
diff --git a/cli/tools/bench.rs b/cli/tools/bench.rs index d852139e3..2d35c27c5 100644 --- a/cli/tools/bench.rs +++ b/cli/tools/bench.rs @@ -11,7 +11,7 @@ use crate::file_watcher; use crate::file_watcher::ResolutionResult; use crate::flags::BenchFlags; use crate::flags::Flags; -use crate::flags::TypecheckMode; +use crate::flags::TypeCheckMode; use crate::fs_util::collect_specifiers; use crate::fs_util::is_supported_bench_path; use crate::graph_util::contains_specifier; @@ -517,7 +517,7 @@ pub async fn run_benchmarks_with_watch( let include = bench_flags.include.unwrap_or_else(|| vec![".".to_string()]); let ignore = bench_flags.ignore.clone(); let paths_to_watch: Vec<_> = include.iter().map(PathBuf::from).collect(); - let no_check = ps.flags.typecheck_mode == TypecheckMode::None; + let no_check = ps.flags.type_check_mode == TypeCheckMode::None; let resolver = |changed: Option<Vec<PathBuf>>| { let mut cache = cache::FetchCacher::new( diff --git a/cli/tools/installer.rs b/cli/tools/installer.rs index a4340e98c..8ebbf8f53 100644 --- a/cli/tools/installer.rs +++ b/cli/tools/installer.rs @@ -2,7 +2,7 @@ use crate::flags::Flags; use crate::flags::InstallFlags; -use crate::flags::TypecheckMode; +use crate::flags::TypeCheckMode; use crate::fs_util::canonicalize_path; use deno_core::error::generic_error; use deno_core::error::AnyError; @@ -306,10 +306,10 @@ fn resolve_shim_data( // we should avoid a default branch here to ensure we continue to cover any // changes to this flag. - match flags.typecheck_mode { - TypecheckMode::All => (), - TypecheckMode::None => executable_args.push("--no-check".to_string()), - TypecheckMode::Local => { + match flags.type_check_mode { + TypeCheckMode::All => (), + TypeCheckMode::None => executable_args.push("--no-check".to_string()), + TypeCheckMode::Local => { executable_args.push("--no-check=remote".to_string()) } } @@ -590,7 +590,7 @@ mod tests { &Flags { allow_net: Some(vec![]), allow_read: Some(vec![]), - typecheck_mode: TypecheckMode::None, + type_check_mode: TypeCheckMode::None, log_level: Some(Level::Error), compat: true, ..Flags::default() diff --git a/cli/tools/standalone.rs b/cli/tools/standalone.rs index e7c279f42..9f24b5f08 100644 --- a/cli/tools/standalone.rs +++ b/cli/tools/standalone.rs @@ -4,8 +4,9 @@ use crate::deno_dir::DenoDir; use crate::flags::CompileFlags; use crate::flags::DenoSubcommand; use crate::flags::Flags; +use crate::flags::FutureTypeCheckMode; use crate::flags::RunFlags; -use crate::flags::TypecheckMode; +use crate::flags::TypeCheckMode; use crate::fs_util; use crate::standalone::Metadata; use crate::standalone::MAGIC_TRAILER; @@ -274,7 +275,9 @@ pub fn compile_to_runtime_flags( lock_write: false, lock: None, log_level: flags.log_level, - typecheck_mode: TypecheckMode::All, + type_check_mode: TypeCheckMode::All, + future_type_check_mode: FutureTypeCheckMode::None, + has_check_flag: false, compat: flags.compat, unsafely_ignore_certificate_errors: flags .unsafely_ignore_certificate_errors diff --git a/cli/tools/test.rs b/cli/tools/test.rs index 242abab1b..96ee3ab6e 100644 --- a/cli/tools/test.rs +++ b/cli/tools/test.rs @@ -12,7 +12,7 @@ use crate::file_watcher; use crate::file_watcher::ResolutionResult; use crate::flags::Flags; use crate::flags::TestFlags; -use crate::flags::TypecheckMode; +use crate::flags::TypeCheckMode; use crate::fs_util::collect_specifiers; use crate::fs_util::is_supported_test_ext; use crate::fs_util::is_supported_test_path; @@ -1075,7 +1075,7 @@ pub async fn run_tests_with_watch( let include = test_flags.include.unwrap_or_else(|| vec![".".to_string()]); let ignore = test_flags.ignore.clone(); let paths_to_watch: Vec<_> = include.iter().map(PathBuf::from).collect(); - let no_check = ps.flags.typecheck_mode == TypecheckMode::None; + let no_check = ps.flags.type_check_mode == TypeCheckMode::None; let resolver = |changed: Option<Vec<PathBuf>>| { let mut cache = cache::FetchCacher::new( |