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/cache/mod.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'cli/cache') diff --git a/cli/cache/mod.rs b/cli/cache/mod.rs index ca03ca940..5a65bd0a2 100644 --- a/cli/cache/mod.rs +++ b/cli/cache/mod.rs @@ -103,7 +103,8 @@ impl Loader for FetchCacher { ) -> LoadFuture { if specifier.scheme() == "npm" { return Box::pin(futures::future::ready( - match deno_graph::npm::NpmPackageReference::from_specifier(specifier) { + match deno_graph::npm::NpmPackageReqReference::from_specifier(specifier) + { Ok(_) => Ok(Some(deno_graph::source::LoadResponse::External { specifier: specifier.clone(), })), -- cgit v1.2.3