diff options
Diffstat (limited to 'cli/tools')
-rw-r--r-- | cli/tools/doc.rs | 1 | ||||
-rw-r--r-- | cli/tools/info.rs | 11 | ||||
-rw-r--r-- | cli/tools/vendor/build.rs | 17 | ||||
-rw-r--r-- | cli/tools/vendor/mod.rs | 1 | ||||
-rw-r--r-- | cli/tools/vendor/test.rs | 2 |
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, }, |