summaryrefslogtreecommitdiff
path: root/cli/tools
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tools')
-rw-r--r--cli/tools/doc.rs1
-rw-r--r--cli/tools/info.rs11
-rw-r--r--cli/tools/vendor/build.rs17
-rw-r--r--cli/tools/vendor/mod.rs1
-rw-r--r--cli/tools/vendor/test.rs2
5 files changed, 18 insertions, 14 deletions
diff --git a/cli/tools/doc.rs b/cli/tools/doc.rs
index e301c0000..30211d379 100644
--- a/cli/tools/doc.rs
+++ b/cli/tools/doc.rs
@@ -49,7 +49,6 @@ pub async fn print_docs(
is_dynamic: false,
imports: None,
resolver: None,
- locker: None,
module_analyzer: Some(&analyzer),
reporter: None,
},
diff --git a/cli/tools/info.rs b/cli/tools/info.rs
index a81dcb55c..f494c8d00 100644
--- a/cli/tools/info.rs
+++ b/cli/tools/info.rs
@@ -311,7 +311,7 @@ impl NpmInfo {
}
for (specifier, _) in graph.specifiers() {
- if let Ok(reference) = NpmPackageReference::from_specifier(&specifier) {
+ if let Ok(reference) = NpmPackageReference::from_specifier(specifier) {
info
.specifiers
.insert(specifier.clone(), reference.req.clone());
@@ -421,9 +421,8 @@ impl<'a> GraphDisplayContext<'a> {
}
}
writeln!(writer, "{} {}", colors::bold("type:"), root.media_type)?;
- let modules = self.graph.modules();
let total_modules_size =
- modules.iter().map(|m| m.size() as f64).sum::<f64>();
+ self.graph.modules().map(|m| m.size() as f64).sum::<f64>();
let total_npm_package_size = self
.npm_info
.package_sizes
@@ -431,7 +430,8 @@ impl<'a> GraphDisplayContext<'a> {
.map(|s| *s as f64)
.sum::<f64>();
let total_size = total_modules_size + total_npm_package_size;
- let dep_count = modules.len() - 1 + self.npm_info.packages.len()
+ let dep_count = self.graph.modules().count() - 1
+ + self.npm_info.packages.len()
- self.npm_info.resolved_reqs.len();
writeln!(
writer,
@@ -595,9 +595,6 @@ impl<'a> GraphDisplayContext<'a> {
) -> TreeNode {
self.seen.insert(specifier.to_string());
match err {
- ModuleGraphError::InvalidSource(_, _) => {
- self.build_error_msg(specifier, "(invalid source)")
- }
ModuleGraphError::InvalidTypeAssertion { .. } => {
self.build_error_msg(specifier, "(invalid import assertion)")
}
diff --git a/cli/tools/vendor/build.rs b/cli/tools/vendor/build.rs
index b28038a67..bdb384e43 100644
--- a/cli/tools/vendor/build.rs
+++ b/cli/tools/vendor/build.rs
@@ -3,18 +3,22 @@
use std::fmt::Write as _;
use std::path::Path;
use std::path::PathBuf;
+use std::sync::Arc;
use deno_ast::ModuleSpecifier;
use deno_core::anyhow::bail;
use deno_core::anyhow::Context;
use deno_core::error::AnyError;
+use deno_core::parking_lot::Mutex;
use deno_graph::Module;
use deno_graph::ModuleGraph;
use deno_graph::ModuleKind;
use import_map::ImportMap;
use import_map::SpecifierMap;
+use crate::args::Lockfile;
use crate::cache::ParsedSourceCache;
+use crate::graph_util::graph_lock_or_exit;
use super::analyze::has_default_export;
use super::import_map::build_import_map;
@@ -57,6 +61,7 @@ pub fn build(
parsed_source_cache: &ParsedSourceCache,
output_dir: &Path,
original_import_map: Option<&ImportMap>,
+ maybe_lockfile: Option<Arc<Mutex<Lockfile>>>,
environment: &impl VendorEnvironment,
) -> Result<usize, AnyError> {
assert!(output_dir.is_absolute());
@@ -68,18 +73,20 @@ pub fn build(
}
// build the graph
- graph.lock()?;
+ if let Some(lockfile) = maybe_lockfile {
+ graph_lock_or_exit(&graph, &mut lockfile.lock());
+ }
- let graph_errors = graph.errors();
- if !graph_errors.is_empty() {
- for err in &graph_errors {
+ let mut graph_errors = graph.errors().peekable();
+ if graph_errors.peek().is_some() {
+ for err in graph_errors {
log::error!("{}", err);
}
bail!("failed vendoring");
}
// figure out how to map remote modules to local
- let all_modules = graph.modules();
+ let all_modules = graph.modules().collect::<Vec<_>>();
let remote_modules = all_modules
.iter()
.filter(|m| is_remote_specifier(&m.specifier))
diff --git a/cli/tools/vendor/mod.rs b/cli/tools/vendor/mod.rs
index a1057d838..ed0c69501 100644
--- a/cli/tools/vendor/mod.rs
+++ b/cli/tools/vendor/mod.rs
@@ -49,6 +49,7 @@ pub async fn vendor(
&ps.parsed_source_cache,
&output_dir,
ps.maybe_import_map.as_deref(),
+ ps.lockfile.clone(),
&build::RealVendorEnvironment,
)?;
diff --git a/cli/tools/vendor/test.rs b/cli/tools/vendor/test.rs
index ee779468b..c703357d8 100644
--- a/cli/tools/vendor/test.rs
+++ b/cli/tools/vendor/test.rs
@@ -234,6 +234,7 @@ impl VendorTestBuilder {
&parsed_source_cache,
&output_dir,
self.original_import_map.as_ref(),
+ None,
&self.environment,
)?;
@@ -273,7 +274,6 @@ async fn build_test_graph(
is_dynamic: false,
imports: None,
resolver: resolver.as_ref().map(|r| r.as_graph_resolver()),
- locker: None,
module_analyzer: Some(analyzer),
reporter: None,
},