vitejs/vite d9ed8574..a100b324
base and head as given
- SSR module fetching now runs through the SSR development environment.
- SSR environments now adjust source maps for asynchronous module evaluation.
- Module runners now expose a remote module-fetch transport.
- Development environments now expose a remote module-fetch transport.
- files changed
- 17
- in a component
- 14
- lines in components
- 298
- components
- 7
- public routes changed
- 0
- schema statements
- 0
- new dependencies
- 0
- excluded by role
- 3
Where to focus your review
- Check callers of removed or renamed exports5 components with export changes. Check compatibility and intended visibility.
- Verify behavior in dependent codeFollow the import paths below and exercise the consumers they reach.
- Inspect the paths tracing stopped at5 changed symbols stopped at heavily imported files. Inspect their consumers separately.
Environment-owned SSR loading
Modified- Before
- The server owned SSR module fetching
- After
- SSR environments own module fetching
SSR module runners fetch through their environment, while the default SSR environment applies the source-map line offset needed for asynchronous evaluation. Existing server loading continues to create runners from the SSR environment.
In favour
- In favour: Keeps SSR source-map adjustment with its execution environment
The model found nothing to weigh against this.
Inspect 7 source files behind this explanation
- packages/vite/src/node/ssr/fetchModule.ts
- packages/vite/src/node/server/index.ts
- packages/vite/src/node/ssr/runtime/serverModuleRunner.ts
- packages/vite/src/node/server/environments/ssrEnvironment.ts
- packages/vite/src/node/ssr/ssrFetchModule.tsat base · deleted
- playground/ssr-html/test-network-imports.js
- playground/ssr-html/test-stacktrace-runtime.js
Remote module-fetch transport
Added- Before
- did not exist
- After
- Runners request remote module fetches
A module runner can request module data through a message-based transport, and a development environment can answer fetch requests over its own message interface. Both transport APIs are publicly available.
In favour
- In favour: Timed-out remote requests are removed from pending request tracking
Against
- Against: Separate envelopes require adapters to connect the two transports
1 new dependency between components — Server Code → SSR Runtime
What else could behave differently
11 components · 91 filesThese components import changed code, directly or through other files. A traced dependency is a place to review, not a confirmed runtime failure. Some paths stopped at heavily imported files; inspect those consumers separately.
Reached 3
| Component | Symbol | Cited at | Files | Reached by |
|---|---|---|---|---|
| SSR Codepackages/vite/src/node/ssr/ | Signature changed DevEnvironment1 of 12 changed symbols reaching it | packages/vite/src/node/server/environment.ts:19-92 | 7 | 2 direct · 3 at two steps · 2 at three stepsTrace pathShortest component path from the changed symbol:
Later steps follow file imports; they do not prove this symbol is called. |
| packages/plugin-legacy/src/ | Signature changed DevEnvironment1 of 11 changed symbols reaching it | packages/vite/src/node/server/environment.ts:19-92 | 1 | none direct · 1 at two stepsTrace pathShortest component path from the changed symbol:
Later steps follow file imports; they do not prove this symbol is called. |
| Node Corepackages/vite/src/node/ | Signature changed DevEnvironment1 of 12 changed symbols reaching it | packages/vite/src/node/server/environment.ts:19-92 | 16 | 5 direct · 11 at two stepsTrace pathShortest component path from the changed symbol:
Later steps follow file imports; they do not prove this symbol is called. |
Ranked lower 8
| Component | Files | Reached by |
|---|---|---|
| packages/vite/src/module-runner/ | 7 | 4 direct · 2 at two steps · 1 at three steps |
| packages/vite/src/node/server/ | 14 | 7 direct · 6 at two steps · 1 at three steps |
| packages/vite/src/node/plugins/ | 28 | 6 direct · 22 at two steps |
| packages/vite/src/node/optimizer/ | 5 | 1 direct · 4 at two steps |
| packages/vite/src/module-runner/sourcemap/ | 2 | 2 direct |
| packages/vite/src/node/server/middlewares/ | 8 | 4 direct · 4 at two steps |
| packages/vite/src/node/ssr/runtime/ | 2 | 2 direct |
| packages/vite/src/node/server/environments/ | 1 | 1 direct |
Not traced past a hub 5
| Symbol | Hub file | Imported by |
|---|---|---|
| packages/vite/src/module-runner/runner.ts:ModuleRunner | packages/vite/src/node/server/index.ts | 34 |
| packages/vite/src/module-runner/runner.ts:ModuleRunner | packages/vite/src/node/index.ts | 30 |
| packages/vite/src/module-runner/runner.ts:ModuleRunner | packages/vite/src/node/config.ts | 56 |
| packages/vite/src/module-runner/runner.ts:ModuleRunner | packages/vite/src/node/plugin.ts | 35 |
| packages/vite/src/node/server/index.ts:_createServer | packages/vite/src/node/server/index.ts | 34 |
Statements 3
DevEnvironment's signature changed and reached 7 files in SSR. 232DevEnvironment's signature changed and reached 1 file in plugin legacy. 1DevEnvironment's signature changed and reached 16 files in node core. 51130 reached files belong to no component — tests, docs and config.
Routes, schema, dependencies
No public URL, no migration and no new package.
Inspect components, files and symbols
Component
File
Function
imports what changeddownstream of it, one mark per step
Diff
Analysis scope
1989 → 7- files at head1,989
- components389
- changed by this change7
- shown above of 76
Where the new files landed
3 new files| New file | Belongs to | Used by | Calls | Serves |
|---|---|---|---|---|
| packages/vite/src/module-runner/transport.ts | Module Runnerbase frame | its own component only | nothing outside its own component | — |
| packages/vite/src/node/server/environmentTransport.ts | Server Codebase frame | Node Core | nothing outside its own component | — |
| packages/vite/src/node/server/environments/ssrEnvironment.ts | Server Environmentsnew territory | Server Code | Server Codepackages/vite/src/shared/ | — |
17 files changed, 28 claims stated. 11 components reached in total.