diff --git a/package.json b/package.json index ac935c4ead6a..4f136df9262b 100644 --- a/package.json +++ b/package.json @@ -84,7 +84,6 @@ "@types/pacote": "^11.1.3", "@types/picomatch": "^4.0.0", "@types/progress": "^2.0.3", - "@types/resolve": "^1.17.1", "@types/semver": "^7.3.12", "@types/watchpack": "^2.4.4", "@types/yargs": "^17.0.20", diff --git a/packages/angular/cli/BUILD.bazel b/packages/angular/cli/BUILD.bazel index abed616cd810..6d33838ae2e7 100644 --- a/packages/angular/cli/BUILD.bazel +++ b/packages/angular/cli/BUILD.bazel @@ -72,7 +72,6 @@ ts_project( ":node_modules/npm-package-arg", ":node_modules/pacote", ":node_modules/parse5-html-rewriting-stream", - ":node_modules/resolve", ":node_modules/yargs", ":node_modules/zod", "//:node_modules/@angular/core", @@ -80,7 +79,6 @@ ts_project( "//:node_modules/@types/node", "//:node_modules/@types/npm-package-arg", "//:node_modules/@types/pacote", - "//:node_modules/@types/resolve", "//:node_modules/@types/semver", "//:node_modules/@types/yargs", "//:node_modules/@types/yarnpkg__lockfile", diff --git a/packages/angular/cli/package.json b/packages/angular/cli/package.json index 8872ceeee5b0..452594492313 100644 --- a/packages/angular/cli/package.json +++ b/packages/angular/cli/package.json @@ -37,7 +37,6 @@ "npm-package-arg": "13.0.2", "pacote": "21.0.4", "parse5-html-rewriting-stream": "8.0.0", - "resolve": "1.22.11", "semver": "7.7.3", "yargs": "18.0.0", "zod": "4.3.5" diff --git a/packages/angular/cli/src/commands/update/cli.ts b/packages/angular/cli/src/commands/update/cli.ts index b5f0be73539e..8703eb017f24 100644 --- a/packages/angular/cli/src/commands/update/cli.ts +++ b/packages/angular/cli/src/commands/update/cli.ts @@ -29,7 +29,6 @@ import { import { colors } from '../../utilities/color'; import { disableVersionCheck } from '../../utilities/environment-options'; import { assertIsError } from '../../utilities/error'; -import { findPackageJson } from '../../utilities/package-tree'; import { checkCLIVersion, coerceVersionNumber, @@ -697,3 +696,14 @@ async function readPackageManifest(manifestPath: string): Promise; - devDependencies?: Record; - peerDependencies?: Record; - optionalDependencies?: Record; - 'ng-update'?: { - migrations?: string; - }; - 'ng-add'?: { - save?: NgAddSaveDependency; - }; -} - -function getAllDependencies(pkg: PackageJson): Set<[string, string]> { - return new Set([ - ...Object.entries(pkg.dependencies || []), - ...Object.entries(pkg.devDependencies || []), - ...Object.entries(pkg.peerDependencies || []), - ...Object.entries(pkg.optionalDependencies || []), - ]); -} - -export interface PackageTreeNode { - name: string; - version: string; - path: string; - package: PackageJson | undefined; -} - -export async function readPackageJson(packageJsonPath: string): Promise { - try { - return JSON.parse((await fs.promises.readFile(packageJsonPath)).toString()) as PackageJson; - } catch { - return undefined; - } -} - -export function findPackageJson(workspaceDir: string, packageName: string): string | undefined { - try { - // avoid require.resolve here, see: https://github.com/angular/angular-cli/pull/18610#issuecomment-681980185 - const packageJsonPath = resolve.sync(`${packageName}/package.json`, { basedir: workspaceDir }); - - return packageJsonPath; - } catch { - return undefined; - } -} - -export async function getProjectDependencies(dir: string): Promise> { - const pkg = await readPackageJson(join(dir, 'package.json')); - if (!pkg) { - throw new Error('Could not find package.json'); - } - - const results = new Map(); - for (const [name, version] of getAllDependencies(pkg)) { - const packageJsonPath = findPackageJson(dir, name); - if (!packageJsonPath) { - continue; - } - - results.set(name, { - name, - version, - path: dirname(packageJsonPath), - package: await readPackageJson(packageJsonPath), - }); - } - - return results; -} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1d26335523ed..f9ca5563c6c9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -145,9 +145,6 @@ importers: '@types/progress': specifier: ^2.0.3 version: 2.0.7 - '@types/resolve': - specifier: ^1.17.1 - version: 1.20.6 '@types/semver': specifier: ^7.3.12 version: 7.7.1 @@ -492,9 +489,6 @@ importers: parse5-html-rewriting-stream: specifier: 8.0.0 version: 8.0.0 - resolve: - specifier: 1.22.11 - version: 1.22.11 semver: specifier: 7.7.3 version: 7.7.3 @@ -3624,9 +3618,6 @@ packages: '@types/resolve@1.20.2': resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} - '@types/resolve@1.20.6': - resolution: {integrity: sha512-A4STmOXPhMUtHH+S6ymgE2GiBSMqf4oTvcQZMcHzokuTLVYzXTB8ttjcgxOVaAp2lGwEdzZ0J+cRbbeevQj1UQ==} - '@types/responselike@1.0.0': resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==} @@ -12187,8 +12178,6 @@ snapshots: '@types/resolve@1.20.2': {} - '@types/resolve@1.20.6': {} - '@types/responselike@1.0.0': dependencies: '@types/node': 22.19.3