npmdata 0.9.1 → 0.10.1

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.
package/dist/runner.js CHANGED
@@ -11,6 +11,7 @@ exports.printHelp = printHelp;
11
11
  exports.parseOutputFromArgv = parseOutputFromArgv;
12
12
  exports.parseDryRunFromArgv = parseDryRunFromArgv;
13
13
  exports.parseSilentFromArgv = parseSilentFromArgv;
14
+ exports.parseVerboseFromArgv = parseVerboseFromArgv;
14
15
  exports.parseTagsFromArgv = parseTagsFromArgv;
15
16
  exports.filterEntriesByTags = filterEntriesByTags;
16
17
  exports.applySymlinks = applySymlinks;
@@ -38,31 +39,34 @@ function buildExtractCommand(cliPath, entry, cwd = process.cwd()) {
38
39
  const gitignoreFlag = entry.gitignore === false ? ' --no-gitignore' : '';
39
40
  const unmanagedFlag = entry.unmanaged ? ' --unmanaged' : '';
40
41
  const silentFlag = entry.silent ? ' --silent' : '';
42
+ const verboseFlag = entry.verbose ? ' --verbose' : '';
41
43
  const dryRunFlag = entry.dryRun ? ' --dry-run' : '';
42
44
  const upgradeFlag = entry.upgrade ? ' --upgrade' : '';
43
45
  const filesFlag = entry.files && entry.files.length > 0 ? ` --files "${entry.files.join(',')}"` : '';
44
46
  const contentRegexFlag = entry.contentRegexes && entry.contentRegexes.length > 0
45
47
  ? ` --content-regex "${entry.contentRegexes.join(',')}"`
46
48
  : '';
47
- return `node "${cliPath}" extract --packages "${entry.package}"${outputFlag}${forceFlag}${keepExistingFlag}${gitignoreFlag}${unmanagedFlag}${silentFlag}${dryRunFlag}${upgradeFlag}${filesFlag}${contentRegexFlag}`;
49
+ return `node "${cliPath}" extract --packages "${entry.package}"${outputFlag}${forceFlag}${keepExistingFlag}${gitignoreFlag}${unmanagedFlag}${silentFlag}${verboseFlag}${dryRunFlag}${upgradeFlag}${filesFlag}${contentRegexFlag}`;
48
50
  }
49
51
  /**
50
52
  * Build a CLI command string that checks whether local files are in sync with the entry's package.
51
53
  */
52
54
  function buildCheckCommand(cliPath, entry, cwd = process.cwd()) {
53
55
  const outputFlag = ` --output "${node_path_1.default.resolve(cwd, entry.outputDir)}"`;
56
+ const verboseFlag = entry.verbose ? ' --verbose' : '';
54
57
  const filesFlag = entry.files && entry.files.length > 0 ? ` --files "${entry.files.join(',')}"` : '';
55
58
  const contentRegexFlag = entry.contentRegexes && entry.contentRegexes.length > 0
56
59
  ? ` --content-regex "${entry.contentRegexes.join(',')}"`
57
60
  : '';
58
- return `node "${cliPath}" check --packages "${entry.package}"${outputFlag}${filesFlag}${contentRegexFlag}`;
61
+ return `node "${cliPath}" check --packages "${entry.package}"${outputFlag}${verboseFlag}${filesFlag}${contentRegexFlag}`;
59
62
  }
60
63
  /**
61
64
  * Build a CLI command string that lists all managed files in the given output directory.
62
65
  */
63
- function buildListCommand(cliPath, outputDir, cwd = process.cwd()) {
66
+ function buildListCommand(cliPath, outputDir, cwd = process.cwd(), verbose = false) {
64
67
  const resolvedOutput = node_path_1.default.resolve(cwd, outputDir);
65
- return `node "${cliPath}" list --output "${resolvedOutput}"`;
68
+ const verboseFlag = verbose ? ' --verbose' : '';
69
+ return `node "${cliPath}" list --output "${resolvedOutput}"${verboseFlag}`;
66
70
  }
67
71
  /**
68
72
  * Build a CLI command string that purges (removes) all managed files for the entry's package
@@ -71,10 +75,11 @@ function buildListCommand(cliPath, outputDir, cwd = process.cwd()) {
71
75
  function buildPurgeCommand(cliPath, entry, cwd = process.cwd()) {
72
76
  const { name } = parseEntryPackageName(entry.package);
73
77
  const outputFlag = ` --output "${node_path_1.default.resolve(cwd, entry.outputDir)}"`;
74
- // Propagate silent/dry-run settings from the entry if present.
78
+ // Propagate silent/dry-run/verbose settings from the entry if present.
75
79
  const silentFlag = entry.silent ? ' --silent' : '';
80
+ const verboseFlag = entry.verbose ? ' --verbose' : '';
76
81
  const dryRunFlag = entry.dryRun ? ' --dry-run' : '';
77
- return `node "${cliPath}" purge --packages "${name}"${outputFlag}${silentFlag}${dryRunFlag}`;
82
+ return `node "${cliPath}" purge --packages "${name}"${outputFlag}${silentFlag}${verboseFlag}${dryRunFlag}`;
78
83
  }
79
84
  /**
80
85
  * Collects all unique tags that appear across the given npmdata entries, sorted alphabetically.
@@ -110,6 +115,7 @@ function printHelp(packageName, availableTags) {
110
115
  ' --output, -o <dir> Base directory for resolving all outputDir paths (default: cwd)',
111
116
  ' --dry-run Simulate changes without writing or deleting any files',
112
117
  ' --tags <tag1,tag2> Limit to entries whose tags overlap (comma-separated)',
118
+ ' --verbose, -v Print detailed progress information for each step',
113
119
  '',
114
120
  `Available tags: ${tagsLine}`,
115
121
  '',
@@ -161,6 +167,12 @@ function parseDryRunFromArgv(argv) {
161
167
  function parseSilentFromArgv(argv) {
162
168
  return argv.includes('--silent');
163
169
  }
170
+ /**
171
+ * Returns true when --verbose or -v appears in the argv array.
172
+ */
173
+ function parseVerboseFromArgv(argv) {
174
+ return argv.includes('--verbose') || argv.includes('-v');
175
+ }
164
176
  /**
165
177
  * Parses --tags from an argv array and returns the list of requested tags (split by comma).
166
178
  * Returns an empty array when --tags is not present.
@@ -186,58 +198,38 @@ function filterEntriesByTags(entries, requestedTags) {
186
198
  }
187
199
  return entries.filter((entry) => entry.tags && entry.tags.some((t) => requestedTags.includes(t)));
188
200
  }
189
- // ─── Glob helpers ─────────────────────────────────────────────────────────────
201
+ // ─── Managed path helpers ──────────────────────────────────────────────────────
190
202
  /**
191
- * Walk a directory tree and return the absolute paths of every node (file or
192
- * directory) whose path relative to `rootDir` matches `pattern`.
203
+ * From the flat list of managed file paths (relative to outputDir) recorded in
204
+ * the .npmdata marker, derive every unique path that can be symlinked: each
205
+ * file itself plus every intermediate ancestor directory.
206
+ *
207
+ * Example: 'skills/skill-a/README.md' yields
208
+ * 'skills', 'skills/skill-a', 'skills/skill-a/README.md'
193
209
  */
194
- function globMatchInDir(rootDir, pattern) {
195
- const results = [];
196
- const walk = (dir, rel) => {
197
- if (!node_fs_1.default.existsSync(dir))
198
- return;
199
- for (const name of node_fs_1.default.readdirSync(dir)) {
200
- const fullPath = node_path_1.default.join(dir, name);
201
- const relPath = rel ? `${rel}/${name}` : name;
202
- if ((0, minimatch_1.minimatch)(relPath, pattern, { dot: true })) {
203
- // eslint-disable-next-line functional/immutable-data
204
- results.push(fullPath);
205
- }
206
- // Always descend into directories so patterns like **/skills/** can match
207
- // entries deep in the tree even when the directory itself didn't match.
208
- const stat = node_fs_1.default.statSync(fullPath);
209
- if (stat.isDirectory()) {
210
- walk(fullPath, relPath);
211
- }
212
- }
213
- };
214
- walk(rootDir, '');
215
- return results;
210
+ function managedPathsWithAncestors(managedFiles) {
211
+ const paths = new Set();
212
+ for (const mf of managedFiles) {
213
+ // eslint-disable-next-line functional/immutable-data
214
+ paths.add(mf.path);
215
+ const parts = mf.path.split('/');
216
+ // Add each ancestor directory by accumulating path segments.
217
+ parts.slice(0, -1).reduce((prefix, seg) => {
218
+ const ancestor = prefix ? `${prefix}/${seg}` : seg;
219
+ // eslint-disable-next-line functional/immutable-data
220
+ paths.add(ancestor);
221
+ return ancestor;
222
+ }, '');
223
+ }
224
+ return Array.from(paths);
216
225
  }
217
226
  /**
218
- * Walk a directory tree and return the absolute paths of files (not directories)
219
- * whose path relative to `rootDir` matches `pattern`.
227
+ * Read the .npmdata marker from outputDir and return managed file metadata.
228
+ * Returns an empty array when the marker does not exist.
220
229
  */
221
- function globMatchFiles(rootDir, pattern) {
222
- const results = [];
223
- const walk = (dir, rel) => {
224
- if (!node_fs_1.default.existsSync(dir))
225
- return;
226
- for (const name of node_fs_1.default.readdirSync(dir)) {
227
- const fullPath = node_path_1.default.join(dir, name);
228
- const relPath = rel ? `${rel}/${name}` : name;
229
- const stat = node_fs_1.default.statSync(fullPath);
230
- if (stat.isDirectory()) {
231
- walk(fullPath, relPath);
232
- }
233
- else if ((0, minimatch_1.minimatch)(relPath, pattern, { dot: true })) {
234
- // eslint-disable-next-line functional/immutable-data
235
- results.push(fullPath);
236
- }
237
- }
238
- };
239
- walk(rootDir, '');
240
- return results;
230
+ function readManagedFiles(outputDir) {
231
+ const markerPath = node_path_1.default.join(outputDir, '.npmdata');
232
+ return node_fs_1.default.existsSync(markerPath) ? (0, utils_1.readCsvMarker)(markerPath) : [];
241
233
  }
242
234
  /**
243
235
  * Collect all existing symlinks in `targetDir` whose resolved (or as-written)
@@ -333,13 +325,17 @@ function applySymlinks(entry, cwd = process.cwd()) {
333
325
  if (!entry.symlinks || entry.symlinks.length === 0)
334
326
  return;
335
327
  const outputDir = node_path_1.default.resolve(cwd, entry.outputDir);
328
+ const allManagedPaths = managedPathsWithAncestors(readManagedFiles(outputDir));
336
329
  for (const cfg of entry.symlinks) {
337
330
  const targetDir = node_path_1.default.resolve(cwd, cfg.target);
338
331
  node_fs_1.default.mkdirSync(targetDir, { recursive: true });
339
- // Build desired symlink map: basename (in target) absolute source path.
332
+ // Build desired symlink map from managed paths (files + ancestor dirs) matching the source pattern.
340
333
  const desired = new Map();
341
- for (const absMatch of globMatchInDir(outputDir, cfg.source)) {
342
- desired.set(node_path_1.default.basename(absMatch), absMatch);
334
+ for (const relPath of allManagedPaths) {
335
+ if ((0, minimatch_1.minimatch)(relPath, cfg.source, { dot: true })) {
336
+ const absMatch = node_path_1.default.join(outputDir, relPath);
337
+ desired.set(node_path_1.default.basename(absMatch), absMatch);
338
+ }
343
339
  }
344
340
  // Remove stale managed symlinks that are no longer in the desired set.
345
341
  const existing = collectManagedSymlinks(targetDir, outputDir);
@@ -388,13 +384,20 @@ function applySymlinks(entry, cwd = process.cwd()) {
388
384
  function applyContentReplacements(entry, cwd = process.cwd()) {
389
385
  if (!entry.contentReplacements || entry.contentReplacements.length === 0)
390
386
  return;
387
+ const outputDir = node_path_1.default.resolve(cwd, entry.outputDir);
388
+ const managedFiles = readManagedFiles(outputDir);
391
389
  for (const cfg of entry.contentReplacements) {
392
390
  const regex = new RegExp(cfg.match, 'gm');
393
- for (const filePath of globMatchFiles(cwd, cfg.files)) {
394
- const original = node_fs_1.default.readFileSync(filePath, 'utf8');
395
- const updated = original.replace(regex, cfg.replace);
396
- if (updated !== original) {
397
- node_fs_1.default.writeFileSync(filePath, updated, 'utf8');
391
+ for (const mf of managedFiles) {
392
+ if ((0, minimatch_1.minimatch)(mf.path, cfg.files, { dot: true })) {
393
+ const filePath = node_path_1.default.join(outputDir, mf.path);
394
+ if (node_fs_1.default.existsSync(filePath)) {
395
+ const original = node_fs_1.default.readFileSync(filePath, 'utf8');
396
+ const updated = original.replace(regex, cfg.replace);
397
+ if (updated !== original) {
398
+ node_fs_1.default.writeFileSync(filePath, updated, 'utf8');
399
+ }
400
+ }
398
401
  }
399
402
  }
400
403
  }
@@ -410,34 +413,114 @@ function applyContentReplacements(entry, cwd = process.cwd()) {
410
413
  function checkContentReplacements(entry, cwd = process.cwd()) {
411
414
  if (!entry.contentReplacements || entry.contentReplacements.length === 0)
412
415
  return [];
416
+ const outputDir = node_path_1.default.resolve(cwd, entry.outputDir);
417
+ const managedFiles = readManagedFiles(outputDir);
413
418
  const outOfSync = [];
414
419
  for (const cfg of entry.contentReplacements) {
415
420
  const regex = new RegExp(cfg.match, 'gm');
416
- for (const filePath of globMatchFiles(cwd, cfg.files)) {
417
- const content = node_fs_1.default.readFileSync(filePath, 'utf8');
418
- // A file is out of sync when applying the replacement would change it.
419
- const expected = content.replace(regex, cfg.replace);
420
- if (expected !== content) {
421
- // eslint-disable-next-line functional/immutable-data
422
- outOfSync.push(filePath);
421
+ for (const mf of managedFiles) {
422
+ if ((0, minimatch_1.minimatch)(mf.path, cfg.files, { dot: true })) {
423
+ const filePath = node_path_1.default.join(outputDir, mf.path);
424
+ if (node_fs_1.default.existsSync(filePath)) {
425
+ const content = node_fs_1.default.readFileSync(filePath, 'utf8');
426
+ // A file is out of sync when applying the replacement would change it.
427
+ const expected = content.replace(regex, cfg.replace);
428
+ if (expected !== content) {
429
+ // eslint-disable-next-line functional/immutable-data
430
+ outOfSync.push(filePath);
431
+ }
432
+ }
423
433
  }
424
434
  }
425
435
  }
426
436
  return outOfSync;
427
437
  }
428
438
  // ─── Action handlers ───────────────────────────────────────────────────────────
429
- function runExtract(entries, excludedEntries, cliPath, runCwd, dryRunFromArgv, silentFromArgv) {
439
+ /**
440
+ * Run a shell command, capturing its stdout while inheriting stderr.
441
+ * The captured stdout is immediately written to process.stdout so the caller
442
+ * sees it in real time (well, after the child exits). Returns the full
443
+ * captured stdout string and the child's exit code. Non-zero exit codes do
444
+ * NOT throw; callers are responsible for checking exitCode.
445
+ */
446
+ function runCommandCapture(command, cwd) {
447
+ // eslint-disable-next-line functional/no-try-statements
448
+ try {
449
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
450
+ const stdout = (0, node_child_process_1.execSync)(command, {
451
+ encoding: 'utf8',
452
+ cwd,
453
+ stdio: ['inherit', 'pipe', 'inherit'],
454
+ }) ?? '';
455
+ process.stdout.write(stdout);
456
+ return { stdout, exitCode: 0 };
457
+ }
458
+ catch (error) {
459
+ const err = error;
460
+ const stdout = err.stdout ?? '';
461
+ process.stdout.write(stdout);
462
+ return { stdout, exitCode: err.status ?? 1 };
463
+ }
464
+ }
465
+ // eslint-disable-next-line complexity
466
+ function runExtract(entries, excludedEntries, cliPath, runCwd, dryRunFromArgv, silentFromArgv, verboseFromArgv) {
467
+ if (verboseFromArgv) {
468
+ // eslint-disable-next-line no-console
469
+ console.log(`[verbose] extract: processing ${entries.length} entr${entries.length === 1 ? 'y' : 'ies'} (cwd: ${runCwd})`);
470
+ }
471
+ // eslint-disable-next-line functional/no-let
472
+ let totalAdded = 0;
473
+ // eslint-disable-next-line functional/no-let
474
+ let totalModified = 0;
475
+ // eslint-disable-next-line functional/no-let
476
+ let totalDeleted = 0;
477
+ // eslint-disable-next-line functional/no-let
478
+ let totalSkipped = 0;
479
+ // eslint-disable-next-line functional/no-let
480
+ let entryIndex = 0;
430
481
  for (const entry of entries) {
482
+ const effectiveSilent = entry.silent || silentFromArgv;
483
+ if (entryIndex > 0 && !effectiveSilent) {
484
+ process.stdout.write('\n');
485
+ }
486
+ entryIndex += 1;
431
487
  const effectiveEntry = {
432
488
  ...entry,
433
489
  dryRun: entry.dryRun || dryRunFromArgv,
434
- silent: entry.silent || silentFromArgv,
490
+ silent: effectiveSilent,
491
+ verbose: entry.verbose || verboseFromArgv,
435
492
  };
493
+ if (verboseFromArgv) {
494
+ // eslint-disable-next-line no-console
495
+ console.log(`[verbose] extract: entry package=${entry.package} outputDir=${entry.outputDir}`);
496
+ }
436
497
  node_fs_1.default.mkdirSync(node_path_1.default.resolve(runCwd, entry.outputDir), { recursive: true });
437
498
  const command = buildExtractCommand(cliPath, effectiveEntry, runCwd);
438
- (0, node_child_process_1.execSync)(command, { stdio: 'inherit', cwd: runCwd });
499
+ if (verboseFromArgv) {
500
+ // eslint-disable-next-line no-console
501
+ console.log(`[verbose] extract: running command: ${command}`);
502
+ }
503
+ const { stdout: extractStdout, exitCode: extractExitCode } = runCommandCapture(command, runCwd);
504
+ if (extractExitCode !== 0) {
505
+ throw Object.assign(new Error('extract failed'), { status: extractExitCode });
506
+ }
507
+ const extractMatch = extractStdout.match(/Extraction complete:\s*(\d+) added,\s*(\d+) modified,\s*(\d+) deleted,\s*(\d+) skipped/);
508
+ if (extractMatch) {
509
+ totalAdded += Number.parseInt(extractMatch[1], 10);
510
+ totalModified += Number.parseInt(extractMatch[2], 10);
511
+ totalDeleted += Number.parseInt(extractMatch[3], 10);
512
+ totalSkipped += Number.parseInt(extractMatch[4], 10);
513
+ }
439
514
  if (!effectiveEntry.dryRun) {
515
+ if (verboseFromArgv) {
516
+ // eslint-disable-next-line no-console
517
+ console.log(`[verbose] extract: applying symlinks for ${entry.package}`);
518
+ }
440
519
  applySymlinks(effectiveEntry, runCwd);
520
+ if (verboseFromArgv) {
521
+ // eslint-disable-next-line no-console
522
+ console.log(`[verbose] extract: applying content replacements for ${entry.package}`);
523
+ }
441
524
  applyContentReplacements(entry, runCwd);
442
525
  }
443
526
  }
@@ -445,6 +528,10 @@ function runExtract(entries, excludedEntries, cliPath, runCwd, dryRunFromArgv, s
445
528
  // the output directory contains only files from the currently active tag group.
446
529
  // Suppress the "Purging managed files..." banner for these implicit purges.
447
530
  for (const entry of excludedEntries) {
531
+ if (verboseFromArgv) {
532
+ // eslint-disable-next-line no-console
533
+ console.log(`[verbose] extract: purging excluded entry ${entry.package} (tag filter active)`);
534
+ }
448
535
  const effectiveEntry = {
449
536
  ...entry,
450
537
  dryRun: entry.dryRun || dryRunFromArgv,
@@ -453,34 +540,128 @@ function runExtract(entries, excludedEntries, cliPath, runCwd, dryRunFromArgv, s
453
540
  const command = buildPurgeCommand(cliPath, effectiveEntry, runCwd);
454
541
  (0, node_child_process_1.execSync)(command, { stdio: 'inherit', cwd: runCwd });
455
542
  }
543
+ if (!silentFromArgv && entries.length > 1) {
544
+ process.stdout.write(`\nTotal extracted: ${totalAdded} added, ${totalModified} modified, ${totalDeleted} deleted, ${totalSkipped} skipped${dryRunFromArgv ? ' (dry run)' : ''}\n`);
545
+ }
456
546
  }
457
- function runCheck(entries, cliPath, runCwd) {
547
+ function runCheck(entries, cliPath, runCwd, verboseFromArgv) {
548
+ if (verboseFromArgv) {
549
+ // eslint-disable-next-line no-console
550
+ console.log(`[verbose] check: verifying ${entries.length} entr${entries.length === 1 ? 'y' : 'ies'} (cwd: ${runCwd})`);
551
+ }
552
+ // eslint-disable-next-line functional/no-let
553
+ let outOfSyncFiles = [];
554
+ // eslint-disable-next-line functional/no-let
555
+ let checkIndex = 0;
458
556
  for (const entry of entries) {
459
- const command = buildCheckCommand(cliPath, entry, runCwd);
460
- (0, node_child_process_1.execSync)(command, { stdio: 'inherit', cwd: runCwd });
557
+ if (checkIndex > 0) {
558
+ process.stdout.write('\n');
559
+ }
560
+ checkIndex += 1;
561
+ if (verboseFromArgv) {
562
+ // eslint-disable-next-line no-console
563
+ console.log(`[verbose] check: checking package=${entry.package} outputDir=${entry.outputDir}`);
564
+ }
565
+ const effectiveEntry = {
566
+ ...entry,
567
+ verbose: entry.verbose || verboseFromArgv,
568
+ };
569
+ const command = buildCheckCommand(cliPath, effectiveEntry, runCwd);
570
+ if (verboseFromArgv) {
571
+ // eslint-disable-next-line no-console
572
+ console.log(`[verbose] check: running command: ${command}`);
573
+ }
574
+ const { exitCode: checkExitCode } = runCommandCapture(command, runCwd);
575
+ if (checkExitCode !== 0) {
576
+ throw Object.assign(new Error('check failed'), { status: checkExitCode });
577
+ }
578
+ if (verboseFromArgv) {
579
+ // eslint-disable-next-line no-console
580
+ console.log(`[verbose] check: checking content replacements for ${entry.package}`);
581
+ }
582
+ const entryOutOfSync = checkContentReplacements(entry, runCwd);
583
+ for (const f of entryOutOfSync) {
584
+ process.stderr.write(`content-replacement out of sync: ${f}\n`);
585
+ }
586
+ // eslint-disable-next-line functional/immutable-data
587
+ outOfSyncFiles = [...outOfSyncFiles, ...entryOutOfSync];
588
+ }
589
+ if (outOfSyncFiles.length > 0) {
590
+ throw Object.assign(new Error('content-replacements out of sync'), { status: 1 });
591
+ }
592
+ if (entries.length > 1) {
593
+ process.stdout.write(`\nTotal checked: ${entries.length} packages\n`);
461
594
  }
462
595
  }
463
- function runList(allEntries, cliPath, runCwd) {
596
+ function runList(allEntries, cliPath, runCwd, verboseFromArgv) {
464
597
  // Collect unique resolved output dirs (tag filter not applied; list is informational).
465
598
  const seenDirs = new Set();
599
+ if (verboseFromArgv) {
600
+ // eslint-disable-next-line no-console
601
+ console.log(`[verbose] list: listing managed files across ${allEntries.length} entr${allEntries.length === 1 ? 'y' : 'ies'} (cwd: ${runCwd})`);
602
+ }
466
603
  for (const entry of allEntries) {
467
604
  const resolvedDir = node_path_1.default.resolve(runCwd, entry.outputDir);
468
605
  if (!seenDirs.has(resolvedDir)) {
469
606
  seenDirs.add(resolvedDir);
470
- const command = buildListCommand(cliPath, entry.outputDir, runCwd);
607
+ if (verboseFromArgv) {
608
+ // eslint-disable-next-line no-console
609
+ console.log(`[verbose] list: scanning directory ${resolvedDir}`);
610
+ }
611
+ const command = buildListCommand(cliPath, entry.outputDir, runCwd, verboseFromArgv);
471
612
  (0, node_child_process_1.execSync)(command, { stdio: 'inherit', cwd: runCwd });
472
613
  }
473
614
  }
474
615
  }
475
- function runPurge(entries, cliPath, runCwd, dryRunFromArgv, silentFromArgv) {
616
+ // eslint-disable-next-line complexity
617
+ function runPurge(entries, cliPath, runCwd, dryRunFromArgv, silentFromArgv, verboseFromArgv) {
618
+ if (verboseFromArgv) {
619
+ // eslint-disable-next-line no-console
620
+ console.log(`[verbose] purge: processing ${entries.length} entr${entries.length === 1 ? 'y' : 'ies'} (cwd: ${runCwd})`);
621
+ }
622
+ // eslint-disable-next-line functional/no-let
623
+ let totalDeleted = 0;
624
+ // eslint-disable-next-line functional/no-let
625
+ let purgeIndex = 0;
476
626
  for (const entry of entries) {
627
+ const effectiveSilent = entry.silent || silentFromArgv;
628
+ if (purgeIndex > 0 && !effectiveSilent) {
629
+ process.stdout.write('\n');
630
+ }
631
+ purgeIndex += 1;
477
632
  const effectiveEntry = {
478
633
  ...entry,
479
634
  dryRun: entry.dryRun || dryRunFromArgv,
480
- silent: entry.silent || silentFromArgv,
635
+ silent: effectiveSilent,
636
+ verbose: entry.verbose || verboseFromArgv,
481
637
  };
638
+ if (verboseFromArgv) {
639
+ // eslint-disable-next-line no-console
640
+ console.log(`[verbose] purge: entry package=${entry.package} outputDir=${entry.outputDir}`);
641
+ }
482
642
  const command = buildPurgeCommand(cliPath, effectiveEntry, runCwd);
483
- (0, node_child_process_1.execSync)(command, { stdio: 'inherit', cwd: runCwd });
643
+ if (verboseFromArgv) {
644
+ // eslint-disable-next-line no-console
645
+ console.log(`[verbose] purge: running command: ${command}`);
646
+ }
647
+ const { stdout: purgeStdout, exitCode: purgeExitCode } = runCommandCapture(command, runCwd);
648
+ if (purgeExitCode !== 0) {
649
+ throw Object.assign(new Error('purge failed'), { status: purgeExitCode });
650
+ }
651
+ const purgeMatch = purgeStdout.match(/Purge complete:\s*(\d+) deleted/);
652
+ if (purgeMatch) {
653
+ totalDeleted += Number.parseInt(purgeMatch[1], 10);
654
+ }
655
+ if (!effectiveEntry.dryRun) {
656
+ if (verboseFromArgv) {
657
+ // eslint-disable-next-line no-console
658
+ console.log(`[verbose] purge: cleaning up symlinks for ${entry.package}`);
659
+ }
660
+ applySymlinks(effectiveEntry, runCwd);
661
+ }
662
+ }
663
+ if (!silentFromArgv && entries.length > 1) {
664
+ process.stdout.write(`\nTotal purged: ${totalDeleted}${dryRunFromArgv ? ' (dry run)' : ''}\n`);
484
665
  }
485
666
  }
486
667
  /**
@@ -514,19 +695,24 @@ function run(binDir, argv = process.argv) {
514
695
  const runCwd = parsedOutput ? node_path_1.default.resolve(process.cwd(), parsedOutput) : process.cwd();
515
696
  const dryRunFromArgv = parseDryRunFromArgv(userArgs);
516
697
  const silentFromArgv = parseSilentFromArgv(userArgs);
698
+ const verboseFromArgv = parseVerboseFromArgv(userArgs);
699
+ if (verboseFromArgv) {
700
+ // eslint-disable-next-line no-console
701
+ console.log(`[verbose] runner: action=${action} entries=${entries.length} cwd=${runCwd}`);
702
+ }
517
703
  // eslint-disable-next-line functional/no-try-statements
518
704
  try {
519
705
  if (action === 'extract') {
520
- runExtract(entries, excludedEntries, cliPath, runCwd, dryRunFromArgv, silentFromArgv);
706
+ runExtract(entries, excludedEntries, cliPath, runCwd, dryRunFromArgv, silentFromArgv, verboseFromArgv);
521
707
  }
522
708
  else if (action === 'check') {
523
- runCheck(entries, cliPath, runCwd);
709
+ runCheck(entries, cliPath, runCwd, verboseFromArgv);
524
710
  }
525
711
  else if (action === 'list') {
526
- runList(allEntries, cliPath, runCwd);
712
+ runList(allEntries, cliPath, runCwd, verboseFromArgv);
527
713
  }
528
714
  else if (action === 'purge') {
529
- runPurge(entries, cliPath, runCwd, dryRunFromArgv, silentFromArgv);
715
+ runPurge(entries, cliPath, runCwd, dryRunFromArgv, silentFromArgv, verboseFromArgv);
530
716
  }
531
717
  }
532
718
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -288,6 +288,10 @@ export type NpmdataExtractEntry = {
288
288
  * Suppress per-file output, printing only the final result line (default: false).
289
289
  */
290
290
  silent?: boolean;
291
+ /**
292
+ * Print detailed progress information for each file and step processed (default: false).
293
+ */
294
+ verbose?: boolean;
291
295
  /**
292
296
  * Regex patterns (as strings) to filter files by content. Only files whose content
293
297
  * matches at least one pattern are extracted.