diff --git a/.changeset/smooth-crabs-end.md b/.changeset/smooth-crabs-end.md new file mode 100644 index 000000000..d2ca41177 --- /dev/null +++ b/.changeset/smooth-crabs-end.md @@ -0,0 +1,5 @@ +--- +"@opennextjs/aws": patch +--- + +Dump ESBuild build metadata to `.meta.json` in debug mode diff --git a/packages/open-next/src/build/helper.ts b/packages/open-next/src/build/helper.ts index 496989d9c..ec334de93 100644 --- a/packages/open-next/src/build/helper.ts +++ b/packages/open-next/src/build/helper.ts @@ -141,12 +141,15 @@ export async function esbuildAsync( options: BuildOptions, ) { const { openNextVersion, debug, minify } = options; + // Dump ESBuild build metadata to file in debug mode + const metafile = debug && esbuildOptions.outfile !== undefined; const result = await buildAsync({ target: "esnext", format: "esm", platform: "node", bundle: true, minify, + metafile, mainFields: ["module", "main"], sourcemap: debug ? "inline" : false, sourcesContent: false, @@ -174,6 +177,11 @@ export async function esbuildAsync( }.`, ); } + + if (result.metafile) { + const metaFile = `${esbuildOptions.outfile}.meta.json`; + fs.writeFileSync(metaFile, JSON.stringify(result.metafile, null, 2)); + } } /**