From 3479bc76613761cf31f7557d482e691274c365f1 Mon Sep 17 00:00:00 2001 From: David Sherret Date: Tue, 21 Feb 2023 12:03:48 -0500 Subject: fix(npm): improve peer dependency resolution (#17835) This PR fixes peer dependency resolution to only resolve peers based on the current graph traversal path. Previously, it would resolve a peers by looking at a graph node's ancestors, which is not correct because graph nodes are shared by different resolutions. It also stores more information about peer dependency resolution in the lockfile. --- cli/tools/repl/session.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'cli/tools/repl') diff --git a/cli/tools/repl/session.rs b/cli/tools/repl/session.rs index 4563aa0a2..cb3862a63 100644 --- a/cli/tools/repl/session.rs +++ b/cli/tools/repl/session.rs @@ -18,7 +18,7 @@ use deno_core::futures::StreamExt; use deno_core::serde_json; use deno_core::serde_json::Value; use deno_core::LocalInspectorSession; -use deno_graph::npm::NpmPackageReference; +use deno_graph::npm::NpmPackageReqReference; use deno_graph::source::Resolver; use deno_runtime::deno_node; use deno_runtime::worker::MainWorker; @@ -454,7 +454,7 @@ impl ReplSession { let npm_imports = resolved_imports .iter() - .flat_map(|url| NpmPackageReference::from_specifier(url).ok()) + .flat_map(|url| NpmPackageReqReference::from_specifier(url).ok()) .map(|r| r.req) .collect::>(); let has_node_specifier = -- cgit v1.2.3