Skip to content

Commit 0f08a4e

Browse files
committed
fix: aovid resolveConfig twice at dev build
1 parent f32ded5 commit 0f08a4e

File tree

2 files changed

+20
-23
lines changed

2 files changed

+20
-23
lines changed

packages/vite/src/node/cli.ts

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -187,24 +187,8 @@ cli
187187
filterDuplicateOptions(options)
188188
// output structure is preserved even after bundling so require()
189189
// is ok here
190-
const { createServer } = await import('./server')
190+
const { createServerWithResolvedConfig } = await import('./server')
191191
try {
192-
const server = await createServer({
193-
root,
194-
base: options.base,
195-
mode: options.mode,
196-
configFile: options.config,
197-
configLoader: options.configLoader,
198-
logLevel: options.logLevel,
199-
clearScreen: options.clearScreen,
200-
server: cleanGlobalCLIOptions(options),
201-
forceOptimizeDeps: options.force,
202-
})
203-
204-
if (!server.httpServer) {
205-
throw new Error('HTTP server not available')
206-
}
207-
208192
const { createBuilder } = await import('./build')
209193

210194
const buildOptions: BuildEnvironmentOptions =
@@ -222,6 +206,13 @@ cli
222206
...(options.app ? { builder: {} } : {}),
223207
}
224208
const builder = await createBuilder(inlineConfig, null, 'serve')
209+
210+
const server = await createServerWithResolvedConfig(builder.config)
211+
212+
if (!server.httpServer) {
213+
throw new Error('HTTP server not available')
214+
}
215+
225216
await builder.buildApp(server)
226217

227218
await server.listen()

packages/vite/src/node/server/index.ts

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -413,21 +413,26 @@ export interface ResolvedServerUrls {
413413
network: string[]
414414
}
415415

416-
export function createServer(
416+
export async function createServer(
417417
inlineConfig: InlineConfig = {},
418418
): Promise<ViteDevServer> {
419-
return _createServer(inlineConfig, { listen: true })
419+
const config = await resolveConfig(inlineConfig, 'serve')
420+
return _createServer(config, { listen: true })
421+
}
422+
423+
export function createServerWithResolvedConfig(
424+
config: ResolvedConfig,
425+
): Promise<ViteDevServer> {
426+
return _createServer(config, { listen: true })
420427
}
421428

422429
export async function _createServer(
423-
inlineConfig: InlineConfig = {},
430+
config: ResolvedConfig,
424431
options: {
425432
listen: boolean
426433
previousEnvironments?: Record<string, DevEnvironment>
427434
},
428435
): Promise<ViteDevServer> {
429-
const config = await resolveConfig(inlineConfig, 'serve')
430-
431436
const initPublicFilesPromise = initPublicFiles(config)
432437

433438
const { root, server: serverConfig } = config
@@ -1187,7 +1192,8 @@ async function restartServer(server: ViteDevServer) {
11871192
let newServer: ViteDevServer | null = null
11881193
try {
11891194
// delay ws server listen
1190-
newServer = await _createServer(inlineConfig, {
1195+
const config = await resolveConfig(inlineConfig, 'serve')
1196+
newServer = await _createServer(config, {
11911197
listen: false,
11921198
previousEnvironments: server.environments,
11931199
})

0 commit comments

Comments
 (0)