refactor: Remove concatenated module second parse#14033
Conversation
📦 Binary Size-limit
🎉 Size decreased by 300.00KB from 61.95MB to 61.66MB (⬇️0.47%) |
Merging this PR will degrade performance by 5.9%
Warning Please fix the performance issues or acknowledge them on CodSpeed. Performance Changes
Tip Investigate this regression by commenting Comparing Footnotes
|
5b7d137 to
c708e5c
Compare
Rsdoctor Bundle Diff AnalysisFound 6 projects in monorepo, 6 projects with changes. 📊 Quick Summary
📋 Detailed Reports (Click to expand)📁 popular-libsPath:
📁 react-10kPath:
📁 react-1kPath:
📁 romePath:
📁 react-5kPath:
📁 ui-componentsPath:
Generated by Rsdoctor GitHub Action |
574f5f6 to
68d782e
Compare
68d782e to
60a4b05
Compare
Summary
Remove the codegen-time second parse/analyze pass from concatenated module generation.
This moves the required scope-hoisting metadata to parser/codegen metadata and pre-allocates stable names through
ConcatenationScope, so dependency templates can obtain deterministic aliases without reparsing the rendered module source. The ESM library render path is updated along the same lines, and namespace/import/template export handling now registers generated symbols through the shared scope machinery.Notes
origin/mainto avoid carrying an unrelated local commit.Validation
pnpm run build:cli:devpnpm run test:unitgit diff --check origin/main...HEADOne initial full
test:unitrun hit a CLI serve stdout timing failure; rerunning that file passed, and the following fulltest:unitrun passed.