@visulima/task-runner 1.0.0-alpha.5 → 1.0.0-alpha.7

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 (42) hide show
  1. package/CHANGELOG.md +48 -0
  2. package/dist/archive.d.ts +38 -0
  3. package/dist/cache.d.ts +31 -3
  4. package/dist/chrome-trace.d.ts +53 -0
  5. package/dist/file-access-tracker.d.ts +7 -1
  6. package/dist/fingerprint.d.ts +9 -0
  7. package/dist/incremental-hasher.d.ts +18 -0
  8. package/dist/index.d.ts +8 -3
  9. package/dist/index.js +22 -19
  10. package/dist/life-cycle.d.ts +2 -0
  11. package/dist/log-reporter.d.ts +34 -0
  12. package/dist/output-resolver.d.ts +20 -0
  13. package/dist/packem_shared/{Cache-iAjRMV2d.js → Cache-CWaX_c8U.js} +135 -45
  14. package/dist/packem_shared/{CompositeLifeCycle-7AtYw1dv.js → CompositeLifeCycle-CSVbRC_5.js} +10 -0
  15. package/dist/packem_shared/{FileAccessTracker-CrtBAt5D.js → FileAccessTracker-CQ5Ot7Hd.js} +68 -16
  16. package/dist/packem_shared/{FingerprintManager-Cu-ta9ee.js → FingerprintManager-CV7U4f4f.js} +22 -1
  17. package/dist/packem_shared/{IncrementalFileHasher-Cm_kJY5V.js → IncrementalFileHasher-BRS76-mb.js} +26 -0
  18. package/dist/packem_shared/LogReporter-BDt52HLu.js +44 -0
  19. package/dist/packem_shared/{RemoteCache-BFceSe4a.js → RemoteCache-DSU3lc87.js} +77 -37
  20. package/dist/packem_shared/{TaskOrchestrator-lLn-PH1m.js → TaskOrchestrator-rf45vW5c.js} +94 -15
  21. package/dist/packem_shared/{TerminalBuffer-CnPyFgPB.js → TerminalBuffer-qVJvbRQZ.js} +1 -1
  22. package/dist/packem_shared/{TrackedTaskExecutor-BGUKFE-7.js → TrackedTaskExecutor-CFPpQfXF.js} +1 -1
  23. package/dist/packem_shared/archive-UQHAnZUa.js +102 -0
  24. package/dist/packem_shared/{buildForwardDependencyMap-0BJFMMPv.js → buildForwardDependencyMap-DLPgKEto.js} +2 -1
  25. package/dist/packem_shared/{computeTaskHash-B2SVZqgp.js → computeTaskHash-DYqfrDGq.js} +122 -6
  26. package/dist/packem_shared/{createTaskGraph-CcsFaSrz.js → createTaskGraph-B7nH0kY_.js} +2 -2
  27. package/dist/packem_shared/{defaultTaskRunner-BdFTifsh.js → defaultTaskRunner-Cp7jCmIl.js} +28 -6
  28. package/dist/packem_shared/{extractPackageName-CbVNW-dr.js → extractPackageName-BllKetnz.js} +2 -1
  29. package/dist/packem_shared/{generateRunSummary-qn-_jKwt.js → generateRunSummary-BE1jnQ3H.js} +19 -1
  30. package/dist/packem_shared/{parsePartition-C4-P5RjK.js → parsePartition-BfLbHGAx.js} +18 -0
  31. package/dist/packem_shared/{projectGraphToDot-C8uYeaPo.js → projectGraphToDot-DU1lSe-c.js} +1 -1
  32. package/dist/packem_shared/resolveOutputs-n6MCKoTe.js +111 -0
  33. package/dist/packem_shared/{runConcurrentFallback-CGHz_f-Q.js → runConcurrentFallback-BTmgGV1H.js} +1 -1
  34. package/dist/packem_shared/{runConcurrently-qrkWyzXW.js → runConcurrently-CmfC4r-f.js} +1 -1
  35. package/dist/packem_shared/toChromeTrace-B2tZoJ-7.js +121 -0
  36. package/dist/remote-cache.d.ts +45 -0
  37. package/dist/run-summary.d.ts +26 -4
  38. package/dist/task-hasher.d.ts +37 -0
  39. package/dist/task-orchestrator.d.ts +2 -2
  40. package/dist/types.d.ts +137 -3
  41. package/index.js +52 -52
  42. package/package.json +13 -13
package/dist/types.d.ts CHANGED
@@ -12,6 +12,32 @@ export interface TaskTarget {
12
12
  /**
13
13
  * Represents a single task to be executed.
14
14
  */
15
+ /**
16
+ * Scheduling priority hint. The scheduler picks higher-priority tasks
17
+ * out of the ready-queue first; ties fall through to the graph-derived
18
+ * signals (dependent count, project depth).
19
+ *
20
+ * Use `"high"` for long-running leaves you want to kick off early
21
+ * (integration tests, e2e suites) so their wall-clock overlaps with
22
+ * the main build phase. Use `"low"` for work you don't mind deferring
23
+ * (linters, coverage uploads) when faster tasks contend for slots.
24
+ */
25
+ export type TaskPriority = "high" | "low" | "normal";
26
+ /**
27
+ * A single entry in a task's `outputs` list.
28
+ *
29
+ * - `string` — a literal path *or* a glob pattern relative to the
30
+ * workspace root. Prefix with `!` to exclude files the positive
31
+ * patterns would otherwise include (e.g. `"!dist/cache/**"`).
32
+ * - `{ auto: true }` — use whatever files the task actually wrote
33
+ * during execution (resolved from the file-access tracker). Lets
34
+ * authors who don't know their exact output layout cache results
35
+ * without listing every path. Silently behaves as "no outputs" when
36
+ * tracking isn't active for this task.
37
+ */
38
+ export type OutputSpec = string | {
39
+ auto: true;
40
+ };
15
41
  export interface Task {
16
42
  /** Whether this task is eligible for caching */
17
43
  cache?: boolean;
@@ -21,12 +47,22 @@ export interface Task {
21
47
  hashDetails?: TaskHashDetails;
22
48
  /** Unique identifier for the task, typically "project:target:configuration" */
23
49
  id: string;
24
- /** Output file paths produced by this task */
25
- outputs: string[];
50
+ /**
51
+ * Output patterns this task produces. Each entry is either a
52
+ * literal path, a glob (`"dist/**"`), a negative glob
53
+ * (`"!dist/cache/**"`), or `{ auto: true }` to pick up whatever
54
+ * files the task wrote during execution.
55
+ */
56
+ outputs: OutputSpec[];
26
57
  /** Overrides/extra options passed to the task */
27
58
  overrides: Record<string, unknown>;
28
59
  /** Whether this task supports parallel execution */
29
60
  parallelism?: boolean;
61
+ /**
62
+ * Explicit scheduling priority. Outranks the scheduler's
63
+ * graph-derived heuristics. Defaults to `"normal"` when absent.
64
+ */
65
+ priority?: TaskPriority;
30
66
  /** The project root directory */
31
67
  projectRoot?: string;
32
68
  /** The target this task executes */
@@ -66,8 +102,23 @@ export type TaskStatus = "success" | "failure" | "skipped" | "local-cache" | "lo
66
102
  export interface TaskResult {
67
103
  /** The exit code, if applicable */
68
104
  code?: number;
105
+ /**
106
+ * Set when auto-fingerprint tracking was attempted for this task but
107
+ * returned zero workspace accesses — usually a static binary on
108
+ * macOS/Windows, where the Node preload can't attach. Caching is
109
+ * skipped to avoid persisting an empty fingerprint that would
110
+ * produce false cache hits on every subsequent run.
111
+ */
112
+ emptyFingerprint?: boolean;
69
113
  /** The end time of the task */
70
114
  endTime?: number;
115
+ /**
116
+ * Set when the task modified one or more of its own tracked input
117
+ * files during execution. Caching is skipped in this case — the
118
+ * fingerprint captured before the run would mismatch the post-run
119
+ * contents and produce false cache hits on subsequent runs.
120
+ */
121
+ selfModified?: boolean;
71
122
  /** The start time of the task */
72
123
  startTime?: number;
73
124
  status: TaskStatus;
@@ -145,11 +196,30 @@ export interface TargetDependencyConfig {
145
196
  * Defines an input for cache invalidation.
146
197
  */
147
198
  export type InputDefinition = FileSetInput | RuntimeInput | EnvironmentInput | ExternalDependencyInput;
199
+ /**
200
+ * Controls how a glob pattern is anchored.
201
+ * - "package" (default): pattern is resolved relative to the project root
202
+ * - "workspace": pattern is resolved relative to the workspace root
203
+ */
204
+ export type FileSetBase = "package" | "workspace";
148
205
  /**
149
206
  * An input based on file patterns.
207
+ *
208
+ * `fileset` may be a bare glob string (package-root relative) or an object
209
+ * form `{ pattern, base }` to anchor explicitly to the workspace root.
210
+ * Negation (`!` prefix) works in both forms.
150
211
  */
151
212
  export interface FileSetInput {
152
- fileset: string;
213
+ fileset: FileSetPattern | string;
214
+ }
215
+ /**
216
+ * Object form of a fileset pattern, for anchoring to the workspace root.
217
+ */
218
+ export interface FileSetPattern {
219
+ /** Anchor for the pattern. */
220
+ base: FileSetBase;
221
+ /** Glob pattern (may start with `!` for negation). */
222
+ pattern: string;
153
223
  }
154
224
  /**
155
225
  * An input based on a runtime command.
@@ -311,6 +381,14 @@ export interface NamedInputs {
311
381
  * Configuration for the task runner.
312
382
  */
313
383
  export interface TaskRunnerOptions {
384
+ /**
385
+ * Scan each task's resolved command text for `$VAR`/`${VAR}`
386
+ * references and automatically fingerprint those env vars. Catches
387
+ * tasks like `curl ${VERCEL_URL}/api` where the user forgot to
388
+ * declare the reference in `envVars`/`globalEnv`.
389
+ * @default false
390
+ */
391
+ autoEnvVars?: boolean;
314
392
  /**
315
393
  * Enable auto-fingerprinting mode (Vite Task-style).
316
394
  * When enabled, the task runner automatically tracks which files
@@ -374,12 +452,37 @@ export interface TaskRunnerOptions {
374
452
  * forcing a full rebuild. This matches Turborepo's `globalDependencies`.
375
453
  */
376
454
  globalInputs?: string[];
455
+ /**
456
+ * When `true`, file hashes are cached in a persistent mtime+size
457
+ * indexed snapshot under `node_modules/.cache/task-runner/`. On
458
+ * subsequent runs, unchanged files skip content re-reads — cuts
459
+ * cold-cache fingerprint time dramatically on large workspaces.
460
+ *
461
+ * Changed or new files still get full content hashing. Safe to
462
+ * leave on by default; overhead when nothing matches is a single
463
+ * `stat` call per file.
464
+ * @default false
465
+ */
466
+ incrementalFileHashing?: boolean;
377
467
  /** Maximum age of cache entries in milliseconds */
378
468
  maxCacheAge?: number;
379
469
  /** Maximum cache size (e.g., "1GB") */
380
470
  maxCacheSize?: string;
381
471
  /** Named inputs for cache invalidation */
382
472
  namedInputs?: NamedInputs;
473
+ /**
474
+ * When `true`, the cache directory is partitioned by a hash of
475
+ * the resolved `globalEnv` values. Changing a globalEnv var moves
476
+ * cache writes into a new namespace; rolling it back reuses the
477
+ * old namespace and its hits. Without this option, any globalEnv
478
+ * change silently busts every cached entry.
479
+ *
480
+ * Keep disabled when globalEnv is stable across runs — the extra
481
+ * path depth offers no value, and misconfigured namespaces can
482
+ * hide stale hits.
483
+ * @default false
484
+ */
485
+ namespaceByGlobalEnv?: boolean;
383
486
  /** Maximum number of parallel tasks */
384
487
  parallel?: number | boolean;
385
488
  /**
@@ -614,8 +717,39 @@ export interface ConcurrentRunResult {
614
717
  export interface LifeCycleInterface {
615
718
  endCommand?: () => void;
616
719
  endTasks?: (taskResults: TaskResult[]) => void;
720
+ /**
721
+ * Called when a running task emits data on stderr, in the order the
722
+ * data arrives. Executors that support streaming output (`vis run`'s
723
+ * concurrent executor) forward chunks here verbatim. Executors that
724
+ * only buffer full output (e.g. the simple test executor) skip this
725
+ * hook — rely on `printTaskTerminalOutput` for the final dump.
726
+ *
727
+ * Handlers should be non-blocking; the orchestrator doesn't await.
728
+ */
729
+ onTaskStderr?: (task: Task, chunk: string) => void;
730
+ /**
731
+ * Called when a running task emits data on stdout, in the order the
732
+ * data arrives. See {@link LifeCycleInterface.onTaskStderr} for
733
+ * semantics — same contract, different stream.
734
+ */
735
+ onTaskStdout?: (task: Task, chunk: string) => void;
617
736
  /** Called when a cache miss occurs with diagnostic information */
618
737
  printCacheMiss?: (task: Task, reasons: string) => void;
738
+ /**
739
+ * Called when caching was skipped because auto-fingerprint tracking
740
+ * came back empty — a signal that the tracker (strace or Node
741
+ * preload) couldn't observe the task's file access, typically
742
+ * because it's a static binary on a platform without strace.
743
+ * `reason` is a short human-readable diagnostic.
744
+ */
745
+ printEmptyFingerprintWarning?: (task: Task, reason: string) => void;
746
+ /**
747
+ * Called when caching is skipped because the task modified one or
748
+ * more of its own tracked inputs. `modifiedFiles` lists the
749
+ * workspace-relative paths that changed between pre- and
750
+ * post-execution hashes.
751
+ */
752
+ printSelfModifyingSkip?: (task: Task, modifiedFiles: string[]) => void;
619
753
  printTaskTerminalOutput?: (task: Task, status: TaskStatus, terminalOutput: string) => void;
620
754
  scheduleTask?: (task: Task) => void;
621
755
  startCommand?: () => void;
package/index.js CHANGED
@@ -82,12 +82,12 @@ function requireNative() {
82
82
  const binding = require("@visulima/task-runner-binding-android-arm64");
83
83
  const bindingPackageVersion = require("@visulima/task-runner-binding-android-arm64/package.json").version;
84
84
  if (
85
- bindingPackageVersion !== "1.0.0-alpha.3" &&
85
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
86
86
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
87
87
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
88
88
  ) {
89
89
  throw new Error(
90
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
90
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
91
91
  );
92
92
  }
93
93
  return binding;
@@ -104,12 +104,12 @@ function requireNative() {
104
104
  const binding = require("@visulima/task-runner-binding-android-arm-eabi");
105
105
  const bindingPackageVersion = require("@visulima/task-runner-binding-android-arm-eabi/package.json").version;
106
106
  if (
107
- bindingPackageVersion !== "1.0.0-alpha.3" &&
107
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
108
108
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
109
109
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
110
110
  ) {
111
111
  throw new Error(
112
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
112
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
113
113
  );
114
114
  }
115
115
  return binding;
@@ -131,12 +131,12 @@ function requireNative() {
131
131
  const binding = require("@visulima/task-runner-binding-win32-x64-gnu");
132
132
  const bindingPackageVersion = require("@visulima/task-runner-binding-win32-x64-gnu/package.json").version;
133
133
  if (
134
- bindingPackageVersion !== "1.0.0-alpha.3" &&
134
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
135
135
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
136
136
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
137
137
  ) {
138
138
  throw new Error(
139
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
139
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
140
140
  );
141
141
  }
142
142
  return binding;
@@ -153,12 +153,12 @@ function requireNative() {
153
153
  const binding = require("@visulima/task-runner-binding-win32-x64-msvc");
154
154
  const bindingPackageVersion = require("@visulima/task-runner-binding-win32-x64-msvc/package.json").version;
155
155
  if (
156
- bindingPackageVersion !== "1.0.0-alpha.3" &&
156
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
157
157
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
158
158
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
159
159
  ) {
160
160
  throw new Error(
161
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
161
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
162
162
  );
163
163
  }
164
164
  return binding;
@@ -176,12 +176,12 @@ function requireNative() {
176
176
  const binding = require("@visulima/task-runner-binding-win32-ia32-msvc");
177
177
  const bindingPackageVersion = require("@visulima/task-runner-binding-win32-ia32-msvc/package.json").version;
178
178
  if (
179
- bindingPackageVersion !== "1.0.0-alpha.3" &&
179
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
180
180
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
181
181
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
182
182
  ) {
183
183
  throw new Error(
184
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
184
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
185
185
  );
186
186
  }
187
187
  return binding;
@@ -198,12 +198,12 @@ function requireNative() {
198
198
  const binding = require("@visulima/task-runner-binding-win32-arm64-msvc");
199
199
  const bindingPackageVersion = require("@visulima/task-runner-binding-win32-arm64-msvc/package.json").version;
200
200
  if (
201
- bindingPackageVersion !== "1.0.0-alpha.3" &&
201
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
202
202
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
203
203
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
204
204
  ) {
205
205
  throw new Error(
206
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
206
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
207
207
  );
208
208
  }
209
209
  return binding;
@@ -222,9 +222,9 @@ function requireNative() {
222
222
  try {
223
223
  const binding = require("@visulima/task-runner-binding-darwin-universal");
224
224
  const bindingPackageVersion = require("@visulima/task-runner-binding-darwin-universal/package.json").version;
225
- if (bindingPackageVersion !== "1.0.0-alpha.3" && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0") {
225
+ if (bindingPackageVersion !== "1.0.0-alpha.5" && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0") {
226
226
  throw new Error(
227
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
227
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
228
228
  );
229
229
  }
230
230
  return binding;
@@ -241,12 +241,12 @@ function requireNative() {
241
241
  const binding = require("@visulima/task-runner-binding-darwin-x64");
242
242
  const bindingPackageVersion = require("@visulima/task-runner-binding-darwin-x64/package.json").version;
243
243
  if (
244
- bindingPackageVersion !== "1.0.0-alpha.3" &&
244
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
245
245
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
246
246
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
247
247
  ) {
248
248
  throw new Error(
249
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
249
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
250
250
  );
251
251
  }
252
252
  return binding;
@@ -263,12 +263,12 @@ function requireNative() {
263
263
  const binding = require("@visulima/task-runner-binding-darwin-arm64");
264
264
  const bindingPackageVersion = require("@visulima/task-runner-binding-darwin-arm64/package.json").version;
265
265
  if (
266
- bindingPackageVersion !== "1.0.0-alpha.3" &&
266
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
267
267
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
268
268
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
269
269
  ) {
270
270
  throw new Error(
271
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
271
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
272
272
  );
273
273
  }
274
274
  return binding;
@@ -289,12 +289,12 @@ function requireNative() {
289
289
  const binding = require("@visulima/task-runner-binding-freebsd-x64");
290
290
  const bindingPackageVersion = require("@visulima/task-runner-binding-freebsd-x64/package.json").version;
291
291
  if (
292
- bindingPackageVersion !== "1.0.0-alpha.3" &&
292
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
293
293
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
294
294
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
295
295
  ) {
296
296
  throw new Error(
297
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
297
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
298
298
  );
299
299
  }
300
300
  return binding;
@@ -311,12 +311,12 @@ function requireNative() {
311
311
  const binding = require("@visulima/task-runner-binding-freebsd-arm64");
312
312
  const bindingPackageVersion = require("@visulima/task-runner-binding-freebsd-arm64/package.json").version;
313
313
  if (
314
- bindingPackageVersion !== "1.0.0-alpha.3" &&
314
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
315
315
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
316
316
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
317
317
  ) {
318
318
  throw new Error(
319
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
319
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
320
320
  );
321
321
  }
322
322
  return binding;
@@ -338,12 +338,12 @@ function requireNative() {
338
338
  const binding = require("@visulima/task-runner-binding-linux-x64-musl");
339
339
  const bindingPackageVersion = require("@visulima/task-runner-binding-linux-x64-musl/package.json").version;
340
340
  if (
341
- bindingPackageVersion !== "1.0.0-alpha.3" &&
341
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
342
342
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
343
343
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
344
344
  ) {
345
345
  throw new Error(
346
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
346
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
347
347
  );
348
348
  }
349
349
  return binding;
@@ -360,12 +360,12 @@ function requireNative() {
360
360
  const binding = require("@visulima/task-runner-binding-linux-x64-gnu");
361
361
  const bindingPackageVersion = require("@visulima/task-runner-binding-linux-x64-gnu/package.json").version;
362
362
  if (
363
- bindingPackageVersion !== "1.0.0-alpha.3" &&
363
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
364
364
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
365
365
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
366
366
  ) {
367
367
  throw new Error(
368
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
368
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
369
369
  );
370
370
  }
371
371
  return binding;
@@ -384,12 +384,12 @@ function requireNative() {
384
384
  const binding = require("@visulima/task-runner-binding-linux-arm64-musl");
385
385
  const bindingPackageVersion = require("@visulima/task-runner-binding-linux-arm64-musl/package.json").version;
386
386
  if (
387
- bindingPackageVersion !== "1.0.0-alpha.3" &&
387
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
388
388
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
389
389
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
390
390
  ) {
391
391
  throw new Error(
392
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
392
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
393
393
  );
394
394
  }
395
395
  return binding;
@@ -406,12 +406,12 @@ function requireNative() {
406
406
  const binding = require("@visulima/task-runner-binding-linux-arm64-gnu");
407
407
  const bindingPackageVersion = require("@visulima/task-runner-binding-linux-arm64-gnu/package.json").version;
408
408
  if (
409
- bindingPackageVersion !== "1.0.0-alpha.3" &&
409
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
410
410
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
411
411
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
412
412
  ) {
413
413
  throw new Error(
414
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
414
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
415
415
  );
416
416
  }
417
417
  return binding;
@@ -430,12 +430,12 @@ function requireNative() {
430
430
  const binding = require("@visulima/task-runner-binding-linux-arm-musleabihf");
431
431
  const bindingPackageVersion = require("@visulima/task-runner-binding-linux-arm-musleabihf/package.json").version;
432
432
  if (
433
- bindingPackageVersion !== "1.0.0-alpha.3" &&
433
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
434
434
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
435
435
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
436
436
  ) {
437
437
  throw new Error(
438
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
438
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
439
439
  );
440
440
  }
441
441
  return binding;
@@ -452,12 +452,12 @@ function requireNative() {
452
452
  const binding = require("@visulima/task-runner-binding-linux-arm-gnueabihf");
453
453
  const bindingPackageVersion = require("@visulima/task-runner-binding-linux-arm-gnueabihf/package.json").version;
454
454
  if (
455
- bindingPackageVersion !== "1.0.0-alpha.3" &&
455
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
456
456
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
457
457
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
458
458
  ) {
459
459
  throw new Error(
460
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
460
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
461
461
  );
462
462
  }
463
463
  return binding;
@@ -476,12 +476,12 @@ function requireNative() {
476
476
  const binding = require("@visulima/task-runner-binding-linux-loong64-musl");
477
477
  const bindingPackageVersion = require("@visulima/task-runner-binding-linux-loong64-musl/package.json").version;
478
478
  if (
479
- bindingPackageVersion !== "1.0.0-alpha.3" &&
479
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
480
480
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
481
481
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
482
482
  ) {
483
483
  throw new Error(
484
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
484
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
485
485
  );
486
486
  }
487
487
  return binding;
@@ -498,12 +498,12 @@ function requireNative() {
498
498
  const binding = require("@visulima/task-runner-binding-linux-loong64-gnu");
499
499
  const bindingPackageVersion = require("@visulima/task-runner-binding-linux-loong64-gnu/package.json").version;
500
500
  if (
501
- bindingPackageVersion !== "1.0.0-alpha.3" &&
501
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
502
502
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
503
503
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
504
504
  ) {
505
505
  throw new Error(
506
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
506
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
507
507
  );
508
508
  }
509
509
  return binding;
@@ -522,12 +522,12 @@ function requireNative() {
522
522
  const binding = require("@visulima/task-runner-binding-linux-riscv64-musl");
523
523
  const bindingPackageVersion = require("@visulima/task-runner-binding-linux-riscv64-musl/package.json").version;
524
524
  if (
525
- bindingPackageVersion !== "1.0.0-alpha.3" &&
525
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
526
526
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
527
527
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
528
528
  ) {
529
529
  throw new Error(
530
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
530
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
531
531
  );
532
532
  }
533
533
  return binding;
@@ -544,12 +544,12 @@ function requireNative() {
544
544
  const binding = require("@visulima/task-runner-binding-linux-riscv64-gnu");
545
545
  const bindingPackageVersion = require("@visulima/task-runner-binding-linux-riscv64-gnu/package.json").version;
546
546
  if (
547
- bindingPackageVersion !== "1.0.0-alpha.3" &&
547
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
548
548
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
549
549
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
550
550
  ) {
551
551
  throw new Error(
552
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
552
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
553
553
  );
554
554
  }
555
555
  return binding;
@@ -567,12 +567,12 @@ function requireNative() {
567
567
  const binding = require("@visulima/task-runner-binding-linux-ppc64-gnu");
568
568
  const bindingPackageVersion = require("@visulima/task-runner-binding-linux-ppc64-gnu/package.json").version;
569
569
  if (
570
- bindingPackageVersion !== "1.0.0-alpha.3" &&
570
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
571
571
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
572
572
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
573
573
  ) {
574
574
  throw new Error(
575
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
575
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
576
576
  );
577
577
  }
578
578
  return binding;
@@ -589,12 +589,12 @@ function requireNative() {
589
589
  const binding = require("@visulima/task-runner-binding-linux-s390x-gnu");
590
590
  const bindingPackageVersion = require("@visulima/task-runner-binding-linux-s390x-gnu/package.json").version;
591
591
  if (
592
- bindingPackageVersion !== "1.0.0-alpha.3" &&
592
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
593
593
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
594
594
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
595
595
  ) {
596
596
  throw new Error(
597
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
597
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
598
598
  );
599
599
  }
600
600
  return binding;
@@ -615,12 +615,12 @@ function requireNative() {
615
615
  const binding = require("@visulima/task-runner-binding-openharmony-arm64");
616
616
  const bindingPackageVersion = require("@visulima/task-runner-binding-openharmony-arm64/package.json").version;
617
617
  if (
618
- bindingPackageVersion !== "1.0.0-alpha.3" &&
618
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
619
619
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
620
620
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
621
621
  ) {
622
622
  throw new Error(
623
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
623
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
624
624
  );
625
625
  }
626
626
  return binding;
@@ -637,12 +637,12 @@ function requireNative() {
637
637
  const binding = require("@visulima/task-runner-binding-openharmony-x64");
638
638
  const bindingPackageVersion = require("@visulima/task-runner-binding-openharmony-x64/package.json").version;
639
639
  if (
640
- bindingPackageVersion !== "1.0.0-alpha.3" &&
640
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
641
641
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
642
642
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
643
643
  ) {
644
644
  throw new Error(
645
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
645
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
646
646
  );
647
647
  }
648
648
  return binding;
@@ -659,12 +659,12 @@ function requireNative() {
659
659
  const binding = require("@visulima/task-runner-binding-openharmony-arm");
660
660
  const bindingPackageVersion = require("@visulima/task-runner-binding-openharmony-arm/package.json").version;
661
661
  if (
662
- bindingPackageVersion !== "1.0.0-alpha.3" &&
662
+ bindingPackageVersion !== "1.0.0-alpha.5" &&
663
663
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK &&
664
664
  process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== "0"
665
665
  ) {
666
666
  throw new Error(
667
- `Native binding package version mismatch, expected 1.0.0-alpha.3 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
667
+ `Native binding package version mismatch, expected 1.0.0-alpha.5 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`,
668
668
  );
669
669
  }
670
670
  return binding;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visulima/task-runner",
3
- "version": "1.0.0-alpha.5",
3
+ "version": "1.0.0-alpha.7",
4
4
  "description": "A task runner with caching support for monorepo workspaces",
5
5
  "keywords": [
6
6
  "visulima",
@@ -52,22 +52,22 @@
52
52
  "LICENSE.md"
53
53
  ],
54
54
  "dependencies": {
55
- "@visulima/humanizer": "3.0.0-alpha.10",
56
- "@visulima/path": "3.0.0-alpha.9",
57
- "@lydell/node-pty": "1.2.0-beta.12"
55
+ "@lydell/node-pty": "1.2.0-beta.12",
56
+ "@visulima/humanizer": "3.0.0-alpha.11",
57
+ "@visulima/path": "3.0.0-alpha.10"
58
58
  },
59
59
  "optionalDependencies": {
60
- "@visulima/task-runner-binding-darwin-arm64": "1.0.0-alpha.5",
61
- "@visulima/task-runner-binding-linux-arm64-gnu": "1.0.0-alpha.5",
62
- "@visulima/task-runner-binding-darwin-x64": "1.0.0-alpha.5",
63
- "@visulima/task-runner-binding-linux-x64-gnu": "1.0.0-alpha.5",
64
- "@visulima/task-runner-binding-linux-arm64-musl": "1.0.0-alpha.5",
65
- "@visulima/task-runner-binding-linux-x64-musl": "1.0.0-alpha.5",
66
- "@visulima/task-runner-binding-win32-arm64-msvc": "1.0.0-alpha.5",
67
- "@visulima/task-runner-binding-win32-x64-msvc": "1.0.0-alpha.5"
60
+ "@visulima/task-runner-binding-darwin-x64": "1.0.0-alpha.7",
61
+ "@visulima/task-runner-binding-darwin-arm64": "1.0.0-alpha.7",
62
+ "@visulima/task-runner-binding-linux-x64-gnu": "1.0.0-alpha.7",
63
+ "@visulima/task-runner-binding-linux-arm64-musl": "1.0.0-alpha.7",
64
+ "@visulima/task-runner-binding-linux-arm64-gnu": "1.0.0-alpha.7",
65
+ "@visulima/task-runner-binding-linux-x64-musl": "1.0.0-alpha.7",
66
+ "@visulima/task-runner-binding-win32-arm64-msvc": "1.0.0-alpha.7",
67
+ "@visulima/task-runner-binding-win32-x64-msvc": "1.0.0-alpha.7"
68
68
  },
69
69
  "engines": {
70
- "node": ">=22.13 <=25.x"
70
+ "node": "^22.14.0 || >=24.10.0"
71
71
  },
72
72
  "publishConfig": {
73
73
  "access": "public",