From 41fe4af60e44c4457ac0e43cfbf1fc1d89707cc1 Mon Sep 17 00:00:00 2001 From: Magnus Dahl Eide Date: Wed, 18 Jun 2025 23:00:47 +0200 Subject: [PATCH 1/5] fix: support Next 14 experimental.serverExternalPackages --- packages/cloudflare/src/cli/build/utils/workerd.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/cloudflare/src/cli/build/utils/workerd.ts b/packages/cloudflare/src/cli/build/utils/workerd.ts index 4e9fc7464..c8b7df6ee 100644 --- a/packages/cloudflare/src/cli/build/utils/workerd.ts +++ b/packages/cloudflare/src/cli/build/utils/workerd.ts @@ -81,7 +81,9 @@ export async function copyWorkerdPackages(options: BuildOptions, nodePackages: M // Copy full external packages when they use "workerd" build condition const nextConfig = loadConfig(path.join(options.appBuildOutputPath, ".next")); - const externalPackages = nextConfig.serverExternalPackages ?? []; + const externalPackages = + // @ts-expect-error In Next 14 its under experimental + nextConfig.serverExternalPackages ?? nextConfig.experimental.serverExternalPackages ?? []; for (const [src, dst] of nodePackages.entries()) { try { const pkgJson = JSON.parse(await fs.readFile(path.join(src, "package.json"), "utf8")); From 2ea7c1c08e5a93035f9a3af4fc0f2b756e8ca8cb Mon Sep 17 00:00:00 2001 From: Magnus Dahl Eide Date: Wed, 18 Jun 2025 23:01:33 +0200 Subject: [PATCH 2/5] changeset --- .changeset/light-llamas-cut.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/light-llamas-cut.md diff --git a/.changeset/light-llamas-cut.md b/.changeset/light-llamas-cut.md new file mode 100644 index 000000000..203bd3b0a --- /dev/null +++ b/.changeset/light-llamas-cut.md @@ -0,0 +1,5 @@ +--- +"@opennextjs/cloudflare": patch +--- + +fix: support Next 14 experimental.serverExternalPackages From b73682154014d8b9ca0365180249765754d46826 Mon Sep 17 00:00:00 2001 From: Magnus Dahl Eide Date: Wed, 18 Jun 2025 23:11:54 +0200 Subject: [PATCH 3/5] fix correct spelling --- packages/cloudflare/src/cli/build/utils/workerd.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/cloudflare/src/cli/build/utils/workerd.ts b/packages/cloudflare/src/cli/build/utils/workerd.ts index c8b7df6ee..b7a0c5034 100644 --- a/packages/cloudflare/src/cli/build/utils/workerd.ts +++ b/packages/cloudflare/src/cli/build/utils/workerd.ts @@ -82,8 +82,9 @@ export async function copyWorkerdPackages(options: BuildOptions, nodePackages: M // Copy full external packages when they use "workerd" build condition const nextConfig = loadConfig(path.join(options.appBuildOutputPath, ".next")); const externalPackages = - // @ts-expect-error In Next 14 its under experimental - nextConfig.serverExternalPackages ?? nextConfig.experimental.serverExternalPackages ?? []; + // @ts-expect-error In Next 14 its under experimental.serverComponentsExternalPackages + nextConfig.serverExternalPackages ?? nextConfig.experimental.serverComponentsExternalPackages ?? []; + console.log({ externalPackages }); for (const [src, dst] of nodePackages.entries()) { try { const pkgJson = JSON.parse(await fs.readFile(path.join(src, "package.json"), "utf8")); From 8c9c014616f69bea4ef5b54e23dfb0d3b9313193 Mon Sep 17 00:00:00 2001 From: Magnus Dahl Eide Date: Wed, 18 Jun 2025 23:15:11 +0200 Subject: [PATCH 4/5] rm console --- packages/cloudflare/src/cli/build/utils/workerd.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/cloudflare/src/cli/build/utils/workerd.ts b/packages/cloudflare/src/cli/build/utils/workerd.ts index b7a0c5034..560025ffd 100644 --- a/packages/cloudflare/src/cli/build/utils/workerd.ts +++ b/packages/cloudflare/src/cli/build/utils/workerd.ts @@ -84,7 +84,6 @@ export async function copyWorkerdPackages(options: BuildOptions, nodePackages: M const externalPackages = // @ts-expect-error In Next 14 its under experimental.serverComponentsExternalPackages nextConfig.serverExternalPackages ?? nextConfig.experimental.serverComponentsExternalPackages ?? []; - console.log({ externalPackages }); for (const [src, dst] of nodePackages.entries()) { try { const pkgJson = JSON.parse(await fs.readFile(path.join(src, "package.json"), "utf8")); From 0ad850f3dd59517d2ae1b1683a6dfe351ebb7a62 Mon Sep 17 00:00:00 2001 From: Magnus Dahl Eide Date: Wed, 18 Jun 2025 23:27:35 +0200 Subject: [PATCH 5/5] changeset spelling --- .changeset/light-llamas-cut.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/light-llamas-cut.md b/.changeset/light-llamas-cut.md index 203bd3b0a..42f66ab19 100644 --- a/.changeset/light-llamas-cut.md +++ b/.changeset/light-llamas-cut.md @@ -2,4 +2,4 @@ "@opennextjs/cloudflare": patch --- -fix: support Next 14 experimental.serverExternalPackages +fix: support Next 14 experimental.serverComponentsExternalPackages