Skip to content

Commit 7e5fcdd

Browse files
committed
feat(@angular/cli): automatically update angular builders when CLI is updated
Closes angular#13581
1 parent 9aefe83 commit 7e5fcdd

File tree

2 files changed

+20
-4
lines changed

2 files changed

+20
-4
lines changed

packages/angular/cli/package.json

+7-1
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,12 @@
4343
"uuid": "^3.3.2"
4444
},
4545
"ng-update": {
46-
"migrations": "@schematics/angular/migrations/migration-collection.json"
46+
"migrations": "@schematics/angular/migrations/migration-collection.json",
47+
"packageGroup": {
48+
"@angular/cli": "0.0.0",
49+
"@angular-devkit/build-angular": "0.0.0",
50+
"@angular-devkit/build-ng-packagr": "0.0.0",
51+
"@angular-devkit/build-webpack": "0.0.0"
52+
}
4753
}
4854
}

scripts/build.ts

+13-3
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,7 @@ async function _bazel(logger: logging.Logger) {
203203
// _exec('bazel', ['build', '//packages/...'], {}, logger);
204204
}
205205

206+
// tslint:disable-next-line:no-big-function
206207
export default async function(
207208
argv: { local?: boolean, snapshot?: boolean },
208209
logger: logging.Logger,
@@ -367,9 +368,18 @@ export default async function(
367368

368369
for (const depName of Object.keys(packages)) {
369370
const v = packages[depName].version;
370-
for (const depKey of ['dependencies', 'peerDependencies', 'devDependencies']) {
371-
const obj = packageJson[depKey] as JsonObject | null;
372-
if (obj && obj[depName]) {
371+
for (const depKey of ['dependencies', 'peerDependencies', 'devDependencies', 'ng-update']) {
372+
let obj: JsonObject | null;
373+
if (depKey === 'ng-update') {
374+
const updateObject = packageJson[depKey] as JsonObject | null;
375+
if (!updateObject) {
376+
continue;
377+
}
378+
obj = updateObject['packageGroup'] as JsonObject | null;
379+
} else {
380+
obj = packageJson[depKey] as JsonObject | null;
381+
}
382+
if (obj && typeof obj === 'object' && obj[depName]) {
373383
if (argv.local) {
374384
obj[depName] = packages[depName].tar;
375385
} else if (argv.snapshot) {

0 commit comments

Comments
 (0)