mirror of
https://github.com/angular/angular.git
synced 2026-09-14 13:54:52 +08:00
build: replace all ng_package with new rule from rules_angular (#61862)
Replaces all `ng_package` rule with the new rule from `rules_angular`. PR Close #61862
This commit is contained in:
@@ -4,6 +4,7 @@
|
||||
.npmrc=-1406867100
|
||||
.pnpmfile.cjs=-2033668682
|
||||
adev/shared-docs/pipeline/api-gen/package.json=939673974
|
||||
integration/package.json=-239561259
|
||||
modules/package.json=-1315257891
|
||||
package.json=2073214251
|
||||
packages/animations/package.json=-678724831
|
||||
@@ -20,7 +21,7 @@ packages/platform-browser/package.json=-1163479450
|
||||
packages/router/package.json=860819913
|
||||
packages/upgrade/package.json=16347051
|
||||
packages/zone.js/package.json=-1577512523
|
||||
pnpm-lock.yaml=1222242295
|
||||
pnpm-workspace.yaml=-1489095561
|
||||
pnpm-lock.yaml=354037729
|
||||
pnpm-workspace.yaml=1973735808
|
||||
tools/bazel/rules_angular_store/package.json=-239561259
|
||||
yarn.lock=2105129652
|
||||
|
||||
@@ -42,6 +42,7 @@ modules/ssr-benchmarks/node_modules
|
||||
# For rules_js
|
||||
adev/shared-docs/pipeline/api-gen/node_modules
|
||||
modules/node_modules
|
||||
integration/node_modules
|
||||
packages/animations/node_modules
|
||||
packages/common/node_modules
|
||||
packages/localize/node_modules
|
||||
|
||||
@@ -110,6 +110,7 @@ npm_translate_lock(
|
||||
"//:package.json",
|
||||
"//:pnpm-workspace.yaml",
|
||||
"//adev/shared-docs/pipeline/api-gen:package.json",
|
||||
"//integration:package.json",
|
||||
"//modules:package.json",
|
||||
"//packages/animations:package.json",
|
||||
"//packages/common:package.json",
|
||||
|
||||
@@ -29,7 +29,7 @@ def link_local_packages(all_deps):
|
||||
pkg_name = _angular_dep_to_pkg_name(dep)
|
||||
npm_link(
|
||||
name = _npm_link_name(pkg_name),
|
||||
target = to_package_label(pkg_name),
|
||||
target = to_package_label(pkg_name) + "__adev_link",
|
||||
package_name = pkg_name,
|
||||
package_path = native.package_name(),
|
||||
tags = ["manual"],
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
load("@npm2//:defs.bzl", "npm_link_all_packages")
|
||||
|
||||
npm_link_all_packages()
|
||||
|
||||
@@ -8,13 +8,11 @@ ts_project(
|
||||
data = [
|
||||
"//packages:package_json",
|
||||
],
|
||||
interop_deps = [
|
||||
"//packages/compiler-cli",
|
||||
],
|
||||
tsconfig = "tsconfig.json",
|
||||
deps = [
|
||||
"//:node_modules/@types/node",
|
||||
"//:node_modules/typescript",
|
||||
"//integration:node_modules/@angular/compiler-cli",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
load("@aspect_rules_js//js:defs.bzl", "js_test")
|
||||
load("@bazel_skylib//rules:write_file.bzl", "write_file")
|
||||
load("//tools:defaults.bzl", "nodejs_test")
|
||||
|
||||
def module_test(name, npm_packages, skipped_entry_points = [], additional_deps = [], **kwargs):
|
||||
write_file(
|
||||
@@ -11,14 +11,13 @@ def module_test(name, npm_packages, skipped_entry_points = [], additional_deps =
|
||||
})],
|
||||
)
|
||||
|
||||
nodejs_test(
|
||||
js_test(
|
||||
name = "test",
|
||||
data = [
|
||||
":%s_config" % name,
|
||||
"//integration/ng-modules-importability:test_lib",
|
||||
"//integration/ng-modules-importability:test_lib_rjs",
|
||||
] + additional_deps + [pkg[0] for pkg in npm_packages.items()],
|
||||
entry_point = "//integration/ng-modules-importability:index.mjs",
|
||||
enable_linker = True,
|
||||
templated_args = ["$(rootpath :%s_config)" % name],
|
||||
fixed_args = ["$(rootpath :%s_config)" % name],
|
||||
**kwargs
|
||||
)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import {performCompilation} from '../../packages/compiler-cli/index.js';
|
||||
import {performCompilation} from '@angular/compiler-cli';
|
||||
import * as fs from 'fs/promises';
|
||||
import * as path from 'path';
|
||||
import * as os from 'os';
|
||||
@@ -33,6 +33,11 @@ async function main() {
|
||||
const testChunkStart = testChunkSize * testShardIndex;
|
||||
const shardExports = allExports.slice(testChunkStart, testChunkStart + testChunkSize);
|
||||
|
||||
// Sub-test directory where the first-party linked node modules end up being available.
|
||||
const testDir = path.join(tmpDir, 'test');
|
||||
await fs.mkdir(testDir);
|
||||
await fs.mkdir(path.join(testDir, 'node_modules/@angular'), {recursive: true});
|
||||
|
||||
const testFiles = shardExports.map((e) => ({
|
||||
content: `
|
||||
import {NgModule, Component} from '@angular/core';
|
||||
@@ -46,15 +51,16 @@ async function main() {
|
||||
@Component({imports: [TestModule], template: ''})
|
||||
export class TestComponent {}
|
||||
`,
|
||||
path: path.join(tmpDir, `${e.symbolName.toLowerCase()}.ts`),
|
||||
path: path.join(testDir, `${e.symbolName.toLowerCase()}.ts`),
|
||||
}));
|
||||
|
||||
// Prepare node modules to resolve e.g. `@angular/core`
|
||||
await fs.symlink(path.resolve('./node_modules'), path.join(tmpDir, 'node_modules'));
|
||||
await fs.symlink(path.resolve('./integration/node_modules'), path.join(tmpDir, 'node_modules'));
|
||||
|
||||
// Prepare node modules to resolve e.g. `@angular/cdk`. This is possible
|
||||
// as we are inside the sandbox, inside our test runfiles directory.
|
||||
for (const {packagePath, name} of packages) {
|
||||
await fs.symlink(path.resolve(packagePath), `./node_modules/${name}`);
|
||||
await fs.symlink(path.resolve(packagePath), path.join(testDir, 'node_modules', name));
|
||||
}
|
||||
|
||||
const diagnostics: ts.Diagnostic[] = [];
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
"strict": true,
|
||||
"declaration": true,
|
||||
"sourceMap": true,
|
||||
"module": "node16",
|
||||
"moduleResolution": "node16",
|
||||
"module": "esnext",
|
||||
"moduleResolution": "bundler",
|
||||
"types": ["node"]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"dependencies": {
|
||||
"@angular/compiler-cli": "workspace:*"
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -10,7 +10,7 @@ def to_package_label(package_name):
|
||||
return "//packages/misc/angular-in-memory-web-api:npm_package"
|
||||
|
||||
if package_name == "@angular/docs":
|
||||
return "//adev/shared-docs:npm_package"
|
||||
return "//adev/shared-docs:pkg"
|
||||
|
||||
return "//packages/{package_name}:npm_package".format(package_name = package_name.replace("@angular/", ""))
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "generate_api_docs", "ng_package")
|
||||
load("//tools:defaults2.bzl", "ng_project", "npm_package")
|
||||
load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "generate_api_docs")
|
||||
load("//tools:defaults2.bzl", "ng_package", "ng_project", "npm_package")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -21,10 +21,10 @@ ng_project(
|
||||
|
||||
ng_package(
|
||||
name = "npm_package",
|
||||
package_name = "@angular/animations",
|
||||
srcs = [
|
||||
"package.json",
|
||||
],
|
||||
package = "@angular/animations",
|
||||
tags = [
|
||||
"release-with-framework",
|
||||
],
|
||||
@@ -38,9 +38,9 @@ ng_package(
|
||||
"//packages/compiler/test:__pkg__",
|
||||
],
|
||||
deps = [
|
||||
":animations",
|
||||
"//packages/animations/browser",
|
||||
"//packages/animations/browser/testing",
|
||||
":animations_rjs",
|
||||
"//packages/animations/browser:browser_rjs",
|
||||
"//packages/animations/browser/testing:testing_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
load("@aspect_rules_ts//ts:defs.bzl", rules_js_tsconfig = "ts_config")
|
||||
load("//tools:defaults.bzl", "ng_package")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
load("//tools:defaults2.bzl", "ng_package", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -32,7 +31,6 @@ ts_project(
|
||||
|
||||
ng_package(
|
||||
name = "npm_package",
|
||||
package_name = "@angular/benchpress",
|
||||
srcs = [
|
||||
"README.md",
|
||||
"package.json",
|
||||
@@ -41,6 +39,7 @@ ng_package(
|
||||
"@angular/core",
|
||||
"reflect-metadata",
|
||||
],
|
||||
package = "@angular/benchpress",
|
||||
# Do not add more to this list.
|
||||
# Dependencies on the full npm_package cause long re-builds.
|
||||
visibility = [
|
||||
@@ -48,6 +47,6 @@ ng_package(
|
||||
"//modules/ssr-benchmarks:__subpackages__",
|
||||
],
|
||||
deps = [
|
||||
":benchpress",
|
||||
":benchpress_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
load("@build_bazel_rules_nodejs//:index.bzl", "generated_file_test")
|
||||
load("//packages/common/locales:index.bzl", "generate_base_currencies_file")
|
||||
load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "generate_api_docs", "ng_package")
|
||||
load("//tools:defaults2.bzl", "ng_project", "npm_package")
|
||||
load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "generate_api_docs")
|
||||
load("//tools:defaults2.bzl", "ng_package", "ng_project", "npm_package")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -43,6 +43,10 @@ ng_package(
|
||||
"package.json",
|
||||
],
|
||||
nested_packages = ["//packages/common/locales:package"],
|
||||
package = "@angular/common",
|
||||
replace_prefixes = {
|
||||
"locales/package": "locales/",
|
||||
},
|
||||
tags = [
|
||||
"release-with-framework",
|
||||
],
|
||||
@@ -62,11 +66,11 @@ ng_package(
|
||||
"//packages/language-service/test:__pkg__",
|
||||
],
|
||||
deps = [
|
||||
"//packages/common",
|
||||
"//packages/common/http",
|
||||
"//packages/common/http/testing",
|
||||
"//packages/common/testing",
|
||||
"//packages/common/upgrade",
|
||||
"//packages/common:common_rjs",
|
||||
"//packages/common/http:http_rjs",
|
||||
"//packages/common/http/testing:testing_rjs",
|
||||
"//packages/common/testing:testing_rjs",
|
||||
"//packages/common/upgrade:upgrade_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -142,6 +142,12 @@ pkg_npm(
|
||||
],
|
||||
)
|
||||
|
||||
# TODO(rules_js migration): Remove when adev uses pnpm workspaces.
|
||||
alias(
|
||||
name = "npm_package__adev_link",
|
||||
actual = ":npm_package",
|
||||
)
|
||||
|
||||
# TODO(devversion): Temporary early `npm_package` for making compiler-cli usable in `rules_angular`.
|
||||
# Long-term, `pkg_npm` will be migrated to `npm_package` in general.
|
||||
npm_package(
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
load("//tools:defaults.bzl", "ng_package")
|
||||
load("//tools:defaults2.bzl", "ts_project")
|
||||
load("//tools:defaults2.bzl", "ng_package", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -19,7 +18,8 @@ ng_package(
|
||||
srcs = [
|
||||
"package.json",
|
||||
],
|
||||
package = "@angular/common",
|
||||
deps = [
|
||||
":fake_common",
|
||||
":fake_common_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
load("//tools:defaults.bzl", "ng_package", "tsec_test")
|
||||
load("//tools:defaults2.bzl", "npm_package", "ts_project")
|
||||
load("//tools:defaults.bzl", "tsec_test")
|
||||
load("//tools:defaults2.bzl", "ng_package", "npm_package", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -24,6 +24,7 @@ ng_package(
|
||||
srcs = [
|
||||
"package.json",
|
||||
],
|
||||
package = "@angular/compiler",
|
||||
side_effect_entry_points = [
|
||||
"@angular/compiler",
|
||||
],
|
||||
@@ -43,7 +44,7 @@ ng_package(
|
||||
"@npm//@angular/build-tooling/shared-scripts:__subpackages__",
|
||||
],
|
||||
deps = [
|
||||
":compiler",
|
||||
":compiler_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
load("@build_bazel_rules_nodejs//:index.bzl", "generated_file_test")
|
||||
load("//adev/shared-docs/pipeline/api-gen:generate_api_docs.bzl", "generate_api_docs")
|
||||
load("//packages/common/locales:index.bzl", "generate_base_locale_file")
|
||||
load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "ng_package", "tsec_test")
|
||||
load("//tools:defaults2.bzl", "ng_project", "npm_package", "ts_config")
|
||||
load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "tsec_test")
|
||||
load("//tools:defaults2.bzl", "ng_package", "ng_project", "npm_package", "ts_config")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -68,7 +68,6 @@ tsec_test(
|
||||
|
||||
ng_package(
|
||||
name = "npm_package",
|
||||
package_name = "@angular/core",
|
||||
srcs = [
|
||||
"package.json",
|
||||
":event_dispatch_contract_binary",
|
||||
@@ -76,6 +75,7 @@ ng_package(
|
||||
nested_packages = [
|
||||
"//packages/core/schematics:npm_package",
|
||||
],
|
||||
package = "@angular/core",
|
||||
tags = [
|
||||
"release-with-framework",
|
||||
],
|
||||
@@ -95,12 +95,12 @@ ng_package(
|
||||
"//packages/language-service/test:__pkg__",
|
||||
],
|
||||
deps = [
|
||||
":core",
|
||||
"//packages/core/primitives/di",
|
||||
"//packages/core/primitives/event-dispatch",
|
||||
"//packages/core/primitives/signals",
|
||||
"//packages/core/rxjs-interop",
|
||||
"//packages/core/testing",
|
||||
":core_rjs",
|
||||
"//packages/core/primitives/di:di_rjs",
|
||||
"//packages/core/primitives/event-dispatch:event-dispatch_rjs",
|
||||
"//packages/core/primitives/signals:signals_rjs",
|
||||
"//packages/core/rxjs-interop:rxjs-interop_rjs",
|
||||
"//packages/core/testing:testing_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
load("//tools:defaults.bzl", "api_golden_test_npm_package", "generate_api_docs", "ng_package")
|
||||
load("//tools:defaults2.bzl", "ng_project")
|
||||
load("//tools:defaults.bzl", "api_golden_test_npm_package", "generate_api_docs")
|
||||
load("//tools:defaults2.bzl", "ng_package", "ng_project")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -22,8 +22,8 @@ ng_project(
|
||||
|
||||
ng_package(
|
||||
name = "npm_package",
|
||||
package_name = "@angular/elements",
|
||||
srcs = ["package.json"],
|
||||
package = "@angular/elements",
|
||||
tags = [
|
||||
"release-with-framework",
|
||||
],
|
||||
@@ -34,7 +34,7 @@ ng_package(
|
||||
"//modules/ssr-benchmarks:__subpackages__",
|
||||
],
|
||||
deps = [
|
||||
":elements",
|
||||
":elements_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "generate_api_docs", "ng_package")
|
||||
load("//tools:defaults2.bzl", "ng_project", "npm_package")
|
||||
load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "generate_api_docs")
|
||||
load("//tools:defaults2.bzl", "ng_package", "ng_project", "npm_package")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -22,8 +22,8 @@ ng_project(
|
||||
|
||||
ng_package(
|
||||
name = "npm_package",
|
||||
package_name = "@angular/forms",
|
||||
srcs = ["package.json"],
|
||||
package = "@angular/forms",
|
||||
tags = [
|
||||
"release-with-framework",
|
||||
],
|
||||
@@ -38,7 +38,7 @@ ng_package(
|
||||
"//packages/language-service/test:__pkg__",
|
||||
],
|
||||
deps = [
|
||||
":forms",
|
||||
":forms_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
load("//tools:defaults.bzl", "api_golden_test_npm_package", "generate_api_docs", "ng_package")
|
||||
load("//tools:defaults2.bzl", "npm_package", "ts_project")
|
||||
load("//tools:defaults.bzl", "api_golden_test_npm_package", "generate_api_docs")
|
||||
load("//tools:defaults2.bzl", "ng_package", "npm_package", "ts_project")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -20,7 +20,6 @@ ts_project(
|
||||
|
||||
ng_package(
|
||||
name = "npm_package",
|
||||
package_name = "@angular/localize",
|
||||
srcs = [
|
||||
"package.json",
|
||||
],
|
||||
@@ -28,6 +27,10 @@ ng_package(
|
||||
"//packages/localize/schematics:npm_package",
|
||||
"//packages/localize/tools:npm_package",
|
||||
],
|
||||
package = "@angular/localize",
|
||||
replace_prefixes = {
|
||||
"tools/npm_package": "tools",
|
||||
},
|
||||
side_effect_entry_points = [
|
||||
"@angular/localize/init",
|
||||
],
|
||||
@@ -35,8 +38,8 @@ ng_package(
|
||||
"release-with-framework",
|
||||
],
|
||||
deps = [
|
||||
":localize",
|
||||
"//packages/localize/init",
|
||||
":localize_rjs",
|
||||
"//packages/localize/init:init_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
load("//tools:defaults.bzl", "ng_package")
|
||||
load("//tools:defaults2.bzl", "ng_project")
|
||||
load("//tools:defaults2.bzl", "ng_package", "ng_project")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -25,7 +24,8 @@ ng_project(
|
||||
ng_package(
|
||||
name = "npm_package",
|
||||
srcs = ["package.json"],
|
||||
package = "angular-in-memory-web-api",
|
||||
deps = [
|
||||
":angular-in-memory-web-api",
|
||||
":angular-in-memory-web-api_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
load("//tools:defaults.bzl", "api_golden_test_npm_package", "generate_api_docs", "ng_package")
|
||||
load("//tools:defaults2.bzl", "ng_project", "npm_package")
|
||||
load("//tools:defaults.bzl", "api_golden_test_npm_package", "generate_api_docs")
|
||||
load("//tools:defaults2.bzl", "ng_package", "ng_project", "npm_package")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -27,6 +27,7 @@ ng_package(
|
||||
srcs = [
|
||||
"package.json",
|
||||
],
|
||||
package = "@angular/platform-browser-dynamic",
|
||||
side_effect_entry_points = [
|
||||
"@angular/platform-browser-dynamic",
|
||||
"@angular/platform-browser-dynamic/testing",
|
||||
@@ -43,8 +44,8 @@ ng_package(
|
||||
"//packages/compiler-cli/integrationtest:__pkg__",
|
||||
],
|
||||
deps = [
|
||||
":platform-browser-dynamic",
|
||||
"//packages/platform-browser-dynamic/testing",
|
||||
":platform-browser-dynamic_rjs",
|
||||
"//packages/platform-browser-dynamic/testing:testing_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "generate_api_docs", "ng_package", "tsec_test")
|
||||
load("//tools:defaults2.bzl", "ng_project", "npm_package")
|
||||
load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "generate_api_docs", "tsec_test")
|
||||
load("//tools:defaults2.bzl", "ng_package", "ng_project", "npm_package")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -35,6 +35,7 @@ ng_package(
|
||||
srcs = [
|
||||
"package.json",
|
||||
],
|
||||
package = "@angular/platform-browser",
|
||||
tags = [
|
||||
"release-with-framework",
|
||||
],
|
||||
@@ -48,10 +49,10 @@ ng_package(
|
||||
"//packages/compiler-cli/test:__pkg__",
|
||||
],
|
||||
deps = [
|
||||
":platform-browser",
|
||||
"//packages/platform-browser/animations",
|
||||
"//packages/platform-browser/animations/async",
|
||||
"//packages/platform-browser/testing",
|
||||
":platform-browser_rjs",
|
||||
"//packages/platform-browser/animations:animations_rjs",
|
||||
"//packages/platform-browser/animations/async:async_rjs",
|
||||
"//packages/platform-browser/testing:testing_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
load("@build_bazel_rules_nodejs//:index.bzl", "js_library")
|
||||
load("//tools:defaults.bzl", "api_golden_test_npm_package", "esbuild", "generate_api_docs", "ng_package", "tsec_test")
|
||||
load("//tools:defaults2.bzl", "ng_project")
|
||||
load("//tools:defaults.bzl", "api_golden_test_npm_package", "esbuild", "generate_api_docs", "tsec_test")
|
||||
load("//tools:defaults2.bzl", "ng_package", "ng_project")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -59,6 +59,7 @@ ng_package(
|
||||
externals = [
|
||||
"xhr2",
|
||||
],
|
||||
package = "@angular/platform-server",
|
||||
side_effect_entry_points = [
|
||||
"@angular/platform-server/init",
|
||||
],
|
||||
@@ -74,9 +75,9 @@ ng_package(
|
||||
"//packages/compiler-cli/integrationtest:__pkg__",
|
||||
],
|
||||
deps = [
|
||||
":platform-server",
|
||||
"//packages/platform-server/init",
|
||||
"//packages/platform-server/testing",
|
||||
":platform-server_rjs",
|
||||
"//packages/platform-server/init:init_rjs",
|
||||
"//packages/platform-server/testing:testing_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -16,6 +16,8 @@ ng_project(
|
||||
interop_deps = [
|
||||
"//packages/platform-server:bundled_domino_lib",
|
||||
],
|
||||
# TODO(rules_js migration): testonly targets do not auto-compute a module name right now.
|
||||
module_name = "@angular/private/testing",
|
||||
deps = [
|
||||
"//packages/common:common_rjs",
|
||||
"//packages/core:core_rjs",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "generate_api_docs", "ng_package")
|
||||
load("//tools:defaults2.bzl", "ng_project", "npm_package")
|
||||
load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "generate_api_docs")
|
||||
load("//tools:defaults2.bzl", "ng_package", "ng_project", "npm_package")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -23,10 +23,10 @@ ng_project(
|
||||
|
||||
ng_package(
|
||||
name = "npm_package",
|
||||
package_name = "@angular/router",
|
||||
srcs = [
|
||||
"package.json",
|
||||
],
|
||||
package = "@angular/router",
|
||||
tags = [
|
||||
"release-with-framework",
|
||||
],
|
||||
@@ -42,9 +42,9 @@ ng_package(
|
||||
"//packages/compiler-cli/test/transformers:__pkg__",
|
||||
],
|
||||
deps = [
|
||||
":router",
|
||||
"//packages/router/testing",
|
||||
"//packages/router/upgrade",
|
||||
":router_rjs",
|
||||
"//packages/router/testing:testing_rjs",
|
||||
"//packages/router/upgrade:upgrade_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
load("@aspect_rules_ts//ts:defs.bzl", rules_js_tsconfig = "ts_config")
|
||||
load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "generate_api_docs", "ng_package")
|
||||
load("//tools:defaults2.bzl", "ng_project")
|
||||
load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "generate_api_docs")
|
||||
load("//tools:defaults2.bzl", "ng_package", "ng_project")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -47,7 +47,6 @@ genrule(
|
||||
|
||||
ng_package(
|
||||
name = "npm_package",
|
||||
package_name = "@angular/service-worker",
|
||||
srcs = [
|
||||
"package.json",
|
||||
"safety-worker.js",
|
||||
@@ -55,6 +54,7 @@ ng_package(
|
||||
":ngsw_worker_renamed",
|
||||
"//packages/service-worker/config:schema.json",
|
||||
],
|
||||
package = "@angular/service-worker",
|
||||
tags = [
|
||||
"release-with-framework",
|
||||
],
|
||||
@@ -65,8 +65,8 @@ ng_package(
|
||||
"//modules/ssr-benchmarks:__subpackages__",
|
||||
],
|
||||
deps = [
|
||||
":service-worker",
|
||||
"//packages/service-worker/config",
|
||||
":service-worker_rjs",
|
||||
"//packages/service-worker/config:config_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
load("//tools:defaults.bzl", "api_golden_test_npm_package", "generate_api_docs", "ng_package")
|
||||
load("//tools:defaults2.bzl", "ng_project", "npm_package")
|
||||
load("//tools:defaults.bzl", "api_golden_test_npm_package", "generate_api_docs")
|
||||
load("//tools:defaults2.bzl", "ng_package", "ng_project", "npm_package")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
@@ -23,10 +23,10 @@ ng_project(
|
||||
|
||||
ng_package(
|
||||
name = "npm_package",
|
||||
package_name = "@angular/upgrade",
|
||||
srcs = [
|
||||
"package.json",
|
||||
],
|
||||
package = "@angular/upgrade",
|
||||
tags = [
|
||||
"release-with-framework",
|
||||
],
|
||||
@@ -37,9 +37,9 @@ ng_package(
|
||||
"//modules/ssr-benchmarks:__subpackages__",
|
||||
],
|
||||
deps = [
|
||||
":upgrade",
|
||||
"//packages/upgrade/static",
|
||||
"//packages/upgrade/static/testing",
|
||||
":upgrade_rjs",
|
||||
"//packages/upgrade/static:static_rjs",
|
||||
"//packages/upgrade/static/testing:testing_rjs",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
Generated
+6
@@ -568,6 +568,12 @@ importers:
|
||||
specifier: workspace:*
|
||||
version: link:../../../../packages/compiler-cli
|
||||
|
||||
integration:
|
||||
dependencies:
|
||||
'@angular/compiler-cli':
|
||||
specifier: workspace:*
|
||||
version: link:../packages/compiler-cli
|
||||
|
||||
modules:
|
||||
dependencies:
|
||||
'@angular/animations':
|
||||
|
||||
@@ -2,6 +2,7 @@ packages:
|
||||
- .
|
||||
- adev/shared-docs/pipeline/api-gen
|
||||
- modules
|
||||
- integration
|
||||
- packages/animations/
|
||||
- packages/common/
|
||||
- packages/compiler-cli/
|
||||
|
||||
@@ -0,0 +1,106 @@
|
||||
load("@rules_angular//src/ng_package:index.bzl", _ng_package = "ng_package")
|
||||
load("@rules_pkg//:pkg.bzl", "pkg_tar")
|
||||
load("//tools/bazel:ng_package_link_interop.bzl", "ng_package_link_interop")
|
||||
|
||||
# Packages which are versioned together on npm
|
||||
ANGULAR_SCOPED_PACKAGES = ["@angular/%s" % p for p in [
|
||||
# core should be the first package because it's the main package in the group
|
||||
# this is significant for Angular CLI and "ng update" specifically, @angular/core
|
||||
# is considered the identifier of the group by these tools.
|
||||
"core",
|
||||
"bazel",
|
||||
"common",
|
||||
"compiler",
|
||||
"compiler-cli",
|
||||
"animations",
|
||||
"elements",
|
||||
"platform-browser",
|
||||
"platform-browser-dynamic",
|
||||
"forms",
|
||||
"platform-server",
|
||||
"upgrade",
|
||||
"router",
|
||||
"language-service",
|
||||
"localize",
|
||||
"service-worker",
|
||||
]]
|
||||
|
||||
PKG_GROUP_REPLACEMENTS = {
|
||||
"\"NG_UPDATE_PACKAGE_GROUP\"": """[
|
||||
%s
|
||||
]""" % ",\n ".join(["\"%s\"" % s for s in ANGULAR_SCOPED_PACKAGES]),
|
||||
}
|
||||
|
||||
def ng_package(name, readme_md = None, license_banner = None, license = None, deps = [], **kwargs):
|
||||
if not readme_md:
|
||||
readme_md = "//packages:README.md"
|
||||
if not license_banner:
|
||||
license_banner = "//packages:license-banner.txt"
|
||||
if not license:
|
||||
license = "//:LICENSE"
|
||||
visibility = kwargs.pop("visibility", None)
|
||||
tags = kwargs.pop("tags", [])
|
||||
|
||||
common_substitutions = dict(kwargs.pop("substitutions", {}), **PKG_GROUP_REPLACEMENTS)
|
||||
substitutions = dict(common_substitutions, **{
|
||||
"0.0.0-PLACEHOLDER": "0.0.0",
|
||||
})
|
||||
stamped_substitutions = dict(common_substitutions, **{
|
||||
"0.0.0-PLACEHOLDER": "{{STABLE_PROJECT_VERSION}}",
|
||||
})
|
||||
|
||||
rollup_runtime_deps = [
|
||||
"//:node_modules/@rollup/plugin-commonjs",
|
||||
"//:node_modules/@rollup/plugin-node-resolve",
|
||||
"//:node_modules/magic-string",
|
||||
"//:node_modules/rollup-plugin-dts",
|
||||
"//:node_modules/rollup-plugin-sourcemaps2",
|
||||
]
|
||||
|
||||
_ng_package(
|
||||
name = name,
|
||||
deps = deps,
|
||||
readme_md = readme_md,
|
||||
license = license,
|
||||
rollup_runtime_deps = rollup_runtime_deps,
|
||||
license_banner = license_banner,
|
||||
substitutions = select({
|
||||
"//:stamp": stamped_substitutions,
|
||||
"//conditions:default": substitutions,
|
||||
}),
|
||||
visibility = visibility,
|
||||
tags = tags,
|
||||
**kwargs
|
||||
)
|
||||
|
||||
_ng_package(
|
||||
name = "%s_nosub" % name,
|
||||
deps = deps,
|
||||
readme_md = readme_md,
|
||||
license = license,
|
||||
rollup_runtime_deps = rollup_runtime_deps,
|
||||
license_banner = license_banner,
|
||||
substitutions = common_substitutions,
|
||||
visibility = visibility,
|
||||
tags = ["manual"],
|
||||
**kwargs
|
||||
)
|
||||
|
||||
pkg_tar(
|
||||
name = name + "_archive",
|
||||
srcs = [":%s" % name],
|
||||
extension = "tar.gz",
|
||||
strip_prefix = "./%s" % name,
|
||||
# should not be built unless it is a dependency of another rule
|
||||
tags = ["manual"],
|
||||
visibility = visibility,
|
||||
)
|
||||
|
||||
# TODO(rules_js migration): Remove when adev uses pnpm workspaces.
|
||||
ng_package_link_interop(
|
||||
name = "%s__adev_link" % name,
|
||||
package = ":%s" % name,
|
||||
package_name = kwargs.get("package"),
|
||||
package_path = "adev",
|
||||
tags = ["manual"],
|
||||
)
|
||||
@@ -0,0 +1,23 @@
|
||||
load("@aspect_rules_js//npm:providers.bzl", "NpmPackageInfo")
|
||||
load("@build_bazel_rules_nodejs//:providers.bzl", "LinkablePackageInfo")
|
||||
|
||||
def _ng_package_link_interop_impl(ctx):
|
||||
return [
|
||||
ctx.attr.package[DefaultInfo],
|
||||
ctx.attr.package[NpmPackageInfo],
|
||||
LinkablePackageInfo(
|
||||
package_name = ctx.attr.package_name,
|
||||
package_path = ctx.attr.package_path,
|
||||
path = ctx.files.package[0].path,
|
||||
files = ctx.attr.package[DefaultInfo].files,
|
||||
),
|
||||
]
|
||||
|
||||
ng_package_link_interop = rule(
|
||||
implementation = _ng_package_link_interop_impl,
|
||||
attrs = {
|
||||
"package": attr.label(mandatory = True),
|
||||
"package_name": attr.string(mandatory = True),
|
||||
"package_path": attr.string(mandatory = True),
|
||||
},
|
||||
)
|
||||
@@ -17,15 +17,11 @@ load("@npm//@bazel/terser:index.bzl", "terser_minified")
|
||||
load("@npm//typescript:index.bzl", "tsc")
|
||||
load("@rules_pkg//:pkg.bzl", "pkg_tar")
|
||||
load("//adev/shared-docs/pipeline/api-gen:generate_api_docs.bzl", _generate_api_docs = "generate_api_docs")
|
||||
load("//packages/bazel:index.bzl", _ng_package = "ng_package")
|
||||
load("//tools/bazel:module_name.bzl", "compute_module_name")
|
||||
load("//tools/bazel:tsec.bzl", _tsec_test = "tsec_test")
|
||||
load("//tools/esm-interop:index.bzl", "enable_esm_node_module_loader", _nodejs_binary = "nodejs_binary", _nodejs_test = "nodejs_test")
|
||||
|
||||
_DEFAULT_TSCONFIG_TEST = "//packages:tsconfig-test"
|
||||
_INTERNAL_NG_PACKAGE_PACKAGER = "//packages/bazel/src/ng_package:packager"
|
||||
_INTERNAL_NG_PACKAGE_DEFAULT_ROLLUP_CONFIG_TMPL = "//packages/bazel/src/ng_package:rollup.config.js"
|
||||
_INTERNAL_NG_PACKAGE_DEFAULT_ROLLUP = "//packages/bazel/src/ng_package/rollup"
|
||||
|
||||
esbuild_config = _esbuild_config
|
||||
esbuild_esm_bundle = _esbuild_esm_bundle
|
||||
@@ -116,70 +112,6 @@ def ts_library(
|
||||
**kwargs
|
||||
)
|
||||
|
||||
def ng_package(name, readme_md = None, license_banner = None, license = None, deps = [], **kwargs):
|
||||
"""Default values for ng_package"""
|
||||
if not readme_md:
|
||||
readme_md = "//packages:README.md"
|
||||
if not license_banner:
|
||||
license_banner = "//packages:license-banner.txt"
|
||||
if not license:
|
||||
license = "//:LICENSE"
|
||||
visibility = kwargs.pop("visibility", None)
|
||||
tags = kwargs.pop("tags", [])
|
||||
|
||||
common_substitutions = dict(kwargs.pop("substitutions", {}), **PKG_GROUP_REPLACEMENTS)
|
||||
substitutions = dict(common_substitutions, **{
|
||||
"0.0.0-PLACEHOLDER": "0.0.0",
|
||||
})
|
||||
stamped_substitutions = dict(common_substitutions, **{
|
||||
"0.0.0-PLACEHOLDER": "{STABLE_PROJECT_VERSION}",
|
||||
})
|
||||
|
||||
_ng_package(
|
||||
name = name,
|
||||
deps = deps,
|
||||
validate = True,
|
||||
readme_md = readme_md,
|
||||
license = license,
|
||||
license_banner = license_banner,
|
||||
substitutions = select({
|
||||
"//:stamp": stamped_substitutions,
|
||||
"//conditions:default": substitutions,
|
||||
}),
|
||||
ng_packager = _INTERNAL_NG_PACKAGE_PACKAGER,
|
||||
rollup_config_tmpl = _INTERNAL_NG_PACKAGE_DEFAULT_ROLLUP_CONFIG_TMPL,
|
||||
rollup = _INTERNAL_NG_PACKAGE_DEFAULT_ROLLUP,
|
||||
visibility = visibility,
|
||||
tags = tags,
|
||||
**kwargs
|
||||
)
|
||||
|
||||
_ng_package(
|
||||
name = "%s_nosub" % name,
|
||||
deps = deps,
|
||||
validate = True,
|
||||
readme_md = readme_md,
|
||||
license = license,
|
||||
license_banner = license_banner,
|
||||
substitutions = common_substitutions,
|
||||
ng_packager = _INTERNAL_NG_PACKAGE_PACKAGER,
|
||||
rollup_config_tmpl = _INTERNAL_NG_PACKAGE_DEFAULT_ROLLUP_CONFIG_TMPL,
|
||||
rollup = _INTERNAL_NG_PACKAGE_DEFAULT_ROLLUP,
|
||||
visibility = visibility,
|
||||
tags = ["manual"],
|
||||
**kwargs
|
||||
)
|
||||
|
||||
pkg_tar(
|
||||
name = name + "_archive",
|
||||
srcs = [":%s" % name],
|
||||
extension = "tar.gz",
|
||||
strip_prefix = "./%s" % name,
|
||||
# should not be built unless it is a dependency of another rule
|
||||
tags = ["manual"],
|
||||
visibility = visibility,
|
||||
)
|
||||
|
||||
def pkg_npm(name, deps = [], validate = True, **kwargs):
|
||||
"""Default values for pkg_npm"""
|
||||
visibility = kwargs.pop("visibility", None)
|
||||
|
||||
+2
-14
@@ -1,13 +1,14 @@
|
||||
load("@aspect_rules_jasmine//jasmine:defs.bzl", _jasmine_test = "jasmine_test")
|
||||
load("@aspect_rules_js//npm:defs.bzl", _npm_package = "npm_package")
|
||||
load("@aspect_rules_ts//ts:defs.bzl", _ts_config = "ts_config")
|
||||
load("@rules_angular//src/ng_package:index.bzl", _ng_package = "ng_package")
|
||||
load("@rules_angular//src/ng_project:index.bzl", _ng_project = "ng_project")
|
||||
load("//tools/bazel:module_name.bzl", "compute_module_name")
|
||||
load("//tools/bazel:ng_package.bzl", _ng_package = "ng_package")
|
||||
load("//tools/bazel:ts_project_interop.bzl", _ts_project = "ts_project")
|
||||
|
||||
npm_package = _npm_package
|
||||
ts_config = _ts_config
|
||||
ng_package = _ng_package
|
||||
|
||||
def _determine_tsconfig(testonly):
|
||||
if native.package_name().startswith("packages/compiler-cli"):
|
||||
@@ -106,16 +107,3 @@ def jasmine_test(name, data = [], args = [], **kwargs):
|
||||
],
|
||||
**kwargs
|
||||
)
|
||||
|
||||
def ng_package(deps = [], **kwargs):
|
||||
_ng_package(
|
||||
deps = deps,
|
||||
rollup_runtime_deps = [
|
||||
"//:node_modules/@rollup/plugin-commonjs",
|
||||
"//:node_modules/@rollup/plugin-node-resolve",
|
||||
"//:node_modules/magic-string",
|
||||
"//:node_modules/rollup-plugin-dts",
|
||||
"//:node_modules/rollup-plugin-sourcemaps2",
|
||||
],
|
||||
**kwargs
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user