[Bug]: Modern Module Externals Configuration Issue
System Info
System: OS: macOS 15.6.1 CPU: (10) arm64 Apple M4 Memory: 131.86 MB / 32.00 GB Shell: 5.9 - /bin/zsh Binaries: Node: 24.3.0 - ~/.nvm/versions/node/v24.3.0/bin/node Yarn: 1.22.22 - ~/.nvm/versions/node/v24.3.0/bin/yarn npm: 11.4.2 - ~/.nvm/versions/node/v24.3.0/bin/npm pnpm: 10.9.0 - ~/.nvm/versions/node/v24.3.0/bin/pnpm bun: 1.2.18 - ~/.bun/bin/bun Browsers: Chrome: 140.0.7339.133 Edge: 135.0.3179.98 Safari: 18.6 npmPackages: @rspack/cli: ^1.5.3 => 1.5.3 @rspack/core: ^1.5.3 => 1.5.3
Details
Problem
When using Rspack with modern module output format combined with externals configuration, external dependencies fail to resolve correctly, resulting in undefined values.
Configuration
// rspack.config.ts
export default defineConfig({
output: {
module: true,
library: {
type: 'modern-module'
}
},
externals: {
'vue': 'module-import vue',
'vue2': 'module-import vue2'
}
});
Source Code
// src/index.ts
import { version } from './vue';
import { version as version2 } from './vue2';
console.log(version, version2); // Expected: "3.5.21 2.7.16", Actual: "undefined undefined"
Reproduction
pnpm build && node dist/main.mjs
Expected Output: 3.5.21 2.7.16
Actual Output: undefined undefined
Root Cause
The combination of:
-
output.module: true+library.type: 'modern-module' -
externalswithmodule-importsyntax - ES module imports
causes Rspack to generate incorrect import statements for external dependencies.
Impact
Affects library developers and projects using modern ES modules with external dependencies.
Reproduce link
https://github.com/lzxb/rspack-modern-module-error
Reproduce Steps
pnpm i && pnpm build && node dist/main.mjs