From a1eefe5297d15866fc4b76942de9511b72abe339 Mon Sep 17 00:00:00 2001 From: Reuben Tier Date: Tue, 25 Mar 2025 22:59:38 +0000 Subject: [PATCH 1/2] Handle module not found errors in server entrypoint --- .changeset/sixty-carrots-pick.md | 5 +++++ packages/integrations/node/src/preview.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/sixty-carrots-pick.md diff --git a/.changeset/sixty-carrots-pick.md b/.changeset/sixty-carrots-pick.md new file mode 100644 index 000000000000..047f07052c7f --- /dev/null +++ b/.changeset/sixty-carrots-pick.md @@ -0,0 +1,5 @@ +--- +'@astrojs/node': patch +--- + +Handle errors where a module is not found when loading the server entrypoint diff --git a/packages/integrations/node/src/preview.ts b/packages/integrations/node/src/preview.ts index 6a7ce7ebaa53..1ce50c4b108a 100644 --- a/packages/integrations/node/src/preview.ts +++ b/packages/integrations/node/src/preview.ts @@ -21,7 +21,7 @@ const createPreviewServer: CreatePreviewServer = async (preview) => { ); } } catch (err) { - if ((err as any).code === 'ERR_MODULE_NOT_FOUND') { + if ((err as any).code === 'ERR_MODULE_NOT_FOUND' && (err as any).url?.endsWith?.('/server/entry.mjs')) { throw new AstroError( `The server entrypoint ${fileURLToPath( preview.serverEntrypoint, From 32f418ed981facc7e2535284b210077479db4099 Mon Sep 17 00:00:00 2001 From: Reuben Tier Date: Tue, 25 Mar 2025 23:00:51 +0000 Subject: [PATCH 2/2] Save my files -_- --- packages/integrations/node/src/preview.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/integrations/node/src/preview.ts b/packages/integrations/node/src/preview.ts index 1ce50c4b108a..938214c3e7d4 100644 --- a/packages/integrations/node/src/preview.ts +++ b/packages/integrations/node/src/preview.ts @@ -21,7 +21,7 @@ const createPreviewServer: CreatePreviewServer = async (preview) => { ); } } catch (err) { - if ((err as any).code === 'ERR_MODULE_NOT_FOUND' && (err as any).url?.endsWith?.('/server/entry.mjs')) { + if ((err as any).code === 'ERR_MODULE_NOT_FOUND' && (err as any).url === preview.serverEntrypoint.href) { throw new AstroError( `The server entrypoint ${fileURLToPath( preview.serverEntrypoint,