@ethlete/cli 2.1.0-next.12 → 2.1.0-next.15
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 +25 -0
- package/README.md +9 -2
- package/package.json +1 -1
- package/src/lib/config/local-config.d.ts +1 -1
- package/src/lib/update/agent-setup.d.ts +33 -0
- package/src/lib/update/agent-setup.js +124 -0
- package/src/lib/update/agent-setup.js.map +1 -0
- package/src/lib/update/ai.d.ts +18 -3
- package/src/lib/update/ai.js +131 -21
- package/src/lib/update/ai.js.map +1 -1
- package/src/lib/update/args.d.ts +2 -0
- package/src/lib/update/args.js +14 -1
- package/src/lib/update/args.js.map +1 -1
- package/src/lib/update/commits.d.ts +63 -0
- package/src/lib/update/commits.js +146 -0
- package/src/lib/update/commits.js.map +1 -0
- package/src/lib/update/gitignore.d.ts +6 -0
- package/src/lib/update/gitignore.js +8 -4
- package/src/lib/update/gitignore.js.map +1 -1
- package/src/lib/update/index.d.ts +1 -0
- package/src/lib/update/index.js +1 -0
- package/src/lib/update/index.js.map +1 -1
- package/src/lib/update/pending.d.ts +3 -0
- package/src/lib/update/pending.js +15 -4
- package/src/lib/update/pending.js.map +1 -1
- package/src/lib/update/registry.d.ts +4 -0
- package/src/lib/update/registry.js +10 -1
- package/src/lib/update/registry.js.map +1 -1
- package/src/lib/update/run-migrations.d.ts +1 -0
- package/src/lib/update/run-migrations.js +17 -11
- package/src/lib/update/run-migrations.js.map +1 -1
- package/src/lib/update/update-command.js +127 -34
- package/src/lib/update/update-command.js.map +1 -1
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/** Repo-relative paths git reports as changed or untracked, each with a hash of its content. */
|
|
2
|
+
export type DirtySnapshot = Record<string, string>;
|
|
3
|
+
/** What the commits of one update compare against. It lives in the pending update, so a `--continue` keeps it. */
|
|
4
|
+
export type CommitState = {
|
|
5
|
+
/** The paths that were dirty before the update wrote anything: the user's own work, never committed. */
|
|
6
|
+
baseline: DirtySnapshot;
|
|
7
|
+
/** The dirty paths after the last step, so the next step commits only what it changed. */
|
|
8
|
+
snapshot: DirtySnapshot;
|
|
9
|
+
bumped: boolean;
|
|
10
|
+
};
|
|
11
|
+
export type StepCommit = {
|
|
12
|
+
state: 'unchanged';
|
|
13
|
+
} | {
|
|
14
|
+
state: 'committed';
|
|
15
|
+
hash: string;
|
|
16
|
+
paths: string[];
|
|
17
|
+
} | {
|
|
18
|
+
state: 'blocked';
|
|
19
|
+
paths: string[];
|
|
20
|
+
} | {
|
|
21
|
+
state: 'failed';
|
|
22
|
+
reason: string;
|
|
23
|
+
paths: string[];
|
|
24
|
+
};
|
|
25
|
+
/** The paths of `git status --porcelain -z`, a rename's source included. */
|
|
26
|
+
export declare const parsePorcelain: (output: string) => string[];
|
|
27
|
+
/** The dirty paths of the checkout `root` sits in, or `undefined` outside a git checkout. */
|
|
28
|
+
export declare const dirtySnapshot: (root: string) => DirtySnapshot | undefined;
|
|
29
|
+
/** The commit state of an update that starts now, or `undefined` outside a git checkout. */
|
|
30
|
+
export declare const startCommits: (root: string) => CommitState | undefined;
|
|
31
|
+
/**
|
|
32
|
+
* Commits what one step changed since the last one, and nothing else. A step that touched a path the user
|
|
33
|
+
* had changed before the update is not committed at all, so their work never lands in an update commit.
|
|
34
|
+
*/
|
|
35
|
+
export declare const commitStep: (options: {
|
|
36
|
+
root: string;
|
|
37
|
+
state: CommitState;
|
|
38
|
+
message: string;
|
|
39
|
+
body?: string;
|
|
40
|
+
}) => {
|
|
41
|
+
state: CommitState;
|
|
42
|
+
commit: StepCommit;
|
|
43
|
+
};
|
|
44
|
+
/** Moves the snapshot past a step that is not committed, so the next step does not pick up what it left. */
|
|
45
|
+
export declare const skipStep: (options: {
|
|
46
|
+
root: string;
|
|
47
|
+
state: CommitState;
|
|
48
|
+
}) => CommitState;
|
|
49
|
+
export type StepCommitter = {
|
|
50
|
+
readonly state: CommitState;
|
|
51
|
+
commit: (step: {
|
|
52
|
+
message: string;
|
|
53
|
+
body?: string;
|
|
54
|
+
}) => StepCommit;
|
|
55
|
+
skip: () => void;
|
|
56
|
+
markBumped: () => void;
|
|
57
|
+
};
|
|
58
|
+
/** Commits the steps of one update in order, and hands every new state to `save`. */
|
|
59
|
+
export declare const createStepCommitter: (options: {
|
|
60
|
+
root: string;
|
|
61
|
+
state: CommitState;
|
|
62
|
+
save: (state: CommitState) => void;
|
|
63
|
+
}) => StepCommitter;
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createStepCommitter = exports.skipStep = exports.commitStep = exports.startCommits = exports.dirtySnapshot = exports.parsePorcelain = void 0;
|
|
4
|
+
const child_process_1 = require("child_process");
|
|
5
|
+
const crypto_1 = require("crypto");
|
|
6
|
+
const fs_1 = require("fs");
|
|
7
|
+
const path_1 = require("path");
|
|
8
|
+
const tasks_1 = require("./tasks");
|
|
9
|
+
const git = (cwd, args) => {
|
|
10
|
+
var _a, _b, _c, _d, _e;
|
|
11
|
+
const result = (0, child_process_1.spawnSync)('git', args, { cwd, encoding: 'utf8' });
|
|
12
|
+
return {
|
|
13
|
+
status: result.error ? 1 : ((_a = result.status) !== null && _a !== void 0 ? _a : 1),
|
|
14
|
+
stdout: (_b = result.stdout) !== null && _b !== void 0 ? _b : '',
|
|
15
|
+
stderr: ((_c = result.stderr) !== null && _c !== void 0 ? _c : '').trim() || ((_e = (_d = result.error) === null || _d === void 0 ? void 0 : _d.message) !== null && _e !== void 0 ? _e : ''),
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
const contentHash = (path) => {
|
|
19
|
+
try {
|
|
20
|
+
return (0, crypto_1.createHash)('sha1').update((0, fs_1.readFileSync)(path)).digest('hex');
|
|
21
|
+
}
|
|
22
|
+
catch (_a) {
|
|
23
|
+
return 'missing';
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
const topLevel = (root) => {
|
|
27
|
+
const result = git(root, ['rev-parse', '--show-toplevel']);
|
|
28
|
+
const top = result.stdout.trim();
|
|
29
|
+
return result.status === 0 && top.length > 0 ? top : undefined;
|
|
30
|
+
};
|
|
31
|
+
/** The paths of `git status --porcelain -z`, a rename's source included. */
|
|
32
|
+
const parsePorcelain = (output) => {
|
|
33
|
+
var _a;
|
|
34
|
+
const entries = output.split('\0').filter((entry) => entry.length > 0);
|
|
35
|
+
const paths = [];
|
|
36
|
+
for (let index = 0; index < entries.length; index += 1) {
|
|
37
|
+
const entry = (_a = entries[index]) !== null && _a !== void 0 ? _a : '';
|
|
38
|
+
const status = entry.slice(0, 2);
|
|
39
|
+
paths.push(entry.slice(3));
|
|
40
|
+
if (status.includes('R') || status.includes('C')) {
|
|
41
|
+
const source = entries[index + 1];
|
|
42
|
+
if (source !== undefined)
|
|
43
|
+
paths.push(source);
|
|
44
|
+
index += 1;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return paths;
|
|
48
|
+
};
|
|
49
|
+
exports.parsePorcelain = parsePorcelain;
|
|
50
|
+
const updateDirPrefix = (options) => {
|
|
51
|
+
const fromTop = (0, path_1.relative)(options.top, (0, fs_1.realpathSync)(options.root)).split(path_1.sep).join('/');
|
|
52
|
+
return fromTop.length === 0 ? `${tasks_1.UPDATE_DIR}/` : `${fromTop}/${tasks_1.UPDATE_DIR}/`;
|
|
53
|
+
};
|
|
54
|
+
/** The dirty paths of the checkout `root` sits in, or `undefined` outside a git checkout. */
|
|
55
|
+
const dirtySnapshot = (root) => {
|
|
56
|
+
const top = topLevel(root);
|
|
57
|
+
if (top === undefined)
|
|
58
|
+
return undefined;
|
|
59
|
+
const status = git(top, ['status', '--porcelain', '-z', '--untracked-files=all']);
|
|
60
|
+
if (status.status !== 0)
|
|
61
|
+
return undefined;
|
|
62
|
+
const ignored = updateDirPrefix({ root, top });
|
|
63
|
+
return Object.fromEntries((0, exports.parsePorcelain)(status.stdout)
|
|
64
|
+
.filter((path) => !path.startsWith(ignored))
|
|
65
|
+
.map((path) => [path, contentHash((0, path_1.join)(top, path))]));
|
|
66
|
+
};
|
|
67
|
+
exports.dirtySnapshot = dirtySnapshot;
|
|
68
|
+
/** The commit state of an update that starts now, or `undefined` outside a git checkout. */
|
|
69
|
+
const startCommits = (root) => {
|
|
70
|
+
const snapshot = (0, exports.dirtySnapshot)(root);
|
|
71
|
+
return snapshot === undefined ? undefined : { baseline: snapshot, snapshot, bumped: false };
|
|
72
|
+
};
|
|
73
|
+
exports.startCommits = startCommits;
|
|
74
|
+
const changedSince = (options) => Object.keys(options.now).filter((path) => options.before[path] !== options.now[path]);
|
|
75
|
+
/**
|
|
76
|
+
* Commits what one step changed since the last one, and nothing else. A step that touched a path the user
|
|
77
|
+
* had changed before the update is not committed at all, so their work never lands in an update commit.
|
|
78
|
+
*/
|
|
79
|
+
const commitStep = (options) => {
|
|
80
|
+
const { root, state, message, body } = options;
|
|
81
|
+
const now = (0, exports.dirtySnapshot)(root);
|
|
82
|
+
const top = topLevel(root);
|
|
83
|
+
if (now === undefined || top === undefined) {
|
|
84
|
+
return { state, commit: { state: 'failed', reason: 'git status failed', paths: [] } };
|
|
85
|
+
}
|
|
86
|
+
const paths = changedSince({ before: state.snapshot, now });
|
|
87
|
+
const settle = (commit) => { var _a; return ({ state: Object.assign(Object.assign({}, state), { snapshot: (_a = (0, exports.dirtySnapshot)(root)) !== null && _a !== void 0 ? _a : now }), commit }); };
|
|
88
|
+
if (paths.length === 0)
|
|
89
|
+
return settle({ state: 'unchanged' });
|
|
90
|
+
const blocked = paths.filter((path) => path in state.baseline);
|
|
91
|
+
if (blocked.length > 0)
|
|
92
|
+
return settle({ state: 'blocked', paths: blocked });
|
|
93
|
+
const added = git(top, ['add', '--', ...paths]);
|
|
94
|
+
if (added.status !== 0)
|
|
95
|
+
return settle({ state: 'failed', reason: added.stderr, paths });
|
|
96
|
+
const committed = git(top, ['commit', '-m', message, ...(body === undefined ? [] : ['-m', body]), '--', ...paths]);
|
|
97
|
+
if (committed.status !== 0) {
|
|
98
|
+
const reason = committed.stderr || committed.stdout.trim() || `git commit exited with ${committed.status}`;
|
|
99
|
+
git(top, ['reset', '--quiet', '--', ...paths]);
|
|
100
|
+
return settle({ state: 'failed', reason, paths });
|
|
101
|
+
}
|
|
102
|
+
return settle({ state: 'committed', hash: git(top, ['rev-parse', '--short', 'HEAD']).stdout.trim(), paths });
|
|
103
|
+
};
|
|
104
|
+
exports.commitStep = commitStep;
|
|
105
|
+
/** Moves the snapshot past a step that is not committed, so the next step does not pick up what it left. */
|
|
106
|
+
const skipStep = (options) => {
|
|
107
|
+
var _a;
|
|
108
|
+
return (Object.assign(Object.assign({}, options.state), { snapshot: (_a = (0, exports.dirtySnapshot)(options.root)) !== null && _a !== void 0 ? _a : options.state.snapshot }));
|
|
109
|
+
};
|
|
110
|
+
exports.skipStep = skipStep;
|
|
111
|
+
const printCommit = (options) => {
|
|
112
|
+
const { message, commit } = options;
|
|
113
|
+
if (commit.state === 'committed')
|
|
114
|
+
console.log(`\n Committed ${commit.hash}: ${message}`);
|
|
115
|
+
if (commit.state === 'blocked') {
|
|
116
|
+
console.error(`\n Not committed: ${commit.paths.join(', ')} had uncommitted changes before the update. ` +
|
|
117
|
+
`Commit "${message}" yourself.`);
|
|
118
|
+
}
|
|
119
|
+
if (commit.state === 'failed') {
|
|
120
|
+
console.error(`\n The commit "${message}" failed, so its changes stay in the working tree:\n${commit.reason}`);
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
/** Commits the steps of one update in order, and hands every new state to `save`. */
|
|
124
|
+
const createStepCommitter = (options) => {
|
|
125
|
+
const { root, save } = options;
|
|
126
|
+
let state = options.state;
|
|
127
|
+
const update = (next) => {
|
|
128
|
+
state = next;
|
|
129
|
+
save(state);
|
|
130
|
+
};
|
|
131
|
+
return {
|
|
132
|
+
get state() {
|
|
133
|
+
return state;
|
|
134
|
+
},
|
|
135
|
+
commit: (step) => {
|
|
136
|
+
const result = (0, exports.commitStep)(Object.assign({ root, state }, step));
|
|
137
|
+
update(result.state);
|
|
138
|
+
printCommit({ message: step.message, commit: result.commit });
|
|
139
|
+
return result.commit;
|
|
140
|
+
},
|
|
141
|
+
skip: () => update((0, exports.skipStep)({ root, state })),
|
|
142
|
+
markBumped: () => update(Object.assign(Object.assign({}, state), { bumped: true })),
|
|
143
|
+
};
|
|
144
|
+
};
|
|
145
|
+
exports.createStepCommitter = createStepCommitter;
|
|
146
|
+
//# sourceMappingURL=commits.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commits.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/lib/update/commits.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,8 @@
|
|
|
1
1
|
export declare const UPDATE_IGNORE_ENTRY = ".ethlete/update/";
|
|
2
|
+
/** Appends `entry` to `.gitignore` unless git ignores `probe` already. True when it wrote the line. */
|
|
3
|
+
export declare const ignoreEntry: (options: {
|
|
4
|
+
root: string;
|
|
5
|
+
entry: string;
|
|
6
|
+
probe?: string;
|
|
7
|
+
}) => boolean;
|
|
2
8
|
export declare const ignoreUpdateDir: (root: string) => boolean;
|
|
@@ -1,18 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ignoreUpdateDir = exports.UPDATE_IGNORE_ENTRY = void 0;
|
|
3
|
+
exports.ignoreUpdateDir = exports.ignoreEntry = exports.UPDATE_IGNORE_ENTRY = void 0;
|
|
4
4
|
const fs_1 = require("fs");
|
|
5
5
|
const path_1 = require("path");
|
|
6
6
|
const git_1 = require("../api/git");
|
|
7
7
|
exports.UPDATE_IGNORE_ENTRY = '.ethlete/update/';
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
/** Appends `entry` to `.gitignore` unless git ignores `probe` already. True when it wrote the line. */
|
|
9
|
+
const ignoreEntry = (options) => {
|
|
10
|
+
const { root, entry, probe = entry } = options;
|
|
11
|
+
if ((0, git_1.ignoredByGit)(root, probe) !== false)
|
|
10
12
|
return false;
|
|
11
13
|
const path = (0, path_1.join)(root, '.gitignore');
|
|
12
14
|
const current = (0, fs_1.existsSync)(path) ? (0, fs_1.readFileSync)(path, 'utf8') : '';
|
|
13
15
|
const separator = current.length === 0 || current.endsWith('\n') ? '' : '\n';
|
|
14
|
-
(0, fs_1.writeFileSync)(path, `${current}${separator}${
|
|
16
|
+
(0, fs_1.writeFileSync)(path, `${current}${separator}${entry}\n`, 'utf8');
|
|
15
17
|
return true;
|
|
16
18
|
};
|
|
19
|
+
exports.ignoreEntry = ignoreEntry;
|
|
20
|
+
const ignoreUpdateDir = (root) => (0, exports.ignoreEntry)({ root, entry: exports.UPDATE_IGNORE_ENTRY, probe: `${exports.UPDATE_IGNORE_ENTRY}pending.json` });
|
|
17
21
|
exports.ignoreUpdateDir = ignoreUpdateDir;
|
|
18
22
|
//# sourceMappingURL=gitignore.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitignore.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/lib/update/gitignore.ts"],"names":[],"mappings":";;;AAAA,2BAA6D;AAC7D,+BAA4B;AAC5B,oCAA0C;AAE7B,QAAA,mBAAmB,GAAG,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"gitignore.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/lib/update/gitignore.ts"],"names":[],"mappings":";;;AAAA,2BAA6D;AAC7D,+BAA4B;AAC5B,oCAA0C;AAE7B,QAAA,mBAAmB,GAAG,kBAAkB,CAAC;AAEtD,uGAAuG;AAChG,MAAM,WAAW,GAAG,CAAC,OAAwD,EAAE,EAAE;IACtF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IAE/C,IAAI,IAAA,kBAAY,EAAC,IAAI,EAAE,KAAK,CAAC,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IAEtD,MAAM,IAAI,GAAG,IAAA,WAAI,EAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,IAAA,eAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAE7E,IAAA,kBAAa,EAAC,IAAI,EAAE,GAAG,OAAO,GAAG,SAAS,GAAG,KAAK,IAAI,EAAE,MAAM,CAAC,CAAC;IAEhE,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAZW,QAAA,WAAW,eAYtB;AAEK,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,EAAE,CAC9C,IAAA,mBAAW,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,2BAAmB,EAAE,KAAK,EAAE,GAAG,2BAAmB,cAAc,EAAE,CAAC,CAAC;AADpF,QAAA,eAAe,mBACqE"}
|
package/src/lib/update/index.js
CHANGED
|
@@ -4,6 +4,7 @@ const tslib_1 = require("tslib");
|
|
|
4
4
|
tslib_1.__exportStar(require("./agent-rules-sync"), exports);
|
|
5
5
|
tslib_1.__exportStar(require("./ai"), exports);
|
|
6
6
|
tslib_1.__exportStar(require("./args"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./commits"), exports);
|
|
7
8
|
tslib_1.__exportStar(require("./migration-manifest"), exports);
|
|
8
9
|
tslib_1.__exportStar(require("./package-manager"), exports);
|
|
9
10
|
tslib_1.__exportStar(require("./packages"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/lib/update/index.ts"],"names":[],"mappings":";;;AAAA,6DAAmC;AACnC,+CAAqB;AACrB,iDAAuB;AACvB,+DAAqC;AACrC,4DAAkC;AAClC,qDAA2B;AAC3B,oDAA0B;AAC1B,iDAAuB;AACvB,qDAA2B;AAC3B,2DAAiC;AACjC,mDAAyB;AACzB,kDAAwB;AACxB,2DAAiC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/lib/update/index.ts"],"names":[],"mappings":";;;AAAA,6DAAmC;AACnC,+CAAqB;AACrB,iDAAuB;AACvB,oDAA0B;AAC1B,+DAAqC;AACrC,4DAAkC;AAClC,qDAA2B;AAC3B,oDAA0B;AAC1B,iDAAuB;AACvB,qDAA2B;AAC3B,2DAAiC;AACjC,mDAAyB;AACzB,kDAAwB;AACxB,2DAAiC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { CommitState } from './commits';
|
|
1
2
|
export declare const PENDING_FILE: string;
|
|
2
3
|
export type PendingPackage = {
|
|
3
4
|
name: string;
|
|
@@ -16,6 +17,8 @@ export type PendingUpdate = {
|
|
|
16
17
|
finished?: FinishedMigration[];
|
|
17
18
|
/** The `--from` versions of the run, so `--continue` migrates from the same place. */
|
|
18
19
|
from?: Record<string, string>;
|
|
20
|
+
/** Absent when the run commits nothing: `--no-commit`, or no git checkout. */
|
|
21
|
+
commits?: CommitState;
|
|
19
22
|
};
|
|
20
23
|
/**
|
|
21
24
|
* Records what an update moved, before the install replaces the versions the migrations run from. An
|
|
@@ -16,6 +16,18 @@ const writePendingUpdate = (options) => {
|
|
|
16
16
|
(0, fs_1.writeFileSync)((0, path_1.join)(root, exports.PENDING_FILE), `${JSON.stringify(pending, null, 2)}\n`, 'utf8');
|
|
17
17
|
};
|
|
18
18
|
exports.writePendingUpdate = writePendingUpdate;
|
|
19
|
+
const readStringRecord = (value) => isRecord(value)
|
|
20
|
+
? Object.fromEntries(Object.entries(value).filter((entry) => typeof entry[1] === 'string'))
|
|
21
|
+
: undefined;
|
|
22
|
+
const readCommits = (value) => {
|
|
23
|
+
if (!isRecord(value))
|
|
24
|
+
return undefined;
|
|
25
|
+
const baseline = readStringRecord(value['baseline']);
|
|
26
|
+
const snapshot = readStringRecord(value['snapshot']);
|
|
27
|
+
if (!baseline || !snapshot)
|
|
28
|
+
return undefined;
|
|
29
|
+
return { baseline, snapshot, bumped: value['bumped'] === true };
|
|
30
|
+
};
|
|
19
31
|
const readPendingUpdate = (root) => {
|
|
20
32
|
const path = (0, path_1.join)(root, exports.PENDING_FILE);
|
|
21
33
|
if (!(0, fs_1.existsSync)(path))
|
|
@@ -33,10 +45,9 @@ const readPendingUpdate = (root) => {
|
|
|
33
45
|
const finished = Array.isArray(parsed['finished'])
|
|
34
46
|
? parsed['finished'].filter((entry) => isRecord(entry) && typeof entry['packageName'] === 'string' && typeof entry['name'] === 'string')
|
|
35
47
|
: [];
|
|
36
|
-
const from =
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
return Object.assign({ startedAt: typeof parsed['startedAt'] === 'string' ? parsed['startedAt'] : 'an earlier run', packages: packages.map((entry) => { var _a; return ({ name: entry.name, from: (_a = entry.from) !== null && _a !== void 0 ? _a : null, to: entry.to }); }), finished: finished.map((entry) => ({ packageName: entry.packageName, name: entry.name })) }, (from ? { from } : {}));
|
|
48
|
+
const from = readStringRecord(parsed['from']);
|
|
49
|
+
const commits = readCommits(parsed['commits']);
|
|
50
|
+
return Object.assign(Object.assign({ startedAt: typeof parsed['startedAt'] === 'string' ? parsed['startedAt'] : 'an earlier run', packages: packages.map((entry) => { var _a; return ({ name: entry.name, from: (_a = entry.from) !== null && _a !== void 0 ? _a : null, to: entry.to }); }), finished: finished.map((entry) => ({ packageName: entry.packageName, name: entry.name })) }, (from ? { from } : {})), (commits ? { commits } : {}));
|
|
40
51
|
};
|
|
41
52
|
exports.readPendingUpdate = readPendingUpdate;
|
|
42
53
|
const isFinished = (options) => options.finished.some((entry) => entry.packageName === options.packageName && entry.name === options.name);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pending.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/lib/update/pending.ts"],"names":[],"mappings":";;;AAAA,2BAAgF;AAChF,+BAA4B;
|
|
1
|
+
{"version":3,"file":"pending.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/lib/update/pending.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,6 +47,10 @@ export declare const fetchRegistryPackage: (options: {
|
|
|
47
47
|
* Which dist tag an update follows when the caller names none: the one the installed prerelease belongs
|
|
48
48
|
* to, so a repo on `-next.46` stays on `next` instead of being pulled back to the stable line.
|
|
49
49
|
*/
|
|
50
|
+
/**
|
|
51
|
+
* The dist tag an update follows: for a prerelease, the tag holding the newest version of the same prerelease
|
|
52
|
+
* line, which is not always the tag named after it.
|
|
53
|
+
*/
|
|
50
54
|
export declare const tagForInstalled: (options: {
|
|
51
55
|
version?: string;
|
|
52
56
|
distTags: Record<string, string>;
|
|
@@ -160,10 +160,19 @@ exports.fetchRegistryPackage = fetchRegistryPackage;
|
|
|
160
160
|
* Which dist tag an update follows when the caller names none: the one the installed prerelease belongs
|
|
161
161
|
* to, so a repo on `-next.46` stays on `next` instead of being pulled back to the stable line.
|
|
162
162
|
*/
|
|
163
|
+
/**
|
|
164
|
+
* The dist tag an update follows: for a prerelease, the tag holding the newest version of the same prerelease
|
|
165
|
+
* line, which is not always the tag named after it.
|
|
166
|
+
*/
|
|
163
167
|
const tagForInstalled = (options) => {
|
|
164
168
|
const { version, distTags } = options;
|
|
165
169
|
const tag = version ? (0, semver_1.prereleaseTag)(version) : undefined;
|
|
166
|
-
|
|
170
|
+
if (tag === undefined || distTags[tag] === undefined)
|
|
171
|
+
return 'latest';
|
|
172
|
+
// changesets publishes a package with only prereleases to `latest`, and leaves the `next` tag behind.
|
|
173
|
+
return Object.entries(distTags)
|
|
174
|
+
.filter(([, tagged]) => (0, semver_1.prereleaseTag)(tagged) === tag)
|
|
175
|
+
.reduce((newest, [name, tagged]) => { var _a; return ((0, semver_1.compareVersions)(tagged, (_a = distTags[newest]) !== null && _a !== void 0 ? _a : tagged) > 0 ? name : newest); }, tag);
|
|
167
176
|
};
|
|
168
177
|
exports.tagForInstalled = tagForInstalled;
|
|
169
178
|
//# sourceMappingURL=registry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/lib/update/registry.ts"],"names":[],"mappings":";;;;AAAA,2BAA8C;AAC9C,2BAA6B;AAC7B,+BAA4B;AAE5B,
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/lib/update/registry.ts"],"names":[],"mappings":";;;;AAAA,2BAA8C;AAC9C,2BAA6B;AAC7B,+BAA4B;AAE5B,qCAA0D;AAE1D,MAAM,UAAU,GAAG,KAAM,CAAC;AAEb,QAAA,gBAAgB,GAAG,4BAA4B,CAAC;AAS7D,MAAM,KAAK,GAAG,UAAU,CAAC;AAIzB,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;AAEhF,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,IAAA,eAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAE/F,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,EAAE,CACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAErF,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,GAAsB,EAAE,EAAE,CAC1D,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAAE,IAAY,EAAE,EAAE,WAAC,OAAA,MAAA,GAAG,CAAC,IAAI,CAAC,mCAAI,EAAE,CAAA,EAAA,CAAC,CAAC;AAExE,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,GAAsB,EAAE,EAAE,CAC5D,WAAW,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;IACjC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEpC,IAAI,SAAS,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IAE7B,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;AAC/G,CAAC,CAAC,CAAC;AAEL,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,GAAsB,EAAkB,EAAE;IACzE,MAAM,MAAM,GAAmB,EAAE,CAAC;IAElC,KAAK,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,YAAY,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;QACrD,IAAI,GAAG,KAAK,GAAG,KAAK,WAAW;YAAE,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;QACvD,IAAI,GAAG,KAAK,UAAU;YAAE,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;IAClD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,IAAY,EAAkB,EAAE;IAClD,MAAM,MAAM,GAAmB,EAAE,CAAC;IAElC,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAErD,IAAI,CAAC,KAAK;YAAE,SAAS;QAErB,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAW,CAAC,CAAC;QACxC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAW,CAAC,CAAC;QAE1C,IAAI,GAAG,KAAK,GAAG,KAAK,WAAW;YAAE,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;QACvD,IAAI,GAAG,KAAK,UAAU;YAAE,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;IAClD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,IAAY,EAAkB,EAAE;;IACrD,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,MAAM,IAAI,GAAsC,EAAE,CAAC;IAEnD,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEvD,IAAI,CAAC,KAAK;YAAE,SAAS;QAErB,MAAM,MAAM,GAAI,KAAK,CAAC,CAAC,CAAY,CAAC,MAAM,CAAC;QAC3C,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAW,CAAC,CAAC;QACxC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAW,CAAC,CAAC;QAE1C,OAAO,CAAC,MAAA,MAAA,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,0CAAE,MAAM,mCAAI,CAAC,CAAC,CAAC,IAAI,MAAM;YAAE,IAAI,CAAC,GAAG,EAAE,CAAC;QAEnE,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEhE,IAAI,KAAK,KAAK,EAAE;YAAE,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;aACxC,IAAI,IAAI,KAAK,mBAAmB;YAAE,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;aAC1D,IAAI,IAAI,KAAK,aAAa,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAoB;YAAE,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;IAC3F,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAA,WAAI,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAE7D,6HAA6H;AAC7H,MAAM,qBAAqB,GAAG,CAAC,OAK9B,EAAkB,EAAE;;IACnB,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAC7C,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAA,WAAI,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IAChD,MAAM,OAAO,GAAmC,EAAE,CAAC;IAEnD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAA,WAAI,EAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC;QAElD,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;QAErD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAA,WAAI,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;QAEhD,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;IAE9E,OAAO;QACL,MAAM,EAAE,MAAA,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC,0CAAE,MAAM;QACxD,QAAQ,EAAE,MAAA,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,CAAC,0CAAE,QAAQ;KAC/D,CAAC;AACJ,CAAC,CAAC;AAEF;;;;GAIG;AACI,MAAM,WAAW,GAAG,CACzB,UAAmG,EAAE,EACrG,EAAE;;IACF,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,GAAG,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,GAAG,IAAA,YAAO,GAAE,EAAE,GAAG,OAAO,CAAC;IAC/F,MAAM,OAAO,GAAG,qBAAqB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;IAEpE,OAAO,CACL,MAAA,MAAA,MAAA,MAAA,OAAO,CAAC,MAAM,mCACd,GAAG,CAAC,cAAc,KAAK,WAAW,CAAC,mCACnC,OAAO,CAAC,QAAQ,mCAChB,GAAG,CAAC,qBAAqB,CAAC,mCAC1B,wBAAgB,CACjB,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACxB,CAAC,CAAC;AAbW,QAAA,WAAW,eAatB;AAEF;;;;GAIG;AACI,MAAM,qBAAqB,GAAG,CAAC,OAKrC,EAAE,EAAE;IACH,MAAM,EAAE,QAAQ,EAAE,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,GAAG,IAAA,YAAO,GAAE,EAAE,GAAG,OAAO,CAAC;IACxF,MAAM,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC;IAC3E,MAAM,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAA,WAAI,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAC/F,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,CAAC,CAClD,CAAC;IAEF,IAAI,IAAoD,CAAC;IAEzD,KAAK,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,OAAO,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,mCAAmC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,CAAC,CAAC,MAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;QAErE,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,SAAS;QACxE,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM;YAAE,SAAS;QAEnD,IAAI,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,EAAE,EAAE,CAAC;IAC7G,CAAC;IAED,OAAO,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC;AACtB,CAAC,CAAC;AAzBW,QAAA,qBAAqB,yBAyBhC;AAEK,MAAM,UAAU,GAAG,CAAC,OAAkD,EAAE,EAAE,CAC/E,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;AADtD,QAAA,UAAU,cAC4C;AAEnE,4FAA4F;AACrF,MAAM,oBAAoB,GAAG,CAAO,OAI1C,EAA2B,EAAE;IAC5B,MAAM,EAAE,WAAW,EAAE,QAAQ,GAAG,IAAA,mBAAW,GAAE,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAEzE,IAAI,QAAkB,CAAC;IAEvB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAA,kBAAU,EAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,EAAE;YAC5D,4FAA4F;YAC5F,OAAO,kBACL,MAAM,EAAE,qCAAqC,IAC1C,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAC3D;YACD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC;SACxC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IACvF,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,QAAQ,WAAW,WAAW,GAAG,EAAE,CAAC;IAEhG,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,QAAQ,aAAa,QAAQ,CAAC,MAAM,QAAQ,WAAW,GAAG,EAAE,CAAC;IAE9G,MAAM,IAAI,GAAY,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACnE,MAAM,MAAM,GAAG,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,CAAE,IAAgC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClG,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;IACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IAEpC,OAAO;QACL,EAAE,EAAE,IAAI;QACR,OAAO,EAAE;YACP,QAAQ,EAAE,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,CAAE,IAA+B,CAAC,CAAC,CAAC,EAAE;YAC3F,QAAQ,EAAE,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;SACzF;KACF,CAAC;AACJ,CAAC,CAAA,CAAC;AAtCW,QAAA,oBAAoB,wBAsC/B;AAEF;;;GAGG;AACH;;;GAGG;AACI,MAAM,eAAe,GAAG,CAAC,OAA+D,EAAE,EAAE;IACjG,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IACtC,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,IAAA,sBAAa,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEzD,IAAI,GAAG,KAAK,SAAS,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IAEtE,sGAAsG;IACtG,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;SAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,IAAA,sBAAa,EAAC,MAAM,CAAC,KAAK,GAAG,CAAC;SACrD,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,WAAC,OAAA,CAAC,IAAA,wBAAe,EAAC,MAAM,EAAE,MAAA,QAAQ,CAAC,MAAM,CAAC,mCAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA,EAAA,EAAE,GAAG,CAAC,CAAC;AACxH,CAAC,CAAC;AAVW,QAAA,eAAe,mBAU1B"}
|
|
@@ -52,20 +52,26 @@ exports.runInstall = runInstall;
|
|
|
52
52
|
/** The command a developer runs by hand when this repo has no Nx to run the generator with. */
|
|
53
53
|
const manualGeneratorCommand = (options) => (0, package_manager_1.nxCommand)({ manager: options.manager, args: (0, exports.generatorArgs)({ migration: options.migration, dryRun: false }) }).join(' ');
|
|
54
54
|
exports.manualGeneratorCommand = manualGeneratorCommand;
|
|
55
|
+
const runOne = (options) => {
|
|
56
|
+
const { root, manager, entry, dryRun, nxAvailable } = options;
|
|
57
|
+
if (entry.migration.kind !== 'auto')
|
|
58
|
+
return { pending: entry, state: 'task' };
|
|
59
|
+
if (!nxAvailable) {
|
|
60
|
+
return {
|
|
61
|
+
pending: entry,
|
|
62
|
+
state: 'unsupported',
|
|
63
|
+
reason: 'this repo has no Nx, so the generator has to be run by hand',
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
return (0, exports.runAutoMigration)({ root, manager, pending: entry, dryRun });
|
|
67
|
+
};
|
|
55
68
|
const runPendingMigrations = (options) => {
|
|
56
|
-
const { root, manager, pending, dryRun } = options;
|
|
69
|
+
const { root, manager, pending, dryRun, afterEach } = options;
|
|
57
70
|
const nxAvailable = (0, exports.hasNx)(root);
|
|
58
71
|
return pending.map((entry) => {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
return {
|
|
63
|
-
pending: entry,
|
|
64
|
-
state: 'unsupported',
|
|
65
|
-
reason: 'this repo has no Nx, so the generator has to be run by hand',
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
return (0, exports.runAutoMigration)({ root, manager, pending: entry, dryRun });
|
|
72
|
+
const outcome = runOne({ root, manager, entry, dryRun, nxAvailable });
|
|
73
|
+
afterEach === null || afterEach === void 0 ? void 0 : afterEach(outcome);
|
|
74
|
+
return outcome;
|
|
69
75
|
});
|
|
70
76
|
};
|
|
71
77
|
exports.runPendingMigrations = runPendingMigrations;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-migrations.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/lib/update/run-migrations.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"run-migrations.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/lib/update/run-migrations.ts"],"names":[],"mappings":"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"}
|