From ef2437fe9518d385a0dc18974d4123d74bf4af13 Mon Sep 17 00:00:00 2001 From: Alan Agius Date: Mon, 6 Nov 2023 11:21:22 +0000 Subject: [PATCH] refactor(@angular-devkit/build-angular): clean externalMetadata arrays on every rebuild Currently, externalMetadata arrays get appended the same items over and over again on every rebuild. This commit cleans the array before it appending the new values. --- .../build_angular/src/builders/dev-server/vite-server.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/angular_devkit/build_angular/src/builders/dev-server/vite-server.ts b/packages/angular_devkit/build_angular/src/builders/dev-server/vite-server.ts index 3ad1edc397..be73b9abd4 100644 --- a/packages/angular_devkit/build_angular/src/builders/dev-server/vite-server.ts +++ b/packages/angular_devkit/build_angular/src/builders/dev-server/vite-server.ts @@ -184,6 +184,11 @@ export async function* serveWithVite( // To avoid disconnecting the array objects from the option, these arrays need to be mutated instead of replaced. if (result.externalMetadata) { const { implicitBrowser, implicitServer, explicit } = result.externalMetadata; + // Empty Arrays to avoid growing unlimited with every re-build. + externalMetadata.explicit.length = 0; + externalMetadata.implicitServer.length = 0; + externalMetadata.implicitBrowser.length = 0; + externalMetadata.explicit.push(...explicit); externalMetadata.implicitServer.push(...implicitServer); externalMetadata.implicitBrowser.push(...implicitBrowser);