@paretools/build 0.8.4 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,9 +1,9 @@
1
1
  import { type RunResult } from "@paretools/shared";
2
2
  export declare function tsc(args: string[], cwd?: string): Promise<RunResult>;
3
- export declare function runBuildCommand(cmd: string, args: string[], cwd?: string): Promise<RunResult>;
3
+ export declare function runBuildCommand(cmd: string, args: string[], cwd?: string, timeout?: number, env?: Record<string, string>): Promise<RunResult>;
4
4
  export declare function esbuildCmd(args: string[], cwd?: string): Promise<RunResult>;
5
5
  export declare function viteCmd(args: string[], cwd?: string): Promise<RunResult>;
6
- export declare function webpackCmd(args: string[], cwd?: string): Promise<RunResult>;
6
+ export declare function webpackCmd(args: string[], cwd?: string, env?: Record<string, string>): Promise<RunResult>;
7
7
  export declare function turboCmd(args: string[], cwd?: string): Promise<RunResult>;
8
8
  export declare function nxCmd(args: string[], cwd?: string): Promise<RunResult>;
9
9
  //# sourceMappingURL=build-runner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"build-runner.d.ts","sourceRoot":"","sources":["../../src/lib/build-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAExD,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAE1E;AAED,wBAAsB,eAAe,CACnC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,SAAS,CAAC,CAGpB;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAEjF;AAED,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAE9E;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAEjF;AAED,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAE/E;AAED,wBAAsB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAE5E"}
1
+ {"version":3,"file":"build-runner.d.ts","sourceRoot":"","sources":["../../src/lib/build-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAExD,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAE1E;AAED,wBAAsB,eAAe,CACnC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,CAAC,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,MAAM,EAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC3B,OAAO,CAAC,SAAS,CAAC,CAGpB;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAEjF;AAED,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAE9E;AAED,wBAAsB,UAAU,CAC9B,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,CAAC,EAAE,MAAM,EACZ,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC3B,OAAO,CAAC,SAAS,CAAC,CAEpB;AAED,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAE/E;AAED,wBAAsB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAE5E"}
@@ -1,19 +1,19 @@
1
1
  import { run } from "@paretools/shared";
2
2
  export async function tsc(args, cwd) {
3
- return run("npx", ["tsc", ...args], { cwd, timeout: 120_000 });
3
+ return run("npx", ["tsc", ...args], { cwd, timeout: 180_000 });
4
4
  }
5
- export async function runBuildCommand(cmd, args, cwd) {
5
+ export async function runBuildCommand(cmd, args, cwd, timeout, env) {
6
6
  // Build commands can take minutes for large projects
7
- return run(cmd, args, { cwd, timeout: 300_000 });
7
+ return run(cmd, args, { cwd, timeout: timeout ?? 300_000, env });
8
8
  }
9
9
  export async function esbuildCmd(args, cwd) {
10
- return run("npx", ["esbuild", ...args], { cwd, timeout: 120_000 });
10
+ return run("npx", ["esbuild", ...args], { cwd, timeout: 180_000 });
11
11
  }
12
12
  export async function viteCmd(args, cwd) {
13
13
  return run("npx", ["vite", "build", ...args], { cwd, timeout: 300_000 });
14
14
  }
15
- export async function webpackCmd(args, cwd) {
16
- return run("npx", ["webpack", ...args], { cwd, timeout: 300_000 });
15
+ export async function webpackCmd(args, cwd, env) {
16
+ return run("npx", ["webpack", ...args], { cwd, timeout: 300_000, env });
17
17
  }
18
18
  export async function turboCmd(args, cwd) {
19
19
  return run("npx", ["turbo", ...args], { cwd, timeout: 300_000 });
@@ -1 +1 @@
1
- {"version":3,"file":"build-runner.js","sourceRoot":"","sources":["../../src/lib/build-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAkB,MAAM,mBAAmB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,IAAc,EAAE,GAAY;IACpD,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAW,EACX,IAAc,EACd,GAAY;IAEZ,qDAAqD;IACrD,OAAO,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAc,EAAE,GAAY;IAC3D,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAAc,EAAE,GAAY;IACxD,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAc,EAAE,GAAY;IAC3D,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAc,EAAE,GAAY;IACzD,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,IAAc,EAAE,GAAY;IACtD,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AAChE,CAAC"}
1
+ {"version":3,"file":"build-runner.js","sourceRoot":"","sources":["../../src/lib/build-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAkB,MAAM,mBAAmB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,IAAc,EAAE,GAAY;IACpD,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAW,EACX,IAAc,EACd,GAAY,EACZ,OAAgB,EAChB,GAA4B;IAE5B,qDAAqD;IACrD,OAAO,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAc,EAAE,GAAY;IAC3D,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAAc,EAAE,GAAY;IACxD,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAAc,EACd,GAAY,EACZ,GAA4B;IAE5B,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAc,EAAE,GAAY;IACzD,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,IAAc,EAAE,GAAY;IACtD,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AAChE,CAAC"}
@@ -59,6 +59,7 @@ export interface BuildCompact {
59
59
  [key: string]: unknown;
60
60
  success: boolean;
61
61
  duration: number;
62
+ exitCode?: number;
62
63
  errors?: string[];
63
64
  warnings?: string[];
64
65
  }
@@ -1 +1 @@
1
- {"version":3,"file":"formatters.d.ts","sourceRoot":"","sources":["../../src/lib/formatters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formatters.d.ts","sourceRoot":"","sources":["../../src/lib/formatters.ts"],"names":[],"mappings":"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"}
@@ -13,13 +13,16 @@ export function formatTsc(data) {
13
13
  }
14
14
  /** Formats structured build command results into a human-readable success/failure summary. */
15
15
  export function formatBuildCommand(data) {
16
+ const exitInfo = data.exitCode !== undefined ? ` (exit ${data.exitCode})` : "";
16
17
  if (data.success) {
17
- const parts = [`Build succeeded in ${data.duration}s`];
18
+ const parts = [`Build succeeded in ${data.duration}s${exitInfo}`];
18
19
  if ((data.warnings ?? []).length)
19
20
  parts.push(`${(data.warnings ?? []).length} warnings`);
21
+ if (data.outputLines !== undefined)
22
+ parts.push(`${data.outputLines} output lines`);
20
23
  return parts.join(", ");
21
24
  }
22
- const lines = [`Build failed (${data.duration}s)`];
25
+ const lines = [`Build failed (${data.duration}s)${exitInfo}`];
23
26
  for (const err of data.errors ?? []) {
24
27
  lines.push(` ${err}`);
25
28
  }
@@ -37,6 +40,11 @@ export function formatEsbuild(data) {
37
40
  if (data.outputFiles && data.outputFiles.length > 0) {
38
41
  parts.push(`${data.outputFiles.length} output files`);
39
42
  }
43
+ if (data.metafile) {
44
+ const inputCount = Object.keys(data.metafile.inputs).length;
45
+ const outputCount = Object.keys(data.metafile.outputs).length;
46
+ parts.push(`${inputCount} inputs, ${outputCount} outputs`);
47
+ }
40
48
  return parts.join(", ");
41
49
  }
42
50
  const lines = [];
@@ -71,7 +79,8 @@ export function formatViteBuild(data) {
71
79
  if (outputs.length > 0) {
72
80
  lines.push(` ${outputs.length} output files:`);
73
81
  for (const out of outputs) {
74
- lines.push(` ${out.file} ${out.size}`);
82
+ const bytesInfo = out.sizeBytes !== undefined ? ` (${out.sizeBytes} bytes)` : "";
83
+ lines.push(` ${out.file} ${out.size}${bytesInfo}`);
75
84
  }
76
85
  }
77
86
  if (warnings.length > 0) {
@@ -106,6 +115,14 @@ export function formatWebpack(data) {
106
115
  const sizeKB = (asset.size / 1024).toFixed(1);
107
116
  lines.push(` ${asset.name} ${sizeKB} kB`);
108
117
  }
118
+ if (data.profile) {
119
+ lines.push(` Profile: ${data.profile.modules.length} modules with timing data`);
120
+ // Show top 5 slowest modules
121
+ const sorted = [...data.profile.modules].sort((a, b) => b.time - a.time).slice(0, 5);
122
+ for (const mod of sorted) {
123
+ lines.push(` ${mod.name} ${mod.time}ms`);
124
+ }
125
+ }
109
126
  return lines.join("\n");
110
127
  }
111
128
  const lines = [`webpack: build failed (${data.duration}s)`];
@@ -197,6 +214,8 @@ export function compactBuildMap(data) {
197
214
  success: data.success,
198
215
  duration: data.duration,
199
216
  };
217
+ if (data.exitCode !== undefined)
218
+ compact.exitCode = data.exitCode;
200
219
  if (data.errors?.length)
201
220
  compact.errors = data.errors;
202
221
  if (data.warnings?.length)
@@ -225,7 +244,8 @@ export function formatTurbo(data) {
225
244
  for (const t of tasks) {
226
245
  const cachePart = t.cache ? ` [${t.cache}]` : "";
227
246
  const durationPart = t.duration ? ` (${t.duration})` : "";
228
- lines.push(` ${t.package}#${t.task}: ${t.status}${cachePart}${durationPart}`);
247
+ const msPart = t.durationMs !== undefined ? ` [${t.durationMs}ms]` : "";
248
+ lines.push(` ${t.package}#${t.task}: ${t.status}${cachePart}${durationPart}${msPart}`);
229
249
  }
230
250
  return lines.join("\n");
231
251
  }
@@ -251,7 +271,7 @@ export function formatNx(data) {
251
271
  const lines = [summary];
252
272
  for (const task of tasks) {
253
273
  const icon = task.status === "success" ? "✔" : "✖";
254
- const cacheTag = task.cache ? " [cache]" : "";
274
+ const cacheTag = task.cache ? ` [${task.cache}]` : "";
255
275
  const dur = task.duration !== undefined ? ` (${task.duration}s)` : "";
256
276
  lines.push(` ${icon} ${task.project}:${task.target}${cacheTag}${dur}`);
257
277
  }
@@ -1 +1 @@
1
- {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../src/lib/formatters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../src/lib/formatters.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,23 @@
1
- import type { TscResult, BuildResult, EsbuildResult, ViteBuildResult, WebpackResult, TurboResult, NxResult } from "../schemas/index.js";
1
+ import type { TscResult, BuildResult, EsbuildResult, EsbuildMetafile, ViteBuildResult, WebpackResult, WebpackProfile, TurboResult, NxResult } from "../schemas/index.js";
2
2
  /** Parses TypeScript compiler (`tsc`) output into structured diagnostics with file, line, and error code. */
3
3
  export declare function parseTscOutput(stdout: string, stderr: string, exitCode: number): TscResult;
4
4
  /** Parses generic build command output into structured results with success status, errors, and warnings. */
5
5
  export declare function parseBuildCommandOutput(stdout: string, stderr: string, exitCode: number, duration: number): BuildResult;
6
6
  /** Parses esbuild stderr/stdout into structured errors, warnings, and output file info. */
7
- export declare function parseEsbuildOutput(stdout: string, stderr: string, exitCode: number, duration: number): EsbuildResult;
7
+ export declare function parseEsbuildOutput(stdout: string, stderr: string, exitCode: number, duration: number, metafilePath?: string, metafileContent?: string): EsbuildResult;
8
+ /** Parses an esbuild metafile JSON string into a structured metafile object. */
9
+ export declare function parseEsbuildMetafile(content: string): EsbuildMetafile | undefined;
10
+ /** Parses a human-readable size string (e.g. "45.2 kB", "1.5 MB", "320 B") into bytes.
11
+ * Returns undefined if the string cannot be parsed. */
12
+ export declare function parseSizeToBytes(sizeStr: string): number | undefined;
8
13
  /** Parses Vite production build output into structured file list with sizes. */
9
14
  export declare function parseViteBuildOutput(stdout: string, stderr: string, exitCode: number, duration: number): ViteBuildResult;
10
15
  /** Parses webpack --json output into structured assets, errors, warnings, and module count. */
11
- export declare function parseWebpackOutput(stdout: string, stderr: string, exitCode: number, duration: number): WebpackResult;
16
+ export declare function parseWebpackOutput(stdout: string, stderr: string, exitCode: number, duration: number, profileEnabled?: boolean): WebpackResult;
17
+ /** Extracts timing data from webpack modules when --profile is enabled. */
18
+ export declare function parseWebpackProfile(modules: Record<string, unknown>[]): WebpackProfile | undefined;
19
+ /** Parses a duration string like "100ms", "2.5s", "1m30s" into milliseconds. */
20
+ export declare function parseDurationToMs(durationStr: string): number | undefined;
12
21
  /** Parses Turborepo `turbo run` output into structured per-package task results with cache info. */
13
22
  export declare function parseTurboOutput(stdout: string, stderr: string, exitCode: number, duration: number): TurboResult;
14
23
  /** Parses Nx workspace command output into structured per-project task results. */
@@ -1 +1 @@
1
- {"version":3,"file":"parsers.d.ts","sourceRoot":"","sources":["../../src/lib/parsers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EAET,WAAW,EACX,aAAa,EAGb,eAAe,EAEf,aAAa,EACb,WAAW,EAEX,QAAQ,EAET,MAAM,qBAAqB,CAAC;AAK7B,6GAA6G;AAC7G,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,CA6B1F;AAED,6GAA6G;AAC7G,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,WAAW,CAsBb;AAeD,2FAA2F;AAC3F,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,aAAa,CA6Ef;AAUD,gFAAgF;AAChF,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,eAAe,CAwCjB;AAMD,+FAA+F;AAC/F,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,aAAa,CAsBf;AA0GD,oGAAoG;AACpG,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,WAAW,CAwEb;AAmBD,mFAAmF;AACnF,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,QAAQ,CA2CV"}
1
+ {"version":3,"file":"parsers.d.ts","sourceRoot":"","sources":["../../src/lib/parsers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EAET,WAAW,EACX,aAAa,EAGb,eAAe,EACf,eAAe,EAEf,aAAa,EACb,cAAc,EAEd,WAAW,EAEX,QAAQ,EAET,MAAM,qBAAqB,CAAC;AAK7B,6GAA6G;AAC7G,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,CA6B1F;AAmFD,6GAA6G;AAC7G,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,WAAW,CA0Bb;AAeD,2FAA2F;AAC3F,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,MAAM,EACrB,eAAe,CAAC,EAAE,MAAM,GACvB,aAAa,CAoFf;AAED,gFAAgF;AAChF,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAwBjF;AAUD;wDACwD;AACxD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAiBpE;AAED,gFAAgF;AAChF,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,eAAe,CAwCjB;AAMD,+FAA+F;AAC/F,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,OAAO,GACvB,aAAa,CAsBf;AAwDD,2EAA2E;AAC3E,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GACjC,cAAc,GAAG,SAAS,CA2B5B;AA2DD,gFAAgF;AAChF,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAoBzE;AAED,oGAAoG;AACpG,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,WAAW,CA2Eb;AAmBD,mFAAmF;AACnF,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,QAAQ,CA0DV"}
@@ -28,6 +28,83 @@ export function parseTscOutput(stdout, stderr, exitCode) {
28
28
  warnings,
29
29
  };
30
30
  }
31
+ // ---------------------------------------------------------------------------
32
+ // Improved error/warning heuristics (Gap #78)
33
+ // ---------------------------------------------------------------------------
34
+ /** Patterns that identify an error line in generic build output.
35
+ * Each pattern is tested against the full line (case-insensitive unless
36
+ * the regex already specifies flags). */
37
+ const BUILD_ERROR_PATTERNS = [
38
+ // TypeScript: error TS1234
39
+ /\berror\s+TS\d+/i,
40
+ // Webpack: ERROR in ./path
41
+ /^ERROR\s+in\s+/,
42
+ // Generic: Error: message (capital E, colon after)
43
+ /\bError:\s/,
44
+ // Generic: error: message (lowercase, colon after — compilers like clang, rustc)
45
+ /\berror:\s/,
46
+ // Failed / FAILED
47
+ /\bFAILED\b/,
48
+ // Build failed
49
+ /\bbuild\s+failed\b/i,
50
+ // Compilation failed
51
+ /\bcompilation\s+failed\b/i,
52
+ // Module not found (webpack/rollup)
53
+ /\bModule\s+not\s+found\b/i,
54
+ // SyntaxError
55
+ /\bSyntaxError\b/,
56
+ // ReferenceError, TypeError (runtime errors surfaced during build)
57
+ /\bReferenceError\b/,
58
+ /\bTypeError\b/,
59
+ ];
60
+ /** Patterns that identify a warning line. */
61
+ const BUILD_WARNING_PATTERNS = [
62
+ // TypeScript: warning TS1234
63
+ /\bwarning\s+TS\d+/i,
64
+ // Webpack: WARNING in ./path
65
+ /^WARNING\s+in\s+/,
66
+ // Generic: Warning: message (capital W, colon after)
67
+ /\bWarning:\s/,
68
+ // Generic: warning: message (lowercase, colon after)
69
+ /\bwarning:\s/,
70
+ // WARN prefix (npm, pnpm, vite)
71
+ /\bWARN\b/,
72
+ // Vite/Rollup: (!) prefix for warnings
73
+ /^\(\!\)\s/,
74
+ // Deprecation warnings
75
+ /\bDeprecationWarning\b/,
76
+ /\bdeprecated\b/i,
77
+ ];
78
+ /** Lines that should NOT be classified as errors even though they match error patterns.
79
+ * For example "0 errors" or "Found 0 errors". */
80
+ const BUILD_ERROR_EXCLUDE = [
81
+ /\b0\s+errors?\b/i,
82
+ /\bno\s+errors?\b/i,
83
+ /\berrors?:\s*0\b/i,
84
+ ];
85
+ /** Lines that should NOT be classified as warnings. */
86
+ const BUILD_WARNING_EXCLUDE = [
87
+ /\b0\s+warnings?\b/i,
88
+ /\bno\s+warnings?\b/i,
89
+ /\bwarnings?:\s*0\b/i,
90
+ ];
91
+ function matchesAny(line, patterns) {
92
+ return patterns.some((p) => p.test(line));
93
+ }
94
+ function isErrorLine(line) {
95
+ if (!matchesAny(line, BUILD_ERROR_PATTERNS))
96
+ return false;
97
+ if (matchesAny(line, BUILD_ERROR_EXCLUDE))
98
+ return false;
99
+ return true;
100
+ }
101
+ function isWarningLine(line) {
102
+ if (!matchesAny(line, BUILD_WARNING_PATTERNS))
103
+ return false;
104
+ if (matchesAny(line, BUILD_WARNING_EXCLUDE))
105
+ return false;
106
+ return true;
107
+ }
31
108
  /** Parses generic build command output into structured results with success status, errors, and warnings. */
32
109
  export function parseBuildCommandOutput(stdout, stderr, exitCode, duration) {
33
110
  const output = stdout + "\n" + stderr;
@@ -35,19 +112,23 @@ export function parseBuildCommandOutput(stdout, stderr, exitCode, duration) {
35
112
  const errors = [];
36
113
  const warnings = [];
37
114
  for (const line of lines) {
38
- const lower = line.toLowerCase();
39
- if (lower.includes("error") && !lower.includes("0 error")) {
40
- errors.push(line.trim());
115
+ const trimmed = line.trim();
116
+ if (isErrorLine(trimmed)) {
117
+ errors.push(trimmed);
41
118
  }
42
- else if (lower.includes("warn") && !lower.includes("0 warn")) {
43
- warnings.push(line.trim());
119
+ else if (isWarningLine(trimmed)) {
120
+ warnings.push(trimmed);
44
121
  }
45
122
  }
46
123
  return {
47
124
  success: exitCode === 0,
125
+ exitCode,
48
126
  duration,
49
127
  errors,
50
128
  warnings,
129
+ stdout: stdout || undefined,
130
+ stderr: stderr || undefined,
131
+ outputLines: lines.length,
51
132
  };
52
133
  }
53
134
  // ---------------------------------------------------------------------------
@@ -62,7 +143,7 @@ const ESBUILD_LOCATION_RE = /^\s+(.+?):(\d+):(\d+):$/;
62
143
  // Alternate format from older esbuild / --log-level output
63
144
  const ESBUILD_INLINE_RE = /^>\s*(.+?):(\d+):(\d+):\s+(error|warning):\s+(.+)$/;
64
145
  /** Parses esbuild stderr/stdout into structured errors, warnings, and output file info. */
65
- export function parseEsbuildOutput(stdout, stderr, exitCode, duration) {
146
+ export function parseEsbuildOutput(stdout, stderr, exitCode, duration, metafilePath, metafileContent) {
66
147
  const errors = [];
67
148
  const warnings = [];
68
149
  const outputFiles = [];
@@ -125,20 +206,71 @@ export function parseEsbuildOutput(stdout, stderr, exitCode, duration) {
125
206
  outputFiles.push(trimmed);
126
207
  }
127
208
  }
209
+ // Parse metafile if provided (Gap #80)
210
+ let metafile;
211
+ if (metafileContent) {
212
+ metafile = parseEsbuildMetafile(metafileContent);
213
+ }
128
214
  return {
129
215
  success: exitCode === 0,
130
216
  errors,
131
217
  warnings,
132
218
  outputFiles: outputFiles.length > 0 ? outputFiles : undefined,
133
219
  duration,
220
+ metafile,
134
221
  };
135
222
  }
223
+ /** Parses an esbuild metafile JSON string into a structured metafile object. */
224
+ export function parseEsbuildMetafile(content) {
225
+ try {
226
+ const raw = JSON.parse(content);
227
+ const inputs = {};
228
+ const outputs = {};
229
+ const rawInputs = raw.inputs;
230
+ if (rawInputs && typeof rawInputs === "object") {
231
+ for (const [key, val] of Object.entries(rawInputs)) {
232
+ inputs[key] = { bytes: typeof val.bytes === "number" ? val.bytes : 0 };
233
+ }
234
+ }
235
+ const rawOutputs = raw.outputs;
236
+ if (rawOutputs && typeof rawOutputs === "object") {
237
+ for (const [key, val] of Object.entries(rawOutputs)) {
238
+ outputs[key] = { bytes: typeof val.bytes === "number" ? val.bytes : 0 };
239
+ }
240
+ }
241
+ return { inputs, outputs };
242
+ }
243
+ catch {
244
+ return undefined;
245
+ }
246
+ }
136
247
  // ---------------------------------------------------------------------------
137
248
  // vite-build
138
249
  // ---------------------------------------------------------------------------
139
250
  // Vite output format: dist/assets/index-abc123.js 12.34 kB │ gzip: 4.56 kB
140
251
  // or: dist/index.html 0.45 kB │ gzip: 0.29 kB
141
252
  const VITE_OUTPUT_RE = /^\s*(.+?)\s{2,}(\d+[\d.]*\s*[kKmMgG]?[bB])\s/;
253
+ /** Parses a human-readable size string (e.g. "45.2 kB", "1.5 MB", "320 B") into bytes.
254
+ * Returns undefined if the string cannot be parsed. */
255
+ export function parseSizeToBytes(sizeStr) {
256
+ const match = sizeStr.trim().match(/^(\d+(?:\.\d+)?)\s*([kKmMgG]?[bB])$/);
257
+ if (!match)
258
+ return undefined;
259
+ const value = parseFloat(match[1]);
260
+ const unit = match[2].toLowerCase();
261
+ switch (unit) {
262
+ case "b":
263
+ return Math.round(value);
264
+ case "kb":
265
+ return Math.round(value * 1000);
266
+ case "mb":
267
+ return Math.round(value * 1_000_000);
268
+ case "gb":
269
+ return Math.round(value * 1_000_000_000);
270
+ default:
271
+ return undefined;
272
+ }
273
+ }
142
274
  /** Parses Vite production build output into structured file list with sizes. */
143
275
  export function parseViteBuildOutput(stdout, stderr, exitCode, duration) {
144
276
  const outputs = [];
@@ -154,19 +286,19 @@ export function parseViteBuildOutput(stdout, stderr, exitCode, duration) {
154
286
  const size = outputMatch[2].trim();
155
287
  // Skip lines that are clearly not file outputs (e.g. header lines)
156
288
  if (file && !file.startsWith("vite") && !file.startsWith("building")) {
157
- outputs.push({ file, size });
289
+ const sizeBytes = parseSizeToBytes(size);
290
+ outputs.push({ file, size, sizeBytes });
158
291
  continue;
159
292
  }
160
293
  }
161
294
  // Collect error and warning lines
162
- const lower = line.toLowerCase();
163
295
  const trimmed = line.trim();
164
296
  if (!trimmed)
165
297
  continue;
166
- if (lower.includes("error") && !lower.includes("0 error")) {
298
+ if (isErrorLine(trimmed)) {
167
299
  errors.push(trimmed);
168
300
  }
169
- else if (lower.includes("warn") && !lower.includes("0 warn")) {
301
+ else if (isWarningLine(trimmed)) {
170
302
  warnings.push(trimmed);
171
303
  }
172
304
  }
@@ -182,7 +314,7 @@ export function parseViteBuildOutput(stdout, stderr, exitCode, duration) {
182
314
  // webpack
183
315
  // ---------------------------------------------------------------------------
184
316
  /** Parses webpack --json output into structured assets, errors, warnings, and module count. */
185
- export function parseWebpackOutput(stdout, stderr, exitCode, duration) {
317
+ export function parseWebpackOutput(stdout, stderr, exitCode, duration, profileEnabled) {
186
318
  // webpack --json outputs a JSON stats object to stdout
187
319
  // Try to parse it; fall back to basic error extraction if it fails
188
320
  let jsonStats;
@@ -198,12 +330,12 @@ export function parseWebpackOutput(stdout, stderr, exitCode, duration) {
198
330
  // JSON parsing failed; fall back to text parsing
199
331
  }
200
332
  if (jsonStats) {
201
- return parseWebpackJson(jsonStats, exitCode, duration);
333
+ return parseWebpackJson(jsonStats, exitCode, duration, profileEnabled);
202
334
  }
203
335
  // Fallback: parse as text output
204
336
  return parseWebpackText(stdout, stderr, exitCode, duration);
205
337
  }
206
- function parseWebpackJson(stats, exitCode, duration) {
338
+ function parseWebpackJson(stats, exitCode, duration, profileEnabled) {
207
339
  const rawAssets = Array.isArray(stats.assets) ? stats.assets : [];
208
340
  const assets = rawAssets.map((a) => ({
209
341
  name: String(a.name ?? ""),
@@ -234,6 +366,11 @@ function parseWebpackJson(stats, exitCode, duration) {
234
366
  else if (Array.isArray(stats.modules)) {
235
367
  modules = stats.modules.length;
236
368
  }
369
+ // Parse profile data from modules when --profile is enabled (Gap #85)
370
+ let profile;
371
+ if (profileEnabled && Array.isArray(stats.modules)) {
372
+ profile = parseWebpackProfile(stats.modules);
373
+ }
237
374
  return {
238
375
  success: exitCode === 0 && errors.length === 0,
239
376
  duration,
@@ -241,20 +378,47 @@ function parseWebpackJson(stats, exitCode, duration) {
241
378
  errors,
242
379
  warnings,
243
380
  modules,
381
+ profile,
244
382
  };
245
383
  }
384
+ /** Extracts timing data from webpack modules when --profile is enabled. */
385
+ export function parseWebpackProfile(modules) {
386
+ const profileModules = [];
387
+ for (const mod of modules) {
388
+ const name = typeof mod.name === "string" ? mod.name : String(mod.name ?? "");
389
+ // webpack --profile adds profile.total (or profile.building) to each module
390
+ let time = 0;
391
+ const profileData = mod.profile;
392
+ if (profileData && typeof profileData === "object") {
393
+ // webpack profile object has: factory, building, dependencies, etc.
394
+ // The total time is the sum of factory + building + dependencies
395
+ const factory = typeof profileData.factory === "number" ? profileData.factory : 0;
396
+ const building = typeof profileData.building === "number" ? profileData.building : 0;
397
+ const dependencies = typeof profileData.dependencies === "number" ? profileData.dependencies : 0;
398
+ time = factory + building + dependencies;
399
+ }
400
+ else if (typeof mod.time === "number") {
401
+ time = mod.time;
402
+ }
403
+ if (name && time > 0) {
404
+ profileModules.push({ name, time });
405
+ }
406
+ }
407
+ if (profileModules.length === 0)
408
+ return undefined;
409
+ return { modules: profileModules };
410
+ }
246
411
  function parseWebpackText(stdout, stderr, exitCode, duration) {
247
412
  const combined = stdout + "\n" + stderr;
248
413
  const lines = combined.split("\n").filter(Boolean);
249
414
  const errors = [];
250
415
  const warnings = [];
251
416
  for (const line of lines) {
252
- const lower = line.toLowerCase();
253
417
  const trimmed = line.trim();
254
- if (lower.includes("error") && !lower.includes("0 error")) {
418
+ if (isErrorLine(trimmed)) {
255
419
  errors.push(trimmed);
256
420
  }
257
- else if (lower.includes("warn") && !lower.includes("0 warn")) {
421
+ else if (isWarningLine(trimmed)) {
258
422
  warnings.push(trimmed);
259
423
  }
260
424
  }
@@ -288,6 +452,27 @@ const TURBO_TASK_FAIL_RE = /^(.+?)#(\S+):.*(?:exited\s*\(\d+\)|ERROR)/;
288
452
  // Summary lines
289
453
  const TURBO_TASKS_SUMMARY_RE = /Tasks:\s+(\d+)\s+successful,\s+(\d+)\s+total/;
290
454
  const TURBO_CACHED_RE = /Cached:\s+(\d+)\s+cached,\s+(\d+)\s+total/;
455
+ /** Parses a duration string like "100ms", "2.5s", "1m30s" into milliseconds. */
456
+ export function parseDurationToMs(durationStr) {
457
+ // Try ms format: "100ms", "1234ms"
458
+ const msMatch = durationStr.match(/^(\d+(?:\.\d+)?)\s*ms$/i);
459
+ if (msMatch)
460
+ return Math.round(parseFloat(msMatch[1]));
461
+ // Try seconds format: "2.5s", "10s"
462
+ const sMatch = durationStr.match(/^(\d+(?:\.\d+)?)\s*s$/i);
463
+ if (sMatch)
464
+ return Math.round(parseFloat(sMatch[1]) * 1000);
465
+ // Try minutes+seconds: "1m30s"
466
+ const minsMatch = durationStr.match(/^(\d+)m(\d+(?:\.\d+)?)s$/i);
467
+ if (minsMatch) {
468
+ return Math.round(parseInt(minsMatch[1], 10) * 60_000 + parseFloat(minsMatch[2]) * 1000);
469
+ }
470
+ // Try minutes only: "2m"
471
+ const mOnlyMatch = durationStr.match(/^(\d+(?:\.\d+)?)\s*m$/i);
472
+ if (mOnlyMatch)
473
+ return Math.round(parseFloat(mOnlyMatch[1]) * 60_000);
474
+ return undefined;
475
+ }
291
476
  /** Parses Turborepo `turbo run` output into structured per-package task results with cache info. */
292
477
  export function parseTurboOutput(stdout, stderr, exitCode, duration) {
293
478
  const tasks = [];
@@ -304,11 +489,14 @@ export function parseTurboOutput(stdout, stderr, exitCode, duration) {
304
489
  const key = `${taskMatch[1]}#${taskMatch[2]}`;
305
490
  if (!seenTasks.has(key)) {
306
491
  seenTasks.add(key);
492
+ const durationStr = taskMatch[4];
493
+ const durationMs = parseDurationToMs(durationStr);
307
494
  tasks.push({
308
495
  package: taskMatch[1],
309
496
  task: taskMatch[2],
310
497
  status: "pass",
311
- duration: taskMatch[4],
498
+ duration: durationStr,
499
+ durationMs,
312
500
  cache: taskMatch[3] === "hit" ? "hit" : "miss",
313
501
  });
314
502
  }
@@ -383,19 +571,35 @@ export function parseNxOutput(stdout, stderr, exitCode, duration) {
383
571
  const trimmed = line.trimStart();
384
572
  const isFailure = trimmed.startsWith("✖") || trimmed.startsWith("✗");
385
573
  const status = isFailure ? "failure" : "success";
574
+ // Distinguish local vs remote cache (Gap #81)
575
+ let cache;
576
+ if (cacheInfo) {
577
+ const lower = cacheInfo.toLowerCase();
578
+ if (lower.includes("remote")) {
579
+ cache = "remote";
580
+ }
581
+ else if (lower.includes("local")) {
582
+ cache = "local";
583
+ }
584
+ else {
585
+ // Unknown cache type — treat as local
586
+ cache = "local";
587
+ }
588
+ }
589
+ // Tasks without cache info: no cache field (undefined means not cached)
386
590
  tasks.push({
387
591
  project,
388
592
  target,
389
593
  status,
390
594
  duration: dur,
391
- cache: cacheInfo ? true : undefined,
595
+ cache,
392
596
  });
393
597
  continue;
394
598
  }
395
599
  }
396
600
  const passed = tasks.filter((t) => t.status === "success").length;
397
601
  const failed = tasks.filter((t) => t.status === "failure").length;
398
- const cached = tasks.filter((t) => t.cache === true).length;
602
+ const cached = tasks.filter((t) => t.cache !== undefined).length;
399
603
  return {
400
604
  success: exitCode === 0,
401
605
  duration,