Skip to content

Commit 33a3172

Browse files
committed
build: introduce package deprecation metadata and integrate it into the release configuration
`ng-dev` now supports deprecations of NPM packages. See: angular/dev-infra#3463
1 parent 584f6a2 commit 33a3172

File tree

3 files changed

+15
-2
lines changed

3 files changed

+15
-2
lines changed

.monorepo.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,11 @@
6262
"@angular-devkit/architect-cli": {
6363
"name": "Architect CLI",
6464
"section": "Tooling",
65-
"snapshotRepo": "angular/angular-devkit-architect-cli-builds"
65+
"snapshotRepo": "angular/angular-devkit-architect-cli-builds",
66+
"deprecated": {
67+
"version": ">=21.2.0",
68+
"message": "The Architect CLI is now available directly via '@angular-devkit/architect'."
69+
}
6670
},
6771
"@angular-devkit/build-angular": {
6872
"name": "Build Angular",

.ng-dev/release.mjs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,11 @@ import { releasePackages } from '../scripts/packages.mts';
88
*/
99
export const release = {
1010
representativeNpmPackage: '@angular/cli',
11-
npmPackages: releasePackages.map(({ name, experimental }) => ({ name, experimental })),
11+
npmPackages: releasePackages.map(({ name, experimental, deprecated }) => ({
12+
name,
13+
experimental,
14+
deprecated,
15+
})),
1216
buildPackages: async () => {
1317
// The `performNpmReleaseBuild` function is loaded at runtime to avoid loading additional
1418
// files and dependencies unless a build is required.

scripts/packages.mts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@ import { dirname } from 'node:path';
1313
export interface PackageInfo {
1414
name: string;
1515
root: string;
16+
deprecated?: {
17+
version: string;
18+
message: string;
19+
};
1620
experimental: boolean;
1721
packageJson: Record<string, boolean | number | string | object>;
1822
}
@@ -31,6 +35,7 @@ function getPackages(): PackageInfo[] {
3135
packages.push({
3236
name: packageJson.name,
3337
experimental: !!packageJson.experimental,
38+
deprecated: monorepoData.packages[packageJson.name].deprecated,
3439
root: dirname(pkg),
3540
packageJson,
3641
});

0 commit comments

Comments
 (0)