From a0c3bcb11fcb6c7a42a971e0c9e89fae2ee075d4 Mon Sep 17 00:00:00 2001 From: Charles Lyding <19598772+clydin@users.noreply.github.com> Date: Mon, 17 Mar 2025 09:17:50 -0400 Subject: [PATCH] build: move devkit core specific dependencies out of root With the migration to `rules_js`, package specific dependencies now only need to be referenced with the source `package.json` for each specific package. Most of the `@angular-devkit/core` specific dependencies have now been moved. This is not exhaustive and further changes will continue to move additional dependencies. --- package.json | 5 ---- packages/angular/build/BUILD.bazel | 4 ++-- packages/angular/build/package.json | 1 + packages/angular/cli/BUILD.bazel | 2 +- .../angular_devkit/build_angular/BUILD.bazel | 5 ++-- packages/angular_devkit/core/BUILD.bazel | 19 ++++++++------- packages/angular_devkit/core/node/BUILD.bazel | 2 +- packages/angular_devkit/core/package.json | 3 +++ .../angular_devkit/schematics/BUILD.bazel | 2 +- .../schematics/tools/BUILD.bazel | 2 +- packages/schematics/angular/BUILD.bazel | 4 ++-- pnpm-lock.yaml | 23 ++++++------------- 12 files changed, 30 insertions(+), 42 deletions(-) diff --git a/package.json b/package.json index 90ad62d7e0d1..3ab29836476d 100644 --- a/package.json +++ b/package.json @@ -105,13 +105,11 @@ "@typescript-eslint/parser": "8.26.1", "@web/test-runner": "^0.20.0", "ajv": "8.17.1", - "ajv-formats": "3.0.1", "ansi-colors": "4.1.3", "beasties": "0.2.0", "browser-sync": "3.0.3", "browserslist": "^4.21.5", "buffer": "6.0.3", - "chokidar": "4.0.3", "esbuild": "0.25.1", "esbuild-wasm": "0.25.1", "eslint": "9.22.0", @@ -130,7 +128,6 @@ "jasmine-core": "~5.6.0", "jasmine-reporters": "^2.5.2", "jasmine-spec-reporter": "~7.0.0", - "jsonc-parser": "3.3.1", "karma": "~6.4.0", "karma-chrome-launcher": "~3.2.0", "karma-coverage": "~2.2.0", @@ -148,7 +145,6 @@ "open": "10.1.0", "ora": "5.4.1", "parse5-html-rewriting-stream": "7.0.0", - "picomatch": "4.0.2", "piscina": "4.9.0", "postcss": "8.5.3", "prettier": "^3.0.0", @@ -162,7 +158,6 @@ "sass": "1.85.1", "semver": "7.7.1", "shelljs": "^0.9.0", - "source-map": "0.7.4", "source-map-support": "0.5.21", "symbol-observable": "4.0.0", "tar": "^7.0.0", diff --git a/packages/angular/build/BUILD.bazel b/packages/angular/build/BUILD.bazel index 98a15eec1458..624e8c31dc35 100644 --- a/packages/angular/build/BUILD.bazel +++ b/packages/angular/build/BUILD.bazel @@ -79,6 +79,8 @@ ts_project( ":node_modules/@angular/ssr", ":node_modules/@inquirer/confirm", ":node_modules/@vitejs/plugin-basic-ssl", + ":node_modules/jsonc-parser", + ":node_modules/picomatch", ":node_modules/vite", "//:node_modules/@ampproject/remapping", "//:node_modules/@angular/common", @@ -105,7 +107,6 @@ ts_project( "//:node_modules/esbuild-wasm", "//:node_modules/https-proxy-agent", "//:node_modules/istanbul-lib-instrument", - "//:node_modules/jsonc-parser", "//:node_modules/karma", "//:node_modules/less", "//:node_modules/listr2", @@ -114,7 +115,6 @@ ts_project( "//:node_modules/mrmime", "//:node_modules/ng-packagr", "//:node_modules/parse5-html-rewriting-stream", - "//:node_modules/picomatch", "//:node_modules/piscina", "//:node_modules/postcss", "//:node_modules/rollup", diff --git a/packages/angular/build/package.json b/packages/angular/build/package.json index 43ca89e1f01d..77a5743eaa84 100644 --- a/packages/angular/build/package.json +++ b/packages/angular/build/package.json @@ -31,6 +31,7 @@ "esbuild": "0.25.1", "https-proxy-agent": "7.0.6", "istanbul-lib-instrument": "6.0.3", + "jsonc-parser": "3.3.1", "listr2": "8.2.5", "magic-string": "0.30.17", "mrmime": "2.0.1", diff --git a/packages/angular/cli/BUILD.bazel b/packages/angular/cli/BUILD.bazel index b12547f0ee12..030b92e1dbec 100644 --- a/packages/angular/cli/BUILD.bazel +++ b/packages/angular/cli/BUILD.bazel @@ -52,6 +52,7 @@ ts_project( ":node_modules/@listr2/prompt-adapter-inquirer", ":node_modules/@yarnpkg/lockfile", ":node_modules/ini", + ":node_modules/jsonc-parser", ":node_modules/npm-package-arg", ":node_modules/npm-pick-manifest", ":node_modules/pacote", @@ -66,7 +67,6 @@ ts_project( "//:node_modules/@types/semver", "//:node_modules/@types/yargs", "//:node_modules/@types/yarnpkg__lockfile", - "//:node_modules/jsonc-parser", "//:node_modules/listr2", "//:node_modules/semver", "//:node_modules/symbol-observable", diff --git a/packages/angular_devkit/build_angular/BUILD.bazel b/packages/angular_devkit/build_angular/BUILD.bazel index bd9cae8ef739..55548ff4b108 100644 --- a/packages/angular_devkit/build_angular/BUILD.bazel +++ b/packages/angular_devkit/build_angular/BUILD.bazel @@ -141,11 +141,11 @@ ts_project( ":node_modules/@babel/runtime", ":node_modules/@discoveryjs/json-ext", ":node_modules/@ngtools/webpack", - ":node_modules/@vitejs/plugin-basic-ssl", ":node_modules/autoprefixer", ":node_modules/babel-loader", ":node_modules/copy-webpack-plugin", ":node_modules/css-loader", + ":node_modules/jsonc-parser", ":node_modules/less", ":node_modules/less-loader", ":node_modules/license-webpack-plugin", @@ -183,7 +183,6 @@ ts_project( "//:node_modules/@types/semver", "//:node_modules/@types/watchpack", "//:node_modules/@web/test-runner", - "//:node_modules/ajv", "//:node_modules/ansi-colors", "//:node_modules/browser-sync", "//:node_modules/browserslist", @@ -192,7 +191,6 @@ ts_project( "//:node_modules/fast-glob", "//:node_modules/http-proxy-middleware", "//:node_modules/istanbul-lib-instrument", - "//:node_modules/jsonc-parser", "//:node_modules/karma", "//:node_modules/karma-source-map-support", "//:node_modules/ng-packagr", @@ -365,6 +363,7 @@ LARGE_SPECS = { "//:node_modules/@types/node", "//:node_modules/@angular/animations", "//:node_modules/@angular/material", + "//:node_modules/ajv", ], }, "prerender": {}, diff --git a/packages/angular_devkit/core/BUILD.bazel b/packages/angular_devkit/core/BUILD.bazel index e3f918a57e8c..b83bb47e0b23 100644 --- a/packages/angular_devkit/core/BUILD.bazel +++ b/packages/angular_devkit/core/BUILD.bazel @@ -1,4 +1,5 @@ load("@devinfra//bazel/api-golden:index_rjs.bzl", "api_golden_test_npm_package") +load("@npm2//:defs.bzl", "npm_link_all_packages") load("//tools:defaults2.bzl", "jasmine_test", "npm_package", "ts_project") # Copyright Google Inc. All Rights Reserved. @@ -9,6 +10,8 @@ package(default_visibility = ["//visibility:public"]) licenses(["notice"]) +npm_link_all_packages() + RUNTIME_ASSETS = glob( include = ["**/*.json"], # NB: we need to exclude the nested node_modules that is laid out by yarn workspaces @@ -29,19 +32,15 @@ ts_project( data = RUNTIME_ASSETS, module_name = "@angular-devkit/core", deps = [ + ":node_modules/ajv", + ":node_modules/ajv-formats", + ":node_modules/jsonc-parser", + ":node_modules/picomatch", + ":node_modules/source-map", + "//:node_modules/@types/jasmine", "//:node_modules/@types/node", "//:node_modules/@types/picomatch", - "//:node_modules/@types/jasmine", - "//:node_modules/ajv", - "//:node_modules/ajv-formats", - "//:node_modules/jsonc-parser", - "//:node_modules/picomatch", "//:node_modules/rxjs", - "//:node_modules/source-map", - # @node_module: typescript:es2015.proxy - # @node_module: typescript:es2015.reflect - # @node_module: typescript:es2015.symbol.wellknown - # @typings: source_map ], ) diff --git a/packages/angular_devkit/core/node/BUILD.bazel b/packages/angular_devkit/core/node/BUILD.bazel index 9a6bc4df3ad5..f9247d41161d 100644 --- a/packages/angular_devkit/core/node/BUILD.bazel +++ b/packages/angular_devkit/core/node/BUILD.bazel @@ -21,9 +21,9 @@ ts_project( module_name = "@angular-devkit/core/node", deps = [ "//:node_modules/@types/node", - "//:node_modules/chokidar", "//:node_modules/rxjs", "//packages/angular_devkit/core", + "//packages/angular_devkit/core:node_modules/chokidar", ], ) diff --git a/packages/angular_devkit/core/package.json b/packages/angular_devkit/core/package.json index a852f9459160..ae206660d818 100644 --- a/packages/angular_devkit/core/package.json +++ b/packages/angular_devkit/core/package.json @@ -32,6 +32,9 @@ "rxjs": "7.8.2", "source-map": "0.7.4" }, + "devDependencies": { + "chokidar": "4.0.3" + }, "peerDependencies": { "chokidar": "^4.0.0" }, diff --git a/packages/angular_devkit/schematics/BUILD.bazel b/packages/angular_devkit/schematics/BUILD.bazel index 5ba66ae757a1..43ea9318f7bb 100644 --- a/packages/angular_devkit/schematics/BUILD.bazel +++ b/packages/angular_devkit/schematics/BUILD.bazel @@ -28,8 +28,8 @@ ts_project( module_name = "@angular-devkit/schematics", deps = [ ":node_modules/@angular-devkit/core", + ":node_modules/jsonc-parser", "//:node_modules/@types/node", - "//:node_modules/jsonc-parser", "//:node_modules/magic-string", "//:node_modules/rxjs", ], diff --git a/packages/angular_devkit/schematics/tools/BUILD.bazel b/packages/angular_devkit/schematics/tools/BUILD.bazel index 9ade88d4cbeb..be7d3e946edf 100644 --- a/packages/angular_devkit/schematics/tools/BUILD.bazel +++ b/packages/angular_devkit/schematics/tools/BUILD.bazel @@ -21,10 +21,10 @@ ts_project( module_name = "@angular-devkit/schematics/tools", deps = [ "//:node_modules/@types/node", - "//:node_modules/jsonc-parser", "//:node_modules/rxjs", "//packages/angular_devkit/schematics", "//packages/angular_devkit/schematics:node_modules/@angular-devkit/core", + "//packages/angular_devkit/schematics:node_modules/jsonc-parser", "//packages/angular_devkit/schematics/tasks", "//packages/angular_devkit/schematics/tasks/node", ], diff --git a/packages/schematics/angular/BUILD.bazel b/packages/schematics/angular/BUILD.bazel index f2af29f36810..456810e03d66 100644 --- a/packages/schematics/angular/BUILD.bazel +++ b/packages/schematics/angular/BUILD.bazel @@ -90,9 +90,9 @@ ts_project( deps = [ ":node_modules/@angular-devkit/core", ":node_modules/@angular-devkit/schematics", + ":node_modules/jsonc-parser", "//:node_modules/@types/node", "//:node_modules/browserslist", - "//:node_modules/jsonc-parser", "//packages/schematics/angular/third_party/github.com/Microsoft/TypeScript", ], ) @@ -123,9 +123,9 @@ ts_project( ":angular", ":node_modules/@angular-devkit/core", ":node_modules/@angular-devkit/schematics", + ":node_modules/jsonc-parser", "//:node_modules/@types/jasmine", "//:node_modules/@types/node", - "//:node_modules/jsonc-parser", "//packages/schematics/angular/third_party/github.com/Microsoft/TypeScript", ], ) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ef6a68c6473f..e815d7c1df5b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -191,9 +191,6 @@ importers: ajv: specifier: 8.17.1 version: 8.17.1 - ajv-formats: - specifier: 3.0.1 - version: 3.0.1(ajv@8.17.1) ansi-colors: specifier: 4.1.3 version: 4.1.3 @@ -209,9 +206,6 @@ importers: buffer: specifier: 6.0.3 version: 6.0.3 - chokidar: - specifier: 4.0.3 - version: 4.0.3 esbuild: specifier: 0.25.1 version: 0.25.1 @@ -266,9 +260,6 @@ importers: jasmine-spec-reporter: specifier: ~7.0.0 version: 7.0.0 - jsonc-parser: - specifier: 3.3.1 - version: 3.3.1 karma: specifier: ~6.4.0 version: 6.4.4 @@ -320,9 +311,6 @@ importers: parse5-html-rewriting-stream: specifier: 7.0.0 version: 7.0.0 - picomatch: - specifier: 4.0.2 - version: 4.0.2 piscina: specifier: 4.9.0 version: 4.9.0 @@ -362,9 +350,6 @@ importers: shelljs: specifier: ^0.9.0 version: 0.9.2 - source-map: - specifier: 0.7.4 - version: 0.7.4 source-map-support: specifier: 0.5.21 version: 0.5.21 @@ -472,6 +457,9 @@ importers: istanbul-lib-instrument: specifier: 6.0.3 version: 6.0.3 + jsonc-parser: + specifier: 3.3.1 + version: 3.3.1 listr2: specifier: 8.2.5 version: 8.2.5 @@ -875,6 +863,10 @@ importers: source-map: specifier: 0.7.4 version: 0.7.4 + devDependencies: + chokidar: + specifier: 4.0.3 + version: 4.0.3 packages/angular_devkit/schematics: dependencies: @@ -6622,7 +6614,6 @@ packages: engines: {node: '>=0.6.0', teleport: '>=0.2.0'} deprecated: |- You or someone you depend on is using Q, the JavaScript Promise library that gave JavaScript developers strong feelings about promises. They can almost certainly migrate to the native JavaScript promise now. Thank you literally everyone for joining me in this bet against the odds. Be excellent to each other. - (For a CapTP with native promises, see @endo/eventual-send and @endo/captp) qjobs@1.2.0: