From a293ab72f812e5293b7cbcf350f2e68ff780b94e Mon Sep 17 00:00:00 2001 From: dominicbachmann Date: Sun, 17 Dec 2023 00:29:34 +0100 Subject: [PATCH] fix(@angular/cli): fix ng update for Yarn Pnp Extend findPackageJson function to also work when using Yarn PnP Fixes #26505 --- .../angular/cli/src/utilities/package-tree.ts | 27 ++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/packages/angular/cli/src/utilities/package-tree.ts b/packages/angular/cli/src/utilities/package-tree.ts index 9b082e6c9d9f..a9f3e68ef44b 100644 --- a/packages/angular/cli/src/utilities/package-tree.ts +++ b/packages/angular/cli/src/utilities/package-tree.ts @@ -24,6 +24,13 @@ interface PackageJson { 'ng-add'?: { save?: NgAddSaveDependency; }; + installConfig?: { + pnp?: boolean; + }; +} + +interface YarnPnp { + resolveRequest: (request: string, issuer: string) => string | null; } function getAllDependencies(pkg: PackageJson): Set<[string, string]> { @@ -50,7 +57,21 @@ export async function readPackageJson(packageJsonPath: string): Promise(); for (const [name, version] of getAllDependencies(pkg)) { - const packageJsonPath = findPackageJson(dir, name); + const packageJsonPath = findPackageJson(dir, name, usingPnP); if (!packageJsonPath) { continue; }