pipework 0.38.0 → 0.40.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.40.0
4
+
5
+ - **Fix: `pipework install` no longer prints `✓ Install complete` over an install that did not happen.** The pnpm step was judged by its exit code alone. pnpm asks for confirmation before purging a modules directory, and with no TTY it takes the abort branch and still exits 0 — so under CI, a container, or any non-interactive shell, `install` reported success while `node_modules` sat at whatever version was there before. `install`, `add`, and `remove` now run pnpm with the modules-purge confirmation answered (`npm_config_confirm_modules_purge=false`), then **read `node_modules/pipework/package.json` back** and refuse when it is missing or older than the version the generated `package.json` asked for, naming both versions and the directory. Success prints the version actually resolved: `✓ Install complete — pipework@0.40.0 in node_modules.` An exit code cannot tell a real install from a green no-op; the version on disk afterwards can.
6
+
7
+ ## 0.39.0
8
+
9
+ - **Fix: the orphan reaper drops only databases it created.** It swept `pg_stat_database` for every name matching `<project>_test_%` and dropped each row with `numbackends = 0`. A name without a run nonce got no advisory-lock check at all — it was treated as ownerless and dropped unconditionally — so any idle database that merely shared the prefix went with it. Observed on a host cluster carrying per-slot control databases named `<project>_test_<slot>`: all of them were dropped at once, the moment one run started while its neighbours sat idle. Sharing a prefix is not evidence of ownership. The reaper now requires the 12-hex run nonce every name it writes ends with; anything else inside the prefix is left alone and **reported** — `ReapResult.skippedDatabases` lists it, `pipework test --reap` prints it under "Left alone — not created by pipework", and a test run logs it once under `pipework:test-reap`. A deliberate skip that says nothing is indistinguishable from a reaper with nothing to do.
10
+
11
+ The same reporting now covers the template pass, which already declined to touch a name in the template namespace with no content fingerprint but did so in silence.
12
+
13
+ Two limits, stated rather than hidden. A foreign database in this project's prefix whose name happens to end in exactly 12 hex characters is indistinguishable from a clone and is still eligible — `PIPEWORK_TEST_NAMESPACE` is the way out of a shared prefix. And the check is the trailing nonce alone, not the fuller `_<seq>_<pid>_<nonce>` tail current names carry, so that an orphan left by an older pipework whose names had no clone sequence is still reachable by this reaper rather than stranded forever.
14
+
3
15
  ## 0.38.0
4
16
 
5
17
  - **Fix: a setup connection that will not close is named, not swallowed.** `closeSetupConnections()` wrapped each close in `try {} catch {}` and cleared its registry entry regardless, so a connection that refused to close left its backend held with no record anywhere. The failure surfaced much later and in a shape that pointed at the wrong thing — a foreign pid in a `pg_stat_activity` witness, or a setup hook that ran out its timeout — both of which read as a test or box fault rather than as a close that failed. A failed close now throws `SetupConnectionCloseError`, naming every database whose connection would not close and the underlying error for each, and saying that those backends hold their locks until the process exits. Every connection that *can* close still does; the registry is still cleared, so a later `useSetupDb()` gets a fresh connection rather than the broken one.
@@ -1 +1 @@
1
- {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/add.ts"],"names":[],"mappings":"AAQA,wBAAsB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAiCjF;AAED,UAAU,YAAY;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAoBD,OAAO,EAAE,KAAK,YAAY,EAAE,CAAA;AAE5B,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,YAAY,EAAE,GAAG,MAAM,CAmCxF"}
1
+ {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/add.ts"],"names":[],"mappings":"AAQA,wBAAsB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA4BjF;AAED,UAAU,YAAY;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAoBD,OAAO,EAAE,KAAK,YAAY,EAAE,CAAA;AAE5B,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,YAAY,EAAE,GAAG,MAAM,CAmCxF"}
@@ -1,8 +1,8 @@
1
1
  import { resolve } from 'node:path';
2
2
  import { readFileSync, writeFileSync } from 'node:fs';
3
- import { execSync } from 'node:child_process';
4
3
  import { sync as syncWorkspace } from '../../workspace/sync.js';
5
4
  import { loadConfig } from './shared/load-config.js';
5
+ import { runPnpmInstall } from './shared/pnpm-install.js';
6
6
  import { findConfigFile } from './shared/find-config.js';
7
7
  import { info, success, error, bold } from '../output.js';
8
8
  export async function add(cwd, packages) {
@@ -22,18 +22,12 @@ export async function add(cwd, packages) {
22
22
  const result = syncWorkspace({ config, cwd: resolved, appName });
23
23
  success(`Generated ${String(result.files.length)} file(s).`);
24
24
  info('Running pnpm install...');
25
- try {
26
- execSync('pnpm install', {
27
- cwd: resolved,
28
- stdio: 'inherit',
29
- env: { ...process.env, PIPEWORK_SKIP_GUARD: '1' },
30
- });
31
- success('Install complete.');
32
- }
33
- catch {
34
- error('pnpm install failed. Check the output above for details.');
25
+ const outcome = runPnpmInstall({ cwd: resolved, requiredPipeworkVersion: result.pipeworkVersion });
26
+ if (!outcome.ok) {
27
+ error(outcome.message);
35
28
  process.exit(1);
36
29
  }
30
+ success(`Install complete — pipework@${outcome.installedPipeworkVersion} in node_modules.`);
37
31
  }
38
32
  function parsePackageArgs(args) {
39
33
  return args.map(arg => {
@@ -1 +1 @@
1
- {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/cli/commands/add.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/cli/commands/add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACrD,OAAO,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAEzD,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,GAAW,EAAE,QAA2B;IAChE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,KAAK,CAAC,qCAAqC,IAAI,CAAC,oCAAoC,CAAC,IAAI,CAAC,CAAA;QAC1F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,MAAM,OAAO,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAA;IAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IAC7B,MAAM,UAAU,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IAE3C,MAAM,MAAM,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAChD,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChD,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAElC,IAAI,CAAC,SAAS,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAEtE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAA;IACtD,IAAI,CAAC,sBAAsB,CAAC,CAAA;IAC5B,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAA;IAChE,OAAO,CAAC,aAAa,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IAE5D,IAAI,CAAC,yBAAyB,CAAC,CAAA;IAC/B,MAAM,OAAO,GAAG,cAAc,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAA;IAClG,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACtB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,OAAO,CAAC,+BAA+B,OAAO,CAAC,wBAAwB,mBAAmB,CAAC,CAAA;AAC7F,CAAC;AAOD,SAAS,gBAAgB,CAAC,IAAuB;IAC/C,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACpB,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QAClC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACf,KAAK,CACH,8BAA8B,GAAG,QAAQ;gBACzC,sBAAsB,IAAI,CAAC,kBAAkB,CAAC,IAAI;gBAClD,0CAA0C,CAC3C,CAAA;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QACD,OAAO;YACL,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;YACzB,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;SAC9B,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,OAAO,EAAqB,CAAA;AAE5B,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,OAAgC;IAC9E,MAAM,KAAK,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAE1C,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;QAChD,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;QAC1D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAE1C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,SAAS,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAA;YAC3F,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3B,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,OAAO,GAAG,CAAC,CAAA;YAC1E,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;gBAClC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;gBAC7E,KAAK,GAAG,GAAG,KAAK,CAAC,OAAO,EAAE,GAAG,KAAK,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,OAAO,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;YACzG,CAAC;QACH,CAAC;QAED,OAAO,MAAM,GAAG,KAAK,GAAG,KAAK,CAAA;IAC/B,CAAC;IAED,MAAM,cAAc,GAAG,0BAA0B,CAAA;IACjD,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC5C,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;QACrD,MAAM,SAAS,GAAG,OAAO;aACtB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,IAAI,CAAC;aAC5C,IAAI,CAAC,IAAI,CAAC,CAAA;QACb,MAAM,SAAS,GAAG,wBAAwB,SAAS,QAAQ,CAAA;QAC3D,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IACzE,CAAC;IAED,KAAK,CAAC,qDAAqD,CAAC,CAAA;IAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC;AAOD,SAAS,oBAAoB,CAAC,MAAc;IAC1C,MAAM,aAAa,GAAG,0BAA0B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC7D,IAAI,aAAa,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAEvC,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;IAClE,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,IAAI,CAAC,GAAG,QAAQ,CAAA;IAEhB,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QACzB,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QACpB,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,KAAK,EAAE,CAAA;QACT,CAAC;aAAM,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACtB,KAAK,EAAE,CAAA;YACP,IAAI,KAAK,KAAK,CAAC;gBAAE,MAAK;QACxB,CAAC;QAED,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAChB,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YACjC,MAAM,SAAS,GAAG,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAC1D,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACvB,MAAM,UAAU,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;gBAC1C,IAAI,UAAU,GAAG,CAAC,CAAA;gBAClB,IAAI,CAAC,GAAG,UAAU,CAAA;gBAClB,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;oBAC3C,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG;wBAAE,UAAU,EAAE,CAAA;yBAC9B,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG;wBAAE,UAAU,EAAE,CAAA;oBACxC,IAAI,UAAU,GAAG,CAAC;wBAAE,CAAC,EAAE,CAAA;gBACzB,CAAC;gBACD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAA;YACpC,CAAC;QACH,CAAC;QAED,CAAC,EAAE,CAAA;IACL,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAC5D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAA;QACtC,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC,CAAC,CAAE,CAAA;IACtC,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,WAAW,CAAC,CAAS;IAC5B,OAAO,CAAC,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAA;AACjD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"AAMA,wBAAsB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBlF"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"AAMA,wBAAsB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBlF"}
@@ -1,7 +1,7 @@
1
1
  import { resolve } from 'node:path';
2
- import { execSync } from 'node:child_process';
3
2
  import { sync as syncWorkspace } from '../../workspace/sync.js';
4
3
  import { loadConfig } from './shared/load-config.js';
4
+ import { runPnpmInstall } from './shared/pnpm-install.js';
5
5
  import { info, success, error } from '../output.js';
6
6
  export async function install(cwd, pipeworkVersion) {
7
7
  const resolved = resolve(cwd);
@@ -11,17 +11,11 @@ export async function install(cwd, pipeworkVersion) {
11
11
  const result = syncWorkspace(pipeworkVersion !== undefined ? { ...syncInput, pipeworkVersion } : syncInput);
12
12
  success(`Generated ${String(result.files.length)} file(s).`);
13
13
  info('Running pnpm install...');
14
- try {
15
- execSync('pnpm install', {
16
- cwd: resolved,
17
- stdio: 'inherit',
18
- env: { ...process.env, PIPEWORK_SKIP_GUARD: '1' },
19
- });
20
- success('Install complete.');
21
- }
22
- catch {
23
- error('pnpm install failed. Check the output above for details.');
14
+ const outcome = runPnpmInstall({ cwd: resolved, requiredPipeworkVersion: result.pipeworkVersion });
15
+ if (!outcome.ok) {
16
+ error(outcome.message);
24
17
  process.exit(1);
25
18
  }
19
+ success(`Install complete — pipework@${outcome.installedPipeworkVersion} in node_modules.`);
26
20
  }
27
21
  //# sourceMappingURL=install.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAEnD,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAW,EAAE,eAAwB;IACjE,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IAC7B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAA;IAEtD,IAAI,CAAC,sBAAsB,CAAC,CAAA;IAC5B,MAAM,SAAS,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAA;IACpD,MAAM,MAAM,GAAG,aAAa,CAC1B,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,SAAS,CAC9E,CAAA;IAED,OAAO,CAAC,aAAa,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IAE5D,IAAI,CAAC,yBAAyB,CAAC,CAAA;IAC/B,IAAI,CAAC;QACH,QAAQ,CAAC,cAAc,EAAE;YACvB,GAAG,EAAE,QAAQ;YACb,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,mBAAmB,EAAE,GAAG,EAAE;SAClD,CAAC,CAAA;QACF,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,KAAK,CAAC,0DAA0D,CAAC,CAAA;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAEnD,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAW,EAAE,eAAwB;IACjE,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IAC7B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAA;IAEtD,IAAI,CAAC,sBAAsB,CAAC,CAAA;IAC5B,MAAM,SAAS,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAA;IACpD,MAAM,MAAM,GAAG,aAAa,CAC1B,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,SAAS,CAC9E,CAAA;IAED,OAAO,CAAC,aAAa,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IAE5D,IAAI,CAAC,yBAAyB,CAAC,CAAA;IAC/B,MAAM,OAAO,GAAG,cAAc,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAA;IAClG,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACtB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,OAAO,CAAC,+BAA+B,OAAO,CAAC,wBAAwB,mBAAmB,CAAC,CAAA;AAC7F,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/remove.ts"],"names":[],"mappings":"AAQA,wBAAsB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA0CpF"}
1
+ {"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/remove.ts"],"names":[],"mappings":"AAQA,wBAAsB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAqCpF"}
@@ -1,8 +1,8 @@
1
1
  import { resolve } from 'node:path';
2
2
  import { readFileSync, writeFileSync } from 'node:fs';
3
- import { execSync } from 'node:child_process';
4
3
  import { sync as syncWorkspace } from '../../workspace/sync.js';
5
4
  import { loadConfig } from './shared/load-config.js';
5
+ import { runPnpmInstall } from './shared/pnpm-install.js';
6
6
  import { findConfigFile } from './shared/find-config.js';
7
7
  import { info, success, error, bold, warn } from '../output.js';
8
8
  export async function remove(cwd, packages) {
@@ -29,18 +29,12 @@ export async function remove(cwd, packages) {
29
29
  const result = syncWorkspace({ config, cwd: resolved, appName });
30
30
  success(`Generated ${String(result.files.length)} file(s).`);
31
31
  info('Running pnpm install...');
32
- try {
33
- execSync('pnpm install', {
34
- cwd: resolved,
35
- stdio: 'inherit',
36
- env: { ...process.env, PIPEWORK_SKIP_GUARD: '1' },
37
- });
38
- success('Install complete.');
39
- }
40
- catch {
41
- error('pnpm install failed. Check the output above for details.');
32
+ const outcome = runPnpmInstall({ cwd: resolved, requiredPipeworkVersion: result.pipeworkVersion });
33
+ if (!outcome.ok) {
34
+ error(outcome.message);
42
35
  process.exit(1);
43
36
  }
37
+ success(`Install complete — pipework@${outcome.installedPipeworkVersion} in node_modules.`);
44
38
  }
45
39
  function removeDependencies(source, packages) {
46
40
  const removed = [];
@@ -1 +1 @@
1
- {"version":3,"file":"remove.js","sourceRoot":"","sources":["../../../src/cli/commands/remove.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remove.js","sourceRoot":"","sources":["../../../src/cli/commands/remove.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ export declare function readInstalledPipeworkVersion(cwd: string): string | undefined;
2
+ /**
3
+ * True when `installed` is at least `required`. A version either side that is
4
+ * not a plain `x.y.z` (a workspace link, a tag) is not something this can
5
+ * judge, so it passes — the point is catching an install that did not run.
6
+ */
7
+ export declare function isAtLeastVersion(installed: string, required: string): boolean;
8
+ export declare function installMismatchMessage(required: string, installed: string | undefined, cwd: string): string;
9
+ export interface PnpmInstallOptions {
10
+ readonly cwd: string;
11
+ /** The pipework version the generated package.json asks for, as plain `x.y.z`. */
12
+ readonly requiredPipeworkVersion: string;
13
+ }
14
+ export type PnpmInstallOutcome = {
15
+ readonly ok: true;
16
+ readonly installedPipeworkVersion: string;
17
+ } | {
18
+ readonly ok: false;
19
+ readonly message: string;
20
+ };
21
+ export declare function runPnpmInstall(options: PnpmInstallOptions): PnpmInstallOutcome;
22
+ //# sourceMappingURL=pnpm-install.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pnpm-install.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/shared/pnpm-install.ts"],"names":[],"mappings":"AAaA,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAQ5E;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAO7E;AAcD,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,GAAG,EAAE,MAAM,GACV,MAAM,CAYR;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,kFAAkF;IAClF,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAA;CACzC;AAED,MAAM,MAAM,kBAAkB,GAC1B;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,wBAAwB,EAAE,MAAM,CAAA;CAAE,GAChE;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAA;AAEpD,wBAAgB,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,kBAAkB,CAiB9E"}
@@ -0,0 +1,71 @@
1
+ import { execSync } from 'node:child_process';
2
+ import { readFileSync } from 'node:fs';
3
+ import { join } from 'node:path';
4
+ /**
5
+ * Runs `pnpm install` and then reads back what actually landed in node_modules.
6
+ * pnpm asks for confirmation before purging a modules directory; with no TTY it
7
+ * takes the abort branch and still exits 0, so exit status alone cannot tell a
8
+ * real install from a no-op. The version read after the step is the verdict.
9
+ */
10
+ const PURGE_PROMPT_ENV = { npm_config_confirm_modules_purge: 'false' };
11
+ export function readInstalledPipeworkVersion(cwd) {
12
+ try {
13
+ const raw = readFileSync(join(cwd, 'node_modules', 'pipework', 'package.json'), 'utf-8');
14
+ const pkg = JSON.parse(raw);
15
+ return typeof pkg.version === 'string' ? pkg.version : undefined;
16
+ }
17
+ catch {
18
+ return undefined;
19
+ }
20
+ }
21
+ /**
22
+ * True when `installed` is at least `required`. A version either side that is
23
+ * not a plain `x.y.z` (a workspace link, a tag) is not something this can
24
+ * judge, so it passes — the point is catching an install that did not run.
25
+ */
26
+ export function isAtLeastVersion(installed, required) {
27
+ const a = parseVersion(installed);
28
+ const b = parseVersion(required);
29
+ if (a === undefined || b === undefined)
30
+ return true;
31
+ if (a.major !== b.major)
32
+ return a.major > b.major;
33
+ if (a.minor !== b.minor)
34
+ return a.minor > b.minor;
35
+ return a.patch >= b.patch;
36
+ }
37
+ function parseVersion(value) {
38
+ const match = /^(\d+)\.(\d+)\.(\d+)$/.exec(value.trim());
39
+ if (match === null)
40
+ return undefined;
41
+ return { major: Number(match[1]), minor: Number(match[2]), patch: Number(match[3]) };
42
+ }
43
+ export function installMismatchMessage(required, installed, cwd) {
44
+ const found = installed === undefined
45
+ ? 'node_modules/pipework is not there at all'
46
+ : `node_modules/pipework is at ${installed}`;
47
+ return (`pnpm install exited 0 but did not install pipework@^${required}.\n\n` +
48
+ ` ${found}.\n\n` +
49
+ ` With no TTY, pnpm aborts on its modules-purge confirmation prompt and\n` +
50
+ ` still exits 0. Pipework sets npm_config_confirm_modules_purge=false to\n` +
51
+ ` answer it; something else stopped the install. Run pnpm install directly\n` +
52
+ ` in ${cwd} to see what it asks.\n`);
53
+ }
54
+ export function runPnpmInstall(options) {
55
+ try {
56
+ execSync('pnpm install', {
57
+ cwd: options.cwd,
58
+ stdio: 'inherit',
59
+ env: { ...process.env, PIPEWORK_SKIP_GUARD: '1', ...PURGE_PROMPT_ENV },
60
+ });
61
+ }
62
+ catch {
63
+ return { ok: false, message: 'pnpm install failed. Check the output above for details.' };
64
+ }
65
+ const installed = readInstalledPipeworkVersion(options.cwd);
66
+ if (installed === undefined || !isAtLeastVersion(installed, options.requiredPipeworkVersion)) {
67
+ return { ok: false, message: installMismatchMessage(options.requiredPipeworkVersion, installed, options.cwd) };
68
+ }
69
+ return { ok: true, installedPipeworkVersion: installed };
70
+ }
71
+ //# sourceMappingURL=pnpm-install.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pnpm-install.js","sourceRoot":"","sources":["../../../../src/cli/commands/shared/pnpm-install.ts"],"names":[],"mappings":"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"}
@@ -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+E9D;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,GAClD,gBAAgB,GAAG,IAAI,CAsFzB"}
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,CAuF9D;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,GAClD,gBAAgB,GAAG,IAAI,CAsFzB"}
@@ -15,6 +15,14 @@ export async function test(options) {
15
15
  try {
16
16
  const result = await reapConfiguredTestDatabases(instance);
17
17
  success(`Reaped ${String(result.droppedDatabases.length)} orphan test database(s).`);
18
+ // #391: a name in the prefix that pipework did not write is left alone. Saying
19
+ // which ones is the difference between a deliberate skip and a silent one.
20
+ if (result.skippedDatabases.length > 0) {
21
+ warn(`Left alone — not created by pipework (${String(result.skippedDatabases.length)}):`);
22
+ for (const datname of result.skippedDatabases) {
23
+ warn(` ${datname}`);
24
+ }
25
+ }
18
26
  }
19
27
  finally {
20
28
  await instance.pool.closeAll();
@@ -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,5 +1,5 @@
1
1
  export { setupTestDatabases, teardownTestDatabases, getTestDatabase, getTestDatabases, type TestDatabase, type SetupOptions } from './setup.js';
2
- export { flushPendingDrops, TEST_DROP_LOG_PREFIX } from './setup.js';
2
+ export { flushPendingDrops, TEST_DROP_LOG_PREFIX, TEST_REAP_LOG_PREFIX } from './setup.js';
3
3
  export { SetupStalled, logSlowPhases, SETUP_PROGRESS_LOG_PREFIX, type SetupPhase, type SetupProgress, type SetupProgressListener, } from './progress.js';
4
4
  export { beginTestIsolation, endTestIsolation, type TestContext, type TestDatabaseConnections } from './plugin.js';
5
5
  export { setupPipeworkTests, useTestDb, useSetupDb, useTestInstance, closeSetupConnections, SetupConnectionCloseError, teardownAfterAll, withFlow, type WithFlowOptions } from './vitest.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/test/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,eAAe,EAAE,gBAAgB,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAA;AAC/I,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACpE,OAAO,EACL,YAAY,EACZ,aAAa,EACb,yBAAyB,EACzB,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,qBAAqB,GAC3B,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,KAAK,WAAW,EAAE,KAAK,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAClH,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAA;AAC5L,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACnF,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,KAAK,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AACzF,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AACjF,OAAO,EAAE,GAAG,EAAE,KAAK,iBAAiB,EAAE,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/test/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,eAAe,EAAE,gBAAgB,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAA;AAC/I,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAC1F,OAAO,EACL,YAAY,EACZ,aAAa,EACb,yBAAyB,EACzB,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,qBAAqB,GAC3B,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,KAAK,WAAW,EAAE,KAAK,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAClH,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAA;AAC5L,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACnF,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,KAAK,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AACzF,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AACjF,OAAO,EAAE,GAAG,EAAE,KAAK,iBAAiB,EAAE,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAA"}
@@ -1,5 +1,5 @@
1
1
  export { setupTestDatabases, teardownTestDatabases, getTestDatabase, getTestDatabases } from './setup.js';
2
- export { flushPendingDrops, TEST_DROP_LOG_PREFIX } from './setup.js';
2
+ export { flushPendingDrops, TEST_DROP_LOG_PREFIX, TEST_REAP_LOG_PREFIX } from './setup.js';
3
3
  export { SetupStalled, logSlowPhases, SETUP_PROGRESS_LOG_PREFIX, } from './progress.js';
4
4
  export { beginTestIsolation, endTestIsolation } from './plugin.js';
5
5
  export { setupPipeworkTests, useTestDb, useSetupDb, useTestInstance, closeSetupConnections, SetupConnectionCloseError, teardownAfterAll, withFlow } from './vitest.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/test/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,eAAe,EAAE,gBAAgB,EAAwC,MAAM,YAAY,CAAA;AAC/I,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACpE,OAAO,EACL,YAAY,EACZ,aAAa,EACb,yBAAyB,GAI1B,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAkD,MAAM,aAAa,CAAA;AAClH,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,QAAQ,EAAwB,MAAM,aAAa,CAAA;AAC5L,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,cAAc,EAA2B,MAAM,cAAc,CAAA;AACnF,OAAO,EAAE,QAAQ,IAAI,YAAY,EAA8B,MAAM,oBAAoB,CAAA;AACzF,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AACjF,OAAO,EAAE,GAAG,EAA+C,MAAM,oBAAoB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/test/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,eAAe,EAAE,gBAAgB,EAAwC,MAAM,YAAY,CAAA;AAC/I,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAC1F,OAAO,EACL,YAAY,EACZ,aAAa,EACb,yBAAyB,GAI1B,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAkD,MAAM,aAAa,CAAA;AAClH,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,QAAQ,EAAwB,MAAM,aAAa,CAAA;AAC5L,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,cAAc,EAA2B,MAAM,cAAc,CAAA;AACnF,OAAO,EAAE,QAAQ,IAAI,YAAY,EAA8B,MAAM,oBAAoB,CAAA;AACzF,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AACjF,OAAO,EAAE,GAAG,EAA+C,MAAM,oBAAoB,CAAA"}
@@ -2,6 +2,12 @@ import postgres from 'postgres';
2
2
  import type { Manifold } from '../core/pipework.js';
3
3
  export interface ReapResult {
4
4
  readonly droppedDatabases: readonly string[];
5
+ /**
6
+ * Databases inside this project's prefix that the reaper did NOT create and so
7
+ * will not drop. Reported rather than dropped: sharing a prefix is not evidence
8
+ * of ownership, and a name pipework never wrote belongs to somebody else (#391).
9
+ */
10
+ readonly skippedDatabases: readonly string[];
5
11
  }
6
12
  /**
7
13
  * Advisory-lock key identifying a test run. A live run holds this lock on a
@@ -16,15 +22,19 @@ export declare function templateBuildKey(fingerprint: string): bigint;
16
22
  export declare function getAdminUrl(databaseUrl: string): string;
17
23
  /**
18
24
  * Drop test databases left behind by runs that never reached teardown
19
- * (Ctrl-C, timeout, crash). A database is reaped only when BOTH hold:
25
+ * (Ctrl-C, timeout, crash). A database is reaped only when ALL THREE hold:
20
26
  *
21
- * - its run's advisory lock is free — the owning run's process is gone
22
- * (a legacy name with no nonce is treated as ownerless); and
27
+ * - the reaper created it — its name carries the 12-hex run nonce every name
28
+ * `testDbName` writes. Sharing the project prefix is not evidence of
29
+ * ownership: a cluster carrying `<project>_test_<slot>` control databases
30
+ * lost all of them at once to a prefix-only sweep (#391). Anything else in
31
+ * the prefix is reported in `skippedDatabases` and left alone;
32
+ * - its run's advisory lock is free — the owning run's process is gone; and
23
33
  * - `numbackends = 0` — no connections remain, so reaping cannot pull a
24
34
  * database out from under workers orphaned by a SIGKILL'd parent.
25
35
  *
26
- * Both conditions only ever make the reaper more conservative, so it can
27
- * never drop a database belonging to a live or still-provisioning run.
36
+ * All three only ever make the reaper more conservative, so it can never drop a
37
+ * database belonging to a live or still-provisioning run, or to anyone else.
28
38
  */
29
39
  export declare function reapOrphanTestDatabases(admin: postgres.Sql, liveTemplates?: ReadonlySet<string>): Promise<ReapResult>;
30
40
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"reap.d.ts","sourceRoot":"","sources":["../../src/test/reap.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAgBnD,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAA;CAC7C;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AA0BD,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,6DAA6D;AAC7D,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAIvD;AAcD;;;;;;;;;;;GAWG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,QAAQ,CAAC,GAAG,EACnB,aAAa,GAAE,WAAW,CAAC,MAAM,CAAa,GAC7C,OAAO,CAAC,UAAU,CAAC,CA2BrB;AA4DD;;;GAGG;AACH,wBAAsB,2BAA2B,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAgBzF"}
1
+ {"version":3,"file":"reap.d.ts","sourceRoot":"","sources":["../../src/test/reap.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAuBnD,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAA;IAC5C;;;;OAIG;IACH,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAA;CAC7C;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AA0BD,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,6DAA6D;AAC7D,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAIvD;AAcD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,QAAQ,CAAC,GAAG,EACnB,aAAa,GAAE,WAAW,CAAC,MAAM,CAAa,GAC7C,OAAO,CAAC,UAAU,CAAC,CAqCrB;AAgED;;;GAGG;AACH,wBAAsB,2BAA2B,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAkBzF"}
package/dist/test/reap.js CHANGED
@@ -2,10 +2,17 @@ import { createHash } from 'node:crypto';
2
2
  import postgres from 'postgres';
3
3
  import { quoteIdentifier } from '../data/db/identifiers.js';
4
4
  import { testDbPrefix, appRolePrefix, testDbLikePattern, templateDbPrefix, templateDbLikePattern, } from './namespace.js';
5
- // Per-run test database and role names end with `_<pid>_<nonce>`, where the
6
- // nonce is 12 random hex chars. The reaper recovers the nonce from a database
7
- // name to rebuild that run's advisory-lock key.
8
- const NONCE_SUFFIX = /_([0-9a-f]{12})$/;
5
+ // The run nonce every name `testDbName` writes ends with: 12 random hex chars.
6
+ // Carrying one is the reaper's evidence that it created the database, and the nonce
7
+ // rebuilds the owning run's advisory-lock key. Deliberately not the fuller
8
+ // `_<seq>_<pid>_<nonce>` tail: an orphan left by an older pipework whose names had
9
+ // no clone sequence would then never be reaped by any later version.
10
+ //
11
+ // The residual limit, stated rather than hidden: a foreign database inside this
12
+ // project's prefix whose name happens to end in exactly 12 hex characters is
13
+ // indistinguishable from a clone and is still eligible. Nothing in the name can
14
+ // separate them; `PIPEWORK_TEST_NAMESPACE` is the way out of a shared prefix.
15
+ const CLONE_SUFFIX = /_([0-9a-f]{12})$/;
9
16
  /**
10
17
  * Advisory-lock key identifying a test run. A live run holds this lock on a
11
18
  * dedicated connection for its entire lifetime; Postgres releases it
@@ -61,15 +68,19 @@ function pairedTemplateRoleName(datname) {
61
68
  const TEMPLATE_FINGERPRINT_SUFFIX = /_([0-9a-f]{16})$/;
62
69
  /**
63
70
  * Drop test databases left behind by runs that never reached teardown
64
- * (Ctrl-C, timeout, crash). A database is reaped only when BOTH hold:
71
+ * (Ctrl-C, timeout, crash). A database is reaped only when ALL THREE hold:
65
72
  *
66
- * - its run's advisory lock is free — the owning run's process is gone
67
- * (a legacy name with no nonce is treated as ownerless); and
73
+ * - the reaper created it — its name carries the 12-hex run nonce every name
74
+ * `testDbName` writes. Sharing the project prefix is not evidence of
75
+ * ownership: a cluster carrying `<project>_test_<slot>` control databases
76
+ * lost all of them at once to a prefix-only sweep (#391). Anything else in
77
+ * the prefix is reported in `skippedDatabases` and left alone;
78
+ * - its run's advisory lock is free — the owning run's process is gone; and
68
79
  * - `numbackends = 0` — no connections remain, so reaping cannot pull a
69
80
  * database out from under workers orphaned by a SIGKILL'd parent.
70
81
  *
71
- * Both conditions only ever make the reaper more conservative, so it can
72
- * never drop a database belonging to a live or still-provisioning run.
82
+ * All three only ever make the reaper more conservative, so it can never drop a
83
+ * database belonging to a live or still-provisioning run, or to anyone else.
73
84
  */
74
85
  export async function reapOrphanTestDatabases(admin, liveTemplates = new Set()) {
75
86
  const rows = await admin `
@@ -78,12 +89,21 @@ export async function reapOrphanTestDatabases(admin, liveTemplates = new Set())
78
89
  WHERE datname LIKE ${testDbLikePattern()}
79
90
  `;
80
91
  const droppedDatabases = [];
92
+ const skippedDatabases = [];
81
93
  for (const { datname, numbackends } of rows) {
94
+ // A name in this prefix that pipework did not write. It could be anything —
95
+ // a control database, a hand-made fixture, another tool's namespace that
96
+ // happens to collide. Dropping it because the prefix matched is what #391
97
+ // reported; say what was left alone instead.
98
+ const nonce = CLONE_SUFFIX.exec(datname)?.[1];
99
+ if (nonce === undefined) {
100
+ skippedDatabases.push(datname);
101
+ continue;
102
+ }
82
103
  if (numbackends > 0)
83
104
  continue;
84
- const nonce = NONCE_SUFFIX.exec(datname)?.[1];
85
- const key = nonce === undefined ? null : runLockKey(nonce);
86
- if (key !== null && !(await tryAcquire(admin, key)))
105
+ const key = runLockKey(nonce);
106
+ if (!(await tryAcquire(admin, key)))
87
107
  continue;
88
108
  try {
89
109
  if (await dropDatabase(admin, datname)) {
@@ -92,13 +112,13 @@ export async function reapOrphanTestDatabases(admin, liveTemplates = new Set())
92
112
  }
93
113
  }
94
114
  finally {
95
- if (key !== null) {
96
- await admin `SELECT pg_advisory_unlock(${key.toString()}::bigint)`;
97
- }
115
+ await admin `SELECT pg_advisory_unlock(${key.toString()}::bigint)`;
98
116
  }
99
117
  }
100
- droppedDatabases.push(...(await reapStaleTemplates(admin, liveTemplates)).droppedDatabases);
101
- return { droppedDatabases };
118
+ const templates = await reapStaleTemplates(admin, liveTemplates);
119
+ droppedDatabases.push(...templates.droppedDatabases);
120
+ skippedDatabases.push(...templates.skippedDatabases);
121
+ return { droppedDatabases, skippedDatabases };
102
122
  }
103
123
  /**
104
124
  * Drop shared templates nobody wants any more.
@@ -131,16 +151,19 @@ async function reapStaleTemplates(admin, liveTemplates) {
131
151
  WHERE datname LIKE ${templateDbLikePattern()}
132
152
  `;
133
153
  const droppedDatabases = [];
154
+ const skippedDatabases = [];
134
155
  for (const { datname, numbackends } of rows) {
156
+ const fingerprint = TEMPLATE_FINGERPRINT_SUFFIX.exec(datname)?.[1];
157
+ // A name in the template namespace without a fingerprint was not written by
158
+ // this scheme. Leave it alone rather than guess at its owner — and say so.
159
+ if (fingerprint === undefined) {
160
+ skippedDatabases.push(datname);
161
+ continue;
162
+ }
135
163
  if (numbackends > 0)
136
164
  continue;
137
165
  if (liveTemplates.has(datname))
138
166
  continue;
139
- const fingerprint = TEMPLATE_FINGERPRINT_SUFFIX.exec(datname)?.[1];
140
- // A name in the template namespace without a fingerprint was not written by
141
- // this scheme. Leave it alone rather than guess at its owner.
142
- if (fingerprint === undefined)
143
- continue;
144
167
  const key = templateUseKey(fingerprint);
145
168
  if (!(await tryAcquire(admin, key)))
146
169
  continue;
@@ -154,7 +177,7 @@ async function reapStaleTemplates(admin, liveTemplates) {
154
177
  await admin `SELECT pg_advisory_unlock(${key.toString()}::bigint)`;
155
178
  }
156
179
  }
157
- return { droppedDatabases };
180
+ return { droppedDatabases, skippedDatabases };
158
181
  }
159
182
  /**
160
183
  * Reap orphan test databases across every Postgres server referenced by the
@@ -166,17 +189,19 @@ export async function reapConfiguredTestDatabases(instance) {
166
189
  adminUrls.add(getAdminUrl(dbConfig.url));
167
190
  }
168
191
  const droppedDatabases = [];
192
+ const skippedDatabases = [];
169
193
  for (const adminUrl of adminUrls) {
170
194
  const client = postgres(adminUrl, { max: 1, onnotice: () => { } });
171
195
  try {
172
196
  const result = await reapOrphanTestDatabases(client);
173
197
  droppedDatabases.push(...result.droppedDatabases);
198
+ skippedDatabases.push(...result.skippedDatabases);
174
199
  }
175
200
  finally {
176
201
  await client.end();
177
202
  }
178
203
  }
179
- return { droppedDatabases };
204
+ return { droppedDatabases, skippedDatabases };
180
205
  }
181
206
  async function tryAcquire(admin, key) {
182
207
  const rows = await admin `
@@ -1 +1 @@
1
- {"version":3,"file":"reap.js","sourceRoot":"","sources":["../../src/test/reap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reap.js","sourceRoot":"","sources":["../../src/test/reap.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,8 @@ export interface TestDatabase {
9
9
  /** The per-file database that gets dropped on teardown. */
10
10
  database: string;
11
11
  }
12
+ /** Log prefix for what the orphan reaper left alone (#391). */
13
+ export declare const TEST_REAP_LOG_PREFIX = "pipework:test-reap";
12
14
  export interface SetupOptions {
13
15
  /** Told about every step setup reaches, in order. Issue #380. */
14
16
  onProgress?: SetupProgressListener;
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/test/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/test/setup.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,8 @@ let workerShutdownArmed = false;
28
28
  function templateDbName(baseName, fingerprint) {
29
29
  return `${templateDbPrefix()}${baseName}_${fingerprint}`;
30
30
  }
31
+ /** Log prefix for what the orphan reaper left alone (#391). */
32
+ export const TEST_REAP_LOG_PREFIX = 'pipework:test-reap';
31
33
  // One name per CLONE, not per process. A test file's database is no longer
32
34
  // dropped the instant the file ends (see `pendingDrops`), so the next file in
33
35
  // the same worker must not ask for the name still queued for drop.
@@ -123,7 +125,13 @@ async function prepareRun(adminUrl, liveTemplates) {
123
125
  if (!reaped) {
124
126
  reaped = true;
125
127
  try {
126
- await reapOrphanTestDatabases(adminClient, liveTemplates);
128
+ const result = await reapOrphanTestDatabases(adminClient, liveTemplates);
129
+ // #391: databases sharing this project's prefix that pipework did not create
130
+ // are left alone. Naming them once per run is what keeps a deliberate skip
131
+ // from looking like the reaper having nothing to do.
132
+ if (result.skippedDatabases.length > 0) {
133
+ process.stderr.write(`${TEST_REAP_LOG_PREFIX} left alone (not created by pipework): ${result.skippedDatabases.join(', ')}\n`);
134
+ }
127
135
  }
128
136
  catch {
129
137
  // Reaping is best effort — never let stale-orphan cleanup break setup.
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/test/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/test/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,QAAQ,MAAM,UAAU,CAAA;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAA;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AAG5C,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAA;AACjG,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC7F,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAA;AACjF,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC9G,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAC9E,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,sBAAsB,GAEvB,MAAM,eAAe,CAAA;AA0CtB,gFAAgF;AAChF,gFAAgF;AAChF,6DAA6D;AAC7D,MAAM,qBAAqB,GAAG,wBAAwB,CAAA;AAEtD,MAAM,aAAa,GAAG,IAAI,GAAG,EAAwB,CAAA;AACrD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAA;AAC7C,IAAI,WAAW,GAAwB,IAAI,CAAA;AAE3C,6EAA6E;AAC7E,8EAA8E;AAC9E,6EAA6E;AAC7E,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC/C,IAAI,UAAU,GAAwB,IAAI,CAAA;AAC1C,IAAI,MAAM,GAAG,KAAK,CAAA;AAClB,IAAI,mBAAmB,GAAG,KAAK,CAAA;AAE/B,SAAS,cAAc,CAAC,QAAgB,EAAE,WAAmB;IAC3D,OAAO,GAAG,gBAAgB,EAAE,GAAG,QAAQ,IAAI,WAAW,EAAE,CAAA;AAC1D,CAAC;AAED,+DAA+D;AAC/D,MAAM,CAAC,MAAM,oBAAoB,GAAG,oBAAoB,CAAA;AAExD,2EAA2E;AAC3E,8EAA8E;AAC9E,mEAAmE;AACnE,IAAI,QAAQ,GAAG,CAAC,CAAA;AAEhB,SAAS,UAAU,CAAC,QAAgB;IAClC,OAAO,GAAG,YAAY,EAAE,GAAG,QAAQ,IAAI,QAAQ,EAAE,IAAI,OAAO,CAAC,GAAG,IAAI,QAAQ,EAAE,CAAA;AAChF,CAAC;AAED,yEAAyE;AACzE,8EAA8E;AAC9E,gFAAgF;AAChF,8EAA8E;AAC9E,+EAA+E;AAC/E,gEAAgE;AAChE,SAAS,WAAW,CAAC,QAAgB,EAAE,WAAmB;IACxD,OAAO,GAAG,aAAa,EAAE,GAAG,QAAQ,IAAI,WAAW,EAAE,CAAA;AACvD,CAAC;AAWD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,QAAkB,EAClB,UAAwB,EAAE;IAE1B,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IACpD,OAAO,iBAAiB,CACtB,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,EACjC,OAAO,EACP;QACE,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,IAAI,sBAAsB;QAC5F,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC;KAC9E,CACF,CAAA;AACH,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,QAAkB,EAAE,OAAqB;IAC/D,MAAM,SAAS,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAA;IAElD,wEAAwE;IACxE,4EAA4E;IAC5E,yEAAyE;IACzE,2EAA2E;IAC3E,wEAAwE;IACxE,yEAAyE;IACzE,0EAA0E;IAC1E,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,SAAS,EAAE,CAAC;QACzC,IAAI,QAAQ,CAAC,GAAG,KAAK,SAAS;YAAE,SAAQ;QACxC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAA;QAClC,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAA;QAChF,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,CAAA;QACxC,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CACb,0CAA0C,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAC1E,CAAA;QACH,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,8EAA8E;IAC9E,0EAA0E;IAC1E,wBAAwB;IACxB,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAA;IACxB,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAA;IACtD,MAAM,KAAK,GAAmB,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE;QAC/D,MAAM,WAAW,GAAG,mBAAmB,CACrC,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,KAAK,WAAW,EAAE,KAAK,CAAC,CACjF,CAAA;QACD,OAAO;YACL,IAAI;YACJ,QAAQ;YACR,WAAW;YACX,UAAU,EAAE,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC;YAC7C,OAAO,EAAE,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC;YACvC,iBAAiB,EAAE,IAAI,KAAK,WAAW;SACxC,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,IAAI,uBAAuB,CAAA;IAClF,MAAM,WAAW,GAAG,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAE3D,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;IAC5B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;QAC9B,MAAM,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;IAC5F,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;QAC9D,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QACzC,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;QACvF,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QACxC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACtC,CAAC;IAED,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IACxB,OAAO,aAAa,CAAA;AACtB,CAAC;AAED,6EAA6E;AAC7E,8EAA8E;AAC9E,6EAA6E;AAC7E,mEAAmE;AACnE,4EAA4E;AAC5E,2EAA2E;AAC3E,6EAA6E;AAC7E,KAAK,UAAU,UAAU,CAAC,QAAgB,EAAE,aAAkC;IAC5E,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,WAAW,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC,CAAA;IAClE,CAAC;IACD,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,UAAU,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC,CAAA;QACjG,MAAM,UAAU,CAAA,2BAA2B,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAA;IACvF,CAAC;IACD,iBAAiB,EAAE,CAAA;IACnB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,IAAI,CAAA;QACb,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAA;YACxE,6EAA6E;YAC7E,2EAA2E;YAC3E,qDAAqD;YACrD,IAAI,MAAM,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,oBAAoB,0CAA0C,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CACxG,CAAA;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,uEAAuE;QACzE,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,KAAK,UAAU,cAAc,CAAC,QAAkB,EAAE,IAAkB,EAAE,OAAqB;IACzF,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACvC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAA;IAEvC,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC1D,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAA;IAE9D,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IAC1C,MAAM,UAAW,CAAA,kCAAkC,MAAM,WAAW,CAAA;IAEpE,MAAM,kBAAkB,CAAC;QACvB,QAAQ;QACR,SAAS,EAAE,mBAAmB,CAAC,QAAQ,CAAC;QACxC,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC;QACpC,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,MAAM,IAAI,GAAG,MAAM,UAAW,CAAuB;sCACrB,QAAQ;OACvC,CAAA;YACD,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;QACjC,CAAC;QACD,MAAM,EAAE,KAAK,IAAI,EAAE;YACjB,MAAM,UAAW,CAAA,6BAA6B,QAAQ,WAAW,CAAA;QACnE,CAAC;QACD,KAAK,EAAE,GAAG,EAAE;YACV,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;YAC5C,OAAO,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;QAC/C,CAAC;QACD,UAAU,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,QAAQ,CAAC;QAC9C,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,KAAK,EAAE,CAAC;KAC/E,CAAC,CAAA;IAEF,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IAE5C,uEAAuE;IACvE,0EAA0E;IAC1E,8EAA8E;IAC9E,8EAA8E;IAC9E,0EAA0E;IAC1E,2DAA2D;IAC3D,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IACzC,MAAM,iBAAiB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAEvC,MAAM,QAAQ,GAAa;QACzB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,WAAW,EAAE,IAAI,CAAC,WAAW;KAC9B,CAAA;IACD,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAClC,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,6EAA6E;AAC7E,4EAA4E;AAC5E,8EAA8E;AAC9E,yBAAyB;AACzB,uEAAuE;AACvE,+EAA+E;AAC/E,KAAK,UAAU,iBAAiB,CAAC,QAAkB,EAAE,IAAkB;IACrE,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,CAAA;IACrD,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAA;IACvG,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;QAAE,OAAM;IAErC,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAA;IACrF,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,uCAAuC;YACvC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,wBAAwB,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CACnF,CAAA;IACH,CAAC;AACH,CAAC;AAED,0EAA0E;AAC1E,SAAS,UAAU,CAAC,QAA0B,EAAE,QAAgB;IAC9D,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;IACjC,GAAG,CAAC,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAA;IAC7B,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAA;AACvB,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,eAAe,CAAC,IAAkB;IAC/C,OAAO,kBAAkB,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAA;AAC3D,CAAC;AAED,8EAA8E;AAC9E,KAAK,UAAU,kBAAkB,CAAC,IAAkB;IAClD,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE;QAClE,GAAG,EAAE,CAAC;QACN,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;QAClB,eAAe,EAAE,EAAE;KACpB,CAAC,CAAA;IACF,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAA2B;gCACxB,MAAM,CAAC,qBAAqB,CAAC;KACxD,CAAA;QACD,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,CAAC,WAAW,CAAA;IAClD,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IACpC,CAAC;AACH,CAAC;AAED,kFAAkF;AAClF,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;AAEnD;;;GAGG;AACH,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;IACpD,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB;CAC3F,CAAC,CAAA;AAEF,SAAS,OAAO,CAAC,GAAY;IAC3B,MAAM,IAAI,GAAI,GAAiC,EAAE,IAAI,CAAA;IACrD,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;AACpD,CAAC;AAED,SAAS,uBAAuB,CAAC,GAAY;IAC3C,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IACzD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IACzB,IAAI,IAAI,KAAK,SAAS,IAAI,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAA;IACnE,OAAO,uBAAuB,CAAE,GAA2B,CAAC,KAAK,CAAC,CAAA;AACpE,CAAC;AAED,8DAA8D;AAC9D,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAC5C,YAAY,QAAgB,EAAE,KAAc;QAC1C,KAAK,CAAC,6DAA6D,QAAQ,WAAW,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QAClG,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAA;IACnC,CAAC;CACF;AAED,MAAM,qBAAqB,GAAsB,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;AAErE;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAA6B,EAC7B,QAAuC,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAC5F,WAA8B,qBAAqB;IAEnD,KAAK,IAAI,CAAC,GAAG,CAAC,GAAI,CAAC,EAAE,EAAE,CAAC;QACtB,IAAI,CAAC;YACH,OAAO,MAAM,KAAK,EAAE,CAAA;QACtB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;YACzB,IAAI,IAAI,KAAK,SAAS,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,OAAO,KAAK,CAAA;YACjE,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC;gBAAE,MAAM,GAAG,CAAA;YAC5C,IAAI,CAAC,IAAI,QAAQ,CAAC,MAAM;gBAAE,MAAM,IAAI,mBAAmB,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;YACnE,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAA;QAC3B,CAAC;IACH,CAAC;AACH,CAAC;AAED,qEAAqE;AACrE,MAAM,8BAA8B,GAAG,OAAO,CAAA;AAE9C,uEAAuE;AACvE,MAAM,sBAAsB,GAAG,GAAG,CAAA;AAElC,SAAS,mBAAmB,CAAC,QAAkB;IAC7C,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,mBAAmB,IAAI,8BAA8B,CAAA;AACxF,CAAC;AAED,yFAAyF;AACzF,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACjD,YAAY,QAAgB,EAAE,UAAyB,EAAE,QAAgB;QACvE,MAAM,GAAG,GAAG,UAAU,KAAK,IAAI;YAC7B,CAAC,CAAC,8CAA8C;YAChD,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QACtB,KAAK,CACH,uCAAuC;YACvC,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,uDAAuD;YAC/F,+CAA+C;YAC/C,qBAAqB,QAAQ,IAAI;YACjC,qBAAqB,GAAG,MAAM;YAC9B,sEAAsE;YACtE,qDAAqD,CACtD,CAAA;QACD,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAA;IACxC,CAAC;CACF;AAmBD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAuB;IAC9D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;IACzF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;IAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,IAAI,sBAAsB,CAAA;IAC9D,MAAM,KAAK,GAAG,GAAG,EAAE,CAAA;IACnB,IAAI,KAAK,GAAG,CAAC,CAAA;IAEb,SAAS,CAAC;QACR,IAAI,MAAM,IAAI,CAAC,OAAO,EAAE;YAAE,OAAO,OAAO,CAAA;QAExC,IAAI,MAAM,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,qEAAqE;gBACrE,IAAI,MAAM,IAAI,CAAC,OAAO,EAAE;oBAAE,OAAO,OAAO,CAAA;gBACxC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;gBAClB,OAAO,OAAO,CAAA;YAChB,CAAC;oBAAS,CAAC;gBACT,MAAM,IAAI,CAAC,MAAM,EAAE,CAAA;YACrB,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,GAAG,EAAE,GAAG,KAAK,CAAA;QAC5B,IAAI,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC7B,MAAM,IAAI,wBAAwB,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,CAAA;QACpF,CAAC;QACD,2EAA2E;QAC3E,2EAA2E;QAC3E,wEAAwE;QACxE,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAA;QACpB,MAAM,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAA;IAC9D,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,GAAW,EACX,SAAuB,WAAY;IAEnC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAmB;;;;;0DAKU,GAAG;;KAExD,CAAA;QACD,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,IAAI,CAAA;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,sEAAsE;AACtE,KAAK,UAAU,aAAa,CAAC,QAAkB,EAAE,IAAkB,EAAE,OAAqB;IACxF,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;IACzB,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;IAClC,MAAM,aAAa,GAAG,eAAe,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;IAC7D,MAAM,KAAK,GAAG,OAAO,CAAC,WAAY,CAAC,CAAA;IAEnC,6EAA6E;IAC7E,6DAA6D;IAC7D,MAAM,oBAAoB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;IAC7C,MAAM,iBAAiB,CACrB,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,2BAA2B,aAAa,EAAE,CAAC,CAAC,EACxE,EAAE,MAAM,EAAE,wBAAwB,EAAE,CACrC,CAAA;IACD,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,mBAAmB,aAAa,EAAE,CAAC,CAAC,CAAA;IAChE,6EAA6E;IAC7E,6EAA6E;IAC7E,yEAAyE;IACzE,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,kBAAkB,aAAa,+BAA+B,CAAC,CAAC,CAAA;IAE5F,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;IACzC,WAAW,CAAC,QAAQ,GAAG,IAAI,UAAU,EAAE,CAAA;IACvC,MAAM,cAAc,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAA;IAE7C,MAAM,cAAc,GAAG,QAAQ,CAAC,cAAc,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC,CAAA;IAC/E,MAAM,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;IAEhD,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YACtC,MAAM,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,kCAAkC,eAAe,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;QAChH,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,eAAe,CAAC;YACpB,gBAAgB,EAAE,QAAQ,CAAC,UAAU;YACrC,eAAe,EAAE,QAAQ,CAAC,cAAc;YACxC,aAAa,EAAE,cAAc;YAC7B,iBAAiB,EAAE,IAAI;YACvB,cAAc,EAAE,IAAI;YACpB,sEAAsE;YACtE,+CAA+C;YAC/C,WAAW,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CACjC,OAAO,CAAC,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,KAAK,IAAI,GAAG,EAAE,CAAC;SAC7E,CAAC,CAAA;IACJ,CAAC;IAED,wEAAwE;IACxE,6EAA6E;IAC7E,sEAAsE;IACtE,MAAM,wBAAwB,CAC5B,gBAAgB,EAChB,QAAQ,CAAC,MAAM,CAAC,GAAG,EACnB;QACE,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB;QACxD,kBAAkB,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB;QAC5D,kBAAkB,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa;QACvD,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB;KAC3D,EACD,IAAI,CAAC,iBAAiB,CACvB,CAAA;IAED,2EAA2E;IAC3E,6EAA6E;IAC7E,4EAA4E;IAC5E,8BAA8B;IAC9B,MAAM,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CACpC,gBAAgB,eAAe,CAAC,qBAAqB,EAAE,OAAO,CAAC,IAAI;QACnE,0GAA0G,CAC3G,CAAC,CAAA;IACF,MAAM,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAA;kBAClB,GAAG,CAAC,UAAU,CAAC,qBAAqB,CAAC;cACzC,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC,GAAG;GAC3C,CAAC,CAAA;IAEF,MAAM,cAAc,CAAC,GAAG,EAAE,CAAA;IAE1B,MAAM,qBAAqB,CAAC,WAAY,EAAE,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;AACzE,CAAC;AAoBD,MAAM,4BAA4B,GAAG,OAAO,CAAA;AAC5C,MAAM,sCAAsC,GAAG,OAAO,CAAA;AACtD,MAAM,gCAAgC,GAAG,KAAK,CAAA;AAE9C,SAAS,kBAAkB,CAAC,GAAc;IACxC,OAAO;QACL,kBAAkB,EAAE,GAAG,CAAC,IAAI,EAAE,kBAAkB,IAAI,4BAA4B;QAChF,0BAA0B,EAAE,GAAG,CAAC,IAAI,EAAE,0BAA0B,IAAI,sCAAsC;QAC1G,qBAAqB,EAAE,GAAG,CAAC,IAAI,EAAE,qBAAqB,IAAI,gCAAgC;KAC3F,CAAA;AACH,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,oBAAoB,CAAC,OAAe,EAAE,MAAmB;IACvE,MAAM,QAAQ,GAAuB;QACnC,CAAC,mBAAmB,EAAE,MAAM,CAAC,kBAAkB,CAAC;QAChD,CAAC,qCAAqC,EAAE,MAAM,CAAC,0BAA0B,CAAC;QAC1E,CAAC,kCAAkC,EAAE,MAAM,CAAC,qBAAqB,CAAC;KACnE,CAAA;IACD,OAAO,QAAQ;SACZ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;SAC1B,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,OAAO,QAAQ,IAAI,MAAM,EAAE,EAAE,CAAC,CAAA;AACzE,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,IAAY,EAAE,QAA0B,EAAE,QAAkB,EAAE,MAAmB;IAChH,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;IAC/B,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IACnD,MAAM,aAAa,GAAG,eAAe,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;IACtE,MAAM,SAAS,GAAG,eAAe,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAC3D,MAAM,KAAK,GAAG,OAAO,CAAC,WAAY,CAAC,CAAA;IAEnC,2EAA2E;IAC3E,8EAA8E;IAC9E,gEAAgE;IAChE,4EAA4E;IAC5E,8EAA8E;IAC9E,6EAA6E;IAC7E,MAAM,oBAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAA;IACtD,MAAM,iBAAiB,CAAC,GAAG,EAAE,CAC3B,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,mBAAmB,OAAO,kBAAkB,aAAa,EAAE,CAAC,CAAC,CACpF,CAAA;IACD,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,kBAAkB,OAAO,+BAA+B,CAAC,CAAC,CAAA;IACtF,KAAK,MAAM,SAAS,IAAI,oBAAoB,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;QAC9D,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAA;IACzC,CAAC;IACD,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,6BAA6B,OAAO,OAAO,SAAS,EAAE,CAAC,CAAC,CAAA;IAEpF,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;IACrC,OAAO,CAAC,QAAQ,GAAG,IAAI,MAAM,EAAE,CAAA;IAE/B,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC1C,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAA;IAClC,MAAM,CAAC,QAAQ,GAAG,eAAe,CAAA;IAEjC,OAAO;QACL,IAAI;QACJ,GAAG,EAAE,OAAO,CAAC,QAAQ,EAAE;QACvB,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE;QACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,QAAQ,EAAE,MAAM;KACjB,CAAA;AACH,CAAC;AAED,+EAA+E;AAC/E,8EAA8E;AAC9E,wEAAwE;AACxE,gFAAgF;AAChF,0EAA0E;AAC1E,gFAAgF;AAChF,6EAA6E;AAC7E,+EAA+E;AAC/E,4EAA4E;AAC5E,6EAA6E;AAC7E,6EAA6E;AAC7E,+EAA+E;AAC/E,iFAAiF;AACjF,KAAK,UAAU,oBAAoB,CAAC,KAAiC,EAAE,UAAkB;IACvF,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,CAAA;;;wBAGH,UAAU;;;;;KAK7B,CAAC,CAAA;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,0EAA0E;IAC5E,CAAC;AACH,CAAC;AAED,kFAAkF;AAClF,8EAA8E;AAC9E,2EAA2E;AAC3E,8EAA8E;AAC9E,+CAA+C;AAC/C,MAAM,aAAa,GAAG,OAAO,CAAA;AAE7B,SAAS,aAAa,CAAC,GAAY;IACjC,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAK,GAA0B,CAAC,IAAI,KAAK,aAAa,CAAA;AACtG,CAAC;AAED,0EAA0E;AAC1E,4EAA4E;AAC5E,gBAAgB;AAChB,MAAM,wBAAwB,GAAsB,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAW1G,MAAM,CAAC,MAAM,yBAAyB,GAAG,yBAAyB,CAAA;AAClE,MAAM,CAAC,MAAM,wBAAwB,GAAG,wBAAwB,CAAA;AAehE;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAyB,EACzB,UAAgC,EAAE;IAElC,MAAM,EACJ,KAAK,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAC7E,QAAQ,GAAG,wBAAwB,EACnC,GAAG,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAChD,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,EACtB,MAAM,GAAG,yBAAyB,GACnC,GAAG,OAAO,CAAA;IAEX,MAAM,KAAK,GAAG,GAAG,EAAE,CAAA;IACnB,KAAK,IAAI,CAAC,GAAG,CAAC,GAAI,CAAC,EAAE,EAAE,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,OAAO,EAAE,CAAA;YAC9B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACV,GAAG,CAAC,GAAG,MAAM,uBAAuB,aAAa,YAAY,CAAC,eAAe,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,CAAA;YAC/F,CAAC;YACD,OAAO,MAAM,CAAA;QACf,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,oEAAoE;YACpE,uEAAuE;YACvE,0CAA0C;YAC1C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC;gBAAE,MAAM,GAAG,CAAA;YAClC,IAAI,CAAC,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACzB,GAAG,CAAC,GAAG,MAAM,uBAAuB,aAAa,YAAY,CAAC,eAAe,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,CAAA;gBAC7F,MAAM,GAAG,CAAA;YACX,CAAC;YACD,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAA;YAC1B,GAAG,CACD,GAAG,MAAM,mBAAmB,aAAa,GAAG;gBAC5C,SAAS,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,MAAM,aAAa,KAAK,eAAe,GAAG,EAAE,GAAG,KAAK,EAAE,CAClF,CAAA;YACD,MAAM,KAAK,CAAC,KAAK,CAAC,CAAA;QACpB,CAAC;IACH,CAAC;AACH,CAAC;AAED,6EAA6E;AAC7E,6EAA6E;AAC7E,+EAA+E;AAC/E,yEAAyE;AACzE,kCAAkC;AAClC,KAAK,UAAU,qBAAqB,CAAC,MAAoB,EAAE,WAAmB,EAAE,QAAgB;IAC9F,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7B,MAAM,SAAS,GAAG,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAEnD,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CACzB,cAAc;QACd,wDAAwD,QAAQ,UAAU;QAC1E,eAAe,SAAS,4EAA4E;QACpG,UAAU;QACV,QAAQ,CACT,CAAC,CAAA;IAEF,MAAM,cAAc,GAAG,QAAQ,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC,CAAA;IAC5E,MAAM,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;IAE1C,MAAM,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,mCAAmC,SAAS,EAAE,CAAC,CAAC,CAAA;IACjF,MAAM,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,0EAA0E,SAAS,EAAE,CAAC,CAAC,CAAA;IACxH,MAAM,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,4DAA4D,SAAS,EAAE,CAAC,CAAC,CAAA;IAC1G,MAAM,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,+FAA+F,SAAS,EAAE,CAAC,CAAC,CAAA;IAC7I,MAAM,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,iFAAiF,SAAS,EAAE,CAAC,CAAC,CAAA;IAE/H,MAAM,cAAc,CAAC,GAAG,EAAE,CAAA;AAC5B,CAAC;AAED,oEAAoE;AACpE,6EAA6E;AAC7E,6EAA6E;AAC7E,0EAA0E;AAC1E,oCAAoC;AACpC,KAAK,UAAU,mBAAmB;IAChC,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,MAAM,WAAW,CAAC,GAAG,EAAE,CAAA;QACvB,WAAW,GAAG,IAAI,CAAA;IACpB,CAAC;IACD,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,MAAM,UAAU,CAAC,GAAG,EAAE,CAAA;QACtB,UAAU,GAAG,IAAI,CAAA;IACnB,CAAC;AACH,CAAC;AAED,yEAAyE;AACzE,yEAAyE;AACzE,8EAA8E;AAC9E,0EAA0E;AAC1E,6EAA6E;AAC7E,8EAA8E;AAC9E,8EAA8E;AAC9E,2EAA2E;AAC3E,6EAA6E;AAC7E,sCAAsC;AACtC,SAAS,iBAAiB;IACxB,IAAI,mBAAmB;QAAE,OAAM;IAC/B,mBAAmB,GAAG,IAAI,CAAA;IAC1B,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE;YAC9B,qEAAqE;YACrE,KAAK,iBAAiB,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,mBAAmB,EAAE,CAAC,CAAA;QACzE,CAAC,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAED,6EAA6E;AAC7E,2EAA2E;AAC3E,wGAAwG;AACxG,+EAA+E;AAC/E,6EAA6E;AAC7E,4EAA4E;AAC5E,+EAA+E;AAC/E,8EAA8E;AAC9E,gFAAgF;AAChF,MAAM,CAAC,KAAK,UAAU,qBAAqB;IACzC,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,aAAa,CAAC,KAAK,EAAE,CAAA;QACrB,OAAM;IACR,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IAElC,KAAK,MAAM,CAAC,EAAE,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QACvC,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,CAAA,0EAA0E,MAAM,CAAC,QAAQ,8BAA8B,CAAC,CAAA;YAC/I,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACpC,CAAC;QAAC,MAAM,CAAC;YACP,oEAAoE;QACtE,CAAC;IACH,CAAC;IAED,aAAa,CAAC,KAAK,EAAE,CAAA;IAErB,IAAI,YAAY,CAAC,MAAM,IAAI,aAAa,EAAE,CAAC;QACzC,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAA;IAClC,CAAC;IAED,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACvC,0EAA0E;QAC1E,wDAAwD;QACxD,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAA;QACnC,MAAM,mBAAmB,EAAE,CAAA;IAC7B,CAAC;AACH,CAAC;AAED,+DAA+D;AAC/D,EAAE;AACF,8EAA8E;AAC9E,uEAAuE;AACvE,gFAAgF;AAChF,8EAA8E;AAC9E,4EAA4E;AAC5E,2EAA2E;AAC3E,yDAAyD;AACzD,EAAE;AACF,gFAAgF;AAChF,4EAA4E;AAC5E,2EAA2E;AAC3E,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAC9E,MAAM,YAAY,GAAa,EAAE,CAAA;AAEjC,MAAM,uBAAuB,GAAG,CAAC,CAAA;AAEjC,IAAI,aAAa,GAAG,uBAAuB,CAAA;AAE3C,MAAM,CAAC,MAAM,oBAAoB,GAAG,oBAAoB,CAAA;AAExD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAA4B,EAC5B,MAAgB,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAChD,MAAoB,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;IAEpC,IAAI,WAAW,KAAK,IAAI,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAA;IAE/D,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IAClC,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAA;IACzD,MAAM,KAAK,GAAG,GAAG,EAAE,CAAA;IACnB,IAAI,OAAO,GAAG,CAAC,CAAA;IAEf,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,2BAA2B,eAAe,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,CAAA;YAChG,OAAO,EAAE,CAAA;QACX,CAAC;QAAC,MAAM,CAAC;YACP,kCAAkC;QACpC,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,2EAA2E;IAC3E,qEAAqE;IACrE,GAAG,CAAC,GAAG,oBAAoB,IAAI,MAAM,WAAW,KAAK,CAAC,MAAM,YAAY,OAAO,eAAe,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,CAAA;IAC9G,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,gBAAgB;IAC9B,OAAO,YAAY,CAAC,MAAM,CAAA;AAC5B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AAChC,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,aAAa,CAAA;AACtB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,2BAA2B;IACzC,SAAS,CAAC,KAAK,EAAE,CAAA;AACnB,CAAC"}
@@ -10,6 +10,7 @@ export interface SyncResult {
10
10
  readonly files: readonly GeneratedFile[];
11
11
  readonly written: number;
12
12
  readonly skipped: number;
13
+ readonly pipeworkVersion: string;
13
14
  }
14
15
  export declare function sync(input: SyncInput): SyncResult;
15
16
  export declare function readPipeworkVersionFromConfig(config: Blueprint): string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/workspace/sync.ts"],"names":[],"mappings":"AAKA,OAAO,EAA2C,KAAK,aAAa,EAAE,MAAM,eAAe,CAAA;AAC3F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEzD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAClC;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,CAAA;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAED,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAsCjD;AAoBD,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAMnF"}
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/workspace/sync.ts"],"names":[],"mappings":"AAKA,OAAO,EAA2C,KAAK,aAAa,EAAE,MAAM,eAAe,CAAA;AAC3F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEzD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAClC;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,CAAA;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CACjC;AAED,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAsCjD;AAoBD,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAMnF"}
@@ -35,7 +35,7 @@ export function sync(input) {
35
35
  written++;
36
36
  }
37
37
  }
38
- return { files, written, skipped };
38
+ return { files, written, skipped, pipeworkVersion };
39
39
  }
40
40
  function readFileSafe(path) {
41
41
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/workspace/sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/workspace/sync.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pipework",
3
- "version": "0.38.0",
3
+ "version": "0.40.0",
4
4
  "description": "TypeScript framework for multi-tenant SaaS applications. PostgreSQL-only.",
5
5
  "type": "module",
6
6
  "license": "MIT",