@paretools/python 0.8.5 → 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.
Files changed (59) hide show
  1. package/dist/lib/formatters.d.ts +22 -4
  2. package/dist/lib/formatters.d.ts.map +1 -1
  3. package/dist/lib/formatters.js +121 -29
  4. package/dist/lib/formatters.js.map +1 -1
  5. package/dist/lib/parsers.d.ts +23 -12
  6. package/dist/lib/parsers.d.ts.map +1 -1
  7. package/dist/lib/parsers.js +284 -33
  8. package/dist/lib/parsers.js.map +1 -1
  9. package/dist/lib/python-runner.d.ts +2 -0
  10. package/dist/lib/python-runner.d.ts.map +1 -1
  11. package/dist/lib/python-runner.js +12 -8
  12. package/dist/lib/python-runner.js.map +1 -1
  13. package/dist/schemas/index.d.ts +103 -7
  14. package/dist/schemas/index.d.ts.map +1 -1
  15. package/dist/schemas/index.js +80 -8
  16. package/dist/schemas/index.js.map +1 -1
  17. package/dist/tools/black.d.ts.map +1 -1
  18. package/dist/tools/black.js +44 -1
  19. package/dist/tools/black.js.map +1 -1
  20. package/dist/tools/conda.d.ts.map +1 -1
  21. package/dist/tools/conda.js +22 -2
  22. package/dist/tools/conda.js.map +1 -1
  23. package/dist/tools/mypy.d.ts.map +1 -1
  24. package/dist/tools/mypy.js +103 -4
  25. package/dist/tools/mypy.js.map +1 -1
  26. package/dist/tools/pip-audit.d.ts.map +1 -1
  27. package/dist/tools/pip-audit.js +74 -6
  28. package/dist/tools/pip-audit.js.map +1 -1
  29. package/dist/tools/pip-install.d.ts.map +1 -1
  30. package/dist/tools/pip-install.js +87 -2
  31. package/dist/tools/pip-install.js.map +1 -1
  32. package/dist/tools/pip-list.d.ts.map +1 -1
  33. package/dist/tools/pip-list.js +58 -4
  34. package/dist/tools/pip-list.js.map +1 -1
  35. package/dist/tools/pip-show.d.ts.map +1 -1
  36. package/dist/tools/pip-show.js +48 -5
  37. package/dist/tools/pip-show.js.map +1 -1
  38. package/dist/tools/poetry.d.ts.map +1 -1
  39. package/dist/tools/poetry.js +48 -3
  40. package/dist/tools/poetry.js.map +1 -1
  41. package/dist/tools/pyenv.d.ts.map +1 -1
  42. package/dist/tools/pyenv.js +63 -8
  43. package/dist/tools/pyenv.js.map +1 -1
  44. package/dist/tools/pytest.d.ts.map +1 -1
  45. package/dist/tools/pytest.js +76 -2
  46. package/dist/tools/pytest.js.map +1 -1
  47. package/dist/tools/ruff-format.d.ts.map +1 -1
  48. package/dist/tools/ruff-format.js +85 -1
  49. package/dist/tools/ruff-format.js.map +1 -1
  50. package/dist/tools/ruff.d.ts.map +1 -1
  51. package/dist/tools/ruff.js +86 -2
  52. package/dist/tools/ruff.js.map +1 -1
  53. package/dist/tools/uv-install.d.ts.map +1 -1
  54. package/dist/tools/uv-install.js +78 -2
  55. package/dist/tools/uv-install.js.map +1 -1
  56. package/dist/tools/uv-run.d.ts.map +1 -1
  57. package/dist/tools/uv-run.js +69 -2
  58. package/dist/tools/uv-run.js.map +1 -1
  59. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"parsers.d.ts","sourceRoot":"","sources":["../../src/lib/parsers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EAEV,UAAU,EACV,cAAc,EACd,YAAY,EACZ,SAAS,EACT,KAAK,EACL,WAAW,EACX,OAAO,EACP,OAAO,EACP,gBAAgB,EAChB,SAAS,EACT,SAAS,EACT,YAAY,EACZ,WAAW,EACX,YAAY,EACb,MAAM,qBAAqB,CAAC;AAK7B,wGAAwG;AACxG,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,CAyB5F;AAID,uGAAuG;AACvG,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,CA8B5E;AAED,6GAA6G;AAC7G,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAsBxD;AAWD,oGAAoG;AACpG,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,CAmBhE;AAqBD,8GAA8G;AAC9G,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,YAAY,CAsFhG;AAMD,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,CAwB1F;AAED,kFAAkF;AAClF,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,KAAK,CAQP;AAOD,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,WAAW,CAsD9F;AAED,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAkBxD;AAED,qFAAqF;AACrF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CA4B1D;AAED,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAC9D,WAAW,CAwDb;AAID,2EAA2E;AAC3E,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,gBAAgB,CAuBlB;AAWD,sEAAsE;AACtE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAoB9E;AAcD,wEAAwE;AACxE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CA4B5D;AAMD,8EAA8E;AAC9E,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,YAAY,CAoBzF;AAYD,+EAA+E;AAC/E,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GACtD,YAAY,CAmDd"}
1
+ {"version":3,"file":"parsers.d.ts","sourceRoot":"","sources":["../../src/lib/parsers.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,11 @@
1
- /** Parses `pip install` output into structured data with installed packages and satisfaction status. */
1
+ /** Parses `pip install` output into structured data with installed packages and satisfaction status.
2
+ * Handles both normal installs ("Successfully installed ...") and dry-run output ("Would install ..."). */
2
3
  export function parsePipInstall(stdout, stderr, exitCode) {
3
4
  const output = stdout + "\n" + stderr;
4
5
  const alreadySatisfied = output.includes("already satisfied");
6
+ const dryRun = output.includes("Would install") || output.includes("--dry-run");
5
7
  const installed = [];
8
+ // Normal mode: "Successfully installed pkg-1.0.0 pkg2-2.0.0"
6
9
  const installMatch = output.match(/Successfully installed (.+)/);
7
10
  if (installMatch) {
8
11
  const packages = installMatch[1].trim().split(/\s+/);
@@ -16,16 +19,66 @@ export function parsePipInstall(stdout, stderr, exitCode) {
16
19
  }
17
20
  }
18
21
  }
22
+ // Dry-run mode: "Would install pkg-1.0.0 pkg2-2.0.0"
23
+ if (installed.length === 0) {
24
+ const dryRunMatch = output.match(/Would install (.+)/);
25
+ if (dryRunMatch) {
26
+ const packages = dryRunMatch[1].trim().split(/\s+/);
27
+ for (const pkg of packages) {
28
+ const lastDash = pkg.lastIndexOf("-");
29
+ if (lastDash > 0) {
30
+ installed.push({
31
+ name: pkg.slice(0, lastDash),
32
+ version: pkg.slice(lastDash + 1),
33
+ });
34
+ }
35
+ }
36
+ }
37
+ }
19
38
  return {
20
39
  success: exitCode === 0,
21
40
  installed,
22
41
  alreadySatisfied,
42
+ dryRun,
23
43
  total: installed.length,
24
44
  };
25
45
  }
26
46
  const MYPY_RE = /^(.+?):(\d+)(?::(\d+))?: (error|warning|note): (.+?)(?:\s+\[([^\]]+)\])?$/;
27
- /** Parses mypy type-checker output into structured diagnostics with file locations and error codes. */
28
- export function parseMypyOutput(stdout, exitCode) {
47
+ /** Parses mypy JSON output (from `--output json`) into structured diagnostics. */
48
+ export function parseMypyJsonOutput(stdout, exitCode) {
49
+ let entries;
50
+ try {
51
+ entries = JSON.parse(stdout);
52
+ }
53
+ catch {
54
+ // Fall back to text parsing if JSON parsing fails (older mypy without --output json)
55
+ return parseMypyTextOutput(stdout, exitCode);
56
+ }
57
+ if (!Array.isArray(entries)) {
58
+ return parseMypyTextOutput(stdout, exitCode);
59
+ }
60
+ const diagnostics = entries.map((e) => ({
61
+ file: e.file,
62
+ line: e.line,
63
+ column: e.column > 0 ? e.column : undefined,
64
+ severity: e.severity,
65
+ message: e.message,
66
+ code: e.code || undefined,
67
+ }));
68
+ const errors = diagnostics.filter((d) => d.severity === "error").length;
69
+ const warnings = diagnostics.filter((d) => d.severity === "warning").length;
70
+ const notes = diagnostics.filter((d) => d.severity === "note").length;
71
+ return {
72
+ success: exitCode === 0,
73
+ diagnostics,
74
+ total: diagnostics.length,
75
+ errors,
76
+ warnings,
77
+ notes,
78
+ };
79
+ }
80
+ /** Parses mypy text output into structured diagnostics (fallback for older mypy without JSON). */
81
+ export function parseMypyTextOutput(stdout, exitCode) {
29
82
  const lines = stdout.split("\n");
30
83
  const diagnostics = [];
31
84
  for (const line of lines) {
@@ -42,23 +95,30 @@ export function parseMypyOutput(stdout, exitCode) {
42
95
  }
43
96
  }
44
97
  const errors = diagnostics.filter((d) => d.severity === "error").length;
45
- const warnings = diagnostics.filter((d) => d.severity === "warning" || d.severity === "note").length;
98
+ const warnings = diagnostics.filter((d) => d.severity === "warning").length;
99
+ const notes = diagnostics.filter((d) => d.severity === "note").length;
46
100
  return {
47
101
  success: exitCode === 0,
48
102
  diagnostics,
49
103
  total: diagnostics.length,
50
104
  errors,
51
105
  warnings,
106
+ notes,
52
107
  };
53
108
  }
109
+ /** Parses mypy output: tries JSON first, falls back to text parsing.
110
+ * @deprecated Use parseMypyJsonOutput (which auto-falls back) instead. Kept for backward compat. */
111
+ export function parseMypyOutput(stdout, exitCode) {
112
+ return parseMypyTextOutput(stdout, exitCode);
113
+ }
54
114
  /** Parses `ruff check --output-format json` output into structured lint diagnostics with fixability info. */
55
- export function parseRuffJson(stdout) {
115
+ export function parseRuffJson(stdout, exitCode) {
56
116
  let entries;
57
117
  try {
58
118
  entries = JSON.parse(stdout);
59
119
  }
60
120
  catch {
61
- return { diagnostics: [], total: 0, fixable: 0 };
121
+ return { success: exitCode === 0, diagnostics: [], total: 0, fixable: 0 };
62
122
  }
63
123
  const diagnostics = entries.map((e) => ({
64
124
  file: e.filename,
@@ -69,18 +129,32 @@ export function parseRuffJson(stdout) {
69
129
  code: e.code,
70
130
  message: e.message,
71
131
  fixable: !!e.fix,
132
+ fixApplicability: extractFixApplicability(e.fix),
133
+ url: e.url || undefined,
72
134
  }));
73
135
  const fixable = diagnostics.filter((d) => d.fixable).length;
74
- return { diagnostics, total: diagnostics.length, fixable };
136
+ return { success: exitCode === 0, diagnostics, total: diagnostics.length, fixable };
137
+ }
138
+ /** Extracts fix applicability from a ruff fix object. */
139
+ function extractFixApplicability(fix) {
140
+ if (!fix)
141
+ return undefined;
142
+ if (typeof fix === "object" && "applicability" in fix && typeof fix.applicability === "string") {
143
+ const val = fix.applicability.toLowerCase();
144
+ if (val === "safe" || val === "unsafe" || val === "display") {
145
+ return val;
146
+ }
147
+ }
148
+ return undefined;
75
149
  }
76
150
  /** Parses `pip-audit --format json` output into structured vulnerability data with fix versions. */
77
- export function parsePipAuditJson(stdout) {
151
+ export function parsePipAuditJson(stdout, exitCode) {
78
152
  let data;
79
153
  try {
80
154
  data = JSON.parse(stdout);
81
155
  }
82
156
  catch {
83
- return { vulnerabilities: [], total: 0 };
157
+ return { success: exitCode === 0, vulnerabilities: [], total: 0 };
84
158
  }
85
159
  const vulnerabilities = (data.dependencies ?? []).flatMap((dep) => (dep.vulns ?? []).map((v) => ({
86
160
  name: dep.name,
@@ -88,15 +162,19 @@ export function parsePipAuditJson(stdout) {
88
162
  id: v.id,
89
163
  description: v.description ?? "",
90
164
  fixVersions: v.fix_versions ?? [],
165
+ aliases: v.aliases && v.aliases.length > 0 ? v.aliases : undefined,
166
+ url: v.url || undefined,
167
+ severity: v.severity || undefined,
168
+ cvssScore: v.cvss_score != null ? v.cvss_score : undefined,
91
169
  })));
92
- return { vulnerabilities, total: vulnerabilities.length };
170
+ return { success: exitCode === 0, vulnerabilities, total: vulnerabilities.length };
93
171
  }
94
172
  const PYTEST_DURATION_RE = /in ([\d.]+)s/;
95
173
  function extractCount(line, label) {
96
174
  const m = line.match(label);
97
175
  return m ? parseInt(m[1], 10) : 0;
98
176
  }
99
- /** Parses pytest output into structured test results with pass/fail/error/skip counts and failure details. */
177
+ /** Parses pytest output into structured test results with pass/fail/error/skip/warning counts and failure details. */
100
178
  export function parsePytestOutput(stdout, stderr, exitCode) {
101
179
  const output = stdout + "\n" + stderr;
102
180
  const lines = output.split("\n");
@@ -105,14 +183,16 @@ export function parsePytestOutput(stdout, stderr, exitCode) {
105
183
  let failed = 0;
106
184
  let errors = 0;
107
185
  let skipped = 0;
186
+ let warnings = 0;
108
187
  let duration = 0;
109
188
  for (const line of lines) {
110
189
  // Match lines containing pytest summary markers (== ... in Xs ==) or standalone counts
111
- if (/\d+ (?:passed|failed|error|skipped)/.test(line) || /in [\d.]+s/.test(line)) {
190
+ if (/\d+ (?:passed|failed|error|skipped|warning)/.test(line) || /in [\d.]+s/.test(line)) {
112
191
  passed = Math.max(passed, extractCount(line, /(\d+) passed/));
113
192
  failed = Math.max(failed, extractCount(line, /(\d+) failed/));
114
193
  errors = Math.max(errors, extractCount(line, /(\d+) errors?/));
115
194
  skipped = Math.max(skipped, extractCount(line, /(\d+) skipped/));
195
+ warnings = Math.max(warnings, extractCount(line, /(\d+) warnings?/));
116
196
  const durationMatch = line.match(PYTEST_DURATION_RE);
117
197
  if (durationMatch) {
118
198
  duration = parseFloat(durationMatch[1]);
@@ -128,6 +208,7 @@ export function parsePytestOutput(stdout, stderr, exitCode) {
128
208
  failed: 0,
129
209
  errors: 0,
130
210
  skipped: 0,
211
+ warnings,
131
212
  total: 0,
132
213
  duration,
133
214
  failures: [],
@@ -168,6 +249,7 @@ export function parsePytestOutput(stdout, stderr, exitCode) {
168
249
  failed,
169
250
  errors,
170
251
  skipped,
252
+ warnings,
171
253
  total,
172
254
  duration,
173
255
  failures,
@@ -176,7 +258,10 @@ export function parsePytestOutput(stdout, stderr, exitCode) {
176
258
  // Matches uv install output lines like: " + package==version" or "Installed N packages in Ns"
177
259
  const UV_INSTALLED_PKG_RE = /^\s*\+\s+(\S+)==(\S+)/;
178
260
  const UV_SUMMARY_RE = /Installed (\d+) packages? in ([\d.]+)/;
179
- /** Parses uv pip install output into structured data with installed packages. */
261
+ // Matches uv resolution conflict lines like: "`package>=1.0` and `package<1.0`"
262
+ const UV_CONFLICT_RE = /`([a-zA-Z0-9_-]+)\s*([^`]*)`/g;
263
+ /** Parses uv pip install output into structured data with installed packages.
264
+ * On failure, extracts resolution conflict information from stderr. */
180
265
  export function parseUvInstall(stdout, stderr, exitCode) {
181
266
  const output = stdout + "\n" + stderr;
182
267
  const lines = output.split("\n");
@@ -192,11 +277,47 @@ export function parseUvInstall(stdout, stderr, exitCode) {
192
277
  duration = parseFloat(summaryMatch[2]);
193
278
  }
194
279
  }
280
+ // On failure, extract resolution error details from stderr
281
+ let error;
282
+ let resolutionConflicts;
283
+ if (exitCode !== 0) {
284
+ const stderrTrimmed = stderr.trim();
285
+ if (stderrTrimmed) {
286
+ error = stderrTrimmed;
287
+ }
288
+ // Check for resolution/version conflict errors
289
+ if (stderr.includes("version solving failed") ||
290
+ stderr.includes("Cannot install") ||
291
+ stderr.includes("conflict") ||
292
+ stderr.includes("incompatible")) {
293
+ const conflicts = [];
294
+ const seen = new Set();
295
+ for (const line of stderr.split("\n")) {
296
+ // Reset lastIndex for global regex
297
+ UV_CONFLICT_RE.lastIndex = 0;
298
+ let match;
299
+ while ((match = UV_CONFLICT_RE.exec(line)) !== null) {
300
+ const pkg = match[1];
301
+ const constraint = match[2].trim();
302
+ const key = `${pkg}:${constraint}`;
303
+ if (!seen.has(key) && constraint) {
304
+ seen.add(key);
305
+ conflicts.push({ package: pkg, constraint });
306
+ }
307
+ }
308
+ }
309
+ if (conflicts.length > 0) {
310
+ resolutionConflicts = conflicts;
311
+ }
312
+ }
313
+ }
195
314
  return {
196
315
  success: exitCode === 0,
197
316
  installed,
198
317
  total: installed.length,
199
318
  duration,
319
+ error,
320
+ resolutionConflicts,
200
321
  };
201
322
  }
202
323
  /** Parses uv run output into structured result with exit code, stdout, stderr. */
@@ -251,38 +372,68 @@ export function parseBlackOutput(stdout, stderr, exitCode) {
251
372
  const filesChecked = filesChanged + filesUnchanged;
252
373
  // In check mode, success means no files need reformatting
253
374
  // In format mode, success is always true (exitCode 0) unless black errors
254
- // exitCode 1 in check mode = files would be reformatted
255
- // exitCode 123 = internal error
375
+ // exitCode 1 in check mode = files would be reformatted ("check_failed")
376
+ // exitCode 123 = internal error (parse error or crash)
256
377
  const success = exitCode === 0;
378
+ let errorType;
379
+ if (exitCode === 1) {
380
+ errorType = "check_failed";
381
+ }
382
+ else if (exitCode === 123) {
383
+ errorType = "internal_error";
384
+ }
257
385
  return {
258
386
  filesChanged,
259
387
  filesUnchanged,
260
388
  filesChecked,
261
389
  success,
390
+ exitCode: exitCode !== 0 ? exitCode : undefined,
391
+ errorType,
262
392
  wouldReformat,
263
393
  };
264
394
  }
265
- /** Parses `pip list --format json` output into structured package list. */
266
- export function parsePipListJson(stdout) {
395
+ /** Parses `pip list --format json` output into structured package list.
396
+ * When outdated=true, also parses latestVersion and latestFiletype fields.
397
+ * On JSON parse failure, surfaces error with raw output for debugging. */
398
+ export function parsePipListJson(stdout, exitCode, outdated) {
267
399
  let entries;
268
400
  try {
269
401
  entries = JSON.parse(stdout);
270
402
  }
271
- catch {
272
- return { packages: [], total: 0 };
403
+ catch (err) {
404
+ const errorMessage = err instanceof Error ? err.message : "Failed to parse pip list JSON output";
405
+ // Truncate raw output to 500 chars to avoid bloating the response
406
+ const rawOutput = stdout.length > 500 ? stdout.slice(0, 500) + "..." : stdout;
407
+ return {
408
+ success: false,
409
+ packages: [],
410
+ total: 0,
411
+ error: errorMessage,
412
+ rawOutput: rawOutput || undefined,
413
+ };
273
414
  }
274
415
  if (!Array.isArray(entries)) {
275
- return { packages: [], total: 0 };
416
+ return {
417
+ success: false,
418
+ packages: [],
419
+ total: 0,
420
+ error: "pip list output is not a JSON array",
421
+ rawOutput: stdout.length > 500 ? stdout.slice(0, 500) + "..." : stdout,
422
+ };
276
423
  }
277
424
  const packages = entries.map((e) => ({
278
425
  name: e.name,
279
426
  version: e.version,
427
+ location: e.location || undefined,
428
+ editableProject: e.editable_project != null ? true : undefined,
429
+ ...(outdated && e.latest_version ? { latestVersion: e.latest_version } : {}),
430
+ ...(outdated && e.latest_filetype ? { latestFiletype: e.latest_filetype } : {}),
280
431
  }));
281
- return { packages, total: packages.length };
432
+ return { success: exitCode === 0, packages, total: packages.length };
282
433
  }
283
- /** Parses `pip show <package>` key-value output into structured package metadata. */
284
- export function parsePipShowOutput(stdout) {
285
- const lines = stdout.split("\n");
434
+ /** Parses a single block of `pip show` key-value output into a package info object. */
435
+ function parseSinglePipShowBlock(block) {
436
+ const lines = block.split("\n");
286
437
  const data = {};
287
438
  for (const line of lines) {
288
439
  const colonIdx = line.indexOf(": ");
@@ -295,15 +446,62 @@ export function parsePipShowOutput(stdout) {
295
446
  const requires = data["Requires"] && data["Requires"].trim()
296
447
  ? data["Requires"].split(",").map((r) => r.trim())
297
448
  : [];
449
+ const requiredBy = data["Required-by"] && data["Required-by"].trim()
450
+ ? data["Required-by"].split(",").map((r) => r.trim())
451
+ : [];
452
+ const classifiers = data["Classifier"] && data["Classifier"].trim()
453
+ ? data["Classifier"].split(",").map((c) => c.trim())
454
+ : [];
298
455
  return {
299
456
  name: data["Name"] || "",
300
457
  version: data["Version"] || "",
301
458
  summary: data["Summary"] || "",
302
459
  homepage: data["Home-page"] || undefined,
303
460
  author: data["Author"] || undefined,
461
+ authorEmail: data["Author-email"] || undefined,
304
462
  license: data["License"] || undefined,
305
463
  location: data["Location"] || undefined,
306
464
  requires,
465
+ requiredBy: requiredBy.length > 0 ? requiredBy : undefined,
466
+ metadataVersion: data["Metadata-Version"] || undefined,
467
+ classifiers: classifiers.length > 0 ? classifiers : undefined,
468
+ };
469
+ }
470
+ /** Parses `pip show <package>` key-value output into structured package metadata.
471
+ * Supports multiple packages separated by `---` delimiter. */
472
+ export function parsePipShowOutput(stdout, exitCode) {
473
+ // Split on `---` separator for multi-package output
474
+ const blocks = stdout
475
+ .split(/^---$/m)
476
+ .map((b) => b.trim())
477
+ .filter(Boolean);
478
+ const packages = blocks.map(parseSinglePipShowBlock);
479
+ // Use first package for backward-compatible top-level fields
480
+ const first = packages.length > 0
481
+ ? packages[0]
482
+ : {
483
+ name: "",
484
+ version: "",
485
+ summary: "",
486
+ requires: [],
487
+ };
488
+ const hasName = Boolean(first.name);
489
+ return {
490
+ success: exitCode === 0 && hasName,
491
+ packages,
492
+ // Backward-compat top-level fields from first package
493
+ name: first.name,
494
+ version: first.version,
495
+ summary: first.summary,
496
+ homepage: first.homepage,
497
+ author: first.author,
498
+ authorEmail: first.authorEmail,
499
+ license: first.license,
500
+ location: first.location,
501
+ requires: first.requires,
502
+ requiredBy: first.requiredBy,
503
+ metadataVersion: first.metadataVersion,
504
+ classifiers: first.classifiers,
307
505
  };
308
506
  }
309
507
  /** Parses `pyenv` command output into structured version management data. */
@@ -347,6 +545,16 @@ export function parsePyenvOutput(stdout, stderr, exitCode, action) {
347
545
  .trim();
348
546
  return { action, success: true, current: ver || undefined };
349
547
  }
548
+ case "installList": {
549
+ const availableVersions = [];
550
+ for (const line of stdout.split("\n")) {
551
+ const trimmed = line.trim();
552
+ if (trimmed && !trimmed.startsWith("Available versions:") && !trimmed.startsWith("--")) {
553
+ availableVersions.push(trimmed);
554
+ }
555
+ }
556
+ return { action, success: true, availableVersions };
557
+ }
350
558
  case "install": {
351
559
  // pyenv install outputs to stderr typically
352
560
  const installed = output.match(/Installed Python-(\S+)/)?.[1] || output.match(/Installing Python-(\S+)/)?.[1];
@@ -356,6 +564,20 @@ export function parsePyenvOutput(stdout, stderr, exitCode, action) {
356
564
  installed: installed || undefined,
357
565
  };
358
566
  }
567
+ case "uninstall": {
568
+ // pyenv uninstall -f <version>
569
+ // On success, output may contain "pyenv: remove <version>" or similar
570
+ const version = output.match(/remove\s+(\S+)/)?.[1] ||
571
+ output.match(/uninstall(?:ed)?\s+(\S+)/i)?.[1] ||
572
+ // If no match, try extracting from stderr which often has the version
573
+ stderr.match(/(\d+\.\d+\.\d+\S*)/)?.[1] ||
574
+ stdout.match(/(\d+\.\d+\.\d+\S*)/)?.[1];
575
+ return {
576
+ action,
577
+ success: true,
578
+ uninstalled: version || undefined,
579
+ };
580
+ }
359
581
  case "local": {
360
582
  return { action, success: true, localVersion: stdout.trim() || undefined };
361
583
  }
@@ -364,26 +586,44 @@ export function parsePyenvOutput(stdout, stderr, exitCode, action) {
364
586
  }
365
587
  }
366
588
  }
367
- const RUFF_FORMAT_FILE_RE = /^(?:Would reformat|reformatted): (.+)$/;
368
- /** Parses `ruff format` output into structured result with file counts. */
589
+ const RUFF_FORMAT_WOULD_RE = /^Would reformat: (.+)$/;
590
+ const RUFF_FORMAT_DID_RE = /^reformatted: (.+)$/;
591
+ /** Parses `ruff format` output into structured result with file counts.
592
+ * Distinguishes check mode ("Would reformat") from fix mode ("reformatted"). */
369
593
  export function parseRuffFormatOutput(stdout, stderr, exitCode) {
370
594
  // ruff format writes file-level output to stderr
371
595
  const output = stdout + "\n" + stderr;
372
596
  const lines = output.split("\n");
373
597
  const files = [];
598
+ let checkMode = false;
374
599
  for (const line of lines) {
375
- const match = line.match(RUFF_FORMAT_FILE_RE);
376
- if (match) {
377
- files.push(match[1].trim());
600
+ const wouldMatch = line.match(RUFF_FORMAT_WOULD_RE);
601
+ if (wouldMatch) {
602
+ files.push(wouldMatch[1].trim());
603
+ checkMode = true;
604
+ continue;
378
605
  }
606
+ const didMatch = line.match(RUFF_FORMAT_DID_RE);
607
+ if (didMatch) {
608
+ files.push(didMatch[1].trim());
609
+ }
610
+ }
611
+ // Also detect check mode from summary line
612
+ if (output.includes("would be reformatted")) {
613
+ checkMode = true;
379
614
  }
380
615
  // Parse summary line: "N files reformatted" or "N files would be reformatted" or "N files left unchanged"
381
616
  const reformattedMatch = output.match(/(\d+) files? (?:would be )?reformatted/);
382
617
  const filesChanged = reformattedMatch ? parseInt(reformattedMatch[1], 10) : files.length;
618
+ // Parse unchanged count: "N files left unchanged" or "N files would be left unchanged"
619
+ const unchangedMatch = output.match(/(\d+) files? (?:would be )?left unchanged/);
620
+ const filesUnchanged = unchangedMatch ? parseInt(unchangedMatch[1], 10) : 0;
383
621
  return {
384
622
  success: exitCode === 0,
385
623
  filesChanged: filesChanged || files.length,
624
+ filesUnchanged,
386
625
  files: files.length > 0 ? files : undefined,
626
+ checkMode,
387
627
  };
388
628
  }
389
629
  /** Parses `conda list --json` output into structured package list. */
@@ -458,8 +698,11 @@ export function parseCondaEnvListJson(stdout, activePrefix) {
458
698
  return { action: "env-list", environments: envs, total: envs.length };
459
699
  }
460
700
  // ─── poetry parsers ──────────────────────────────────────────────────────────
461
- /** Regex matching `poetry show --no-ansi` lines: "package-name version description" */
462
- const POETRY_SHOW_RE = /^(\S+)\s+(\S+)/;
701
+ /** Strict regex matching `poetry show --no-ansi` lines: "package-name version description"
702
+ * Anchored to start, requires package name to start with a letter/digit, and version
703
+ * to look like a version string (digit-prefixed). This avoids matching status lines,
704
+ * blank lines, or other non-package output. */
705
+ const POETRY_SHOW_RE = /^([a-zA-Z0-9][a-zA-Z0-9._-]*)\s+(\d[a-zA-Z0-9._-]*)(?:\s+(.+))?$/;
463
706
  /** Regex matching `poetry build` artifact lines: " - Built package-1.0.0.tar.gz" or " Built package-1.0.0-py3-none-any.whl" */
464
707
  const POETRY_BUILT_RE = /Built\s+(\S+)/;
465
708
  /** Regex matching `poetry add/remove` installed/removed lines with version e.g. " - Installing requests (2.31.0)" */
@@ -471,9 +714,17 @@ export function parsePoetryOutput(stdout, stderr, exitCode, action) {
471
714
  if (action === "show") {
472
715
  const packages = [];
473
716
  for (const line of lines) {
474
- const match = line.match(POETRY_SHOW_RE);
717
+ const trimmed = line.trim();
718
+ // Skip empty lines and lines that don't look like package entries
719
+ if (!trimmed)
720
+ continue;
721
+ const match = trimmed.match(POETRY_SHOW_RE);
475
722
  if (match) {
476
- packages.push({ name: match[1], version: match[2] });
723
+ packages.push({
724
+ name: match[1],
725
+ version: match[2],
726
+ description: match[3]?.trim() || undefined,
727
+ });
477
728
  }
478
729
  }
479
730
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"parsers.js","sourceRoot":"","sources":["../../src/lib/parsers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parsers.js","sourceRoot":"","sources":["../../src/lib/parsers.ts"],"names":[],"mappings":"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"}
@@ -8,4 +8,6 @@ export declare function black(args: string[], cwd?: string): Promise<RunResult>;
8
8
  export declare function conda(args: string[], cwd?: string): Promise<RunResult>;
9
9
  export declare function pyenv(args: string[], cwd?: string): Promise<RunResult>;
10
10
  export declare function poetry(args: string[], cwd?: string): Promise<RunResult>;
11
+ /** pip-audit is a standalone binary, NOT a pip subcommand. */
12
+ export declare function pipAudit(args: string[], cwd?: string): Promise<RunResult>;
11
13
  //# sourceMappingURL=python-runner.d.ts.map