Skip to content

Commit 4d2abc7

Browse files
authoredNov 25, 2024··
feat: enable HMR by default on ModuleRunner side (#18749)
1 parent cc55e36 commit 4d2abc7

File tree

4 files changed

+12
-13
lines changed

4 files changed

+12
-13
lines changed
 

‎docs/guide/api-environment-runtimes.md

+4-8
Original file line numberDiff line numberDiff line change
@@ -190,15 +190,10 @@ export interface ModuleRunnerOptions {
190190
| InterceptorOptions
191191
/**
192192
* Disable HMR or configure HMR options.
193+
*
194+
* @default true
193195
*/
194-
hmr?:
195-
| false
196-
| {
197-
/**
198-
* Configure HMR logger.
199-
*/
200-
logger?: false | HMRLogger
201-
}
196+
hmr?: boolean | ModuleRunnerHmr
202197
/**
203198
* Custom module cache. If not provided, it creates a separate module
204199
* cache for each module runner instance.
@@ -356,6 +351,7 @@ export const runner = new ModuleRunner(
356351
return response.json()
357352
},
358353
},
354+
hmr: false, // disable HMR as HMR requires transport.connect
359355
},
360356
new ESModulesEvaluator(),
361357
)

‎packages/vite/rollup.config.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,7 @@ const moduleRunnerConfig = defineConfig({
194194
],
195195
plugins: [
196196
...createSharedNodePlugins({ esbuildOptions: { minifySyntax: true } }),
197-
bundleSizeLimit(53),
197+
bundleSizeLimit(54),
198198
],
199199
})
200200

‎packages/vite/src/module-runner/runner.ts

+5-4
Original file line numberDiff line numberDiff line change
@@ -69,13 +69,14 @@ export class ModuleRunner {
6969
this.root = root[root.length - 1] === '/' ? root : `${root}/`
7070
this.evaluatedModules = options.evaluatedModules ?? new EvaluatedModules()
7171
this.transport = normalizeModuleRunnerTransport(options.transport)
72-
if (options.hmr) {
72+
if (options.hmr !== false) {
73+
const optionsHmr = options.hmr ?? true
7374
const resolvedHmrLogger: HMRLogger =
74-
options.hmr === true || options.hmr.logger === undefined
75+
optionsHmr === true || optionsHmr.logger === undefined
7576
? hmrLogger
76-
: options.hmr.logger === false
77+
: optionsHmr.logger === false
7778
? silentConsole
78-
: options.hmr.logger
79+
: optionsHmr.logger
7980
this.hmrClient = new HMRClient(
8081
resolvedHmrLogger,
8182
this.transport,

‎packages/vite/src/module-runner/types.ts

+2
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,8 @@ export interface ModuleRunnerOptions {
103103
| InterceptorOptions
104104
/**
105105
* Disable HMR or configure HMR options.
106+
*
107+
* @default true
106108
*/
107109
hmr?: boolean | ModuleRunnerHmr
108110
/**

0 commit comments

Comments
 (0)
Please sign in to comment.