Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
58b2132
refactor!: disable externals tracing by default
pi0 Nov 17, 2025
da1bc0a
update
pi0 Nov 17, 2025
5c39d67
tmp fixes
pi0 Nov 17, 2025
93bf265
lint
pi0 Nov 17, 2025
0a41856
dev externals
pi0 Nov 18, 2025
ad9b9f1
Merge branch 'main' into bundle-by-default
pi0 Nov 18, 2025
7820804
wip
pi0 Nov 19, 2025
0524e66
Merge branch 'main' into bundle-by-default
pi0 Nov 24, 2025
0df8543
update
pi0 Nov 24, 2025
2591e1d
workaround a
pi0 Nov 25, 2025
98bcc79
improve plugin
pi0 Nov 25, 2025
073b0bd
rolldown fixes
pi0 Nov 25, 2025
103a3c6
Merge branch 'main' into bundle-by-default
pi0 Nov 25, 2025
cddda42
improve handling cjs externals
pi0 Nov 25, 2025
833ac46
remove buildDir from default noExternal
pi0 Nov 25, 2025
c7c9968
update
pi0 Nov 27, 2025
7b53271
Merge branch 'main' into bundle-by-default
pi0 Nov 27, 2025
eb57f0f
Merge branch 'main' into bundle-by-default
pi0 Dec 1, 2025
7318c30
remove logs
pi0 Dec 1, 2025
9e450cb
update
pi0 Dec 1, 2025
c17ea99
`traceDeps` config
pi0 Dec 1, 2025
50a626a
Merge branch 'main' into bundle-by-default
pi0 Dec 1, 2025
19641cd
add missing import
pi0 Dec 1, 2025
6734433
add back traceDeps
pi0 Dec 1, 2025
8dce052
windows safety
pi0 Dec 3, 2025
5fb374a
Merge branch 'main' into bundle-by-default
pi0 Dec 3, 2025
8738a87
Merge branch 'main' into bundle-by-default
pi0 Dec 3, 2025
bc7885e
win/wasm fixes
pi0 Dec 3, 2025
3d45f28
fix defaults
pi0 Dec 3, 2025
08f7c98
perf: skip nested rollup node resolutions
pi0 Dec 3, 2025
5752b39
enable rolldown test for tracing+absolute
pi0 Dec 3, 2025
25a14fd
fix prerender externals
pi0 Dec 3, 2025
6836c85
remove absolute external test
pi0 Dec 3, 2025
51d2da3
remove unused import
pi0 Dec 3, 2025
6dd1dcc
hot fixes for vite (e2e)
pi0 Dec 3, 2025
23a87a0
less noExternal matchers
pi0 Dec 3, 2025
0834380
remove explicit runtimeDependencies rule
pi0 Dec 3, 2025
11174c2
optional dep
pi0 Dec 3, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
improve handling cjs externals
  • Loading branch information
pi0 committed Nov 25, 2025
commit cddda42829ca877493b88e174f9bd5d3316cac20
1 change: 0 additions & 1 deletion src/build/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ export function baseBuildConfig(nitro: Nitro) {
/^(?:[\0#~.]|virtual:)/,
/^nitro$/,
/nitro\/(dist|app|cache|storage|context|database|task|runtime-config|~internal)/,
/node_modules\/(source-map)/,
runtimeDir,
presetsDir,
new RegExp(escapeRegExp(nitro.options.rootDir) + "(?!.*node_modules)"),
Expand Down
15 changes: 13 additions & 2 deletions src/build/plugins/externals.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,21 @@ export function externals(opts: ExternalsOptions): Plugin {
}

// Resolve
const resolved = await this.resolve(id, importer, rOpts);
let resolved = await this.resolve(id, importer, rOpts);

// Keep CommonJS external imports as ESM externals (rollup quirk) unless explicitly marked as no external to bundle
const cjsResolved = resolved?.meta?.commonjs
?.resolved as typeof resolved;
if (cjsResolved) {
if (noExternal.some((p) => p.test(cjsResolved.id))) {
// return null;
return resolved;
}
resolved = cjsResolved as typeof resolved;
}

// Check if not resolved or explicitly marked as no external
if (!resolved?.id || noExternal.some((p) => p.test(resolved.id))) {
if (!resolved?.id || noExternal.some((p) => p.test(resolved!.id))) {
return resolved;
}

Expand Down
Loading