@memberjunction/cli 6.2.0-edge.6 → 6.2.0-edge.8
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/README.md +73 -0
- package/dist/commands/dev/workspace/clean.d.ts +2 -1
- package/dist/commands/dev/workspace/clean.d.ts.map +1 -1
- package/dist/commands/dev/workspace/clean.js +4 -3
- package/dist/commands/dev/workspace/clean.js.map +1 -1
- package/dist/commands/dev/workspace/doctor.d.ts.map +1 -1
- package/dist/commands/dev/workspace/doctor.js +3 -2
- package/dist/commands/dev/workspace/doctor.js.map +1 -1
- package/dist/commands/dev/workspace/index.d.ts +2 -2
- package/dist/commands/dev/workspace/index.d.ts.map +1 -1
- package/dist/commands/dev/workspace/index.js +12 -9
- package/dist/commands/dev/workspace/index.js.map +1 -1
- package/dist/commands/dev/workspace/status.d.ts +1 -1
- package/dist/commands/dev/workspace/status.js +1 -1
- package/dist/commands/diag/export.d.ts +16 -0
- package/dist/commands/diag/export.d.ts.map +1 -0
- package/dist/commands/diag/export.js +37 -0
- package/dist/commands/diag/export.js.map +1 -0
- package/dist/commands/diag/inspect.d.ts +14 -0
- package/dist/commands/diag/inspect.d.ts.map +1 -0
- package/dist/commands/diag/inspect.js +45 -0
- package/dist/commands/diag/inspect.js.map +1 -0
- package/dist/commands/diag/keygen.d.ts +11 -0
- package/dist/commands/diag/keygen.d.ts.map +1 -0
- package/dist/commands/diag/keygen.js +36 -0
- package/dist/commands/diag/keygen.js.map +1 -0
- package/dist/commands/diag/scrub.d.ts +15 -0
- package/dist/commands/diag/scrub.d.ts.map +1 -0
- package/dist/commands/diag/scrub.js +34 -0
- package/dist/commands/diag/scrub.js.map +1 -0
- package/dist/commands/diag/slow.d.ts +14 -0
- package/dist/commands/diag/slow.d.ts.map +1 -0
- package/dist/commands/diag/slow.js +32 -0
- package/dist/commands/diag/slow.js.map +1 -0
- package/dist/commands/diag/timeline.d.ts +14 -0
- package/dist/commands/diag/timeline.d.ts.map +1 -0
- package/dist/commands/diag/timeline.js +29 -0
- package/dist/commands/diag/timeline.js.map +1 -0
- package/dist/commands/install/index.d.ts +12 -0
- package/dist/commands/install/index.d.ts.map +1 -1
- package/dist/commands/install/index.js +32 -5
- package/dist/commands/install/index.js.map +1 -1
- package/dist/commands/migrate/index.d.ts +26 -6
- package/dist/commands/migrate/index.d.ts.map +1 -1
- package/dist/commands/migrate/index.js +93 -21
- package/dist/commands/migrate/index.js.map +1 -1
- package/dist/commands/query/refresh.d.ts +25 -0
- package/dist/commands/query/refresh.d.ts.map +1 -0
- package/dist/commands/query/refresh.js +67 -0
- package/dist/commands/query/refresh.js.map +1 -0
- package/dist/commands/query/usage.d.ts +7 -0
- package/dist/commands/query/usage.d.ts.map +1 -0
- package/dist/commands/query/usage.js +10 -0
- package/dist/commands/query/usage.js.map +1 -0
- package/dist/commands/test/suite.d.ts +2 -0
- package/dist/commands/test/suite.d.ts.map +1 -1
- package/dist/commands/test/suite.js +10 -0
- package/dist/commands/test/suite.js.map +1 -1
- package/dist/commands/user/clone.d.ts.map +1 -1
- package/dist/commands/user/clone.js +1 -0
- package/dist/commands/user/clone.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +2 -1
- package/dist/config.js.map +1 -1
- package/dist/lib/db-version.d.ts +34 -7
- package/dist/lib/db-version.d.ts.map +1 -1
- package/dist/lib/db-version.js +45 -17
- package/dist/lib/db-version.js.map +1 -1
- package/dist/lib/dev-workspace/build-output.d.ts +22 -0
- package/dist/lib/dev-workspace/build-output.d.ts.map +1 -0
- package/dist/lib/dev-workspace/build-output.js +146 -0
- package/dist/lib/dev-workspace/build-output.js.map +1 -0
- package/dist/lib/dev-workspace/build.d.ts +6 -6
- package/dist/lib/dev-workspace/build.d.ts.map +1 -1
- package/dist/lib/dev-workspace/build.js +16 -23
- package/dist/lib/dev-workspace/build.js.map +1 -1
- package/dist/lib/dev-workspace/clean.d.ts +19 -5
- package/dist/lib/dev-workspace/clean.d.ts.map +1 -1
- package/dist/lib/dev-workspace/clean.js +44 -12
- package/dist/lib/dev-workspace/clean.js.map +1 -1
- package/dist/lib/dev-workspace/detect.d.ts.map +1 -1
- package/dist/lib/dev-workspace/detect.js +0 -2
- package/dist/lib/dev-workspace/detect.js.map +1 -1
- package/dist/lib/dev-workspace/doctor.d.ts.map +1 -1
- package/dist/lib/dev-workspace/doctor.js +63 -5
- package/dist/lib/dev-workspace/doctor.js.map +1 -1
- package/dist/lib/dev-workspace/lockfile.d.ts +9 -1
- package/dist/lib/dev-workspace/lockfile.d.ts.map +1 -1
- package/dist/lib/dev-workspace/lockfile.js +19 -8
- package/dist/lib/dev-workspace/lockfile.js.map +1 -1
- package/dist/lib/dev-workspace/types.d.ts +31 -11
- package/dist/lib/dev-workspace/types.d.ts.map +1 -1
- package/dist/lib/dev-workspace/types.js +2 -2
- package/dist/lib/dev-workspace/write.d.ts +7 -2
- package/dist/lib/dev-workspace/write.d.ts.map +1 -1
- package/dist/lib/dev-workspace/write.js +7 -3
- package/dist/lib/dev-workspace/write.js.map +1 -1
- package/dist/lib/domain-profiles.d.ts.map +1 -1
- package/dist/lib/domain-profiles.js +4 -0
- package/dist/lib/domain-profiles.js.map +1 -1
- package/dist/lib/migration-fetch.d.ts +17 -14
- package/dist/lib/migration-fetch.d.ts.map +1 -1
- package/dist/lib/migration-fetch.js +35 -25
- package/dist/lib/migration-fetch.js.map +1 -1
- package/dist/lib/migration-timeout.d.ts +15 -0
- package/dist/lib/migration-timeout.d.ts.map +1 -0
- package/dist/lib/migration-timeout.js +23 -0
- package/dist/lib/migration-timeout.js.map +1 -0
- package/dist/lib/out-of-order.d.ts +56 -0
- package/dist/lib/out-of-order.d.ts.map +1 -0
- package/dist/lib/out-of-order.js +37 -0
- package/dist/lib/out-of-order.js.map +1 -0
- package/dist/lib/query-refresh.d.ts +23 -0
- package/dist/lib/query-refresh.d.ts.map +1 -0
- package/dist/lib/query-refresh.js +33 -0
- package/dist/lib/query-refresh.js.map +1 -0
- package/dist/light-commands.d.ts.map +1 -1
- package/dist/light-commands.js +13 -0
- package/dist/light-commands.js.map +1 -1
- package/dist/utils/diag-utils.d.ts +34 -0
- package/dist/utils/diag-utils.d.ts.map +1 -0
- package/dist/utils/diag-utils.js +147 -0
- package/dist/utils/diag-utils.js.map +1 -0
- package/oclif.manifest.json +2439 -1974
- package/package.json +28 -26
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/dev-workspace/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,qGAAqG;AACrG,MAAM,WAAW,gBAAgB;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CAC/D;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,8FAA8F;IAC9F,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7C,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACrD,mBAAmB,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAC9F;AAED,0FAA0F;AAC1F,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,IAAI,CAAC,EAAE,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/dev-workspace/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Shared types for the `mj dev workspace` generator.
|
|
3
3
|
*
|
|
4
|
-
* The generator creates the
|
|
4
|
+
* The generator creates the three ephemeral files that join sibling repo checkouts
|
|
5
5
|
* into a single pnpm workspace at their common parent directory:
|
|
6
|
-
* `pnpm-workspace.yaml`, `.npmrc`, `package.json
|
|
6
|
+
* `pnpm-workspace.yaml`, `.npmrc`, `package.json`.
|
|
7
7
|
*
|
|
8
8
|
* The generated contents reproduce the manual setup this command replaces: every
|
|
9
9
|
* value was proven by joining these repos by hand before it was automated.
|
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
import type { GeneratedFile, WriteResult } from './types.js';
|
|
2
|
-
/** The
|
|
2
|
+
/** The three workspace files `mj dev workspace` owns at the parent directory. */
|
|
3
3
|
export declare const WORKSPACE_FILE_NAMES: readonly string[];
|
|
4
|
+
/**
|
|
5
|
+
* Files earlier versions of the generator wrote and this one no longer does (`turbo.json`, #4913).
|
|
6
|
+
* They are removed only where the parent's sentinel lists them, which proves the generator wrote them.
|
|
7
|
+
*/
|
|
8
|
+
export declare const LEGACY_WORKSPACE_FILE_NAMES: readonly string[];
|
|
4
9
|
/**
|
|
5
10
|
* The sentinel manifest, written through this module like any other generated
|
|
6
11
|
* file (so the never-overwrite-silently rule covers it too). Its presence is what
|
|
7
12
|
* lets `mj dev workspace clean` prove the residue at a parent is its own.
|
|
8
13
|
*/
|
|
9
14
|
export declare const SENTINEL_FILE_NAME = ".mj-dev-workspace.json";
|
|
10
|
-
/** Every file `mj dev workspace` writes at the parent: the
|
|
15
|
+
/** Every file `mj dev workspace` writes at the parent: the three plus the sentinel. */
|
|
11
16
|
export declare const GENERATED_FILE_NAMES: readonly string[];
|
|
12
17
|
/**
|
|
13
18
|
* Throws unless the parent directory is a plain directory that is NOT a git repo
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../../../src/lib/dev-workspace/write.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE7D,
|
|
1
|
+
{"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../../../src/lib/dev-workspace/write.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE7D,iFAAiF;AACjF,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,EAIjD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,2BAA2B,EAAE,SAAS,MAAM,EAAmB,CAAC;AAE7E;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,2BAA2B,CAAC;AAE3D,uFAAuF;AACvF,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,EAAkD,CAAC;AAErG;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAa3D;AAED,wEAAwE;AACxE,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAE3F;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,aAAa,EAAE,EAAE,KAAK,EAAE,OAAO,GAAG,WAAW,CAqBnH"}
|
|
@@ -12,20 +12,24 @@
|
|
|
12
12
|
*/
|
|
13
13
|
import { copyFileSync, existsSync, statSync, writeFileSync } from 'node:fs';
|
|
14
14
|
import path from 'node:path';
|
|
15
|
-
/** The
|
|
15
|
+
/** The three workspace files `mj dev workspace` owns at the parent directory. */
|
|
16
16
|
export const WORKSPACE_FILE_NAMES = [
|
|
17
17
|
'pnpm-workspace.yaml',
|
|
18
18
|
'.npmrc',
|
|
19
19
|
'package.json',
|
|
20
|
-
'turbo.json',
|
|
21
20
|
];
|
|
21
|
+
/**
|
|
22
|
+
* Files earlier versions of the generator wrote and this one no longer does (`turbo.json`, #4913).
|
|
23
|
+
* They are removed only where the parent's sentinel lists them, which proves the generator wrote them.
|
|
24
|
+
*/
|
|
25
|
+
export const LEGACY_WORKSPACE_FILE_NAMES = ['turbo.json'];
|
|
22
26
|
/**
|
|
23
27
|
* The sentinel manifest, written through this module like any other generated
|
|
24
28
|
* file (so the never-overwrite-silently rule covers it too). Its presence is what
|
|
25
29
|
* lets `mj dev workspace clean` prove the residue at a parent is its own.
|
|
26
30
|
*/
|
|
27
31
|
export const SENTINEL_FILE_NAME = '.mj-dev-workspace.json';
|
|
28
|
-
/** Every file `mj dev workspace` writes at the parent: the
|
|
32
|
+
/** Every file `mj dev workspace` writes at the parent: the three plus the sentinel. */
|
|
29
33
|
export const GENERATED_FILE_NAMES = [...WORKSPACE_FILE_NAMES, SENTINEL_FILE_NAME];
|
|
30
34
|
/**
|
|
31
35
|
* Throws unless the parent directory is a plain directory that is NOT a git repo
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write.js","sourceRoot":"","sources":["../../../src/lib/dev-workspace/write.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC5E,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,
|
|
1
|
+
{"version":3,"file":"write.js","sourceRoot":"","sources":["../../../src/lib/dev-workspace/write.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domain-profiles.d.ts","sourceRoot":"","sources":["../../src/lib/domain-profiles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,aAAa;IAC5B,8CAA8C;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,OAAO,EAAE,WAAW,CAAC;CACtB;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,aAGpC,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"domain-profiles.d.ts","sourceRoot":"","sources":["../../src/lib/domain-profiles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,aAAa;IAC5B,8CAA8C;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,OAAO,EAAE,WAAW,CAAC;CACtB;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,aAGpC,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAyGnE,CAAC;AAEF,gFAAgF;AAChF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAE9D;AAED,gDAAgD;AAChD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAE9D"}
|
|
@@ -86,6 +86,10 @@ export const DOMAIN_PROFILES = {
|
|
|
86
86
|
Summary: 'Register third-party CLI plugins in mj-cli-plugins.json.',
|
|
87
87
|
Runtime: { class: 'fast' },
|
|
88
88
|
},
|
|
89
|
+
query: {
|
|
90
|
+
Summary: 'Refresh saved queries\' extracted parameters, fields and entities from their SQL.',
|
|
91
|
+
Runtime: { class: 'moderate', typicalSeconds: 30, note: 'scales with the number of queries; each is described on the database server' },
|
|
92
|
+
},
|
|
89
93
|
querygen: {
|
|
90
94
|
Summary: 'Generate, validate, and export stored queries.',
|
|
91
95
|
Runtime: { class: 'slow', typicalSeconds: 120, note: 'LLM-driven generation; validation alone is fast' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domain-profiles.js","sourceRoot":"","sources":["../../src/lib/domain-profiles.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"domain-profiles.js","sourceRoot":"","sources":["../../src/lib/domain-profiles.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { AppliedMigrationState } from './db-version.js';
|
|
1
2
|
export type MigrationDialect = 'sqlserver' | 'postgresql';
|
|
2
3
|
export interface MigrationFetchResult {
|
|
3
4
|
/** Temp clone root to hand to Skyway as the migration location. */
|
|
@@ -21,23 +22,25 @@ export declare function resolveGitRef(tagOrBranch: string): string;
|
|
|
21
22
|
* Pure selector: given the repo-relative migration paths present at a ref, return
|
|
22
23
|
* the minimal slice Skyway needs. Repeatable migrations are always included.
|
|
23
24
|
*
|
|
24
|
-
* Two modes, keyed on `
|
|
25
|
-
*
|
|
25
|
+
* Two modes, keyed on `applied` (what the target database's history says, or `null`
|
|
26
|
+
* for a fresh database):
|
|
26
27
|
*
|
|
27
|
-
* - **Fresh install** (`
|
|
28
|
+
* - **Fresh install** (`applied` null, or a history table with nothing successfully
|
|
29
|
+
* applied yet — Skyway still baselines that database): `baseline + tail` — the highest `B`
|
|
28
30
|
* baseline plus every `V` after it. Skyway applies the baseline (consolidated schema)
|
|
29
31
|
* then the tail. This is the bandwidth-optimal path for a brand-new database.
|
|
30
|
-
* - **Existing-DB upgrade** (`
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
*
|
|
32
|
+
* - **Existing-DB upgrade** (`applied` set): every `V` whose version is not in
|
|
33
|
+
* `applied.AppliedVersions` and is strictly above `applied.BaselineFloor`, with **no
|
|
34
|
+
* baseline**. Skyway never applies a `B` file to a database that already has history.
|
|
35
|
+
* Files older than the highest applied version are still selected when they were never
|
|
36
|
+
* run (a database coming from a release line); the caller decides whether Skyway may
|
|
37
|
+
* apply them out of order.
|
|
35
38
|
*
|
|
36
39
|
* With no baseline present (e.g. legacy v2) the fresh path returns the full versioned history.
|
|
37
40
|
*/
|
|
38
|
-
export declare function SelectMigrationSlice(paths: readonly string[],
|
|
41
|
+
export declare function SelectMigrationSlice(paths: readonly string[], applied?: AppliedMigrationState | null): string[];
|
|
39
42
|
/** @deprecated Use {@link SelectMigrationSlice}. */
|
|
40
|
-
export declare function selectMigrationSlice(paths: readonly string[],
|
|
43
|
+
export declare function selectMigrationSlice(paths: readonly string[], applied?: AppliedMigrationState | null): string[];
|
|
41
44
|
/**
|
|
42
45
|
* SIDE EFFECTS: clones from `repoUrl` over the network into a temp dir and checks out
|
|
43
46
|
* only the selected migration slice. Returns the temp dir plus a `cleanup` the caller
|
|
@@ -47,15 +50,15 @@ export declare function FetchMigrationSlice(opts: {
|
|
|
47
50
|
repoUrl: string;
|
|
48
51
|
ref: string;
|
|
49
52
|
dialect: MigrationDialect;
|
|
50
|
-
/**
|
|
51
|
-
|
|
53
|
+
/** What the target DB has already applied; `null`/omitted = fresh install (baseline + tail). */
|
|
54
|
+
applied?: AppliedMigrationState | null;
|
|
52
55
|
}): Promise<MigrationFetchResult>;
|
|
53
56
|
/** @deprecated Use {@link FetchMigrationSlice}. */
|
|
54
57
|
export declare function fetchMigrationSlice(opts: {
|
|
55
58
|
repoUrl: string;
|
|
56
59
|
ref: string;
|
|
57
60
|
dialect: MigrationDialect;
|
|
58
|
-
/**
|
|
59
|
-
|
|
61
|
+
/** What the target DB has already applied; `null`/omitted = fresh install (baseline + tail). */
|
|
62
|
+
applied?: AppliedMigrationState | null;
|
|
60
63
|
}): Promise<MigrationFetchResult>;
|
|
61
64
|
//# sourceMappingURL=migration-fetch.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration-fetch.d.ts","sourceRoot":"","sources":["../../src/lib/migration-fetch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"migration-fetch.d.ts","sourceRoot":"","sources":["../../src/lib/migration-fetch.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAE1D,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,YAAY,CAAC;AAE1D,MAAM,WAAW,oBAAoB;IACnC,mEAAmE;IACnE,GAAG,EAAE,MAAM,CAAC;IACZ,iGAAiG;IACjG,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,kGAAkG;IAClG,YAAY,EAAE,OAAO,CAAC;IACtB,wFAAwF;IACxF,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAKD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAIzD;AAED,6CAA6C;AAC7C,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,IAAI,GAAG,MAAM,EAAE,CAc/G;AAED,oDAAoD;AACpD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,IAAI,GAAG,MAAM,EAAE,CAE/G;AA8BD;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,gBAAgB,CAAC;IAC1B,gGAAgG;IAChG,OAAO,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;CACxC,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA2BhC;AAED,mDAAmD;AACnD,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,gBAAgB,CAAC;IAC1B,gGAAgG;IAChG,OAAO,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;CACxC,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAEhC"}
|
|
@@ -7,14 +7,18 @@
|
|
|
7
7
|
* The selection depends on whether the target database is fresh or existing, because
|
|
8
8
|
* Skyway only ever applies baselines to a fresh (no-history) database:
|
|
9
9
|
*
|
|
10
|
-
* fresh install
|
|
11
|
-
* existing upgrade → [ every `V`
|
|
10
|
+
* fresh install → [ highest `B` baseline ] + [ every `V` after it ] + [ all `R` repeatables ]
|
|
11
|
+
* existing upgrade → [ every `V` not yet applied and above the DB's baseline floor ] + [ all `R` repeatables ] (no baseline)
|
|
12
12
|
*
|
|
13
|
-
* The existing-upgrade path
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
13
|
+
* The existing-upgrade path selects by set difference against the history table, not by
|
|
14
|
+
* "newer than the highest applied version". Release lines make that distinction matter: a
|
|
15
|
+
* database upgraded from a patch line has applied files that are newer than migrations it
|
|
16
|
+
* has never run, and a "newer than the max" filter would drop those older files silently.
|
|
17
|
+
* The floor is the highest baseline row in history; Skyway never runs a `V` file at or
|
|
18
|
+
* below it, so fetching one would only make the CLI and Skyway disagree about what is
|
|
19
|
+
* pending. The git ref bounds the top of the range (only migrations at/below the target
|
|
20
|
+
* are in the tree). Selection uses the numeric `<timestamp>` filename token — Skyway's
|
|
21
|
+
* version key — via the shared {@link ParseMigrationFilename}.
|
|
18
22
|
*/
|
|
19
23
|
import { mkdtempSync } from 'node:fs';
|
|
20
24
|
import { rm } from 'node:fs/promises';
|
|
@@ -42,26 +46,28 @@ export function resolveGitRef(tagOrBranch) {
|
|
|
42
46
|
* Pure selector: given the repo-relative migration paths present at a ref, return
|
|
43
47
|
* the minimal slice Skyway needs. Repeatable migrations are always included.
|
|
44
48
|
*
|
|
45
|
-
* Two modes, keyed on `
|
|
46
|
-
*
|
|
49
|
+
* Two modes, keyed on `applied` (what the target database's history says, or `null`
|
|
50
|
+
* for a fresh database):
|
|
47
51
|
*
|
|
48
|
-
* - **Fresh install** (`
|
|
52
|
+
* - **Fresh install** (`applied` null, or a history table with nothing successfully
|
|
53
|
+
* applied yet — Skyway still baselines that database): `baseline + tail` — the highest `B`
|
|
49
54
|
* baseline plus every `V` after it. Skyway applies the baseline (consolidated schema)
|
|
50
55
|
* then the tail. This is the bandwidth-optimal path for a brand-new database.
|
|
51
|
-
* - **Existing-DB upgrade** (`
|
|
52
|
-
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
+
* - **Existing-DB upgrade** (`applied` set): every `V` whose version is not in
|
|
57
|
+
* `applied.AppliedVersions` and is strictly above `applied.BaselineFloor`, with **no
|
|
58
|
+
* baseline**. Skyway never applies a `B` file to a database that already has history.
|
|
59
|
+
* Files older than the highest applied version are still selected when they were never
|
|
60
|
+
* run (a database coming from a release line); the caller decides whether Skyway may
|
|
61
|
+
* apply them out of order.
|
|
56
62
|
*
|
|
57
63
|
* With no baseline present (e.g. legacy v2) the fresh path returns the full versioned history.
|
|
58
64
|
*/
|
|
59
|
-
export function SelectMigrationSlice(paths,
|
|
65
|
+
export function SelectMigrationSlice(paths, applied) {
|
|
60
66
|
const sqlPaths = paths.filter((p) => p.toLowerCase().endsWith('.sql'));
|
|
61
67
|
const repeatables = sqlPaths.filter((p) => REPEATABLE_PATTERN.test(path.basename(p)));
|
|
62
|
-
if (
|
|
63
|
-
// Existing DB:
|
|
64
|
-
const versioned = sqlPaths.filter((p) =>
|
|
68
|
+
if (applied != null && applied.AppliedVersions.size > 0) {
|
|
69
|
+
// Existing DB: every versioned migration it has not applied, above its baseline floor.
|
|
70
|
+
const versioned = sqlPaths.filter((p) => isUnappliedAboveFloor(p, applied));
|
|
65
71
|
return Array.from(new Set([...versioned, ...repeatables]));
|
|
66
72
|
}
|
|
67
73
|
// Fresh DB: baseline + everything after it.
|
|
@@ -70,13 +76,17 @@ export function SelectMigrationSlice(paths, currentVersion) {
|
|
|
70
76
|
return Array.from(new Set([...versioned, ...repeatables]));
|
|
71
77
|
}
|
|
72
78
|
/** @deprecated Use {@link SelectMigrationSlice}. */
|
|
73
|
-
export function selectMigrationSlice(paths,
|
|
74
|
-
return SelectMigrationSlice(paths,
|
|
79
|
+
export function selectMigrationSlice(paths, applied) {
|
|
80
|
+
return SelectMigrationSlice(paths, applied);
|
|
75
81
|
}
|
|
76
|
-
/** True if `filePath` is a versioned (`V`) migration
|
|
77
|
-
function
|
|
82
|
+
/** True if `filePath` is a versioned (`V`) migration the database has not applied and that lies above its baseline floor. */
|
|
83
|
+
function isUnappliedAboveFloor(filePath, applied) {
|
|
78
84
|
const parsed = ParseMigrationFilename(path.basename(filePath));
|
|
79
|
-
|
|
85
|
+
if (parsed?.Kind !== 'V')
|
|
86
|
+
return false;
|
|
87
|
+
if (applied.AppliedVersions.has(parsed.Timestamp))
|
|
88
|
+
return false;
|
|
89
|
+
return applied.BaselineFloor === null || parsed.Timestamp > applied.BaselineFloor;
|
|
80
90
|
}
|
|
81
91
|
/** Returns the timestamp of the latest `B` baseline among the paths, or null if none. */
|
|
82
92
|
function highestBaselineTimestamp(sqlPaths) {
|
|
@@ -123,7 +133,7 @@ export async function FetchMigrationSlice(opts) {
|
|
|
123
133
|
return { Dir: dir, Selected: [], UsedFallback: true, Cleanup: cleanup };
|
|
124
134
|
}
|
|
125
135
|
const allPaths = await listTreePaths(git, migrationsRoot);
|
|
126
|
-
const selected = SelectMigrationSlice(allPaths, opts.
|
|
136
|
+
const selected = SelectMigrationSlice(allPaths, opts.applied);
|
|
127
137
|
const checkoutTargets = selected.length > 0 ? selected : [migrationsRoot];
|
|
128
138
|
await git.raw(['sparse-checkout', 'set', '--no-cone', ...checkoutTargets]);
|
|
129
139
|
await git.raw(['checkout']);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration-fetch.js","sourceRoot":"","sources":["../../src/lib/migration-fetch.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"migration-fetch.js","sourceRoot":"","sources":["../../src/lib/migration-fetch.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default per-request timeout for `mj migrate` (30 minutes). Skyway's own default
|
|
3
|
+
* is 5 minutes, which at least one baseline batch exceeds (#3168). Override with
|
|
4
|
+
* `MJ_MIGRATION_REQUEST_TIMEOUT` (milliseconds) or `dbRequestTimeout` in mj.config.cjs.
|
|
5
|
+
*/
|
|
6
|
+
export declare const DEFAULT_MIGRATION_REQUEST_TIMEOUT_MS = 1800000;
|
|
7
|
+
/**
|
|
8
|
+
* Returns a hint naming `MJ_MIGRATION_REQUEST_TIMEOUT` when any of the given error
|
|
9
|
+
* texts is a request timeout, otherwise `undefined`.
|
|
10
|
+
*
|
|
11
|
+
* @param texts - Error messages and log lines from the failed migration run.
|
|
12
|
+
* @param currentTimeoutMs - The request timeout the run used.
|
|
13
|
+
*/
|
|
14
|
+
export declare function MigrationTimeoutHint(texts: ReadonlyArray<string | undefined>, currentTimeoutMs: number): string | undefined;
|
|
15
|
+
//# sourceMappingURL=migration-timeout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migration-timeout.d.ts","sourceRoot":"","sources":["../../src/lib/migration-timeout.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,oCAAoC,UAAY,CAAC;AAK9D;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,gBAAgB,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAO3H"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default per-request timeout for `mj migrate` (30 minutes). Skyway's own default
|
|
3
|
+
* is 5 minutes, which at least one baseline batch exceeds (#3168). Override with
|
|
4
|
+
* `MJ_MIGRATION_REQUEST_TIMEOUT` (milliseconds) or `dbRequestTimeout` in mj.config.cjs.
|
|
5
|
+
*/
|
|
6
|
+
export const DEFAULT_MIGRATION_REQUEST_TIMEOUT_MS = 1_800_000;
|
|
7
|
+
/** Messages the SQL Server driver produces when a request runs past its timeout. */
|
|
8
|
+
const TIMEOUT_PATTERN = /Request failed to complete in \d+ms|Failed to cancel request in \d+ms|ETIMEOUT/i;
|
|
9
|
+
/**
|
|
10
|
+
* Returns a hint naming `MJ_MIGRATION_REQUEST_TIMEOUT` when any of the given error
|
|
11
|
+
* texts is a request timeout, otherwise `undefined`.
|
|
12
|
+
*
|
|
13
|
+
* @param texts - Error messages and log lines from the failed migration run.
|
|
14
|
+
* @param currentTimeoutMs - The request timeout the run used.
|
|
15
|
+
*/
|
|
16
|
+
export function MigrationTimeoutHint(texts, currentTimeoutMs) {
|
|
17
|
+
if (!texts.some((t) => t !== undefined && TIMEOUT_PATTERN.test(t)))
|
|
18
|
+
return undefined;
|
|
19
|
+
return (`A migration request timed out (limit ${currentTimeoutMs}ms). ` +
|
|
20
|
+
'Raise the limit with MJ_MIGRATION_REQUEST_TIMEOUT=<milliseconds> (or dbRequestTimeout in mj.config.cjs) and re-run. ' +
|
|
21
|
+
'On SQL Server a timed-out batch can leave the database partly migrated; check the history table before retrying.');
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=migration-timeout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migration-timeout.js","sourceRoot":"","sources":["../../src/lib/migration-timeout.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAG,SAAS,CAAC;AAE9D,oFAAoF;AACpF,MAAM,eAAe,GAAG,iFAAiF,CAAC;AAE1G;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAwC,EAAE,gBAAwB;IACnG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACrF,OAAO,CACH,wCAAwC,gBAAgB,OAAO;QAC/D,sHAAsH;QACtH,kHAAkH,CACrH,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module lib/out-of-order
|
|
3
|
+
*
|
|
4
|
+
* Decides whether `mj migrate` lets Skyway apply versioned migrations older than the
|
|
5
|
+
* database's highest applied version.
|
|
6
|
+
*
|
|
7
|
+
* Release lines make this a normal upgrade case: a fix backported to a patch line ships
|
|
8
|
+
* byte-identical (same timestamp) on both lines, so a database upgraded from that line
|
|
9
|
+
* has applied files that are newer than migrations it has never run. With `outOfOrder`
|
|
10
|
+
* off, Skyway marks those older files IGNORED and refuses the whole run.
|
|
11
|
+
*
|
|
12
|
+
* Policy:
|
|
13
|
+
* - `outOfOrder` set explicitly in the config file: honoured as written.
|
|
14
|
+
* - Not set, and the run targets the core schema: enabled for this run when Skyway
|
|
15
|
+
* reports pending files older than the highest applied version; each one is logged.
|
|
16
|
+
* - Not set, any other schema (Open Apps): left off, as before.
|
|
17
|
+
*
|
|
18
|
+
* Files at or below a baseline row in history are never affected: Skyway reports them
|
|
19
|
+
* as ABOVE_BASELINE before it considers `outOfOrder`.
|
|
20
|
+
*/
|
|
21
|
+
import type { MigrationStatus } from '@memberjunction/skyway-core';
|
|
22
|
+
/** Inputs to {@link DecideOutOfOrder}. */
|
|
23
|
+
export interface OutOfOrderInputs {
|
|
24
|
+
/** The `outOfOrder` value written in the config file, or undefined when it is not set. */
|
|
25
|
+
ExplicitSetting: boolean | undefined;
|
|
26
|
+
/** True when the run targets the core schema (`coreSchema`, normally `__mj`). */
|
|
27
|
+
IsCoreSchema: boolean;
|
|
28
|
+
/** Pending versioned migrations older than the highest applied version (see {@link FindOutOfOrderPending}). */
|
|
29
|
+
OutOfOrderPending: readonly MigrationStatus[];
|
|
30
|
+
}
|
|
31
|
+
/** Result of {@link DecideOutOfOrder}. */
|
|
32
|
+
export interface OutOfOrderDecision {
|
|
33
|
+
/** Value to hand Skyway as `Migrations.OutOfOrder` for this run. */
|
|
34
|
+
OutOfOrder: boolean;
|
|
35
|
+
/** True when the CLI turned `outOfOrder` on for this run (it was not set in config). */
|
|
36
|
+
EnabledAutomatically: boolean;
|
|
37
|
+
/** True when out-of-order files exist but the config explicitly sets `outOfOrder: false`. */
|
|
38
|
+
BlockedByExplicitSetting: boolean;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Reads `outOfOrder` from the raw (pre-Zod) config. The CLI's built-in defaults do not
|
|
42
|
+
* include the key and the schema default is applied only at parse time, so the key is
|
|
43
|
+
* present in the raw config only when the user's config file sets it.
|
|
44
|
+
*/
|
|
45
|
+
export declare function ReadExplicitOutOfOrder(rawConfig: Record<string, unknown> | undefined): boolean | undefined;
|
|
46
|
+
/**
|
|
47
|
+
* Pure: picks the versioned migrations Skyway would refuse as out of order. Skyway marks a
|
|
48
|
+
* versioned file IGNORED only when it is unapplied, above any baseline floor, below the
|
|
49
|
+
* highest applied version, and `outOfOrder` is off — exactly the files this run would skip.
|
|
50
|
+
*/
|
|
51
|
+
export declare function FindOutOfOrderPending(statusReport: readonly MigrationStatus[]): MigrationStatus[];
|
|
52
|
+
/** Pure: applies the policy described in the module header. */
|
|
53
|
+
export declare function DecideOutOfOrder(inputs: OutOfOrderInputs): OutOfOrderDecision;
|
|
54
|
+
/** True when the probe for out-of-order files is worth running (it costs one history read). */
|
|
55
|
+
export declare function ShouldProbeOutOfOrder(explicitSetting: boolean | undefined, isCoreSchema: boolean): boolean;
|
|
56
|
+
//# sourceMappingURL=out-of-order.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"out-of-order.d.ts","sourceRoot":"","sources":["../../src/lib/out-of-order.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEnE,0CAA0C;AAC1C,MAAM,WAAW,gBAAgB;IAC/B,0FAA0F;IAC1F,eAAe,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,iFAAiF;IACjF,YAAY,EAAE,OAAO,CAAC;IACtB,+GAA+G;IAC/G,iBAAiB,EAAE,SAAS,eAAe,EAAE,CAAC;CAC/C;AAED,0CAA0C;AAC1C,MAAM,WAAW,kBAAkB;IACjC,oEAAoE;IACpE,UAAU,EAAE,OAAO,CAAC;IACpB,wFAAwF;IACxF,oBAAoB,EAAE,OAAO,CAAC;IAC9B,6FAA6F;IAC7F,wBAAwB,EAAE,OAAO,CAAC;CACnC;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAG1G;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,SAAS,eAAe,EAAE,GAAG,eAAe,EAAE,CAEjG;AAED,+DAA+D;AAC/D,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,kBAAkB,CAW7E;AAED,+FAA+F;AAC/F,wBAAgB,qBAAqB,CAAC,eAAe,EAAE,OAAO,GAAG,SAAS,EAAE,YAAY,EAAE,OAAO,GAAG,OAAO,CAI1G"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reads `outOfOrder` from the raw (pre-Zod) config. The CLI's built-in defaults do not
|
|
3
|
+
* include the key and the schema default is applied only at parse time, so the key is
|
|
4
|
+
* present in the raw config only when the user's config file sets it.
|
|
5
|
+
*/
|
|
6
|
+
export function ReadExplicitOutOfOrder(rawConfig) {
|
|
7
|
+
const value = rawConfig?.outOfOrder;
|
|
8
|
+
return typeof value === 'boolean' ? value : undefined;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Pure: picks the versioned migrations Skyway would refuse as out of order. Skyway marks a
|
|
12
|
+
* versioned file IGNORED only when it is unapplied, above any baseline floor, below the
|
|
13
|
+
* highest applied version, and `outOfOrder` is off — exactly the files this run would skip.
|
|
14
|
+
*/
|
|
15
|
+
export function FindOutOfOrderPending(statusReport) {
|
|
16
|
+
return statusReport.filter((s) => s.Type === 'versioned' && s.State === 'IGNORED');
|
|
17
|
+
}
|
|
18
|
+
/** Pure: applies the policy described in the module header. */
|
|
19
|
+
export function DecideOutOfOrder(inputs) {
|
|
20
|
+
const hasOutOfOrder = inputs.OutOfOrderPending.length > 0;
|
|
21
|
+
if (inputs.ExplicitSetting !== undefined) {
|
|
22
|
+
return {
|
|
23
|
+
OutOfOrder: inputs.ExplicitSetting,
|
|
24
|
+
EnabledAutomatically: false,
|
|
25
|
+
BlockedByExplicitSetting: !inputs.ExplicitSetting && hasOutOfOrder,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
const enable = inputs.IsCoreSchema && hasOutOfOrder;
|
|
29
|
+
return { OutOfOrder: enable, EnabledAutomatically: enable, BlockedByExplicitSetting: false };
|
|
30
|
+
}
|
|
31
|
+
/** True when the probe for out-of-order files is worth running (it costs one history read). */
|
|
32
|
+
export function ShouldProbeOutOfOrder(explicitSetting, isCoreSchema) {
|
|
33
|
+
// An explicit `true` needs no probe, and a non-core run never auto-enables. An explicit
|
|
34
|
+
// `false` on the core schema is probed only to explain the refusal Skyway will report.
|
|
35
|
+
return explicitSetting !== true && isCoreSchema;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=out-of-order.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"out-of-order.js","sourceRoot":"","sources":["../../src/lib/out-of-order.ts"],"names":[],"mappings":"AA0CA;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,SAA8C;IACnF,MAAM,KAAK,GAAG,SAAS,EAAE,UAAU,CAAC;IACpC,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,YAAwC;IAC5E,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;AACrF,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,gBAAgB,CAAC,MAAwB;IACvD,MAAM,aAAa,GAAG,MAAM,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1D,IAAI,MAAM,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACzC,OAAO;YACL,UAAU,EAAE,MAAM,CAAC,eAAe;YAClC,oBAAoB,EAAE,KAAK;YAC3B,wBAAwB,EAAE,CAAC,MAAM,CAAC,eAAe,IAAI,aAAa;SACnE,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,IAAI,aAAa,CAAC;IACpD,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,wBAAwB,EAAE,KAAK,EAAE,CAAC;AAC/F,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,qBAAqB,CAAC,eAAoC,EAAE,YAAqB;IAC/F,wFAAwF;IACxF,uFAAuF;IACvF,OAAO,eAAe,KAAK,IAAI,IAAI,YAAY,CAAC;AAClD,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { QueryRefreshFilter, QueryRefreshRunReport } from '@memberjunction/core-entities-server';
|
|
2
|
+
/**
|
|
3
|
+
* The refresh filter the `mj query refresh` selector flags describe (oclif names them `id`, `name`,
|
|
4
|
+
* `category`, `entity`, `all`); empty when none is given.
|
|
5
|
+
*/
|
|
6
|
+
export declare function QueryRefreshFilterFromFlags(flags: {
|
|
7
|
+
id?: string[];
|
|
8
|
+
name?: string[];
|
|
9
|
+
category?: string;
|
|
10
|
+
entity?: string[];
|
|
11
|
+
all?: boolean;
|
|
12
|
+
}): QueryRefreshFilter;
|
|
13
|
+
/** Whether the run should exit non-zero: a query failed, or one the caller named could not be refreshed. */
|
|
14
|
+
export declare function QueryRefreshRunFailed(run: QueryRefreshRunReport): boolean;
|
|
15
|
+
/**
|
|
16
|
+
* How `mj query refresh` ends the process. The database provider can leave handles open after its
|
|
17
|
+
* pool is released (a PostgreSQL listener, engine timers), which would keep the CLI alive after the
|
|
18
|
+
* report is printed, so the command exits explicitly, like the other database commands.
|
|
19
|
+
*/
|
|
20
|
+
export declare const QueryRefreshExit: {
|
|
21
|
+
Exit(code: number): never;
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=query-refresh.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-refresh.d.ts","sourceRoot":"","sources":["../../src/lib/query-refresh.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAEtG;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,kBAAkB,CAQ9J;AAED,4GAA4G;AAC5G,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAEzE;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;eAChB,MAAM,GAAG,KAAK;CAG1B,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The refresh filter the `mj query refresh` selector flags describe (oclif names them `id`, `name`,
|
|
3
|
+
* `category`, `entity`, `all`); empty when none is given.
|
|
4
|
+
*/
|
|
5
|
+
export function QueryRefreshFilterFromFlags(flags) {
|
|
6
|
+
const filter = {};
|
|
7
|
+
if (flags.id?.length)
|
|
8
|
+
filter.QueryIDs = flags.id;
|
|
9
|
+
if (flags.name?.length)
|
|
10
|
+
filter.QueryNames = flags.name;
|
|
11
|
+
if (flags.category?.trim())
|
|
12
|
+
filter.CategoryPath = flags.category;
|
|
13
|
+
if (flags.entity?.length)
|
|
14
|
+
filter.EntityNames = flags.entity;
|
|
15
|
+
if (flags.all)
|
|
16
|
+
filter.All = true;
|
|
17
|
+
return filter;
|
|
18
|
+
}
|
|
19
|
+
/** Whether the run should exit non-zero: a query failed, or one the caller named could not be refreshed. */
|
|
20
|
+
export function QueryRefreshRunFailed(run) {
|
|
21
|
+
return run.Reports.some(r => r.Outcome === 'Failed' || r.Outcome === 'Unavailable');
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* How `mj query refresh` ends the process. The database provider can leave handles open after its
|
|
25
|
+
* pool is released (a PostgreSQL listener, engine timers), which would keep the CLI alive after the
|
|
26
|
+
* report is printed, so the command exits explicitly, like the other database commands.
|
|
27
|
+
*/
|
|
28
|
+
export const QueryRefreshExit = {
|
|
29
|
+
Exit(code) {
|
|
30
|
+
process.exit(code);
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=query-refresh.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-refresh.js","sourceRoot":"","sources":["../../src/lib/query-refresh.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CAAC,KAA8F;IACxI,MAAM,MAAM,GAAyE,EAAE,CAAC;IACxF,IAAI,KAAK,CAAC,EAAE,EAAE,MAAM;QAAE,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC;IACjD,IAAI,KAAK,CAAC,IAAI,EAAE,MAAM;QAAE,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC;IACvD,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE;QAAE,MAAM,CAAC,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC;IACjE,IAAI,KAAK,CAAC,MAAM,EAAE,MAAM;QAAE,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5D,IAAI,KAAK,CAAC,GAAG;QAAE,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC;IACjC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,4GAA4G;AAC5G,MAAM,UAAU,qBAAqB,CAAC,GAA0B;IAC9D,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,KAAK,aAAa,CAAC,CAAC;AACtF,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,IAAI,CAAC,IAAY;QACf,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"light-commands.d.ts","sourceRoot":"","sources":["../src/light-commands.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"light-commands.d.ts","sourceRoot":"","sources":["../src/light-commands.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,CA0J7C,CAAC"}
|