@mpis/run 0.0.14 → 0.0.16
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/lib/bin.js +3 -0
- package/lib/bin.js.map +1 -1
- package/lib/common/config-file.d.ts.map +1 -1
- package/lib/common/config-file.js +37 -10
- package/lib/common/config-file.js.map +1 -1
- package/lib/common/interactive.d.ts.map +1 -1
- package/lib/common/interactive.js +2 -1
- package/lib/common/interactive.js.map +1 -1
- package/lib/common/stdin.d.ts.map +1 -1
- package/lib/common/stdin.js +2 -1
- package/lib/common/stdin.js.map +1 -1
- package/package.json +7 -7
- package/src/bin.ts +5 -1
- package/src/common/config-file.ts +36 -12
- package/src/common/interactive.ts +2 -1
- package/src/common/stdin.ts +2 -1
package/lib/bin.js
CHANGED
|
@@ -3,6 +3,7 @@ import { logger } from '@idlebox/logger';
|
|
|
3
3
|
import { registerNodejsExitHandler, setExitCodeIfNot, shutdown } from '@idlebox/node';
|
|
4
4
|
import { channelClient } from '@mpis/client';
|
|
5
5
|
import { ProcessIPCClient } from '@mpis/server';
|
|
6
|
+
import assert from 'node:assert/strict';
|
|
6
7
|
import { rmSync } from 'node:fs';
|
|
7
8
|
import { dumpConfig } from './commands/config.js';
|
|
8
9
|
import { context } from './common/args.js';
|
|
@@ -64,6 +65,8 @@ async function executeBuild() {
|
|
|
64
65
|
logger.fatal `worker "${w._id}" is not a ProcessIPCClient, this is a bug.`;
|
|
65
66
|
return;
|
|
66
67
|
}
|
|
68
|
+
assert.ok(w.time.executeStart);
|
|
69
|
+
assert.ok(w.time.executeEnd);
|
|
67
70
|
const times = `(+${humanDate.delta(w.time.executeStart, w.time.executeEnd)})`;
|
|
68
71
|
if (context.watchMode && !shuttingDown) {
|
|
69
72
|
printFailedRunError(w, `unexpected exit in watch mode ${times}`);
|
package/lib/bin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-file.d.ts","sourceRoot":"","sources":["../../src/common/config-file.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config-file.d.ts","sourceRoot":"","sources":["../../src/common/config-file.ts"],"names":[],"mappings":"AA8BA,MAAM,WAAW,QAAQ;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC5B;AACD,MAAM,WAAW,WAAW;IAC3B,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACrC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;CACnC;AA8ND,eAAO,MAAM,MAAM,aAAoC,CAAC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { ProjectConfig } from '@build-script/rushstack-config-loader';
|
|
2
|
+
import { ExitCode } from '@idlebox/common';
|
|
2
3
|
import { logger } from '@idlebox/logger';
|
|
3
|
-
import { findUpUntilSync } from '@idlebox/node';
|
|
4
|
-
import { readFileSync } from 'node:fs';
|
|
4
|
+
import { findUpUntilSync, shutdown } from '@idlebox/node';
|
|
5
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
5
6
|
import { resolve } from 'node:path';
|
|
6
7
|
import { fileURLToPath } from 'node:url';
|
|
7
8
|
import { split as splitCmd } from 'split-cmd';
|
|
@@ -52,7 +53,17 @@ function loadConfigFile(watchMode) {
|
|
|
52
53
|
if (typeof item === 'string') {
|
|
53
54
|
const found = input.commands[item];
|
|
54
55
|
if (!found) {
|
|
55
|
-
|
|
56
|
+
const files = [];
|
|
57
|
+
const info = config.getJsonConfigInfo('commands');
|
|
58
|
+
if (info.project.exists) {
|
|
59
|
+
files.push(info.project.path);
|
|
60
|
+
}
|
|
61
|
+
if (info.rig.exists) {
|
|
62
|
+
files.push(info.rig.path);
|
|
63
|
+
}
|
|
64
|
+
logger.info `config files list<${files}>`;
|
|
65
|
+
logger.error `command ${input.build.indexOf(item)} "${item}" not found in "commands" list<${Object.keys(input.commands)}>`;
|
|
66
|
+
shutdown(ExitCode.USAGE);
|
|
56
67
|
}
|
|
57
68
|
item = found;
|
|
58
69
|
}
|
|
@@ -145,22 +156,38 @@ function parsePackagedBinary(config, item, watchMode) {
|
|
|
145
156
|
const pkgJsonPath = fileURLToPath(config.resolve(`${cmd.package}/package.json`));
|
|
146
157
|
let title = item.title;
|
|
147
158
|
if (!title) {
|
|
148
|
-
|
|
159
|
+
// biome-ignore lint/style/noNonNullAssertion: split must have 0
|
|
160
|
+
title = cmd.package.split('/')[0];
|
|
149
161
|
if (cmd.binary && cmd.binary !== title) {
|
|
150
162
|
title += `:${cmd.binary}`;
|
|
151
163
|
}
|
|
152
164
|
}
|
|
153
165
|
const pkg = JSON.parse(readFileSync(pkgJsonPath, 'utf-8'));
|
|
154
|
-
const
|
|
155
|
-
const
|
|
156
|
-
if (
|
|
166
|
+
const typeStr = typeof pkg.bin === 'string';
|
|
167
|
+
const typeMap = !!cmd.binary;
|
|
168
|
+
if (typeStr && typeMap) {
|
|
157
169
|
throw new Error(`"${pkgJsonPath}" "bin" field is string, can not specify "binary" in "commands.json".`);
|
|
158
170
|
}
|
|
159
|
-
else if (!
|
|
171
|
+
else if (!typeStr && !typeMap) {
|
|
160
172
|
throw new Error(`"${pkgJsonPath}" "bin" field is not string, must specify "binary" in "commands.json".`);
|
|
161
173
|
}
|
|
162
|
-
|
|
163
|
-
const
|
|
174
|
+
let binPath;
|
|
175
|
+
const binVal = typeStr ? pkg.bin : pkg.bin[cmd.binary];
|
|
176
|
+
if (binVal) {
|
|
177
|
+
binPath = resolve(pkgJsonPath, '..', binVal);
|
|
178
|
+
}
|
|
179
|
+
else if (typeMap && cmd.binary) {
|
|
180
|
+
const path = resolve(pkgJsonPath, '..', cmd.binary);
|
|
181
|
+
if (existsSync(path)) {
|
|
182
|
+
binPath = path;
|
|
183
|
+
}
|
|
184
|
+
else {
|
|
185
|
+
throw new Error(`"${pkgJsonPath}" "bin" field has no key "${cmd.binary}"; and "${path}" not looks like a file.`);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
throw new Error(`"${pkgJsonPath}" "bin" field has no key "${cmd.binary}".`);
|
|
190
|
+
}
|
|
164
191
|
return {
|
|
165
192
|
title: title,
|
|
166
193
|
command: watchModeCmd([process.execPath, binPath, ...(cmd.arguments ?? [])], item.watch, watchMode),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-file.js","sourceRoot":"","sources":["../../src/common/config-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"config-file.js","sourceRoot":"","sources":["../../src/common/config-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../../src/common/interactive.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../../src/common/interactive.ts"],"names":[],"mappings":"AAMA,wBAAgB,yBAAyB,SAwCxC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { logger } from '@idlebox/logger';
|
|
2
2
|
import { workersManager } from './manager.js';
|
|
3
3
|
import { registerCommand } from './stdin.js';
|
|
4
|
+
const spaces = /\s+/;
|
|
4
5
|
export function addBreakModeDebugCommands() {
|
|
5
6
|
logger.warn `Break mode enabled, waiting for input command...`;
|
|
6
7
|
registerCommand({
|
|
@@ -14,7 +15,7 @@ export function addBreakModeDebugCommands() {
|
|
|
14
15
|
name: ['debug'],
|
|
15
16
|
description: '切换调试模式(仅在启动前有效)',
|
|
16
17
|
callback: (text) => {
|
|
17
|
-
const [_, index, on_off] = text.split(
|
|
18
|
+
const [_, index, on_off] = text.split(spaces);
|
|
18
19
|
const list = workersManager._allWorkers;
|
|
19
20
|
const worker = list[Number(index)];
|
|
20
21
|
if (!worker) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../src/common/interactive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,UAAU,yBAAyB;IACxC,MAAM,CAAC,IAAI,CAAA,kDAAkD,CAAC;IAE9D,eAAe,CAAC;QACf,IAAI,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC;QACvB,WAAW,EAAE,MAAM;QACnB,QAAQ,EAAE,GAAG,EAAE;YACd,cAAc,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC;QACrC,CAAC;KACD,CAAC,CAAC;IACH,eAAe,CAAC;QACf,IAAI,EAAE,CAAC,OAAO,CAAC;QACf,WAAW,EAAE,iBAAiB;QAC9B,QAAQ,EAAE,CAAC,IAAY,EAAE,EAAE;YAC1B,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../src/common/interactive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,MAAM,GAAG,KAAK,CAAC;AACrB,MAAM,UAAU,yBAAyB;IACxC,MAAM,CAAC,IAAI,CAAA,kDAAkD,CAAC;IAE9D,eAAe,CAAC;QACf,IAAI,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC;QACvB,WAAW,EAAE,MAAM;QACnB,QAAQ,EAAE,GAAG,EAAE;YACd,cAAc,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC;QACrC,CAAC;KACD,CAAC,CAAC;IACH,eAAe,CAAC;QACf,IAAI,EAAE,CAAC,OAAO,CAAC;QACf,WAAW,EAAE,iBAAiB;QAC9B,QAAQ,EAAE,CAAC,IAAY,EAAE,EAAE;YAC1B,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC9C,MAAM,IAAI,GAAG,cAAc,CAAC,WAAiC,CAAC;YAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAA,8BAA8B,KAAK,EAAE,CAAC;gBAClD,OAAO;YACR,CAAC;YACD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACrB,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,0BAA0B,CAAC;gBACjD,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;gBACtC,MAAM,CAAC,OAAO,CAAA,kCAAkC,MAAM,CAAC,GAAG,GAAG,CAAC;YAC/D,CAAC;iBAAM,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;gBAC7B,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;gBACzB,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC;gBAC/B,MAAM,CAAC,OAAO,CAAA,mCAAmC,MAAM,CAAC,GAAG,GAAG,CAAC;YAChE,CAAC;iBAAM,CAAC;gBACP,MAAM,CAAC,KAAK,CAAA,qBAAqB,IAAI,EAAE,CAAC;YACzC,CAAC;QACF,CAAC;KACD,CAAC,CAAC;IACH,oBAAoB;IACpB,yBAAyB;IACzB,4BAA4B;IAC5B,qBAAqB;IACrB,MAAM;IACN,MAAM;AACP,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stdin.d.ts","sourceRoot":"","sources":["../../src/common/stdin.ts"],"names":[],"mappings":"AAGA,UAAU,QAAQ;IACjB,IAAI,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAGD,wBAAgB,eAAe,CAAC,OAAO,EAAE,QAAQ,QAEhD;
|
|
1
|
+
{"version":3,"file":"stdin.d.ts","sourceRoot":"","sources":["../../src/common/stdin.ts"],"names":[],"mappings":"AAGA,UAAU,QAAQ;IACjB,IAAI,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAGD,wBAAgB,eAAe,CAAC,OAAO,EAAE,QAAQ,QAEhD;AASD,wBAAgB,eAAe,SAiC9B"}
|
package/lib/common/stdin.js
CHANGED
|
@@ -9,6 +9,7 @@ registerCommand({
|
|
|
9
9
|
description: '显示帮助信息',
|
|
10
10
|
callback: printHelp,
|
|
11
11
|
});
|
|
12
|
+
const anySpace = /\s/;
|
|
12
13
|
export function initializeStdin() {
|
|
13
14
|
if (!process.stdin.isTTY) {
|
|
14
15
|
return;
|
|
@@ -19,7 +20,7 @@ export function initializeStdin() {
|
|
|
19
20
|
if (!text)
|
|
20
21
|
return;
|
|
21
22
|
logger.debug `recv: ${text}`;
|
|
22
|
-
const firstWord = text.split(
|
|
23
|
+
const firstWord = text.split(anySpace, 1)[0];
|
|
23
24
|
for (const command of stdinCommands) {
|
|
24
25
|
let match = false;
|
|
25
26
|
if (Array.isArray(command.name)) {
|
package/lib/common/stdin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stdin.js","sourceRoot":"","sources":["../../src/common/stdin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAQzC,MAAM,aAAa,GAAe,EAAE,CAAC;AACrC,MAAM,UAAU,eAAe,CAAC,OAAiB;IAChD,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC;AAED,eAAe,CAAC;IACf,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,QAAQ;IACrB,QAAQ,EAAE,SAAS;CACnB,CAAC,CAAC;AAEH,MAAM,UAAU,eAAe;IAC9B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAC1B,OAAO;IACR,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI;YAAE,OAAO;QAElB,MAAM,CAAC,KAAK,CAAA,SAAS,IAAI,EAAE,CAAC;QAE5B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"stdin.js","sourceRoot":"","sources":["../../src/common/stdin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAQzC,MAAM,aAAa,GAAe,EAAE,CAAC;AACrC,MAAM,UAAU,eAAe,CAAC,OAAiB;IAChD,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC;AAED,eAAe,CAAC;IACf,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,QAAQ;IACrB,QAAQ,EAAE,SAAS;CACnB,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,IAAI,CAAC;AACtB,MAAM,UAAU,eAAe;IAC9B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAC1B,OAAO;IACR,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI;YAAE,OAAO;QAElB,MAAM,CAAC,KAAK,CAAA,SAAS,IAAI,EAAE,CAAC;QAE5B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE7C,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;YACrC,IAAI,KAAK,GAAG,KAAK,CAAC;YAClB,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjC,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACP,KAAK,GAAG,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC;YACpC,CAAC;YACD,IAAI,KAAK,EAAE,CAAC;gBACX,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO;YACR,CAAC;QACF,CAAC;QAED,MAAM,CAAC,IAAI,CAAA,oBAAoB,IAAI,gBAAgB,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;QAC5B,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,SAAS;IACjB,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,sBAAsB,WAAW,EAAE,CAAC,CAAC;IAEjD,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IACnC,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/E,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACjD,CAAC;AACF,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mpis/run",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.16",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"bin": {
|
|
7
7
|
"run": "./loader/bin.js",
|
|
@@ -13,13 +13,13 @@
|
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"split-cmd": "^1.1.0",
|
|
15
15
|
"@build-script/rushstack-config-loader": "^0.0.27",
|
|
16
|
+
"@idlebox/common": "^1.5.10",
|
|
17
|
+
"@idlebox/logger": "^0.0.12",
|
|
18
|
+
"@idlebox/node": "^1.4.18",
|
|
16
19
|
"@idlebox/args": "^0.0.18",
|
|
17
|
-
"@
|
|
18
|
-
"@
|
|
19
|
-
"@idlebox/
|
|
20
|
-
"@mpis/client": "^0.0.11",
|
|
21
|
-
"@idlebox/source-map-support": "^0.0.10",
|
|
22
|
-
"@mpis/server": "^0.0.10"
|
|
20
|
+
"@mpis/client": "^0.0.12",
|
|
21
|
+
"@mpis/server": "^0.0.11",
|
|
22
|
+
"@idlebox/source-map-support": "^0.0.12"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"@types/node": "^24.0.14",
|
package/src/bin.ts
CHANGED
|
@@ -3,6 +3,7 @@ import { logger } from '@idlebox/logger';
|
|
|
3
3
|
import { registerNodejsExitHandler, setExitCodeIfNot, shutdown } from '@idlebox/node';
|
|
4
4
|
import { channelClient } from '@mpis/client';
|
|
5
5
|
import { ProcessIPCClient } from '@mpis/server';
|
|
6
|
+
import assert from 'node:assert/strict';
|
|
6
7
|
import { rmSync } from 'node:fs';
|
|
7
8
|
import { dumpConfig } from './commands/config.js';
|
|
8
9
|
import { context } from './common/args.js';
|
|
@@ -73,7 +74,10 @@ async function executeBuild() {
|
|
|
73
74
|
return;
|
|
74
75
|
}
|
|
75
76
|
|
|
76
|
-
|
|
77
|
+
assert.ok(w.time.executeStart);
|
|
78
|
+
assert.ok(w.time.executeEnd);
|
|
79
|
+
|
|
80
|
+
const times = `(+${humanDate.delta(w.time.executeStart, w.time.executeEnd)})`;
|
|
77
81
|
|
|
78
82
|
if (context.watchMode && !shuttingDown) {
|
|
79
83
|
printFailedRunError(w, `unexpected exit in watch mode ${times}`);
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { ProjectConfig } from '@build-script/rushstack-config-loader';
|
|
2
|
+
import { ExitCode } from '@idlebox/common';
|
|
2
3
|
import { logger } from '@idlebox/logger';
|
|
3
|
-
import { findUpUntilSync } from '@idlebox/node';
|
|
4
|
-
import { readFileSync } from 'node:fs';
|
|
4
|
+
import { findUpUntilSync, shutdown } from '@idlebox/node';
|
|
5
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
5
6
|
import { resolve } from 'node:path';
|
|
6
7
|
import { fileURLToPath } from 'node:url';
|
|
7
8
|
import { split as splitCmd } from 'split-cmd';
|
|
@@ -55,7 +56,7 @@ function watchModeCmd(command: string | readonly string[], watch?: string | read
|
|
|
55
56
|
return [...cmdArr, ...watch];
|
|
56
57
|
}
|
|
57
58
|
|
|
58
|
-
|
|
59
|
+
function loadConfigFile(watchMode: boolean): IConfigFile {
|
|
59
60
|
const config = new ProjectConfig(projectRoot, undefined, logger);
|
|
60
61
|
const schemaFile = resolve(selfRoot, 'commands.schema.json');
|
|
61
62
|
|
|
@@ -91,7 +92,17 @@ function watchModeCmd(command: string | readonly string[], watch?: string | read
|
|
|
91
92
|
if (typeof item === 'string') {
|
|
92
93
|
const found = input.commands[item];
|
|
93
94
|
if (!found) {
|
|
94
|
-
|
|
95
|
+
const files = [];
|
|
96
|
+
const info = config.getJsonConfigInfo('commands');
|
|
97
|
+
if (info.project.exists) {
|
|
98
|
+
files.push(info.project.path);
|
|
99
|
+
}
|
|
100
|
+
if (info.rig.exists) {
|
|
101
|
+
files.push(info.rig.path);
|
|
102
|
+
}
|
|
103
|
+
logger.info`config files list<${files}>`;
|
|
104
|
+
logger.error`command ${input.build.indexOf(item)} "${item}" not found in "commands" list<${Object.keys(input.commands)}>`;
|
|
105
|
+
shutdown(ExitCode.USAGE);
|
|
95
106
|
}
|
|
96
107
|
item = found;
|
|
97
108
|
}
|
|
@@ -193,26 +204,39 @@ function parsePackagedBinary(config: ProjectConfig, item: ICommandInput, watchMo
|
|
|
193
204
|
const pkgJsonPath = fileURLToPath(config.resolve(`${cmd.package}/package.json`));
|
|
194
205
|
let title = item.title;
|
|
195
206
|
if (!title) {
|
|
196
|
-
|
|
207
|
+
// biome-ignore lint/style/noNonNullAssertion: split must have 0
|
|
208
|
+
title = cmd.package.split('/')[0]!;
|
|
197
209
|
if (cmd.binary && cmd.binary !== title) {
|
|
198
210
|
title += `:${cmd.binary}`;
|
|
199
211
|
}
|
|
200
212
|
}
|
|
201
213
|
|
|
202
214
|
const pkg = JSON.parse(readFileSync(pkgJsonPath, 'utf-8'));
|
|
203
|
-
const
|
|
204
|
-
const
|
|
205
|
-
if (
|
|
215
|
+
const typeStr = typeof pkg.bin === 'string';
|
|
216
|
+
const typeMap = !!cmd.binary;
|
|
217
|
+
if (typeStr && typeMap) {
|
|
206
218
|
throw new Error(`"${pkgJsonPath}" "bin" field is string, can not specify "binary" in "commands.json".`);
|
|
207
|
-
} else if (!
|
|
219
|
+
} else if (!typeStr && !typeMap) {
|
|
208
220
|
throw new Error(`"${pkgJsonPath}" "bin" field is not string, must specify "binary" in "commands.json".`);
|
|
209
221
|
}
|
|
210
222
|
|
|
211
|
-
|
|
212
|
-
const
|
|
223
|
+
let binPath: string;
|
|
224
|
+
const binVal = typeStr ? pkg.bin : pkg.bin[cmd.binary as string];
|
|
225
|
+
if (binVal) {
|
|
226
|
+
binPath = resolve(pkgJsonPath, '..', binVal);
|
|
227
|
+
} else if (typeMap && cmd.binary) {
|
|
228
|
+
const path = resolve(pkgJsonPath, '..', cmd.binary);
|
|
229
|
+
if (existsSync(path)) {
|
|
230
|
+
binPath = path;
|
|
231
|
+
} else {
|
|
232
|
+
throw new Error(`"${pkgJsonPath}" "bin" field has no key "${cmd.binary}"; and "${path}" not looks like a file.`);
|
|
233
|
+
}
|
|
234
|
+
} else {
|
|
235
|
+
throw new Error(`"${pkgJsonPath}" "bin" field has no key "${cmd.binary}".`);
|
|
236
|
+
}
|
|
213
237
|
|
|
214
238
|
return {
|
|
215
|
-
title: title
|
|
239
|
+
title: title,
|
|
216
240
|
command: watchModeCmd([process.execPath, binPath, ...(cmd.arguments ?? [])], item.watch, watchMode),
|
|
217
241
|
cwd: resolve(projectRoot, item.cwd || '.'),
|
|
218
242
|
env: item.env ?? {},
|
|
@@ -3,6 +3,7 @@ import type { ProcessIPCClient } from '@mpis/server';
|
|
|
3
3
|
import { workersManager } from './manager.js';
|
|
4
4
|
import { registerCommand } from './stdin.js';
|
|
5
5
|
|
|
6
|
+
const spaces = /\s+/;
|
|
6
7
|
export function addBreakModeDebugCommands() {
|
|
7
8
|
logger.warn`Break mode enabled, waiting for input command...`;
|
|
8
9
|
|
|
@@ -17,7 +18,7 @@ export function addBreakModeDebugCommands() {
|
|
|
17
18
|
name: ['debug'],
|
|
18
19
|
description: '切换调试模式(仅在启动前有效)',
|
|
19
20
|
callback: (text: string) => {
|
|
20
|
-
const [_, index, on_off] = text.split(
|
|
21
|
+
const [_, index, on_off] = text.split(spaces);
|
|
21
22
|
const list = workersManager._allWorkers as ProcessIPCClient[];
|
|
22
23
|
const worker = list[Number(index)];
|
|
23
24
|
if (!worker) {
|
package/src/common/stdin.ts
CHANGED
|
@@ -18,6 +18,7 @@ registerCommand({
|
|
|
18
18
|
callback: printHelp,
|
|
19
19
|
});
|
|
20
20
|
|
|
21
|
+
const anySpace = /\s/;
|
|
21
22
|
export function initializeStdin() {
|
|
22
23
|
if (!process.stdin.isTTY) {
|
|
23
24
|
return;
|
|
@@ -29,7 +30,7 @@ export function initializeStdin() {
|
|
|
29
30
|
|
|
30
31
|
logger.debug`recv: ${text}`;
|
|
31
32
|
|
|
32
|
-
const firstWord = text.split(
|
|
33
|
+
const firstWord = text.split(anySpace, 1)[0];
|
|
33
34
|
|
|
34
35
|
for (const command of stdinCommands) {
|
|
35
36
|
let match = false;
|