pipework 0.178.0 → 0.180.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -20,6 +20,7 @@ import { findConfig } from '../../core/config/discover.js';
20
20
  import { expandGlob, resolveModules } from '../../workspace/discover.js';
21
21
  import { filesMatchingGlobs, globRoot, lintIncludeGlobs } from '../../lint/include.js';
22
22
  import { StartupValidationError } from '../../core/validation/types.js';
23
+ import { shardArg, shardModules } from './shard.js';
23
24
  // #322: discoverInstance evaluates pipework.config.ts — a dynamic import plus a
24
25
  // full module evaluation. A single `check` run needs it from four call sites;
25
26
  // memoizing collapses that to one load. The cache is reset at the start of
@@ -33,7 +34,7 @@ async function discoverInstanceCached(cwd) {
33
34
  }
34
35
  return loading;
35
36
  }
36
- export async function check(cwd, scope) {
37
+ export async function check(cwd, scope, shard) {
37
38
  instanceCache = new Map();
38
39
  let failed = false;
39
40
  const checksumOk = verifyChecksums(cwd);
@@ -89,11 +90,11 @@ export async function check(cwd, scope) {
89
90
  // I/O call-target registry through `trace.io` in pipework.config.ts (Q9).
90
91
  const consumerIoPatterns = await loadConsumerIoPatterns(cwd);
91
92
  runCoverageCheckWarning(cwd, sourceFiles, consumerIoPatterns);
92
- const lintOk = await runLint(cwd, modulePaths);
93
+ const lintOk = await runLint(cwd, modulePaths, shard);
93
94
  if (!lintOk) {
94
95
  failed = true;
95
96
  }
96
- const typeCheckOk = await runTypeCheck(cwd, modulePaths);
97
+ const typeCheckOk = await runTypeCheck(cwd, modulePaths, shard);
97
98
  if (!typeCheckOk) {
98
99
  failed = true;
99
100
  }
@@ -605,8 +606,16 @@ function runStep(name, cmd, cwd) {
605
606
  // modules costs negligible wall-clock next to that, and peak memory drops from
606
607
  // N×(process size) to 1×. The `tsc` binary is still resolved once rather than
607
608
  // re-resolved through `npx` per module (#322).
608
- async function runTypeCheck(cwd, modulePaths) {
609
- if (modulePaths.length === 0) {
609
+ async function runTypeCheck(cwd, allModules, shard) {
610
+ const modulePaths = shardModules(allModules, shard);
611
+ if (shard !== undefined && allModules.length > 0) {
612
+ info(`Type check shard ${shardArg(shard)}: ${String(modulePaths.length)} of ${String(allModules.length)} module(s)`);
613
+ if (modulePaths.length === 0)
614
+ return true;
615
+ }
616
+ if (allModules.length === 0) {
617
+ if (shard !== undefined && shard.index !== 1)
618
+ return true;
610
619
  if (existsSync(join(cwd, 'tsconfig.json'))) {
611
620
  return runStep('Type check', 'npx tsc --noEmit', cwd);
612
621
  }
@@ -1086,7 +1095,13 @@ function runDependencyCheck(cwd) {
1086
1095
  // limits on constrained hosts (#322 ran these via `Promise.all`; that is the
1087
1096
  // OOM this reverts). The wall-clock cost of a serial loop over 2–3 modules is
1088
1097
  // negligible next to an OOM kill.
1089
- async function runLint(cwd, modulePaths) {
1098
+ async function runLint(cwd, allModules, shard) {
1099
+ const modulePaths = shardModules(allModules, shard);
1100
+ if (shard !== undefined && allModules.length > 0) {
1101
+ info(`Lint shard ${shardArg(shard)}: ${String(modulePaths.length)} of ${String(allModules.length)} module(s)`);
1102
+ }
1103
+ if (allModules.length === 0 && shard !== undefined && shard.index !== 1)
1104
+ return true;
1090
1105
  info('Lint');
1091
1106
  const eslintBin = resolveEslintBin(cwd);
1092
1107
  const includes = await loadLintIncludes(cwd);
@@ -1097,7 +1112,7 @@ async function runLint(cwd, modulePaths) {
1097
1112
  const version = pipeworkVersion();
1098
1113
  mkdirSync(join(cwd, 'node_modules', '.cache', 'pipework'), { recursive: true });
1099
1114
  const cacheFor = (label) => (fingerprint) => eslintCacheLocation(cwd, version, label, fingerprint);
1100
- if (modulePaths.length === 0) {
1115
+ if (allModules.length === 0) {
1101
1116
  const ok = await lintDirectory(eslintBin, cwd, '.', cacheFor('root'), includes.for('.'));
1102
1117
  if (ok)
1103
1118
  success('Lint');
@@ -1113,7 +1128,9 @@ async function runLint(cwd, modulePaths) {
1113
1128
  // root, outside every module. Those files were missing from the files-linted
1114
1129
  // count entirely — a coverage reading produced from a population that excluded
1115
1130
  // them. They get their own pass, counted and named like any module's.
1116
- const rootOnly = rootFilesOutsideModules(cwd, modulePaths, includes.for('.'));
1131
+ const rootOnly = shard !== undefined && shard.index !== 1
1132
+ ? []
1133
+ : rootFilesOutsideModules(cwd, allModules, includes.for('.'));
1117
1134
  if (rootOnly.length > 0) {
1118
1135
  if (!await lintDirectory(eslintBin, cwd, 'root', cacheFor('__root'), rootOnly)) {
1119
1136
  ok = false;
@@ -1 +1 @@
1
- {"version":3,"file":"check.js","sourceRoot":"","sources":["../../../src/cli/commands/check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check.js","sourceRoot":"","sources":["../../../src/cli/commands/check.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /** `--shard <index>/<count>`: run part `index` of `count` disjoint parts of one run. */
2
+ export interface Shard {
3
+ readonly index: number;
4
+ readonly count: number;
5
+ }
6
+ export declare function parseShard(value: string): Shard;
7
+ export declare function shardArg(shard: Shard): string;
8
+ /**
9
+ * The modules part `index` of `count` owns: sorted, then dealt round-robin, so
10
+ * the parts are disjoint and together hold every module.
11
+ */
12
+ export declare function shardModules(modules: readonly string[], shard: Shard | undefined): string[];
13
+ //# sourceMappingURL=shard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shard.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/shard.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAU/C;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAE7C;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,GAAG,SAAS,GAAG,MAAM,EAAE,CAI3F"}
@@ -0,0 +1,23 @@
1
+ export function parseShard(value) {
2
+ const match = /^(\d+)\/(\d+)$/.exec(value);
3
+ const index = match === null ? 0 : Number(match[1]);
4
+ const count = match === null ? 0 : Number(match[2]);
5
+ if (match === null || index < 1 || count < 1 || index > count) {
6
+ throw new Error(`--shard takes <index>/<count> with 1 <= index <= count (for example --shard 2/4); got "${value}".`);
7
+ }
8
+ return { index, count };
9
+ }
10
+ export function shardArg(shard) {
11
+ return `${String(shard.index)}/${String(shard.count)}`;
12
+ }
13
+ /**
14
+ * The modules part `index` of `count` owns: sorted, then dealt round-robin, so
15
+ * the parts are disjoint and together hold every module.
16
+ */
17
+ export function shardModules(modules, shard) {
18
+ const sorted = [...modules].sort();
19
+ if (shard === undefined)
20
+ return sorted;
21
+ return sorted.filter((_, i) => i % shard.count === shard.index - 1);
22
+ }
23
+ //# sourceMappingURL=shard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shard.js","sourceRoot":"","sources":["../../../src/cli/commands/shard.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1C,MAAM,KAAK,GAAG,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IACnD,MAAM,KAAK,GAAG,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IACnD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,KAAK,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CACb,0FAA0F,KAAK,IAAI,CACpG,CAAA;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAY;IACnC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAA;AACxD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,OAA0B,EAAE,KAAwB;IAC/E,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,EAAE,CAAA;IAClC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,MAAM,CAAA;IACtC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;AACrE,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { ScopeMode } from '../../workspace/affected.js';
2
+ import { type Shard } from './shard.js';
2
3
  export interface TestOptions {
3
4
  cwd: string;
4
5
  db?: string | undefined;
@@ -8,6 +9,8 @@ export interface TestOptions {
8
9
  /** `--fast` — run only the fast test tiers (issue #325). */
9
10
  fast?: boolean | undefined;
10
11
  reap?: boolean | undefined;
12
+ /** `--shard i/n`: run part i of n disjoint parts of the selected files. */
13
+ shard?: Shard | undefined;
11
14
  }
12
15
  export declare function test(options: TestOptions): Promise<void>;
13
16
  /** Path/name filters in vitestArgs: args not starting with `-` and not the value of a preceding `--flag value`. */
@@ -22,6 +25,20 @@ export interface ProjectSelection {
22
25
  * demanding DB env entirely.
23
26
  */
24
27
  readonly needsDatabase: boolean;
28
+ /** Per selected project: does it use a database. Absent for unfiltered runs. */
29
+ readonly databaseByProject?: ReadonlyMap<string, boolean>;
25
30
  }
31
+ export interface ShardSpec {
32
+ readonly file: string;
33
+ readonly project: string;
34
+ }
35
+ /**
36
+ * The (file, project) pairs this shard runs, found with vitest's own file glob
37
+ * and shard sequencer so the answer is the split the run will make. Null when it
38
+ * cannot be computed; the caller then assumes every selected project runs.
39
+ */
40
+ export declare function shardSpecifications(cwd: string, shard: Shard, projectArgs: readonly string[], filters: readonly string[]): Promise<ShardSpec[] | null>;
41
+ /** Whether any project that has files in the shard uses a database. */
42
+ export declare function shardNeedsDatabase(specs: readonly ShardSpec[], databaseByProject: ReadonlyMap<string, boolean>): boolean;
26
43
  export declare function buildProjectArgs(options: TestOptions, instance: import('../../core/pipework.js').Manifold, onEmpty?: (basis: string) => void): ProjectSelection | null;
27
44
  //# sourceMappingURL=test.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/test.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAK5D,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACvB,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,CAAA;IAC7B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,4DAA4D;IAC5D,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC1B,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC3B;AAED,wBAAsB,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA+F9D;AAED,mHAAmH;AACnH,wBAAgB,eAAe,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAMvE;AAED,MAAM,WAAW,gBAAgB;IAC/B,mEAAmE;IACnE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAA;IACvB;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAA;CAChC;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,OAAO,wBAAwB,EAAE,QAAQ,EACnD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAChC,gBAAgB,GAAG,IAAI,CAuFzB"}
1
+ {"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/test.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAI5D,OAAO,EAAY,KAAK,KAAK,EAAE,MAAM,YAAY,CAAA;AAEjD,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACvB,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,CAAA;IAC7B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,4DAA4D;IAC5D,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC1B,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC1B,2EAA2E;IAC3E,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CAC1B;AAED,wBAAsB,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAyG9D;AAED,mHAAmH;AACnH,wBAAgB,eAAe,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAMvE;AAED,MAAM,WAAW,gBAAgB;IAC/B,mEAAmE;IACnE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAA;IACvB;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAA;IAC/B,gFAAgF;IAChF,QAAQ,CAAC,iBAAiB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC1D;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,SAAS,MAAM,EAAE,EAC9B,OAAO,EAAE,SAAS,MAAM,EAAE,GACzB,OAAO,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,CAgB7B;AAED,uEAAuE;AACvE,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,SAAS,SAAS,EAAE,EAC3B,iBAAiB,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9C,OAAO,CAET;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,OAAO,wBAAwB,EAAE,QAAQ,EACnD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAChC,gBAAgB,GAAG,IAAI,CA2FzB"}
@@ -4,6 +4,7 @@ import { bold, error, info, success, warn } from '../output.js';
4
4
  import { resolveAffected } from '../../workspace/affected.js';
5
5
  import { findConfig } from '../../core/config/discover.js';
6
6
  import { resolveModules } from '../../workspace/discover.js';
7
+ import { shardArg } from './shard.js';
7
8
  export async function test(options) {
8
9
  const { discoverInstance } = await import('../../core/config/discover.js');
9
10
  const { setupTestDatabases, teardownTestDatabases } = await import('../../test/setup.js');
@@ -48,7 +49,16 @@ export async function test(options) {
48
49
  // false` on the profile/module/workspace chain) runs without provisioning
49
50
  // one — and without demanding DB env, which config resolution defers to
50
51
  // first URL access for exactly this path.
51
- if (projectArgs.needsDatabase) {
52
+ let needsDatabase = projectArgs.needsDatabase;
53
+ if (needsDatabase && options.shard !== undefined && projectArgs.databaseByProject !== undefined) {
54
+ const specs = await shardSpecifications(options.cwd, options.shard, projectArgs.args, targetedFilters(options.vitestArgs));
55
+ if (specs !== null) {
56
+ needsDatabase = shardNeedsDatabase(specs, projectArgs.databaseByProject);
57
+ const owned = [...new Set(specs.map(spec => spec.project))].sort();
58
+ info(`Shard ${shardArg(options.shard)} runs ${String(specs.length)} file(s) in ${String(owned.length)} project(s): ${owned.join(', ') || '(none)'}`);
59
+ }
60
+ }
61
+ if (needsDatabase) {
52
62
  info('Setting up test databases...');
53
63
  await setupTestDatabases(instance);
54
64
  }
@@ -61,13 +71,14 @@ export async function test(options) {
61
71
  // makes the signal handler wait for an in-flight teardown before exiting.
62
72
  let cleanup = null;
63
73
  const teardownOnce = () => {
64
- cleanup ??= projectArgs.needsDatabase ? teardownTestDatabases().catch(() => { }) : Promise.resolve();
74
+ cleanup ??= needsDatabase ? teardownTestDatabases().catch(() => { }) : Promise.resolve();
65
75
  return cleanup;
66
76
  };
67
77
  process.once('SIGINT', () => { void teardownOnce().finally(() => process.exit(130)); });
68
78
  process.once('SIGTERM', () => { void teardownOnce().finally(() => process.exit(143)); });
69
79
  try {
70
- const args = ['vitest', 'run', ...projectArgs.args, ...options.vitestArgs];
80
+ const shardArgs = options.shard === undefined ? [] : [`--shard=${shardArg(options.shard)}`];
81
+ const args = ['vitest', 'run', ...projectArgs.args, ...shardArgs, ...options.vitestArgs];
71
82
  info(`Running: ${bold(args.join(' '))}`);
72
83
  const result = spawnSync('npx', args, {
73
84
  cwd: options.cwd,
@@ -87,7 +98,7 @@ export async function test(options) {
87
98
  }
88
99
  }
89
100
  finally {
90
- if (projectArgs.needsDatabase) {
101
+ if (needsDatabase) {
91
102
  info('Tearing down test databases...');
92
103
  }
93
104
  await teardownOnce();
@@ -103,6 +114,34 @@ export function targetedFilters(vitestArgs) {
103
114
  return !(prev !== undefined && prev.startsWith('-') && !prev.includes('='));
104
115
  });
105
116
  }
117
+ /**
118
+ * The (file, project) pairs this shard runs, found with vitest's own file glob
119
+ * and shard sequencer so the answer is the split the run will make. Null when it
120
+ * cannot be computed; the caller then assumes every selected project runs.
121
+ */
122
+ export async function shardSpecifications(cwd, shard, projectArgs, filters) {
123
+ try {
124
+ const { createVitest } = await import('vitest/node');
125
+ const project = projectArgs.filter(arg => arg !== '--project');
126
+ const ctx = await createVitest('test', { root: cwd, watch: false, project, shard: shardArg(shard) });
127
+ try {
128
+ const specs = await ctx.globTestSpecifications([...filters]);
129
+ const Sequencer = ctx.config.sequence.sequencer;
130
+ const mine = await new Sequencer(ctx).shard(specs);
131
+ return mine.map(spec => ({ file: spec.moduleId, project: spec.project.name }));
132
+ }
133
+ finally {
134
+ await ctx.close();
135
+ }
136
+ }
137
+ catch {
138
+ return null;
139
+ }
140
+ }
141
+ /** Whether any project that has files in the shard uses a database. */
142
+ export function shardNeedsDatabase(specs, databaseByProject) {
143
+ return specs.some(spec => databaseByProject.get(spec.project) ?? true);
144
+ }
106
145
  export function buildProjectArgs(options, instance, onEmpty) {
107
146
  const blueprint = instance.config.raw;
108
147
  // Unfiltered runs: nothing is known about what executes, so assume it connects.
@@ -143,6 +182,7 @@ export function buildProjectArgs(options, instance, onEmpty) {
143
182
  ? new Set(blueprint.fastPath?.test?.tiers ?? ['unit', 'contract', 'isolation'])
144
183
  : null;
145
184
  const projectNames = [];
185
+ const databaseByProject = new Map();
146
186
  let needsDatabase = false;
147
187
  // The same flag chain `resolveVitestModules` projects into each vitest
148
188
  // project: profile ?? module ?? workspace ?? true.
@@ -157,10 +197,12 @@ export function buildProjectArgs(options, instance, onEmpty) {
157
197
  for (const modulePath of [...scopeResult.modules].sort()) {
158
198
  if (options.suite !== undefined) {
159
199
  projectNames.push(`${modulePath}:${options.suite}`);
200
+ databaseByProject.set(`${modulePath}:${options.suite}`, usesDatabase(modulePath, options.suite));
160
201
  needsDatabase ||= usesDatabase(modulePath, options.suite);
161
202
  }
162
203
  else {
163
204
  projectNames.push(modulePath);
205
+ databaseByProject.set(modulePath, usesDatabase(modulePath));
164
206
  needsDatabase ||= usesDatabase(modulePath);
165
207
  const moduleVitestConfig = blueprint.vitest.modules?.[modulePath];
166
208
  if (moduleVitestConfig?.profiles !== undefined) {
@@ -170,6 +212,7 @@ export function buildProjectArgs(options, instance, onEmpty) {
170
212
  const fullName = `${modulePath}:${profileName}`;
171
213
  if (!manualProfiles.has(fullName)) {
172
214
  projectNames.push(fullName);
215
+ databaseByProject.set(fullName, usesDatabase(modulePath, profileName));
173
216
  needsDatabase ||= usesDatabase(modulePath, profileName);
174
217
  }
175
218
  }
@@ -183,7 +226,7 @@ export function buildProjectArgs(options, instance, onEmpty) {
183
226
  for (const name of projectNames) {
184
227
  args.push('--project', name);
185
228
  }
186
- return { args, needsDatabase };
229
+ return { args, needsDatabase, databaseByProject };
187
230
  }
188
231
  function collectManualProfiles(vitestConfig) {
189
232
  const manual = new Set();
@@ -1 +1 @@
1
- {"version":3,"file":"test.js","sourceRoot":"","sources":["../../../src/cli/commands/test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test.js","sourceRoot":"","sources":["../../../src/cli/commands/test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAyEA,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA2LvD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AA2EA,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoMvD"}
package/dist/cli/index.js CHANGED
@@ -41,6 +41,7 @@ ${bold('Scoping (check, test):')}
41
41
  --module <path> Scope to a specific module
42
42
  --suite <name> Run a specific test suite/profile (test only)
43
43
  --reap Drop orphan test databases and exit (test only)
44
+ --shard <i>/<n> Run part i of n disjoint parts of the selected run (test, check); the n parts together equal the unsharded run
44
45
 
45
46
  ${bold('Examples:')}
46
47
  pipework init
@@ -61,6 +62,7 @@ ${bold('Examples:')}
61
62
  pipework test
62
63
  pipework test --all
63
64
  pipework test --suite integration
65
+ pipework test --full --shard 2/4 # CI: part 2 of 4 across machines
64
66
  pipework test --reap # drop orphan test databases
65
67
  pipework check --staged
66
68
  pipework check --all
@@ -95,6 +97,7 @@ export async function run(argv) {
95
97
  full: { type: 'boolean' },
96
98
  suite: { type: 'string' },
97
99
  reap: { type: 'boolean' },
100
+ shard: { type: 'string' },
98
101
  test: { type: 'boolean' },
99
102
  'admin-url': { type: 'string' },
100
103
  'dry-run': { type: 'boolean' },
@@ -191,6 +194,11 @@ export async function run(argv) {
191
194
  const { parseScope: parseScopeTest } = await import('./commands/scope.js');
192
195
  const parsedTest = parseScopeTest({ all: values.all, module: values.module, staged: values.staged, fast: values.fast, full: values.full, suite: values.suite });
193
196
  const vitestArgs = positionals.slice(1);
197
+ const { parseShard } = await import('./commands/shard.js');
198
+ const shardTest = values.shard === undefined ? undefined : parseShard(values.shard);
199
+ if (shardTest !== undefined && values.reap === true) {
200
+ throw new Error('--shard cannot be combined with --reap.');
201
+ }
194
202
  const { test: runTests } = await import('./commands/test.js');
195
203
  await runTests({
196
204
  cwd,
@@ -200,14 +208,17 @@ export async function run(argv) {
200
208
  suite: parsedTest.suite,
201
209
  fast: parsedTest.fast,
202
210
  reap: values.reap,
211
+ shard: shardTest,
203
212
  });
204
213
  break;
205
214
  }
206
215
  case 'check': {
207
216
  const { parseScope: parseScopeCheck } = await import('./commands/scope.js');
208
217
  const parsedCheck = parseScopeCheck({ all: values.all, module: values.module, staged: values.staged, fast: values.fast, full: values.full });
218
+ const { parseShard: parseShardCheck } = await import('./commands/shard.js');
219
+ const shardCheck = values.shard === undefined ? undefined : parseShardCheck(values.shard);
209
220
  const { check } = await import('./commands/check.js');
210
- await check(cwd, parsedCheck.scope);
221
+ await check(cwd, parsedCheck.scope, shardCheck);
211
222
  break;
212
223
  }
213
224
  case 'codemod': {