feat: expose dependencies to Rust succeedModule hooks - #15319
Conversation
📦 Binary Size-limit
❌ Size increased by 4.00KB from 67.99MB to 67.99MB (⬆️0.01%) |
Rsdoctor Bundle Diff AnalysisFound 5 projects in monorepo, 0 projects with changes. 📊 Quick Summary
Generated by Rsdoctor GitHub Action |
Merging this PR will regress 2 benchmarks
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | Simulation | rust@create_chunk_assets |
1.4 ms | 1.5 ms | -2.45% |
| ❌ | Simulation | rust@create_module_hashes |
8.3 ms | 8.5 ms | -2.24% |
| ⚡ | Simulation | rust@create_full_hash |
2.8 ms | 2.6 ms | +7.95% |
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing feat/succeed-module-dependency-request (a1ba088) with main (2a2f437)
Footnotes
-
47 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩
2b0ec54 to
a1ba088
Compare
Summary
Expose freshly built module dependencies to Rust
CompilationSucceedModulehooks before factorization.Adds invariant-preserving Rust setters for ESM import and re-export specifier dependencies, allowing external native plugins to reroute each specifier while keeping its resource identifier in sync. No JavaScript API is added.
Includes a custom-binding test plugin and config case that split
import { A, B } from "pkg"intopkg/Aandpkg/Bwhile tree-shaking the original package entry.Related links
Checklist