Skip to content

Commit 19b6526

Browse files
committed
refactor(@angular/build): eliminate circular dependencies in bundler context
Relocate foundational bundler file types and creation utilities to a new, standalone module to resolve multiple recursive dependencies centered around the utilities implementation. By decoupling the core output file definitions from the heavier build contexts, the overall module graph is streamlined, ensuring cleaner isolation and enabling the removal of several longstanding circular paths from the package golden file.
1 parent b2f7a03 commit 19b6526

24 files changed

Lines changed: 199 additions & 212 deletions
Lines changed: 1 addition & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1 @@
1-
[
2-
[
3-
"packages/angular/build/src/tools/esbuild/angular/component-stylesheets.ts",
4-
"packages/angular/build/src/tools/esbuild/bundler-context.ts",
5-
"packages/angular/build/src/tools/esbuild/utils.ts",
6-
"packages/angular/build/src/tools/esbuild/bundler-execution-result.ts"
7-
],
8-
[
9-
"packages/angular/build/src/tools/esbuild/bundler-context.ts",
10-
"packages/angular/build/src/tools/esbuild/utils.ts"
11-
],
12-
[
13-
"packages/angular/build/src/tools/esbuild/bundler-context.ts",
14-
"packages/angular/build/src/tools/esbuild/utils.ts",
15-
"packages/angular/build/src/tools/esbuild/bundler-execution-result.ts"
16-
],
17-
[
18-
"packages/angular/build/src/tools/esbuild/bundler-context.ts",
19-
"packages/angular/build/src/tools/esbuild/utils.ts",
20-
"packages/angular/build/src/utils/server-rendering/manifest.ts"
21-
],
22-
[
23-
"packages/angular/build/src/tools/esbuild/bundler-execution-result.ts",
24-
"packages/angular/build/src/tools/esbuild/utils.ts"
25-
],
26-
[
27-
"packages/angular/build/src/tools/esbuild/utils.ts",
28-
"packages/angular/build/src/utils/server-rendering/manifest.ts"
29-
]
30-
]
1+
[]

packages/angular/build/src/builders/application/build-action.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
import { BuilderContext } from '@angular-devkit/architect';
1010
import { existsSync } from 'node:fs';
1111
import path from 'node:path';
12-
import { BuildOutputFile, BuildOutputFileType } from '../../tools/esbuild/bundler-context';
12+
import { BuildOutputFile, BuildOutputFileType } from '../../tools/esbuild/bundler-files';
1313
import { ExecutionResult, RebuildState } from '../../tools/esbuild/bundler-execution-result';
1414
import { shutdownSassWorkerPool } from '../../tools/esbuild/stylesheets/sass-language';
1515
import { logMessages, withNoProgress, withSpinner } from '../../tools/esbuild/utils';

packages/angular/build/src/builders/application/chunk-optimizer.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,14 @@ import type { Message, Metafile } from 'esbuild';
2121
import assert from 'node:assert';
2222
import { type Plugin, rollup } from 'rollup';
2323
import {
24-
BuildOutputFile,
25-
BuildOutputFileType,
2624
BundleContextResult,
27-
InitialFileRecord,
2825
} from '../../tools/esbuild/bundler-context';
29-
import { createOutputFile } from '../../tools/esbuild/utils';
26+
import {
27+
type BuildOutputFile,
28+
BuildOutputFileType,
29+
createOutputFile,
30+
type InitialFileRecord,
31+
} from '../../tools/esbuild/bundler-files';
3032
import { useRolldownChunks } from '../../utils/environment-options';
3133
import { assertIsError } from '../../utils/error';
3234
import { toPosixPath } from '../../utils/path';

packages/angular/build/src/builders/application/execute-build.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ import { createAngularCompilation } from '../../tools/angular/compilation';
1111
import { SourceFileCache } from '../../tools/esbuild/angular/source-file-cache';
1212
import { generateBudgetStats } from '../../tools/esbuild/budget-stats';
1313
import {
14-
BuildOutputFileType,
1514
BundleContextResult,
1615
BundlerContext,
1716
} from '../../tools/esbuild/bundler-context';
17+
import { BuildOutputFileType } from '../../tools/esbuild/bundler-files';
1818
import { ExecutionResult, RebuildState } from '../../tools/esbuild/bundler-execution-result';
1919
import { checkCommonJSModules } from '../../tools/esbuild/commonjs-checker';
2020
import { extractLicenses } from '../../tools/esbuild/license-extractor';

packages/angular/build/src/builders/application/execute-post-bundle.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,16 @@
99
import type { Metafile } from 'esbuild';
1010
import assert from 'node:assert';
1111
import {
12-
BuildOutputFile,
12+
type BuildOutputFile,
1313
BuildOutputFileType,
14-
InitialFileRecord,
15-
} from '../../tools/esbuild/bundler-context';
14+
createOutputFile,
15+
type InitialFileRecord,
16+
} from '../../tools/esbuild/bundler-files';
1617
import {
17-
BuildOutputAsset,
18-
PrerenderedRoutesRecord,
18+
type BuildOutputAsset,
19+
type PrerenderedRoutesRecord,
1920
} from '../../tools/esbuild/bundler-execution-result';
2021
import { generateIndexHtml } from '../../tools/esbuild/index-html-generator';
21-
import { createOutputFile } from '../../tools/esbuild/utils';
2222
import { maxWorkers } from '../../utils/environment-options';
2323
import {
2424
SERVER_APP_MANIFEST_FILENAME,

packages/angular/build/src/builders/application/i18n.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
import { BuilderContext } from '@angular-devkit/architect';
1010
import type { Metafile } from 'esbuild';
1111
import { join } from 'node:path';
12-
import { BuildOutputFileType, InitialFileRecord } from '../../tools/esbuild/bundler-context';
12+
import { BuildOutputFileType, InitialFileRecord } from '../../tools/esbuild/bundler-files';
1313
import {
1414
ExecutionResult,
1515
PrerenderedRoutesRecord,

packages/angular/build/src/builders/application/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import { Builder, BuilderContext, BuilderOutput, createBuilder } from '@angular-
1010
import assert from 'node:assert';
1111
import fs from 'node:fs/promises';
1212
import path from 'node:path';
13-
import { BuildOutputFileType } from '../../tools/esbuild/bundler-context';
13+
import { BuildOutputFileType } from '../../tools/esbuild/bundler-files';
1414
import { createJsonBuildManifest, emitFilesToDisk } from '../../tools/esbuild/utils';
1515
import { colors as ansiColors } from '../../utils/color';
1616
import { deleteOutputDir } from '../../utils/delete-output-dir';

packages/angular/build/src/builders/application/results.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
* found in the LICENSE file at https://angular.dev/license
77
*/
88

9-
import { BuildOutputFileType } from '../../tools/esbuild/bundler-context';
9+
import { BuildOutputFileType } from '../../tools/esbuild/bundler-files';
1010

1111
export enum ResultKind {
1212
Failure,

packages/angular/build/src/builders/dev-server/internal.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
* found in the LICENSE file at https://angular.dev/license
77
*/
88

9-
export { type BuildOutputFile, BuildOutputFileType } from '../../tools/esbuild/bundler-context';
9+
export { type BuildOutputFile, BuildOutputFileType } from '../../tools/esbuild/bundler-files';
1010
export { createRxjsEsmResolutionPlugin } from '../../tools/esbuild/rxjs-esm-resolution-plugin';
1111
export { JavaScriptTransformer } from '../../tools/esbuild/javascript-transformer';
1212
export { getFeatureSupport, isZonelessApp } from '../../tools/esbuild/utils';

packages/angular/build/src/builders/karma/utils.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
import type { BuilderContext } from '@angular-devkit/architect';
1010
import { createRequire } from 'node:module';
11-
import { BuildOutputFileType } from '../../tools/esbuild/bundler-context';
11+
import { BuildOutputFileType } from '../../tools/esbuild/bundler-files';
1212
import { getProjectRootPaths } from '../../utils/project-metadata';
1313
import { findTests, getTestEntrypoints } from './find-tests';
1414
import type { NormalizedKarmaBuilderOptions } from './options';

0 commit comments

Comments
 (0)