Skip to content

Commit 4022376

Browse files
josephperrottmatsko
authored andcommitted
build: update scripting and tooling to rely on define=angular_ivy_enabled instream of define=compile (angular#33983)
We need to migrate to using angular_ivy_enabled value to determine whether to use Ivy or ViewEngine for package building scripts and for size-tracking and symbol-extract tooling. PR Close angular#33983
1 parent 5e3f6d2 commit 4022376

File tree

10 files changed

+25
-27
lines changed

10 files changed

+25
-27
lines changed

packages/bazel/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"bazelBin": {
1616
"ngc-wrapped": {
1717
"additionalAttributes": {
18-
"configuration_env_vars": "[\"compile\"]"
18+
"configuration_env_vars": "[\"angular_ivy_enabled\"]"
1919
}
2020
}
2121
},

packages/bazel/src/ngc-wrapped/BUILD.bazel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ ts_library(
2929

3030
nodejs_binary(
3131
name = "ngc-wrapped",
32-
configuration_env_vars = ["compile"],
32+
configuration_env_vars = ["angular_ivy_enabled"],
3333
data = [
3434
":ngc_lib",
3535
"//packages/bazel/third_party/github.com/bazelbuild/bazel/src/main/protobuf:worker_protocol.proto",

scripts/build-ivy-npm-packages.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@ const {buildTargetPackages} = require('./package-builder');
55

66

77
// Build the ivy packages.
8-
buildTargetPackages('dist/packages-dist-ivy-aot', 'aot', 'Ivy AOT');
8+
buildTargetPackages('dist/packages-dist-ivy-aot', true, 'Ivy AOT');

scripts/build-packages-dist.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ const {
1313

1414

1515
// Build the legacy (view engine) npm packages into `dist/packages-dist/`.
16-
buildTargetPackages('dist/packages-dist', 'legacy', 'Production');
16+
buildTargetPackages('dist/packages-dist', false, 'Production');
1717

1818
// Build the `zone.js` npm package (into `dist/bin/packages/zone.js/npm_package/`), because it might
1919
// be needed by other scripts/tests.

scripts/package-builder.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,10 @@ module.exports = {
4747
*
4848
* @param {string} destPath Path to the output directory into which we copy the npm packages.
4949
* This path should either be absolute or relative to the project root.
50-
* @param {'legacy' | 'aot'} compileMode Either `legacy` (view engine) or `aot` (ivy).
50+
* @param {boolean} enableIvy True, if Ivy should be used.
5151
* @param {string} description Human-readable description of the build.
5252
*/
53-
function buildTargetPackages(destPath, compileMode, description) {
53+
function buildTargetPackages(destPath, enableIvy, description) {
5454
console.log('##################################');
5555
console.log(`${scriptPath}:`);
5656
console.log(' Building @angular/* npm packages');
@@ -65,7 +65,7 @@ function buildTargetPackages(destPath, compileMode, description) {
6565
const targets = exec(getTargetsCmd, true).split(/\r?\n/);
6666

6767
// Use `--config=release` so that snapshot builds get published with embedded version info.
68-
exec(`${bazelCmd} build --config=release --define=compile=${compileMode} ${targets.join(' ')}`);
68+
exec(`${bazelCmd} build --config=release --config=${enableIvy ? 'ivy' : 'view-engine'} ${targets.join(' ')}`);
6969

7070
// Create the output directory.
7171
const absDestPath = resolve(baseDir, destPath);

tools/defaults.bzl

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -230,8 +230,7 @@ def ng_benchmark(**kwargs):
230230
def nodejs_binary(data = [], **kwargs):
231231
"""Default values for nodejs_binary"""
232232
_nodejs_binary(
233-
# Pass-thru --define=compile=foo as an environment variable
234-
configuration_env_vars = ["compile"],
233+
configuration_env_vars = ["angular_ivy_enabled"],
235234
data = data + ["@npm//source-map-support"],
236235
**kwargs
237236
)
@@ -250,8 +249,7 @@ def jasmine_node_test(deps = [], **kwargs):
250249
]
251250
_jasmine_node_test(
252251
deps = deps,
253-
# Pass-thru --define=compile=foo as an environment variable
254-
configuration_env_vars = ["compile"],
252+
configuration_env_vars = ["angular_ivy_enabled"],
255253
**kwargs
256254
)
257255

tools/size-tracking/index.bzl

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ def js_size_tracking_test(
1818
golden_file,
1919
max_percentage_diff,
2020
max_byte_diff,
21-
required_compile_mode = "",
21+
angular_ivy_enabled = "False",
2222
data = [],
2323
**kwargs):
2424
all_data = data + [
@@ -32,15 +32,15 @@ def js_size_tracking_test(
3232
name = name,
3333
data = all_data,
3434
entry_point = entry_point,
35-
configuration_env_vars = ["compile"],
35+
configuration_env_vars = ["angular_ivy_enabled"],
3636
templated_args = [
3737
src,
3838
source_map,
3939
golden_file,
4040
"%d" % max_percentage_diff,
4141
"%d" % max_byte_diff,
4242
"false",
43-
required_compile_mode,
43+
angular_ivy_enabled,
4444
],
4545
**kwargs
4646
)
@@ -50,7 +50,7 @@ def js_size_tracking_test(
5050
testonly = True,
5151
data = all_data,
5252
entry_point = entry_point,
53-
configuration_env_vars = ["compile"],
54-
templated_args = [src, source_map, golden_file, "0", "0", "true", required_compile_mode],
53+
configuration_env_vars = ["angular_ivy_enabled"],
54+
templated_args = [src, source_map, golden_file, "0", "0", "true", angular_ivy_enabled],
5555
**kwargs
5656
)

tools/size-tracking/index.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,14 @@ if (require.main === module) {
2626

2727
export function main(
2828
filePath: string, sourceMapPath: string, goldenSizeMapPath: string, writeGolden: boolean,
29-
maxPercentageDiff: number, maxByteDiff: number, requiredCompileMode: string): boolean {
29+
maxPercentageDiff: number, maxByteDiff: number, requiresIvy: string): boolean {
3030
const {sizeResult} = new SizeTracker(filePath, sourceMapPath);
31-
const compileMode = process.env['compile'];
31+
const ivyEnabled = process.env['angular_ivy_enabled'] == 'True';
3232

33-
if (requiredCompileMode && compileMode !== requiredCompileMode) {
33+
if (requiresIvy && ivyEnabled) {
3434
console.error(chalk.red(
3535
`Expected the size-tracking tool to be run with: ` +
36-
`--define=compile=${requiredCompileMode}`));
36+
`--config=${requiresIvy ? 'ivy' : 'view-engine'}`));
3737
return false;
3838
}
3939

@@ -60,9 +60,9 @@ export function main(
6060
});
6161

6262
const bazelTargetName = process.env['TEST_TARGET'];
63-
const defineFlag = (compileMode !== 'legacy') ? `--define=compile=${compileMode} ` : '';
6463

6564
console.error(`\nThe golden file can be updated with the following command:`);
66-
console.error(` yarn bazel run ${defineFlag}${bazelTargetName}.accept`);
65+
console.error(
66+
` yarn bazel run --config=${ivyEnabled ? 'ivy' : 'view-engine'} ${bazelTargetName}.accept`);
6767
return false;
6868
}

tools/symbol-extractor/cli.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,11 @@ function main(argv: [string, string, string] | [string, string]): boolean {
3939
} else {
4040
passed = symbolExtractor.compareAndPrintError(goldenFilePath, goldenContent);
4141
if (!passed) {
42-
const compile = process.env['compile'];
43-
const defineFlag = (compile !== 'legacy') ? `--define=compile=${compile} ` : '';
42+
const ivyEnabled = process.env['angular_ivy_enabled'] == 'True';
4443
console.error(`TEST FAILED!`);
4544
console.error(` To update the golden file run: `);
46-
console.error(` yarn bazel run ${defineFlag}${process.env['TEST_TARGET']}.accept`);
45+
console.error(
46+
` yarn bazel run --config=${ivyEnabled ? 'ivy' : 'view-engine'} ${process.env['TEST_TARGET']}.accept`);
4747
}
4848
}
4949
return passed;

tools/symbol-extractor/index.bzl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ def js_expected_symbol_test(name, src, golden, data = [], **kwargs):
2525
data = all_data,
2626
entry_point = entry_point,
2727
templated_args = ["$(location %s)" % src, "$(location %s)" % golden],
28-
configuration_env_vars = ["compile"],
28+
configuration_env_vars = ["angular_ivy_enabled"],
2929
**kwargs
3030
)
3131

@@ -34,7 +34,7 @@ def js_expected_symbol_test(name, src, golden, data = [], **kwargs):
3434
testonly = True,
3535
data = all_data,
3636
entry_point = entry_point,
37-
configuration_env_vars = ["compile"],
37+
configuration_env_vars = ["angular_ivy_enabled"],
3838
templated_args = ["$(location %s)" % src, "$(location %s)" % golden, "--accept"],
3939
**kwargs
4040
)

0 commit comments

Comments
 (0)