From 27bededc65bd0953b261ff57507334d465ad92c3 Mon Sep 17 00:00:00 2001 From: "gaoyuan.1226" Date: Thu, 30 Oct 2025 12:04:09 +0800 Subject: [PATCH 1/2] fix: loadBundle inspect offset --- e2e/cases/server/ssr/rsbuild.config.ts | 4 +++- packages/core/src/server/runner/cjs.ts | 8 +++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/e2e/cases/server/ssr/rsbuild.config.ts b/e2e/cases/server/ssr/rsbuild.config.ts index 0df8b244a8..1734b3dec1 100644 --- a/e2e/cases/server/ssr/rsbuild.config.ts +++ b/e2e/cases/server/ssr/rsbuild.config.ts @@ -1,3 +1,4 @@ +import inspector from 'node:inspector'; import { defineConfig, logger, @@ -25,6 +26,7 @@ export const serverRender = export default defineConfig({ plugins: [pluginReact()], dev: { + writeToDisk: inspector.url() !== undefined, setupMiddlewares: ({ unshift }, context) => { const serverRenderMiddleware = serverRender(context); @@ -53,7 +55,7 @@ export default defineConfig({ }, node: { output: { - module: true, + module: process.env.TEST_ESM_LIBRARY === 'true', target: 'node', }, source: { diff --git a/packages/core/src/server/runner/cjs.ts b/packages/core/src/server/runner/cjs.ts index 062347a8b5..8eb12f5294 100644 --- a/packages/core/src/server/runner/cjs.ts +++ b/packages/core/src/server/runner/cjs.ts @@ -110,9 +110,9 @@ export class CommonJsRunner extends BasicRunner { const args = Object.keys(currentModuleScope); const argValues = args.map((arg) => currentModuleScope[arg]); - const code = `(function(${args.join(', ')}) { - ${file.content} - })`; + + const codeDefinition = `(function(${args.join(', ')}) {`; + const code = `${codeDefinition}${file.content}\n})`; this.preExecute(code, file); const dynamicImport = new Function( @@ -122,6 +122,8 @@ export class CommonJsRunner extends BasicRunner { // Runs the compiled code contained by the `vm.Script` within the context of the current `global` object. const fn = vm.runInThisContext(code, { filename: file.path, + lineOffset: 0, + columnOffset: -codeDefinition.length, // Specify how the modules should be loaded during the evaluation of this script when `import()` is called. importModuleDynamically: async (specifier) => { const result = await dynamicImport(specifier); From 5bcab239e7fa4f0dfc3db0e5d42ee9364e2d505d Mon Sep 17 00:00:00 2001 From: "gaoyuan.1226" Date: Thu, 30 Oct 2025 13:49:46 +0800 Subject: [PATCH 2/2] docs: add comments --- e2e/cases/server/ssr/rsbuild.config.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/e2e/cases/server/ssr/rsbuild.config.ts b/e2e/cases/server/ssr/rsbuild.config.ts index 1734b3dec1..b3bae4c502 100644 --- a/e2e/cases/server/ssr/rsbuild.config.ts +++ b/e2e/cases/server/ssr/rsbuild.config.ts @@ -26,6 +26,7 @@ export const serverRender = export default defineConfig({ plugins: [pluginReact()], dev: { + // enable writeToDisk to make sure the sourcemap files are generated on disk for debugging writeToDisk: inspector.url() !== undefined, setupMiddlewares: ({ unshift }, context) => { const serverRenderMiddleware = serverRender(context);