@visulima/task-runner 1.0.0-alpha.10 → 1.0.0-alpha.12

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/CHANGELOG.md CHANGED
@@ -1,3 +1,21 @@
1
+ ## @visulima/task-runner [1.0.0-alpha.12](https://github.com/visulima/visulima/compare/@visulima/task-runner@1.0.0-alpha.11...@visulima/task-runner@1.0.0-alpha.12) (2026-05-10)
2
+
3
+ ### Features
4
+
5
+ * **task-runner:** add onRetry + onFingerprint hooks ([7e9dadf](https://github.com/visulima/visulima/commit/7e9dadfbe7101fd9b2878eb881d16c3ff5d766ac))
6
+
7
+ ## @visulima/task-runner [1.0.0-alpha.11](https://github.com/visulima/visulima/compare/@visulima/task-runner@1.0.0-alpha.10...@visulima/task-runner@1.0.0-alpha.11) (2026-05-10)
8
+
9
+ ### Features
10
+
11
+ * add service and tool projectType variants ([61858ad](https://github.com/visulima/visulima/commit/61858ad4c044b5f30318f282615c83f716667053)), closes [#21](https://github.com/visulima/visulima/issues/21)
12
+ * **task-runner:** allow embedders to override the data directory ([904875a](https://github.com/visulima/visulima/commit/904875a15751c57ebafa9c137fd11c2ade1a4b6a))
13
+ * **task-runner:** surface native child pids for sigint cleanup ([3790bbd](https://github.com/visulima/visulima/commit/3790bbd5f88485f6c67c28548faf7a2a3791216c))
14
+
15
+ ### Miscellaneous Chores
16
+
17
+ * **task-runner:** bump protobufjs to 8.0.3 ([cfbd5e7](https://github.com/visulima/visulima/commit/cfbd5e783e8773db790223f7dd8baea56685c1ca))
18
+
1
19
  ## @visulima/task-runner [1.0.0-alpha.10](https://github.com/visulima/visulima/compare/@visulima/task-runner@1.0.0-alpha.9...@visulima/task-runner@1.0.0-alpha.10) (2026-05-06)
2
20
 
3
21
  ### Features
package/dist/index.d.ts CHANGED
@@ -660,7 +660,7 @@ interface ProjectConfiguration {
660
660
  */
661
661
  layer?: "application" | "automation" | "configuration" | "library" | "scaffolding" | "tool";
662
662
  /** The project type */
663
- projectType?: "library" | "application";
663
+ projectType?: "application" | "library" | "service" | "tool";
664
664
  /** The root directory of the project, relative to workspace root */
665
665
  root: string;
666
666
  /** The source root directory */
@@ -877,8 +877,9 @@ interface TypeBoundaries {
877
877
  */
878
878
  allowedDependencyTypes?: Record<string, string[]>;
879
879
  /**
880
- * When true, no project may depend on an "application" type project.
881
- * Applications are typically deployment targets, not libraries.
880
+ * When true, no project may depend on a deployment target — projects of
881
+ * type `application`, `service`, or `tool`. Deployment targets are
882
+ * standalone artefacts, not reusable libraries.
882
883
  * @default true
883
884
  */
884
885
  enforceApplicationBoundary?: boolean;
@@ -895,8 +896,9 @@ interface DependencyKindRules {
895
896
  */
896
897
  noDevDependencyOnProductionDep?: boolean;
897
898
  /**
898
- * When true, production `dependencies` must not point to "application" type projects.
899
- * devDependencies on applications are allowed (e.g., for testing).
899
+ * When true, production `dependencies` must not point to deployment-target
900
+ * projects `application`, `service`, or `tool`. devDependencies on those
901
+ * are allowed (e.g., for testing).
900
902
  * @default false
901
903
  */
902
904
  noProductionDependencyOnApplication?: boolean;
@@ -978,7 +980,7 @@ interface ProjectGraphProjectNode {
978
980
  /** The project name */
979
981
  name: string;
980
982
  /** The type of project */
981
- type: "library" | "application";
983
+ type: "application" | "library" | "service" | "tool";
982
984
  }
983
985
  /**
984
986
  * The project graph represents the dependency relationships between projects.
@@ -1026,6 +1028,15 @@ interface TaskRunnerOptions {
1026
1028
  /** Directory for storing cache */
1027
1029
  cacheDirectory?: string;
1028
1030
  /**
1031
+ * Directory used to persist run summaries (`runs/`),
1032
+ * `last-summary.json`, and other run-scoped state. Defaults to
1033
+ * `{workspaceRoot}/.task-runner` when omitted so standalone
1034
+ * task-runner consumers keep their existing layout. Vis sets this
1035
+ * to `{workspaceRoot}/.vis` so all per-workspace state lives under
1036
+ * a single directory.
1037
+ */
1038
+ dataDirectory?: string;
1039
+ /**
1029
1040
  * Dry-run mode: compute hashes and check cache but don't execute tasks.
1030
1041
  * Useful for debugging cache hits/misses.
1031
1042
  * @default false
@@ -1121,6 +1132,21 @@ interface TaskRunnerOptions {
1121
1132
  * @default false
1122
1133
  */
1123
1134
  namespaceByGlobalEnv?: boolean;
1135
+ /**
1136
+ * Plugin extension point invoked during task fingerprinting. Fires
1137
+ * once per task after the built-in inputs (filesets, runtime, env)
1138
+ * have been gathered and before the hash is sealed. Contributions
1139
+ * made through the supplied {@link FingerprintContributor} are mixed
1140
+ * deterministically into the final hash.
1141
+ *
1142
+ * Throwing aborts fingerprinting for that task — the task fails
1143
+ * before any cache lookup runs, so a buggy plugin can't silently
1144
+ * corrupt cache state.
1145
+ *
1146
+ * Wired by `vis` to bridge into the `task:fingerprint` hook;
1147
+ * standalone task-runner consumers can pass a callback directly.
1148
+ */
1149
+ onFingerprint?: FingerprintHook;
1124
1150
  /** Maximum number of parallel tasks */
1125
1151
  parallel?: number | boolean;
1126
1152
  /**
@@ -1160,6 +1186,34 @@ interface TaskRunnerOptions {
1160
1186
  untrackedEnvVars?: string[];
1161
1187
  }
1162
1188
  /**
1189
+ * Handle handed to plugin fingerprint hooks. Plugins call
1190
+ * `contribute(key, value)` to mix extra strings into the task hash —
1191
+ * the hasher merges contributions into a deterministic, sorted bucket
1192
+ * so registration order doesn't change the resulting hash.
1193
+ *
1194
+ * Re-contributing the same key overwrites the previous value (last
1195
+ * write wins). Plugins that need isolation should namespace their
1196
+ * keys (e.g. `my-plugin:setting`).
1197
+ */
1198
+ interface FingerprintContributor {
1199
+ /**
1200
+ * Mix `value` into the task fingerprint under `key`. Both are
1201
+ * arbitrary strings; the hasher runs them through xxh3 alongside
1202
+ * the built-in inputs.
1203
+ */
1204
+ contribute: (key: string, value: string) => void;
1205
+ }
1206
+ /**
1207
+ * Plugin callback fired during fingerprint construction, after all
1208
+ * built-in inputs (filesets, runtime, env) have been gathered and
1209
+ * before the final hash is sealed. Contributions made via the supplied
1210
+ * {@link FingerprintContributor} are mixed into the hash.
1211
+ *
1212
+ * Throwing aborts hashing for that task — the task fails before any
1213
+ * cache lookup, so a buggy plugin doesn't quietly corrupt cache state.
1214
+ */
1215
+ type FingerprintHook = (task: Task, contributor: FingerprintContributor) => Promise<void> | void;
1216
+ /**
1163
1217
  * Options for executing a task.
1164
1218
  */
1165
1219
  interface TaskExecutionOptions {
@@ -1261,6 +1315,13 @@ interface ConcurrentRunnerOptions {
1261
1315
  restart?: {
1262
1316
  /** Delay between restarts in ms. "exponential" for 2^attempt * 1000ms. */
1263
1317
  delay?: number | "exponential";
1318
+ /**
1319
+ * Optional pre-restart callback. Fires once per scheduled retry,
1320
+ * after the failed attempt is detected and before the restart
1321
+ * delay sleeps. `attempt` is 1-indexed and counts the retry that's
1322
+ * about to start. Throwing aborts the entire restart batch.
1323
+ */
1324
+ onRetry?: (attempt: number, commandIndex: number, prevExitCode: number) => Promise<void> | void;
1264
1325
  /** Maximum restart attempts per command. 0 = no restarts. -1 = infinite. */
1265
1326
  tries: number;
1266
1327
  };
@@ -1299,6 +1360,11 @@ interface ProcessEvent {
1299
1360
  kind: "close" | "error" | "started" | "stderr" | "stdout";
1300
1361
  /** Error message (for error events). */
1301
1362
  message?: string;
1363
+ /**
1364
+ * OS pid of the freshly spawned child. Only present on "started"
1365
+ * events; absent when the platform could not provide one.
1366
+ */
1367
+ pid?: number;
1302
1368
  /** Resize the child's PTY. Only present on "started" events with stdin "pty". */
1303
1369
  resize?: (cols: number, rows: number) => void;
1304
1370
  /** Text content (for stdout/stderr events). */
@@ -1967,35 +2033,45 @@ interface RunSummary {
1967
2033
  * Generates a run summary from task results.
1968
2034
  */
1969
2035
  declare const generateRunSummary: (results: TaskResults, taskGraph: TaskGraph, startTime: number) => RunSummary;
2036
+ interface RunSummaryPathOptions {
2037
+ /**
2038
+ * Absolute path to the directory that holds `runs/` and
2039
+ * `last-summary.json`. When omitted, falls back to
2040
+ * `{workspaceRoot}/.task-runner`.
2041
+ */
2042
+ dataDirectory?: string;
2043
+ }
1970
2044
  /**
1971
- * Writes the run summary to a JSON file in the `.task-runner/runs/` directory.
2045
+ * Writes the run summary to a JSON file in the `runs/` subdirectory of the
2046
+ * resolved data directory (defaults to `.task-runner/runs/`).
1972
2047
  * @param summary The run summary to write
1973
2048
  * @param workspaceRoot The workspace root directory
2049
+ * @param options Optional overrides — pass `dataDirectory` to redirect away from `.task-runner/`
1974
2050
  * @returns The path to the written summary file
1975
2051
  */
1976
- declare const writeRunSummary: (summary: RunSummary, workspaceRoot: string) => Promise<string>;
2052
+ declare const writeRunSummary: (summary: RunSummary, workspaceRoot: string, options?: RunSummaryPathOptions) => Promise<string>;
1977
2053
  /**
1978
2054
  * Path where the most-recent run summary is persisted.
1979
2055
  * Consumers (e.g. CLIs exposing `--last-details`) read this file
1980
2056
  * to replay or render the previous run without re-executing.
1981
2057
  */
1982
- declare const getLastRunSummaryPath: (workspaceRoot: string) => string;
2058
+ declare const getLastRunSummaryPath: (workspaceRoot: string, options?: RunSummaryPathOptions) => string;
1983
2059
  /**
1984
2060
  * Persists `summary` as the most-recent run summary at
1985
- * `.task-runner/last-summary.json`, overwriting any previous entry.
2061
+ * `{dataDirectory}/last-summary.json`, overwriting any previous entry.
1986
2062
  *
1987
2063
  * This is the companion to {@link readLastRunSummary} and powers
1988
2064
  * CLI surfaces that display "last run" details without re-running tasks.
1989
2065
  * @returns The path to the written summary file
1990
2066
  */
1991
- declare const writeLastRunSummary: (summary: RunSummary, workspaceRoot: string) => Promise<string>;
2067
+ declare const writeLastRunSummary: (summary: RunSummary, workspaceRoot: string, options?: RunSummaryPathOptions) => Promise<string>;
1992
2068
  /**
1993
2069
  * Reads the most-recent run summary written by {@link writeLastRunSummary}.
1994
2070
  * Returns `undefined` when no previous run has been recorded or the file
1995
2071
  * cannot be parsed — callers should render an informational message
1996
2072
  * instead of treating this as an error.
1997
2073
  */
1998
- declare const readLastRunSummary: (workspaceRoot: string) => Promise<RunSummary | undefined>;
2074
+ declare const readLastRunSummary: (workspaceRoot: string, options?: RunSummaryPathOptions) => Promise<RunSummary | undefined>;
1999
2075
  /**
2000
2076
  * A single event in the Chrome Tracing JSON format. Chrome's
2001
2077
  * chrome://tracing viewer and Perfetto both accept an array of these.
@@ -2262,6 +2338,22 @@ declare const logTimings: (closeEvents: ConcurrentCloseEvent[], output?: NodeJS.
2262
2338
  interface RestartOptions {
2263
2339
  /** Delay between restarts in milliseconds. "exponential" for 2^attempt * 1000ms. */
2264
2340
  delay: number | "exponential";
2341
+ /**
2342
+ * Optional pre-restart callback. Fires once per scheduled retry,
2343
+ * **after** the failed attempt is detected and **before** the restart
2344
+ * delay sleeps — giving callers a chance to log, emit metrics, or
2345
+ * abort the retry by throwing.
2346
+ *
2347
+ * `attempt` is 1-indexed and counts the retry that's about to start
2348
+ * (the original failed run was attempt 0). `commandIndex` matches
2349
+ * the position of the failing command in the input array.
2350
+ *
2351
+ * Throwing aborts the entire `withRestart` batch — the rejection
2352
+ * surfaces from `runConcurrently` to the caller, mirroring the
2353
+ * existing error path. Use this to gate retries on external state
2354
+ * (budget exhaustion, circuit breakers).
2355
+ */
2356
+ onRetry?: (attempt: number, commandIndex: number, prevExitCode: number) => Promise<void> | void;
2265
2357
  /** Maximum number of restart attempts per command. 0 = no restarts. -1 = infinite. */
2266
2358
  tries: number;
2267
2359
  }
@@ -2645,6 +2737,7 @@ interface NativeProcessEvent {
2645
2737
  killed?: boolean;
2646
2738
  kind: string;
2647
2739
  message?: string;
2740
+ pid?: number;
2648
2741
  text?: string;
2649
2742
  }
2650
2743
  interface NativeConcurrentCloseEvent {
@@ -2678,7 +2771,7 @@ interface NativeBindings {
2678
2771
  isLinkedWorktree: (workspaceRoot: string) => boolean;
2679
2772
  resetWorktreeCache: () => void;
2680
2773
  runConcurrent: (commands: NativeConcurrentCommandConfig[], options: NativeConcurrentRunnerOptions, onEvent: (event: NativeProcessEvent) => void) => Promise<NativeConcurrentRunResult>;
2681
- runConcurrentBatch: (commands: NativeConcurrentCommandConfig[], options: NativeConcurrentRunnerOptions) => Promise<NativeConcurrentRunResult>;
2774
+ runConcurrentBatch: (commands: NativeConcurrentCommandConfig[], options: NativeConcurrentRunnerOptions, onLifecycle?: ((event: NativeProcessEvent) => void) | null) => Promise<NativeConcurrentRunResult>;
2682
2775
  topologicalSort: (graph: NativeTaskGraph) => string[];
2683
2776
  }
2684
2777
  /**
@@ -2879,6 +2972,12 @@ interface TaskHasherOptions {
2879
2972
  incrementalHasher?: IncrementalFileHasher;
2880
2973
  /** Named input definitions */
2881
2974
  namedInputs?: NamedInputs;
2975
+ /**
2976
+ * Plugin hook fired during fingerprint construction. See
2977
+ * {@link FingerprintHook} for the contract — throwing aborts
2978
+ * hashing for the offending task.
2979
+ */
2980
+ onFingerprint?: FingerprintHook;
2882
2981
  /** Project configurations keyed by project name */
2883
2982
  projects: Record<string, ProjectConfiguration>;
2884
2983
  /**
@@ -2980,6 +3079,13 @@ interface TaskOrchestratorOptions {
2980
3079
  cache: Cache;
2981
3080
  cacheDiagnostics?: boolean;
2982
3081
  captureOutput?: boolean;
3082
+ /**
3083
+ * Directory used to persist run summaries. Forwarded to
3084
+ * {@link writeRunSummary} / {@link writeLastRunSummary} so
3085
+ * embedders (vis) can redirect run-scoped state away from the
3086
+ * default `{workspaceRoot}/.task-runner`.
3087
+ */
3088
+ dataDirectory?: string;
2983
3089
  dryRun?: boolean;
2984
3090
  fingerprintEnvPatterns?: string[];
2985
3091
  lifeCycle: LifeCycleInterface;
@@ -3163,4 +3269,4 @@ declare const isLinkedWorktree: (workspaceRoot: string) => boolean;
3163
3269
  * recreating a fixture at the same path would otherwise leak stale results.
3164
3270
  */
3165
3271
  declare const resetWorktreeCache: () => void;
3166
- export { type ActionResult, type AffectedOptions, type AffectedResult, type AffectedScope, type BlobSource, Cache, type CacheMissReason, type CacheMode, type CacheOptions, type CacheRestoreOptions, type CachedResult, type CasDigest, type ChromeTraceEvent, CompositeLifeCycle, type ConcurrencyGroups, type ConcurrentCloseEvent, type ConcurrentCommandConfig, type ConcurrentCommandInput, type ConcurrentRunResult, type ConcurrentRunnerOptions, ConsoleLifeCycle, type ConstraintViolation, type ConstraintsConfig, DEFAULT_CACHE_DIRECTORY_NAME, type DependencyKindRules, type DependencyType, type DetectedFramework, EmptyLifeCycle, type EnvMatcher, type EnvironmentInput, type ExternalDependencyInput, type FileAccess, FileAccessTracker, type FileSetBase, type FileSetInput, type FileSetPattern, type FileSnapshot, FingerprintManager, type GraphFormat, type GraphJson, type GraphVisualizerOptions, HttpRemoteCache, INPUT_URI_SCHEMES, InProcessTaskHasher, IncrementalFileHasher, type IncrementalHasherOptions, type InputDefinition, type InputHandlerOptions, type InputUriScheme, InvalidInputUriError, type LifeCycleInterface, LockfileHasher, type LogMode, LogReporter, type NamedInputs, type NodePlatform, type OutputSpec, type PackageLockfileHash, type ParseCommandsOptions, type PartitionOptions, type ProcessEvent, type ProjectConfiguration, type ProjectGraph, type ProjectGraphDependency, type ProjectGraphProjectNode, ReapiRemoteCache, type ReapiRemoteCacheOptions, type RemoteCacheBackend, type RemoteCacheCompression, type RemoteCacheOptions, type RemoteCacheSigning, type ResolvedDependency, type RestartOptions, type RunSummary, type RuntimeInput, type TagRelationships, type TargetConfiguration, type TargetDependencyConfig, type Task, type TaskExecutionOptions, type TaskExecutor, type TaskFingerprint, type TaskGraph, type TaskHashDetails, type TaskHasher, type TaskHasherOptions, TaskOrchestrator, type TaskOrchestratorOptions, type TaskPriority, type TaskResult, type TaskResults, type TaskRunnerContext, type TaskRunnerOptions, TaskScheduler, type TaskStatus, type TaskSummary, type TaskTarget, type TasksRunner, type TeardownOptions, TerminalBuffer, type TokenContext, type TrackedExecutionResult, TrackedTaskExecutor, type TrackingResult, type TypeBoundaries, V2_AC, V2_CAS, V2_INDEX, V2_ROOT, V2_TMP, type WhenCondition, type WhenContext, type WorkspaceConfiguration, acEntryPath, actionDigestForTaskHash, buildForwardDependencyMap, buildReverseDependencyMap, casBlobPath, collectFiles, computeTaskHash, containsBlob, containsByTaskHash, createFailureResult, createInputHandler, createLogReporter, createRemoteCacheBackend, createTaskGraph, defaultTaskRunner, detectFrameworks, detectScriptShell, digestBuffer, digestFile, enforceProjectConstraints, evaluateWhen, expandAffected, expandArguments, expandShortcut, expandTokens, expandTokensInString, expandWildcard, explainWhen, extractPackageName, fetchBlobToFile, filterAffectedTasks, findCycle, findCycles, formatCacheSize, formatTimingTable, generatePreloadScript, generateRunSummary, getAffectedProjects, getChangedFiles, getCurrentBranch, getDependentTasks, getFrameworkEnvVariables, getLastRunSummaryPath, getLeafTasks, getMainWorktreeRoot, getTaskId, getTransitiveDependencies, hashFile, hashStrings, inferFrameworkEnvPatterns, isLinkedWorktree, isNativeAvailable, loadNativeBindings, logTimings, looksLikeInputUri, makeAcyclic, parseCacheSize, parseCommands, parseInputUri, parseNpmLockfile, parsePartition, parsePnpmLockfile, parseTaskId, parseYarnLockfile, projectGraphToDot, putBlobFromBytes, putBlobFromFile, readLastRunSummary, readPackageDeps, resetBranchCache, resetWorktreeCache, resolveCacheMode, resolveOutputs, resolveTaskCwd, retrieveByTaskHash, reverseTaskGraph, runConcurrentFallback, runConcurrently, runTeardown, sortObjectKeys, storeByTaskHash, stripQuotes, taskHashIndexPath, toChromeTrace, toGraphAscii, toGraphHtml, toGraphJson, toGraphvizDot, touchBlob, uniqueId, verifyBlob, walkTaskGraph, withRestart, writeChromeTrace, writeLastRunSummary, writeRunSummary };
3272
+ export { type ActionResult, type AffectedOptions, type AffectedResult, type AffectedScope, type BlobSource, Cache, type CacheMissReason, type CacheMode, type CacheOptions, type CacheRestoreOptions, type CachedResult, type CasDigest, type ChromeTraceEvent, CompositeLifeCycle, type ConcurrencyGroups, type ConcurrentCloseEvent, type ConcurrentCommandConfig, type ConcurrentCommandInput, type ConcurrentRunResult, type ConcurrentRunnerOptions, ConsoleLifeCycle, type ConstraintViolation, type ConstraintsConfig, DEFAULT_CACHE_DIRECTORY_NAME, type DependencyKindRules, type DependencyType, type DetectedFramework, EmptyLifeCycle, type EnvMatcher, type EnvironmentInput, type ExternalDependencyInput, type FileAccess, FileAccessTracker, type FileSetBase, type FileSetInput, type FileSetPattern, type FileSnapshot, type FingerprintContributor, type FingerprintHook, FingerprintManager, type GraphFormat, type GraphJson, type GraphVisualizerOptions, HttpRemoteCache, INPUT_URI_SCHEMES, InProcessTaskHasher, IncrementalFileHasher, type IncrementalHasherOptions, type InputDefinition, type InputHandlerOptions, type InputUriScheme, InvalidInputUriError, type LifeCycleInterface, LockfileHasher, type LogMode, LogReporter, type NamedInputs, type NodePlatform, type OutputSpec, type PackageLockfileHash, type ParseCommandsOptions, type PartitionOptions, type ProcessEvent, type ProjectConfiguration, type ProjectGraph, type ProjectGraphDependency, type ProjectGraphProjectNode, ReapiRemoteCache, type ReapiRemoteCacheOptions, type RemoteCacheBackend, type RemoteCacheCompression, type RemoteCacheOptions, type RemoteCacheSigning, type ResolvedDependency, type RestartOptions, type RunSummary, type RunSummaryPathOptions, type RuntimeInput, type TagRelationships, type TargetConfiguration, type TargetDependencyConfig, type Task, type TaskExecutionOptions, type TaskExecutor, type TaskFingerprint, type TaskGraph, type TaskHashDetails, type TaskHasher, type TaskHasherOptions, TaskOrchestrator, type TaskOrchestratorOptions, type TaskPriority, type TaskResult, type TaskResults, type TaskRunnerContext, type TaskRunnerOptions, TaskScheduler, type TaskStatus, type TaskSummary, type TaskTarget, type TasksRunner, type TeardownOptions, TerminalBuffer, type TokenContext, type TrackedExecutionResult, TrackedTaskExecutor, type TrackingResult, type TypeBoundaries, V2_AC, V2_CAS, V2_INDEX, V2_ROOT, V2_TMP, type WhenCondition, type WhenContext, type WorkspaceConfiguration, acEntryPath, actionDigestForTaskHash, buildForwardDependencyMap, buildReverseDependencyMap, casBlobPath, collectFiles, computeTaskHash, containsBlob, containsByTaskHash, createFailureResult, createInputHandler, createLogReporter, createRemoteCacheBackend, createTaskGraph, defaultTaskRunner, detectFrameworks, detectScriptShell, digestBuffer, digestFile, enforceProjectConstraints, evaluateWhen, expandAffected, expandArguments, expandShortcut, expandTokens, expandTokensInString, expandWildcard, explainWhen, extractPackageName, fetchBlobToFile, filterAffectedTasks, findCycle, findCycles, formatCacheSize, formatTimingTable, generatePreloadScript, generateRunSummary, getAffectedProjects, getChangedFiles, getCurrentBranch, getDependentTasks, getFrameworkEnvVariables, getLastRunSummaryPath, getLeafTasks, getMainWorktreeRoot, getTaskId, getTransitiveDependencies, hashFile, hashStrings, inferFrameworkEnvPatterns, isLinkedWorktree, isNativeAvailable, loadNativeBindings, logTimings, looksLikeInputUri, makeAcyclic, parseCacheSize, parseCommands, parseInputUri, parseNpmLockfile, parsePartition, parsePnpmLockfile, parseTaskId, parseYarnLockfile, projectGraphToDot, putBlobFromBytes, putBlobFromFile, readLastRunSummary, readPackageDeps, resetBranchCache, resetWorktreeCache, resolveCacheMode, resolveOutputs, resolveTaskCwd, retrieveByTaskHash, reverseTaskGraph, runConcurrentFallback, runConcurrently, runTeardown, sortObjectKeys, storeByTaskHash, stripQuotes, taskHashIndexPath, toChromeTrace, toGraphAscii, toGraphHtml, toGraphJson, toGraphvizDot, touchBlob, uniqueId, verifyBlob, walkTaskGraph, withRestart, writeChromeTrace, writeLastRunSummary, writeRunSummary };
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{buildForwardDependencyMap as o,buildReverseDependencyMap as t,expandAffected as a,filterAffectedTasks as s,getAffectedProjects as p,getChangedFiles as n}from"./packem_shared/buildForwardDependencyMap-w1FVPFdv.js";import{createRemoteCacheBackend as i,resolveCacheMode as f}from"./packem_shared/resolveCacheMode-XhD7mg7G.js";import{actionDigestForTaskHash as l,containsByTaskHash as x,retrieveByTaskHash as h,storeByTaskHash as d}from"./packem_shared/actionDigestForTaskHash-BOL4fZ9v.js";import{HttpRemoteCache as u}from"./packem_shared/HttpRemoteCache-Ch-_9ejF.js";import{ReapiRemoteCache as C}from"./packem_shared/ReapiRemoteCache-B3uQuVqP.js";import{Cache as y,DEFAULT_CACHE_DIRECTORY_NAME as R,formatCacheSize as F,parseCacheSize as v}from"./packem_shared/Cache-C540ZPYk.js";import{digestBuffer as S,digestFile as I}from"./packem_shared/digestBuffer-g11aCaDx.js";import{V2_AC as b,V2_CAS as P,V2_INDEX as E,V2_ROOT as H,V2_TMP as A,acEntryPath as w,casBlobPath as D,taskHashIndexPath as _}from"./packem_shared/V2_ROOT-injxWBrl.js";import{containsBlob as M,fetchBlobToFile as N,putBlobFromBytes as O,putBlobFromFile as U,touchBlob as V,verifyBlob as W}from"./packem_shared/containsBlob-DBWgvkM_.js";import{toChromeTrace as z,writeChromeTrace as Y}from"./packem_shared/toChromeTrace-DxN5NQIU.js";import{parseCommands as J}from"./packem_shared/parseCommands-b1K2vIxj.js";import{runConcurrently as Q}from"./packem_shared/runConcurrently-B471CUHO.js";import{runConcurrentFallback as Z}from"./packem_shared/runConcurrentFallback-CShJ7HUp.js";import{defaultTaskRunner as ee}from"./packem_shared/defaultTaskRunner-CGbD4ahu.js";import{detectScriptShell as oe}from"./packem_shared/detectScriptShell-CaTDk5cW.js";import{FileAccessTracker as ae,generatePreloadScript as se}from"./packem_shared/FileAccessTracker-DSNf03JW.js";import{FingerprintManager as ne}from"./packem_shared/FingerprintManager-CYW2EwLc.js";import{detectFrameworks as ie,getFrameworkEnvVariables as fe,inferFrameworkEnvPatterns as ce}from"./packem_shared/detectFrameworks-WVZJOPgN.js";import{projectGraphToDot as xe,toGraphAscii as he,toGraphHtml as de,toGraphJson as ke,toGraphvizDot as ue}from"./packem_shared/projectGraphToDot-K5A_CRoW.js";import{IncrementalFileHasher as Ce}from"./packem_shared/IncrementalFileHasher-jtLxMBKy.js";import{CompositeLifeCycle as ye,ConsoleLifeCycle as Re,EmptyLifeCycle as Fe}from"./packem_shared/CompositeLifeCycle-D0zWvAXJ.js";import{LockfileHasher as Be,extractPackageName as Se,parseNpmLockfile as Ie,parsePnpmLockfile as Le,parseYarnLockfile as be}from"./packem_shared/extractPackageName-BeL6Gc3a.js";import{LogReporter as Ee,createLogReporter as He}from"./packem_shared/LogReporter-BUPWiXAq.js";import{isNativeAvailable as we,loadNativeBindings as De}from"./packem_shared/isNativeAvailable-BOavFPX1.js";import{resolveOutputs as Ge}from"./packem_shared/resolveOutputs-BBjdaraf.js";import{INPUT_URI_SCHEMES as Ne,InvalidInputUriError as Oe,looksLikeInputUri as Ue,parseInputUri as Ve}from"./packem_shared/INPUT_URI_SCHEMES-Csrd0tlg.js";import{enforceProjectConstraints as je}from"./packem_shared/enforceProjectConstraints-X49n3bVL.js";import{generateRunSummary as Ye,getLastRunSummaryPath as qe,readLastRunSummary as Je,writeLastRunSummary as Ke,writeRunSummary as Qe}from"./packem_shared/generateRunSummary-ep21OCUT.js";import{createTaskGraph as Ze,getTaskId as $e,parseTaskId as er}from"./packem_shared/createTaskGraph-CEYYI-DL.js";import{findCycle as or,findCycles as tr,getDependentTasks as ar,getLeafTasks as sr,getTransitiveDependencies as pr,makeAcyclic as nr,reverseTaskGraph as mr,walkTaskGraph as ir}from"./packem_shared/findCycle-BY8-jmzB.js";import{InProcessTaskHasher as cr,computeTaskHash as lr}from"./packem_shared/computeTaskHash-C2Iua2DL.js";import{TaskOrchestrator as hr}from"./packem_shared/TaskOrchestrator-BgfOpjuB.js";import{TaskScheduler as kr,parsePartition as ur}from"./packem_shared/parsePartition-uzPNgtPp.js";import{TerminalBuffer as Cr}from"./packem_shared/TerminalBuffer-BtZy7TpT.js";import{TrackedTaskExecutor as yr}from"./packem_shared/TrackedTaskExecutor-D3-LNT_d.js";import{d as Fr,j as vr,T as Br,b as Sr,E as Ir,v as Lr,h as br,O as Pr}from"./packem_shared/utils-BH2W5Wml.js";import{evaluateWhen as Hr,explainWhen as Ar,getCurrentBranch as wr,resetBranchCache as Dr}from"./packem_shared/getCurrentBranch-D-qoZByx.js";import{getMainWorktreeRoot as Gr,isLinkedWorktree as Mr,resetWorktreeCache as Nr}from"./packem_shared/getMainWorktreeRoot-DRN_i8jA.js";import{createInputHandler as Ur}from"./packem_shared/createInputHandler-CkDCpPYy.js";import{expandArguments as Wr}from"./packem_shared/expandArguments-4mab7-Ds.js";import{expandShortcut as zr}from"./packem_shared/expandShortcut-BErNHNXZ.js";import{expandTokens as qr,expandTokensInString as Jr}from"./packem_shared/expandTokensInString-Cyx0qSFA.js";import{expandWildcard as Qr}from"./packem_shared/expandWildcard-DE0dOOZF.js";import{formatTimingTable as Zr,logTimings as $r}from"./packem_shared/formatTimingTable-CP3rsDwf.js";import{runTeardown as ro}from"./packem_shared/runTeardown-DBBpBAyb.js";import{stripQuotes as to}from"./packem_shared/stripQuotes-jkZb0CL9.js";import{withRestart as so}from"./packem_shared/withRestart-CWO6BKv_.js";export{y as Cache,ye as CompositeLifeCycle,Re as ConsoleLifeCycle,R as DEFAULT_CACHE_DIRECTORY_NAME,Fe as EmptyLifeCycle,ae as FileAccessTracker,ne as FingerprintManager,u as HttpRemoteCache,Ne as INPUT_URI_SCHEMES,cr as InProcessTaskHasher,Ce as IncrementalFileHasher,Oe as InvalidInputUriError,Be as LockfileHasher,Ee as LogReporter,C as ReapiRemoteCache,hr as TaskOrchestrator,kr as TaskScheduler,Cr as TerminalBuffer,yr as TrackedTaskExecutor,b as V2_AC,P as V2_CAS,E as V2_INDEX,H as V2_ROOT,A as V2_TMP,w as acEntryPath,l as actionDigestForTaskHash,o as buildForwardDependencyMap,t as buildReverseDependencyMap,D as casBlobPath,Fr as collectFiles,lr as computeTaskHash,M as containsBlob,x as containsByTaskHash,vr as createFailureResult,Ur as createInputHandler,He as createLogReporter,i as createRemoteCacheBackend,Ze as createTaskGraph,ee as defaultTaskRunner,ie as detectFrameworks,oe as detectScriptShell,S as digestBuffer,I as digestFile,je as enforceProjectConstraints,Hr as evaluateWhen,a as expandAffected,Wr as expandArguments,zr as expandShortcut,qr as expandTokens,Jr as expandTokensInString,Qr as expandWildcard,Ar as explainWhen,Se as extractPackageName,N as fetchBlobToFile,s as filterAffectedTasks,or as findCycle,tr as findCycles,F as formatCacheSize,Zr as formatTimingTable,se as generatePreloadScript,Ye as generateRunSummary,p as getAffectedProjects,n as getChangedFiles,wr as getCurrentBranch,ar as getDependentTasks,fe as getFrameworkEnvVariables,qe as getLastRunSummaryPath,sr as getLeafTasks,Gr as getMainWorktreeRoot,$e as getTaskId,pr as getTransitiveDependencies,Br as hashFile,Sr as hashStrings,ce as inferFrameworkEnvPatterns,Mr as isLinkedWorktree,we as isNativeAvailable,De as loadNativeBindings,$r as logTimings,Ue as looksLikeInputUri,nr as makeAcyclic,v as parseCacheSize,J as parseCommands,Ve as parseInputUri,Ie as parseNpmLockfile,ur as parsePartition,Le as parsePnpmLockfile,er as parseTaskId,be as parseYarnLockfile,xe as projectGraphToDot,O as putBlobFromBytes,U as putBlobFromFile,Je as readLastRunSummary,Ir as readPackageDeps,Dr as resetBranchCache,Nr as resetWorktreeCache,f as resolveCacheMode,Ge as resolveOutputs,Lr as resolveTaskCwd,h as retrieveByTaskHash,mr as reverseTaskGraph,Z as runConcurrentFallback,Q as runConcurrently,ro as runTeardown,br as sortObjectKeys,d as storeByTaskHash,to as stripQuotes,_ as taskHashIndexPath,z as toChromeTrace,he as toGraphAscii,de as toGraphHtml,ke as toGraphJson,ue as toGraphvizDot,V as touchBlob,Pr as uniqueId,W as verifyBlob,ir as walkTaskGraph,so as withRestart,Y as writeChromeTrace,Ke as writeLastRunSummary,Qe as writeRunSummary};
1
+ import{buildForwardDependencyMap as o,buildReverseDependencyMap as t,expandAffected as a,filterAffectedTasks as s,getAffectedProjects as p,getChangedFiles as n}from"./packem_shared/buildForwardDependencyMap-w1FVPFdv.js";import{createRemoteCacheBackend as i,resolveCacheMode as f}from"./packem_shared/resolveCacheMode-XhD7mg7G.js";import{actionDigestForTaskHash as l,containsByTaskHash as x,retrieveByTaskHash as h,storeByTaskHash as d}from"./packem_shared/actionDigestForTaskHash-BOL4fZ9v.js";import{HttpRemoteCache as u}from"./packem_shared/HttpRemoteCache-Ch-_9ejF.js";import{ReapiRemoteCache as C}from"./packem_shared/ReapiRemoteCache-B3uQuVqP.js";import{Cache as y,DEFAULT_CACHE_DIRECTORY_NAME as R,formatCacheSize as F,parseCacheSize as v}from"./packem_shared/Cache-C540ZPYk.js";import{digestBuffer as S,digestFile as I}from"./packem_shared/digestBuffer-g11aCaDx.js";import{V2_AC as b,V2_CAS as P,V2_INDEX as E,V2_ROOT as H,V2_TMP as A,acEntryPath as w,casBlobPath as D,taskHashIndexPath as _}from"./packem_shared/V2_ROOT-injxWBrl.js";import{containsBlob as M,fetchBlobToFile as N,putBlobFromBytes as O,putBlobFromFile as U,touchBlob as V,verifyBlob as W}from"./packem_shared/containsBlob-DBWgvkM_.js";import{toChromeTrace as z,writeChromeTrace as Y}from"./packem_shared/toChromeTrace-DxN5NQIU.js";import{parseCommands as J}from"./packem_shared/parseCommands-b1K2vIxj.js";import{runConcurrently as Q}from"./packem_shared/runConcurrently-DYbMGyGv.js";import{runConcurrentFallback as Z}from"./packem_shared/runConcurrentFallback-Dpqxuyv-.js";import{defaultTaskRunner as ee}from"./packem_shared/defaultTaskRunner-dptuKcps.js";import{detectScriptShell as oe}from"./packem_shared/detectScriptShell-CaTDk5cW.js";import{FileAccessTracker as ae,generatePreloadScript as se}from"./packem_shared/FileAccessTracker-DSNf03JW.js";import{FingerprintManager as ne}from"./packem_shared/FingerprintManager-CYW2EwLc.js";import{detectFrameworks as ie,getFrameworkEnvVariables as fe,inferFrameworkEnvPatterns as ce}from"./packem_shared/detectFrameworks-WVZJOPgN.js";import{projectGraphToDot as xe,toGraphAscii as he,toGraphHtml as de,toGraphJson as ke,toGraphvizDot as ue}from"./packem_shared/projectGraphToDot-FN6oHDGH.js";import{IncrementalFileHasher as Ce}from"./packem_shared/IncrementalFileHasher-CdLXVB5F.js";import{CompositeLifeCycle as ye,ConsoleLifeCycle as Re,EmptyLifeCycle as Fe}from"./packem_shared/CompositeLifeCycle-D0zWvAXJ.js";import{LockfileHasher as Be,extractPackageName as Se,parseNpmLockfile as Ie,parsePnpmLockfile as Le,parseYarnLockfile as be}from"./packem_shared/extractPackageName-BeL6Gc3a.js";import{LogReporter as Ee,createLogReporter as He}from"./packem_shared/LogReporter-BUPWiXAq.js";import{isNativeAvailable as we,loadNativeBindings as De}from"./packem_shared/isNativeAvailable-BOavFPX1.js";import{resolveOutputs as Ge}from"./packem_shared/resolveOutputs-BBjdaraf.js";import{INPUT_URI_SCHEMES as Ne,InvalidInputUriError as Oe,looksLikeInputUri as Ue,parseInputUri as Ve}from"./packem_shared/INPUT_URI_SCHEMES-Csrd0tlg.js";import{enforceProjectConstraints as je}from"./packem_shared/enforceProjectConstraints-dNc1SwRi.js";import{generateRunSummary as Ye,getLastRunSummaryPath as qe,readLastRunSummary as Je,writeLastRunSummary as Ke,writeRunSummary as Qe}from"./packem_shared/generateRunSummary-DXhnX83W.js";import{createTaskGraph as Ze,getTaskId as $e,parseTaskId as er}from"./packem_shared/createTaskGraph-CEYYI-DL.js";import{findCycle as or,findCycles as tr,getDependentTasks as ar,getLeafTasks as sr,getTransitiveDependencies as pr,makeAcyclic as nr,reverseTaskGraph as mr,walkTaskGraph as ir}from"./packem_shared/findCycle-BY8-jmzB.js";import{InProcessTaskHasher as cr,computeTaskHash as lr}from"./packem_shared/computeTaskHash-Xxd8v-X3.js";import{TaskOrchestrator as hr}from"./packem_shared/TaskOrchestrator-BfxyRQGb.js";import{TaskScheduler as kr,parsePartition as ur}from"./packem_shared/parsePartition-uzPNgtPp.js";import{TerminalBuffer as Cr}from"./packem_shared/TerminalBuffer-BtZy7TpT.js";import{TrackedTaskExecutor as yr}from"./packem_shared/TrackedTaskExecutor-D3-LNT_d.js";import{d as Fr,j as vr,T as Br,b as Sr,E as Ir,v as Lr,h as br,O as Pr}from"./packem_shared/utils-BH2W5Wml.js";import{evaluateWhen as Hr,explainWhen as Ar,getCurrentBranch as wr,resetBranchCache as Dr}from"./packem_shared/getCurrentBranch-D-qoZByx.js";import{getMainWorktreeRoot as Gr,isLinkedWorktree as Mr,resetWorktreeCache as Nr}from"./packem_shared/getMainWorktreeRoot-DRN_i8jA.js";import{createInputHandler as Ur}from"./packem_shared/createInputHandler-CkDCpPYy.js";import{expandArguments as Wr}from"./packem_shared/expandArguments-4mab7-Ds.js";import{expandShortcut as zr}from"./packem_shared/expandShortcut-BErNHNXZ.js";import{expandTokens as qr,expandTokensInString as Jr}from"./packem_shared/expandTokensInString-Cyx0qSFA.js";import{expandWildcard as Qr}from"./packem_shared/expandWildcard-DE0dOOZF.js";import{formatTimingTable as Zr,logTimings as $r}from"./packem_shared/formatTimingTable-CP3rsDwf.js";import{runTeardown as ro}from"./packem_shared/runTeardown-DBBpBAyb.js";import{stripQuotes as to}from"./packem_shared/stripQuotes-jkZb0CL9.js";import{withRestart as so}from"./packem_shared/withRestart-DKtEGsQA.js";export{y as Cache,ye as CompositeLifeCycle,Re as ConsoleLifeCycle,R as DEFAULT_CACHE_DIRECTORY_NAME,Fe as EmptyLifeCycle,ae as FileAccessTracker,ne as FingerprintManager,u as HttpRemoteCache,Ne as INPUT_URI_SCHEMES,cr as InProcessTaskHasher,Ce as IncrementalFileHasher,Oe as InvalidInputUriError,Be as LockfileHasher,Ee as LogReporter,C as ReapiRemoteCache,hr as TaskOrchestrator,kr as TaskScheduler,Cr as TerminalBuffer,yr as TrackedTaskExecutor,b as V2_AC,P as V2_CAS,E as V2_INDEX,H as V2_ROOT,A as V2_TMP,w as acEntryPath,l as actionDigestForTaskHash,o as buildForwardDependencyMap,t as buildReverseDependencyMap,D as casBlobPath,Fr as collectFiles,lr as computeTaskHash,M as containsBlob,x as containsByTaskHash,vr as createFailureResult,Ur as createInputHandler,He as createLogReporter,i as createRemoteCacheBackend,Ze as createTaskGraph,ee as defaultTaskRunner,ie as detectFrameworks,oe as detectScriptShell,S as digestBuffer,I as digestFile,je as enforceProjectConstraints,Hr as evaluateWhen,a as expandAffected,Wr as expandArguments,zr as expandShortcut,qr as expandTokens,Jr as expandTokensInString,Qr as expandWildcard,Ar as explainWhen,Se as extractPackageName,N as fetchBlobToFile,s as filterAffectedTasks,or as findCycle,tr as findCycles,F as formatCacheSize,Zr as formatTimingTable,se as generatePreloadScript,Ye as generateRunSummary,p as getAffectedProjects,n as getChangedFiles,wr as getCurrentBranch,ar as getDependentTasks,fe as getFrameworkEnvVariables,qe as getLastRunSummaryPath,sr as getLeafTasks,Gr as getMainWorktreeRoot,$e as getTaskId,pr as getTransitiveDependencies,Br as hashFile,Sr as hashStrings,ce as inferFrameworkEnvPatterns,Mr as isLinkedWorktree,we as isNativeAvailable,De as loadNativeBindings,$r as logTimings,Ue as looksLikeInputUri,nr as makeAcyclic,v as parseCacheSize,J as parseCommands,Ve as parseInputUri,Ie as parseNpmLockfile,ur as parsePartition,Le as parsePnpmLockfile,er as parseTaskId,be as parseYarnLockfile,xe as projectGraphToDot,O as putBlobFromBytes,U as putBlobFromFile,Je as readLastRunSummary,Ir as readPackageDeps,Dr as resetBranchCache,Nr as resetWorktreeCache,f as resolveCacheMode,Ge as resolveOutputs,Lr as resolveTaskCwd,h as retrieveByTaskHash,mr as reverseTaskGraph,Z as runConcurrentFallback,Q as runConcurrently,ro as runTeardown,br as sortObjectKeys,d as storeByTaskHash,to as stripQuotes,_ as taskHashIndexPath,z as toChromeTrace,he as toGraphAscii,de as toGraphHtml,ke as toGraphJson,ue as toGraphvizDot,V as touchBlob,Pr as uniqueId,W as verifyBlob,ir as walkTaskGraph,so as withRestart,Y as writeChromeTrace,Ke as writeLastRunSummary,Qe as writeRunSummary};