From 21f5c779ae1ff7ccefdacc22279a504f1148ff45 Mon Sep 17 00:00:00 2001 From: Alan Agius <17563226+alan-agius4@users.noreply.github.com> Date: Thu, 20 Mar 2025 13:00:13 +0000 Subject: [PATCH] fix(@angular/build): correct handling of response/request errors Prior to this change, request errors were not handled correctly. Closes #29884 --- .../build/src/utils/server-rendering/launch-server.ts | 2 +- .../angular/build/src/utils/server-rendering/prerender.ts | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/angular/build/src/utils/server-rendering/launch-server.ts b/packages/angular/build/src/utils/server-rendering/launch-server.ts index 4d8f3fbdd259..cfb15b0d979b 100644 --- a/packages/angular/build/src/utils/server-rendering/launch-server.ts +++ b/packages/angular/build/src/utils/server-rendering/launch-server.ts @@ -33,7 +33,7 @@ export async function launchServer(): Promise { // handle request if (isSsrNodeRequestHandler(reqHandler)) { await reqHandler(req, res, (e) => { - throw e; + throw e ?? new Error(`Unable to handle request: '${req.url}'.`); }); } else { const webRes = await reqHandler(createWebRequestFromNodeRequest(req)); diff --git a/packages/angular/build/src/utils/server-rendering/prerender.ts b/packages/angular/build/src/utils/server-rendering/prerender.ts index 76b9de2bc2fe..a8a42c7c941a 100644 --- a/packages/angular/build/src/utils/server-rendering/prerender.ts +++ b/packages/angular/build/src/utils/server-rendering/prerender.ts @@ -113,7 +113,7 @@ export async function prerenderPages( outputMode, ).catch((err) => { return { - errors: [`An error occurred while extracting routes.\n\n${err.stack ?? err.message ?? err}`], + errors: [`An error occurred while extracting routes.\n\n${err.message ?? err.stack ?? err}`], serializedRouteTree: [], appShellRoute: undefined, }; @@ -258,7 +258,7 @@ async function renderPages( }) .catch((err) => { errors.push( - `An error occurred while prerendering route '${route}'.\n\n${err.stack ?? err.message ?? err.code ?? err}`, + `An error occurred while prerendering route '${route}'.\n\n${err.message ?? err.stack ?? err.code ?? err}`, ); void renderWorker.destroy(); }); @@ -359,7 +359,7 @@ async function getAllRoutes( return { errors: [ - `An error occurred while extracting routes.\n\n${err.stack ?? err.message ?? err.code ?? err}`, + `An error occurred while extracting routes.\n\n${err.message ?? err.stack ?? err.code ?? err}`, ], serializedRouteTree: [], };