In some cases, we want to test the AIO app or docs examples against the locally built Angular packages (for example to ensure that the changes in a commit do not introduce a breaking change). In order to achieve this, we have the `ng-packages-installer` script that handles updating a project's `package.json` file to use the locally built Angular packages (and appropriate versions for their (dev-/peer-)dependencies). Previously, `ng-packages-installer` would only consider the locally built Angular packages (from `dist/packages-dist/`). However, given that Zone.js is now part of the `angular/angular` repo, it makes sense to also use the locally built Zone.js package (from `dist/zone.js-dist/`). Otherwise, the tests might fail for commits that update both the Angular packages (and related docs examples) and the Zone.js package. An example of such a simultaneous change (that would have broken tests) is #33838. This commit updates the script to install the locally built Zone.js package (in addition to the Angular ones). The commit ensures that the Zone.js package will always be available alongside the Angular packages (i.e. that the Zone.js package will be built by the same script that builds the Angular packages and that the `dist/zone.js-dist/` directory will be cached on CI). Note: This problem was discovered while enabling docs examples unit tests in #34374. PR Close #35858
26 lines
843 B
JavaScript
Executable File
26 lines
843 B
JavaScript
Executable File
#!/usr/bin/env node
|
|
/**
|
|
* @license
|
|
* Copyright Google Inc. All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by an MIT-style license that can be
|
|
* found in the LICENSE file at https://angular.io/license
|
|
*/
|
|
|
|
'use strict';
|
|
|
|
const {buildZoneJsPackage} = require('./zone-js-builder');
|
|
const {buildDevInfraPackage} = require('./dev-infra-builder');
|
|
const {buildTargetPackages} = require('./package-builder');
|
|
|
|
|
|
// Build the legacy (view engine) npm packages into `dist/packages-dist/`.
|
|
buildTargetPackages('dist/packages-dist', false, 'Production');
|
|
|
|
// Build the `zone.js` npm package into `dist/zone.js-dist/`, because it might be needed by other
|
|
// scripts/tests.
|
|
buildZoneJsPackage('dist/zone.js-dist');
|
|
|
|
// Build the `angular-dev-infra` npm package into `dist/packages-dist/@angular/dev-infra-private`
|
|
buildDevInfraPackage();
|