Skip to content

Commit 02825ee

Browse files
committedJan 8, 2025
feat(@schematics/angular): use @angular/build package in library generation schematic
The newly introduced `ng-packagr` builder within the `@angular/build` package is now used when generating a new library with `ng generate library`. This builder provides the same functionality as the `ng-packagr` builder found within the `@angular-devkit/build-angular` package but removes the need for projects to install `@angular-devkit/build-angular` if using the `application` builder from `@angular/build`.
1 parent 2c9d736 commit 02825ee

File tree

4 files changed

+7
-6
lines changed

4 files changed

+7
-6
lines changed
 

‎packages/schematics/angular/library/index.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ function addDependenciesToPackageJson() {
5353
},
5454
{
5555
type: NodeDependencyType.Dev,
56-
name: '@angular-devkit/build-angular',
57-
version: latestVersions.DevkitBuildAngular,
56+
name: '@angular/build',
57+
version: latestVersions.AngularBuild,
5858
},
5959
{
6060
type: NodeDependencyType.Dev,
@@ -91,7 +91,7 @@ function addLibToWorkspaceFile(
9191
prefix: options.prefix,
9292
targets: {
9393
build: {
94-
builder: Builders.NgPackagr,
94+
builder: Builders.BuildNgPackagr,
9595
defaultConfiguration: 'production',
9696
options: {
9797
project: `${projectRoot}/ng-package.json`,

‎packages/schematics/angular/library/index_spec.ts

+1-3
Original file line numberDiff line numberDiff line change
@@ -388,9 +388,7 @@ describe('Library Schematic', () => {
388388
const tree = await schematicRunner.runSchematic('library', defaultOptions, workspaceTree);
389389

390390
const workspace = JSON.parse(tree.readContent('/angular.json'));
391-
expect(workspace.projects.foo.architect.build.builder).toBe(
392-
'@angular-devkit/build-angular:ng-packagr',
393-
);
391+
expect(workspace.projects.foo.architect.build.builder).toBe('@angular/build:ng-packagr');
394392
});
395393

396394
describe('standalone=false', () => {

‎packages/schematics/angular/utility/latest-versions.ts

+2
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ const dependencies = require('./latest-versions/package.json')['dependencies'];
1313
export const latestVersions: Record<string, string> & {
1414
Angular: string;
1515
DevkitBuildAngular: string;
16+
AngularBuild: string;
1617
AngularSSR: string;
1718
} = {
1819
...dependencies,
@@ -21,5 +22,6 @@ export const latestVersions: Record<string, string> & {
2122
Angular: dependencies['@angular/core'],
2223

2324
DevkitBuildAngular: '^0.0.0-PLACEHOLDER',
25+
AngularBuild: '^0.0.0-PLACEHOLDER',
2426
AngularSSR: '^0.0.0-PLACEHOLDER',
2527
};

‎packages/schematics/angular/utility/workspace-models.ts

+1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ export enum Builders {
2828
Karma = '@angular-devkit/build-angular:karma',
2929
TsLint = '@angular-devkit/build-angular:tslint',
3030
NgPackagr = '@angular-devkit/build-angular:ng-packagr',
31+
BuildNgPackagr = '@angular/build:ng-packagr',
3132
DevServer = '@angular-devkit/build-angular:dev-server',
3233
ExtractI18n = '@angular-devkit/build-angular:extract-i18n',
3334
Protractor = '@angular-devkit/build-angular:private-protractor',

0 commit comments

Comments
 (0)
Please sign in to comment.