Conversation
📦 Binary Size-limit
❌ Size increased by 4.00KB from 68.78MB to 68.78MB (⬆️0.01%) |
Rsdoctor Bundle Diff AnalysisFound 5 projects in monorepo, 5 projects with changes. 📊 Quick Summary
📋 Detailed Reports (Click to expand)📁 popular-libsPath:
📦 Download Diff Report: popular-libs Bundle Diff 📁 react-10kPath:
📦 Download Diff Report: react-10k Bundle Diff 📁 react-1kPath:
📦 Download Diff Report: react-1k Bundle Diff 📁 react-5kPath:
📦 Download Diff Report: react-5k Bundle Diff 📁 ui-componentsPath:
📦 Download Diff Report: ui-components Bundle Diff 🤖 AI Degradation Analysis (Click to expand)📁 popular-libs📊 Size ChangesNo significant regressions detected 🎉. Total bundle size decreased by 114 bytes (1,777,985 → 1,777,871). Initial JS chunk also decreased (1,777,696 → 1,777,582 bytes). 🔍 Root Cause Analysis
|
| Asset / Chunk | Baseline | Current | Δ Size | Δ % | Initial? |
|---|---|---|---|---|---|
| No significant regressions detected 🎉 | 2,707,889 B | 2,707,830 B | -59 B | -0.002% | - |
🔍 Root Cause Analysis
react-router(v7.18.3) parsed size decreased slightly (36,432 → 36,373 bytes), accounting for the total delta.- No new modules or duplicate dependencies introduced.
⚠️ Risk Assessment
Overall severity: Low
- Total bundle size decreased (-59 bytes) with stable initial chunk (-59 bytes), posing no performance risk.
💡 Optimization Suggestions
- Maintain current tree-shaking configuration;
react-routerintegration is efficient. - Monitor future
react-routerupdates for potential size fluctuations.
Analysis by qwen3.5-plus
📁 ui-components
📊 Size Changes
No significant regressions detected 🎉. Total bundle size increased by only 46 bytes (0.0009%).
🔍 Root Cause Analysis
vantlocale update:vant/es/locale/lang/zh-CN.mjsparsed size increased by 9.07% (+75 bytes), contributing to the total delta.- Dependency noise:
@ant-design/cssinjsand@vue/runtime-coreshow negligible fluctuations (<1% parsed size change). - No new modules: No added or removed modules detected in the diff.
⚠️ Risk Assessment
Overall severity: Low
- The initial JS chunk change (5,114,872 → 5,114,918 bytes) is statistically insignificant and will not affect TTI or FCP.
💡 Optimization Suggestions
- No action required; performance impact is negligible.
- Verify
vantlocale configuration to ensure only required languages are bundled.
Analysis by qwen3.5-plus
Generated by Rsdoctor GitHub Action
Merging this PR will not alter performance
Comparing Footnotes
|
Motivation
A relative
resolve.tsConfigcan produce relative module resources throughpaths. If a resolved module containsimport.meta.url, converting that resource to a file URL panics withshould be a path: (). Related to #15695.For example, with cwd
/repo,tsConfig: 'config/tsconfig.json', and that config containingbaseUrl: './generated'andpaths: { '@generated/*': ['./*'] }, importing@generated/clientpreviously producedconfig/generated/client.js. It should produce/repo/config/generated/client.js.Changes
Resolve tsconfig file paths against the JavaScript host's cwd before passing options to the binding. WASI's cwd can be
/even when Node is running in a project directory, so normalizing on the JS side gives native and WASM builds the same config location.The Rust resolver also normalizes relative config paths before cache lookup and parsing for direct Rust callers. This gives
baseUrlandpathsan absolute config directory while preserving already absolute paths and propagating path conversion errors.Add an
import.meta.urlregression case covering absolute and relative config paths, string and objecttsConfigforms, and configs with and withoutbaseUrl. All eight combinations must produce the same expected file URL.Validation
pnpm run build:cli:dev; rebuilt JavaScript withpnpm run build:jsafter the host-cwd normalization.pnpm --dir tests/rspack-test run test:base Config.part3.test.js -t 'configCases/resolve/tsconfig': 8 cases passed across the normal and runtime-mode suites, including the new regression matrix.WASM=1 pnpm --dir tests/rspack-test run test:base Config.part3.test.mjs -t 'configCases/resolve/tsconfig': 8 cases passed using the CI merge commit3d87e6c728and its matching WASM artifact with the JS fix applied. The same checkout reproduced 2 failing cases before the fix.pnpm exec rs check packages/rspack/src/config/adapter.tscargo test -p rspack_resolver --lib --locked -- --skip tests::pnp::resolve_pnp_transitive_dep_from_global_cache: 162 passed.cargo clippy -p rspack_resolver --all-targets --all-features --locked -- -D warningscargo fmt --all --checkand formatting check for the new config.The full resolver unit-test run has one PnP failure,
resolve_pnp_transitive_dep_from_global_cache(NotFound("isarray")). The same isolated test fails on the unmodified baseline commit94eee0f9feafter installing its Yarn fixture, so it was excluded from the passing run above. Local validation was on Linux.by OpenAI Codex