Skip to content

Commit 5b97a44

Browse files
Copilothi-ogawa
andcommitted
Simplify build logging by adding info messages before each build
Co-authored-by: hi-ogawa <[email protected]>
1 parent b8dbf3f commit 5b97a44

File tree

1 file changed

+9
-63
lines changed

1 file changed

+9
-63
lines changed

packages/plugin-rsc/src/plugin.ts

Lines changed: 9 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -270,64 +270,24 @@ export default function vitePluginRsc(
270270
const manager = new RscPluginManager()
271271

272272
const buildApp: NonNullable<BuilderOptions['buildApp']> = async (builder) => {
273-
const wrapLogger = (environment: any, phase: string) => {
274-
const originalLogger = environment.logger
275-
const wrappedLogger = {
276-
...originalLogger,
277-
info: (msg: string, options?: any) => {
278-
// Replace generic build messages with phase-specific ones
279-
if (
280-
msg.includes('building for production') ||
281-
msg.includes('building SSR bundle for production')
282-
) {
283-
msg = msg.replace(
284-
/building (for production|SSR bundle for production)/,
285-
`building ${phase}`,
286-
)
287-
}
288-
originalLogger.info(msg, options)
289-
},
290-
}
291-
environment.logger = wrappedLogger
292-
return () => {
293-
environment.logger = originalLogger
294-
}
295-
}
296-
297273
// no-ssr case
298274
// rsc -> client -> rsc -> client
299275
if (!builder.environments.ssr?.config.build.rollupOptions.input) {
300276
manager.isScanBuild = true
301277
builder.environments.rsc!.config.build.write = false
302278
builder.environments.client!.config.build.write = false
303-
let restore = wrapLogger(
304-
builder.environments.rsc!,
305-
'RSC bundle (analyze client references)',
306-
)
279+
manager.config.logger.info('[1/4] analyze client references...')
307280
await builder.build(builder.environments.rsc!)
308-
restore()
309-
restore = wrapLogger(
310-
builder.environments.client!,
311-
'client bundle (analyze dependencies)',
312-
)
281+
manager.config.logger.info('[2/4] analyze dependencies...')
313282
await builder.build(builder.environments.client!)
314-
restore()
315283
manager.isScanBuild = false
316284
builder.environments.rsc!.config.build.write = true
317285
builder.environments.client!.config.build.write = true
318-
restore = wrapLogger(
319-
builder.environments.rsc!,
320-
'RSC bundle for production',
321-
)
286+
manager.config.logger.info('[3/4] build rsc...')
322287
await builder.build(builder.environments.rsc!)
323-
restore()
324288
manager.stabilize()
325-
restore = wrapLogger(
326-
builder.environments.client!,
327-
'client bundle for production',
328-
)
289+
manager.config.logger.info('[4/4] build client...')
329290
await builder.build(builder.environments.client!)
330-
restore()
331291
writeAssetsManifest(['rsc'])
332292
return
333293
}
@@ -336,34 +296,20 @@ export default function vitePluginRsc(
336296
manager.isScanBuild = true
337297
builder.environments.rsc!.config.build.write = false
338298
builder.environments.ssr!.config.build.write = false
339-
let restore = wrapLogger(
340-
builder.environments.rsc!,
341-
'RSC bundle (analyze client references)',
342-
)
299+
manager.config.logger.info('[1/5] analyze client references...')
343300
await builder.build(builder.environments.rsc!)
344-
restore()
345-
restore = wrapLogger(
346-
builder.environments.ssr!,
347-
'SSR bundle (analyze dependencies)',
348-
)
301+
manager.config.logger.info('[2/5] analyze dependencies...')
349302
await builder.build(builder.environments.ssr!)
350-
restore()
351303
manager.isScanBuild = false
352304
builder.environments.rsc!.config.build.write = true
353305
builder.environments.ssr!.config.build.write = true
354-
restore = wrapLogger(builder.environments.rsc!, 'RSC bundle for production')
306+
manager.config.logger.info('[3/5] build rsc...')
355307
await builder.build(builder.environments.rsc!)
356-
restore()
357308
manager.stabilize()
358-
restore = wrapLogger(
359-
builder.environments.client!,
360-
'client bundle for production',
361-
)
309+
manager.config.logger.info('[4/5] build client...')
362310
await builder.build(builder.environments.client!)
363-
restore()
364-
restore = wrapLogger(builder.environments.ssr!, 'SSR bundle for production')
311+
manager.config.logger.info('[5/5] build ssr...')
365312
await builder.build(builder.environments.ssr!)
366-
restore()
367313
writeAssetsManifest(['ssr', 'rsc'])
368314
}
369315

0 commit comments

Comments
 (0)