From 92145c4a7d2c835b703319676bafd8ea3b4a19f0 Mon Sep 17 00:00:00 2001 From: Charles Lyding <19598772+clydin@users.noreply.github.com> Date: Tue, 25 Oct 2022 09:52:00 -0400 Subject: [PATCH] perf(@angular-devkit/build-angular): avoid template diagnostics for declaration files in esbuild builder The experimental esbuild-based browser application builder will now avoid trying to query the Angular Compiler for template diagnostics when a TypeScript source file is a declaration file (`.d.ts`). This avoids the overhead of the in-memory diagnostics caching logic as well as any Angular Compiler logic to determine if the file has any template diagnostics. (cherry picked from commit 60086dbd016f856f9944224e8bfafdb453b82e20) --- .../src/builders/browser-esbuild/compiler-plugin.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/angular_devkit/build_angular/src/builders/browser-esbuild/compiler-plugin.ts b/packages/angular_devkit/build_angular/src/builders/browser-esbuild/compiler-plugin.ts index 6aa8e5065f28..ac37bff3df7e 100644 --- a/packages/angular_devkit/build_angular/src/builders/browser-esbuild/compiler-plugin.ts +++ b/packages/angular_devkit/build_angular/src/builders/browser-esbuild/compiler-plugin.ts @@ -398,6 +398,11 @@ export function createCompilerPlugin( true, ); + // Declaration files cannot have template diagnostics + if (sourceFile.isDeclarationFile) { + continue; + } + // Only request Angular template diagnostics for affected files to avoid // overhead of template diagnostics for unchanged files. if (affectedFiles.has(sourceFile)) {