From 8282be46e12bb06294aa3f9ddd62e51ecd7832a8 Mon Sep 17 00:00:00 2001 From: Gert Hengeveld Date: Thu, 26 Nov 2020 14:14:24 +0100 Subject: [PATCH 1/2] Make times and stats completely optional. --- lib/core/src/server/build-dev.ts | 11 +++++------ lib/core/src/server/dev-server.ts | 4 ++-- lib/core/src/server/types.ts | 8 ++++---- 3 files changed, 11 insertions(+), 12 deletions(-) diff --git a/lib/core/src/server/build-dev.ts b/lib/core/src/server/build-dev.ts index 684a0d1f1ba1..32fcecc8f63a 100644 --- a/lib/core/src/server/build-dev.ts +++ b/lib/core/src/server/build-dev.ts @@ -153,8 +153,8 @@ function outputStartupInformation(options: { version: string; address: string; networkAddress: string; - managerTotalTime: [number, number]; - previewTotalTime: [number, number]; + managerTotalTime?: [number, number]; + previewTotalTime?: [number, number]; }) { const { updateInfo, @@ -283,10 +283,9 @@ export async function buildDevStandalone( if (options.smokeTest) { await outputStats(previewStats, managerStats); - const managerWarnings = (managerStats as any).toJson().warnings.length > 0; - const previewWarnings = - !options.ignorePreview && (previewStats as any).toJson().warnings.length > 0; - process.exit(managerWarnings || previewWarnings ? 1 : 0); + const hasManagerWarnings = managerStats && (managerStats as any).toJson().warnings.length > 0; + const hasPreviewWarnings = previewStats && (previewStats as any).toJson().warnings.length > 0; + process.exit(hasManagerWarnings || (hasPreviewWarnings && !options.ignorePreview) ? 1 : 0); return; } diff --git a/lib/core/src/server/dev-server.ts b/lib/core/src/server/dev-server.ts index fce777198134..c5e2335696c4 100644 --- a/lib/core/src/server/dev-server.ts +++ b/lib/core/src/server/dev-server.ts @@ -258,7 +258,7 @@ const startManager = async ({ } if (!managerConfig) { - return { managerStats: null, managerTotalTime: [0, 0] } as ManagerResult; + return {} as ManagerResult; } const compiler = webpack(managerConfig); @@ -311,7 +311,7 @@ const startPreview = async ({ outputDir, }: any): Promise => { if (options.ignorePreview) { - return { previewStats: null, previewTotalTime: [0, 0] } as PreviewResult; + return {} as PreviewResult; } const previewConfig = await loadConfig({ diff --git a/lib/core/src/server/types.ts b/lib/core/src/server/types.ts index 6993a9dd0dbf..bcd4062089fc 100644 --- a/lib/core/src/server/types.ts +++ b/lib/core/src/server/types.ts @@ -94,13 +94,13 @@ export interface ReleaseNotesData { } export interface PreviewResult { - previewStats: Stats; - previewTotalTime: [number, number]; + previewStats?: Stats; + previewTotalTime?: [number, number]; } export interface ManagerResult { - managerStats: Stats; - managerTotalTime: [number, number]; + managerStats?: Stats; + managerTotalTime?: [number, number]; } // TODO: this is a generic interface that we can share across multiple SB packages (like @storybook/cli) From 48437b7555afaa69f75307ded21c83d4dafeb70f Mon Sep 17 00:00:00 2001 From: Gert Hengeveld Date: Thu, 26 Nov 2020 15:19:52 +0100 Subject: [PATCH 2/2] Remove needless type casts. --- lib/core/src/server/build-dev.ts | 4 ++-- lib/core/src/server/dev-server.ts | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/core/src/server/build-dev.ts b/lib/core/src/server/build-dev.ts index 32fcecc8f63a..622df7aea7fe 100644 --- a/lib/core/src/server/build-dev.ts +++ b/lib/core/src/server/build-dev.ts @@ -283,8 +283,8 @@ export async function buildDevStandalone( if (options.smokeTest) { await outputStats(previewStats, managerStats); - const hasManagerWarnings = managerStats && (managerStats as any).toJson().warnings.length > 0; - const hasPreviewWarnings = previewStats && (previewStats as any).toJson().warnings.length > 0; + const hasManagerWarnings = managerStats && managerStats.toJson().warnings.length > 0; + const hasPreviewWarnings = previewStats && previewStats.toJson().warnings.length > 0; process.exit(hasManagerWarnings || (hasPreviewWarnings && !options.ignorePreview) ? 1 : 0); return; } diff --git a/lib/core/src/server/dev-server.ts b/lib/core/src/server/dev-server.ts index c5e2335696c4..10e964d4f79f 100644 --- a/lib/core/src/server/dev-server.ts +++ b/lib/core/src/server/dev-server.ts @@ -258,7 +258,7 @@ const startManager = async ({ } if (!managerConfig) { - return {} as ManagerResult; + return {}; } const compiler = webpack(managerConfig); @@ -311,7 +311,7 @@ const startPreview = async ({ outputDir, }: any): Promise => { if (options.ignorePreview) { - return {} as PreviewResult; + return {}; } const previewConfig = await loadConfig({