Skip to content

Commit ca4b087

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 deca40b commit ca4b087

25 files changed

Lines changed: 202 additions & 226 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+
[]

goldens/public-api/angular/build/index.api.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { BuilderContext } from '@angular-devkit/architect';
88
import { BuilderOutput } from '@angular-devkit/architect';
99
import type { ConfigOptions } from 'karma';
1010
import type http from 'node:http';
11-
import { OutputFile } from 'esbuild';
11+
import type { OutputFile } from 'esbuild';
1212
import type { Plugin as Plugin_2 } from 'esbuild';
1313

1414
// @public (undocumented)

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
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';
1312
import { ExecutionResult, RebuildState } from '../../tools/esbuild/bundler-execution-result';
13+
import { BuildOutputFile, BuildOutputFileType } from '../../tools/esbuild/bundler-files';
1414
import { shutdownSassWorkerPool } from '../../tools/esbuild/stylesheets/sass-language';
1515
import { logMessages, withNoProgress, withSpinner } from '../../tools/esbuild/utils';
1616
import { ChangedFiles } from '../../tools/esbuild/watcher';

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

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,13 @@
2020
import type { Message, Metafile } from 'esbuild';
2121
import assert from 'node:assert';
2222
import { type Plugin, rollup } from 'rollup';
23+
import { BundleContextResult } from '../../tools/esbuild/bundler-context';
2324
import {
24-
BuildOutputFile,
25+
type BuildOutputFile,
2526
BuildOutputFileType,
26-
BundleContextResult,
27-
InitialFileRecord,
28-
} from '../../tools/esbuild/bundler-context';
29-
import { createOutputFile } from '../../tools/esbuild/utils';
27+
type InitialFileRecord,
28+
createOutputFile,
29+
} from '../../tools/esbuild/bundler-files';
3030
import { useRolldownChunks } from '../../utils/environment-options';
3131
import { assertIsError } from '../../utils/error';
3232
import { toPosixPath } from '../../utils/path';

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

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,9 @@ import { BuilderContext } from '@angular-devkit/architect';
1010
import { createAngularCompilation } from '../../tools/angular/compilation';
1111
import { SourceFileCache } from '../../tools/esbuild/angular/source-file-cache';
1212
import { generateBudgetStats } from '../../tools/esbuild/budget-stats';
13-
import {
14-
BuildOutputFileType,
15-
BundleContextResult,
16-
BundlerContext,
17-
} from '../../tools/esbuild/bundler-context';
13+
import { BundleContextResult, BundlerContext } from '../../tools/esbuild/bundler-context';
1814
import { ExecutionResult, RebuildState } from '../../tools/esbuild/bundler-execution-result';
15+
import { BuildOutputFileType } from '../../tools/esbuild/bundler-files';
1916
import { checkCommonJSModules } from '../../tools/esbuild/commonjs-checker';
2017
import { extractLicenses } from '../../tools/esbuild/license-extractor';
2118
import { profileAsync } from '../../tools/esbuild/profiling';

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

Lines changed: 8 additions & 8 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,
13-
BuildOutputFileType,
14-
InitialFileRecord,
15-
} from '../../tools/esbuild/bundler-context';
16-
import {
17-
BuildOutputAsset,
18-
PrerenderedRoutesRecord,
12+
type BuildOutputAsset,
13+
type PrerenderedRoutesRecord,
1914
} from '../../tools/esbuild/bundler-execution-result';
15+
import {
16+
type BuildOutputFile,
17+
BuildOutputFileType,
18+
type InitialFileRecord,
19+
createOutputFile,
20+
} from '../../tools/esbuild/bundler-files';
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,11 +9,11 @@
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';
1312
import {
1413
ExecutionResult,
1514
PrerenderedRoutesRecord,
1615
} from '../../tools/esbuild/bundler-execution-result';
16+
import { BuildOutputFileType, InitialFileRecord } from '../../tools/esbuild/bundler-files';
1717
import { I18nInliner } from '../../tools/esbuild/i18n-inliner';
1818
import { maxWorkers } from '../../utils/environment-options';
1919
import { loadTranslations } from '../../utils/i18n-options';

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';

0 commit comments

Comments
 (0)