summaryrefslogtreecommitdiff
path: root/cli/tools/bench.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tools/bench.rs')
-rw-r--r--cli/tools/bench.rs34
1 files changed, 13 insertions, 21 deletions
diff --git a/cli/tools/bench.rs b/cli/tools/bench.rs
index 107fd2b9b..1a5df92bf 100644
--- a/cli/tools/bench.rs
+++ b/cli/tools/bench.rs
@@ -31,6 +31,7 @@ use deno_core::task::spawn;
use deno_core::task::spawn_blocking;
use deno_core::v8;
use deno_core::ModuleSpecifier;
+use deno_graph::GraphKind;
use deno_runtime::permissions::Permissions;
use deno_runtime::permissions::PermissionsContainer;
use deno_runtime::tokio_util::create_and_run_current_thread;
@@ -693,7 +694,11 @@ pub async fn run_benchmarks_with_watch(
// file would have impact on other files, which is undesirable.
let permissions =
Permissions::from_options(&cli_options.permissions_options())?;
- let no_check = cli_options.type_check_mode() == TypeCheckMode::None;
+ let type_check = cli_options.type_check_mode() != TypeCheckMode::None;
+ let graph_kind = match type_check {
+ true => GraphKind::All,
+ false => GraphKind::CodeOnly,
+ };
let resolver = |changed: Option<Vec<PathBuf>>| {
let paths_to_watch = bench_options.files.include.clone();
@@ -714,7 +719,7 @@ pub async fn run_benchmarks_with_watch(
bench_modules.clone()
};
let graph = module_graph_builder
- .create_graph(bench_modules.clone())
+ .create_graph(graph_kind, bench_modules.clone())
.await?;
graph_valid_with_cli_options(&graph, &bench_modules, &cli_options)?;
@@ -726,32 +731,19 @@ pub async fn run_benchmarks_with_watch(
// This needs to be accessible to skip getting dependencies if they're already there,
// otherwise this will cause a stack overflow with circular dependencies
output: &mut HashSet<&'a ModuleSpecifier>,
- no_check: bool,
) {
if let Some(module) = maybe_module.and_then(|m| m.esm()) {
for dep in module.dependencies.values() {
if let Some(specifier) = &dep.get_code() {
if !output.contains(specifier) {
output.insert(specifier);
- get_dependencies(
- graph,
- graph.get(specifier),
- output,
- no_check,
- );
+ get_dependencies(graph, graph.get(specifier), output);
}
}
- if !no_check {
- if let Some(specifier) = &dep.get_type() {
- if !output.contains(specifier) {
- output.insert(specifier);
- get_dependencies(
- graph,
- graph.get(specifier),
- output,
- no_check,
- );
- }
+ if let Some(specifier) = &dep.get_type() {
+ if !output.contains(specifier) {
+ output.insert(specifier);
+ get_dependencies(graph, graph.get(specifier), output);
}
}
}
@@ -761,7 +753,7 @@ pub async fn run_benchmarks_with_watch(
// This bench module and all it's dependencies
let mut modules = HashSet::new();
modules.insert(&specifier);
- get_dependencies(&graph, graph.get(&specifier), &mut modules, no_check);
+ get_dependencies(&graph, graph.get(&specifier), &mut modules);
paths_to_watch.extend(
modules