@maka/maka-cli 5.57.0 → 5.59.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -0
- package/bundle/typescript/package.json +2 -2
- package/bundle/typescript/src/README.md +27 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/backlog.d.ts +39 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/backlog.js +149 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/backlog.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/game.d.ts +4 -0
- package/bundle/typescript/src/commands/game/sideQuest/game.js +10 -2
- package/bundle/typescript/src/commands/game/sideQuest/game.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-dump.d.ts +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-dump.js +71 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-dump.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog.d.ts +37 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog.js +108 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js +21 -1
- package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js.map +1 -1
- package/bundle/typescript/src/maka.js +12 -0
- package/bundle/typescript/src/maka.js.map +1 -1
- package/bundle/typescript/src/tools/sdk-loader/relocate.d.ts +9 -0
- package/bundle/typescript/src/tools/sdk-loader/relocate.js +131 -0
- package/bundle/typescript/src/tools/sdk-loader/relocate.js.map +1 -0
- package/bundle/typescript/src/tools/sdk-loader/sdk-loader.class.js +37 -2
- package/bundle/typescript/src/tools/sdk-loader/sdk-loader.class.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function dumpBacklog(filter?: string): Promise<void>;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { Log } from '../../../../tools/log/log.class.js';
|
|
2
|
+
import { fetchBacklog, BACKLOG_STATUSES } from './backlog.js';
|
|
3
|
+
/**
|
|
4
|
+
* `maka play:shadowrun --backlog [--filter <status>]`.
|
|
5
|
+
*
|
|
6
|
+
* The out-of-game half of the backlog: read the board without starting
|
|
7
|
+
* a session. Lives in its own module so the launcher's top-of-handler
|
|
8
|
+
* branch can import it lazily and touch none of the game graph.
|
|
9
|
+
*
|
|
10
|
+
* Plain Log output, not blessed -- there is no screen here.
|
|
11
|
+
*/
|
|
12
|
+
function verdictLine(item) {
|
|
13
|
+
const v = item.vetting;
|
|
14
|
+
if (!v || v.state === 'pending')
|
|
15
|
+
return 'checking the books...';
|
|
16
|
+
if (v.state === 'failed')
|
|
17
|
+
return "the books didn't answer";
|
|
18
|
+
if (!v.verdict)
|
|
19
|
+
return undefined;
|
|
20
|
+
const label = v.verdict === 'contradicts' ? 'canon disagrees'
|
|
21
|
+
: v.verdict === 'supported' ? 'canon agrees'
|
|
22
|
+
: v.verdict === 'out-of-scope' ? 'not a rules matter'
|
|
23
|
+
: 'books are unclear';
|
|
24
|
+
return `${label}${v.justification ? `: ${v.justification}` : ''}`;
|
|
25
|
+
}
|
|
26
|
+
export async function dumpBacklog(filter) {
|
|
27
|
+
if (filter && !BACKLOG_STATUSES.includes(filter)) {
|
|
28
|
+
Log.error(`No status called "${filter}". One of: ${BACKLOG_STATUSES.join(', ')}.`);
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
const { outcome, items } = await fetchBacklog(filter);
|
|
32
|
+
if (outcome === 'no-login') {
|
|
33
|
+
Log.error('The backlog runs on your maka-cli.com login -- run `maka login` first.');
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
if (outcome === 'expired') {
|
|
37
|
+
Log.error('Your login has expired -- run `maka login` again.');
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
if (outcome === 'forbidden') {
|
|
41
|
+
Log.error('The backlog is for play-testers. Ask the operator to add your account.');
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
if (outcome !== 'ok' || !items) {
|
|
45
|
+
Log.error("maka-cli.com isn't answering -- the backlog is offline right now.");
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
if (items.length === 0) {
|
|
49
|
+
Log.info(filter ? `Nothing ${filter} on the board.` : 'The backlog is empty.');
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
Log.info(`BACKLOG -- ${items.length} item${items.length === 1 ? '' : 's'}${filter ? ` (${filter})` : ''}`);
|
|
53
|
+
for (const item of items) {
|
|
54
|
+
Log.info('');
|
|
55
|
+
Log.info(`[${item.status}] ${item.text}`);
|
|
56
|
+
const who = [item.runnerName, item.reporterHandle].filter(Boolean).join(' / ');
|
|
57
|
+
const when = item.createdAt ? new Date(item.createdAt).toISOString().slice(0, 16).replace('T', ' ') : undefined;
|
|
58
|
+
if (who || when)
|
|
59
|
+
Log.info(` ${[who, when].filter(Boolean).join(' ')}`);
|
|
60
|
+
if (item.sessionId)
|
|
61
|
+
Log.info(` session ${item.sessionId}`);
|
|
62
|
+
const verdict = verdictLine(item);
|
|
63
|
+
if (verdict)
|
|
64
|
+
Log.info(` ${verdict}`);
|
|
65
|
+
const cites = (item.vetting?.citations ?? []).slice(0, 3)
|
|
66
|
+
.map(c => `${c.book} p.${c.page ?? '?'}${c.section ? ` (${c.section})` : ''}`);
|
|
67
|
+
for (const c of cites)
|
|
68
|
+
Log.info(` ${c}`);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=backlog-dump.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backlog-dump.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/utilities/backlog-dump.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export type BacklogStatus = 'open' | 'in-progress' | 'complete' | 'wont-fix';
|
|
2
|
+
export declare const BACKLOG_STATUSES: BacklogStatus[];
|
|
3
|
+
export interface IBacklogItem {
|
|
4
|
+
_id: string;
|
|
5
|
+
text: string;
|
|
6
|
+
reporterHandle?: string;
|
|
7
|
+
runnerName?: string;
|
|
8
|
+
sessionId?: string;
|
|
9
|
+
status: BacklogStatus;
|
|
10
|
+
vetting?: {
|
|
11
|
+
state: 'pending' | 'vetted' | 'failed';
|
|
12
|
+
verdict?: 'supported' | 'contradicts' | 'out-of-scope' | 'unclear';
|
|
13
|
+
justification?: string;
|
|
14
|
+
citations?: {
|
|
15
|
+
book: string;
|
|
16
|
+
page?: string;
|
|
17
|
+
section?: string;
|
|
18
|
+
}[];
|
|
19
|
+
};
|
|
20
|
+
createdAt?: string;
|
|
21
|
+
}
|
|
22
|
+
/** Distinguishable outcomes, because each one deserves different prose:
|
|
23
|
+
* a missing login is not a missing role is not a dead network. */
|
|
24
|
+
export type BacklogOutcome = 'ok' | 'no-login' | 'expired' | 'forbidden' | 'offline' | 'rejected';
|
|
25
|
+
export interface IBacklogMeta {
|
|
26
|
+
runnerName?: string;
|
|
27
|
+
sessionId?: string;
|
|
28
|
+
sharedRunId?: string;
|
|
29
|
+
cliVersion?: string;
|
|
30
|
+
engineVersion?: string;
|
|
31
|
+
platform?: string;
|
|
32
|
+
}
|
|
33
|
+
export declare function submitBacklog(text: string, meta: IBacklogMeta): Promise<BacklogOutcome>;
|
|
34
|
+
export declare function fetchBacklog(status?: BacklogStatus): Promise<{
|
|
35
|
+
outcome: BacklogOutcome;
|
|
36
|
+
items?: IBacklogItem[];
|
|
37
|
+
}>;
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import http from 'http';
|
|
2
|
+
import https from 'https';
|
|
3
|
+
import { authToken } from './cloud-saves.js';
|
|
4
|
+
/**
|
|
5
|
+
* PLAYTEST BACKLOG transport (2026-08-26). Items live on maka-cli.com
|
|
6
|
+
* (api/v1/game-backlog), role-gated to play-testers, and come back
|
|
7
|
+
* vetted against the rulebooks with page citations.
|
|
8
|
+
*
|
|
9
|
+
* Deliberately separate from `note`, which stays exactly what it is: a
|
|
10
|
+
* private margin scribble on the player's own disk, useful outside
|
|
11
|
+
* playtesting. A BACKLOG ITEM is something someone should act on, so it
|
|
12
|
+
* has to be shared, tracked and statused -- none of which a per-session
|
|
13
|
+
* markdown file on one machine can do.
|
|
14
|
+
*
|
|
15
|
+
* Fifth copy of the house transport (cloud-saves.ts is the canonical
|
|
16
|
+
* one; social.ts and session-telemetry.ts are the same code). Extracting
|
|
17
|
+
* a shared one is a real refactor and its own job.
|
|
18
|
+
*
|
|
19
|
+
* EVERY function here swallows its errors and returns undefined or a
|
|
20
|
+
* status string. The command turns those into prose -- a player never
|
|
21
|
+
* sees a stack trace because the grid hiccuped.
|
|
22
|
+
*/
|
|
23
|
+
const DEV = process.env.MAKA_DEV === 'True';
|
|
24
|
+
const HOSTNAME = DEV ? 'localhost' : 'www.maka-cli.com';
|
|
25
|
+
const PORT = DEV ? Number(process.env.MAKA_DEV_PORT ?? 3000) : 443;
|
|
26
|
+
const API_BASE = 'api/v1/game-backlog';
|
|
27
|
+
const TIMEOUT_MS = 10000;
|
|
28
|
+
export const BACKLOG_STATUSES = ['open', 'in-progress', 'complete', 'wont-fix'];
|
|
29
|
+
function request(method, apiPath, token, body) {
|
|
30
|
+
return new Promise((resolve, reject) => {
|
|
31
|
+
const payload = body === undefined ? undefined : JSON.stringify(body);
|
|
32
|
+
const mod = DEV ? http : https;
|
|
33
|
+
const req = mod.request({
|
|
34
|
+
hostname: HOSTNAME,
|
|
35
|
+
port: PORT,
|
|
36
|
+
path: apiPath,
|
|
37
|
+
method,
|
|
38
|
+
timeout: TIMEOUT_MS,
|
|
39
|
+
headers: {
|
|
40
|
+
'x-auth-token': token,
|
|
41
|
+
...(payload !== undefined
|
|
42
|
+
? { 'Content-Type': 'application/json', 'Content-Length': Buffer.byteLength(payload) }
|
|
43
|
+
: {}),
|
|
44
|
+
},
|
|
45
|
+
}, res => {
|
|
46
|
+
let data = '';
|
|
47
|
+
res.on('data', chunk => { data += chunk; });
|
|
48
|
+
res.on('end', () => resolve({ statusCode: res.statusCode ?? 0, data }));
|
|
49
|
+
});
|
|
50
|
+
req.on('timeout', () => req.destroy(new Error('Request timeout')));
|
|
51
|
+
req.on('error', reject);
|
|
52
|
+
if (payload !== undefined)
|
|
53
|
+
req.write(payload);
|
|
54
|
+
req.end();
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
/** The Meteor API sometimes wraps its payload in {data} -- same dual
|
|
58
|
+
* read social.ts and session-telemetry.ts already do. */
|
|
59
|
+
function parseData(raw) {
|
|
60
|
+
try {
|
|
61
|
+
const parsed = JSON.parse(raw);
|
|
62
|
+
return (parsed?.data ?? parsed);
|
|
63
|
+
}
|
|
64
|
+
catch {
|
|
65
|
+
return undefined;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
export async function submitBacklog(text, meta) {
|
|
69
|
+
const token = authToken();
|
|
70
|
+
if (!token)
|
|
71
|
+
return 'no-login';
|
|
72
|
+
try {
|
|
73
|
+
const res = await request('POST', `/${API_BASE}/item`, token, { text, ...meta });
|
|
74
|
+
if (res.statusCode === 200)
|
|
75
|
+
return 'ok';
|
|
76
|
+
if (res.statusCode === 401)
|
|
77
|
+
return 'expired';
|
|
78
|
+
if (res.statusCode === 403)
|
|
79
|
+
return 'forbidden';
|
|
80
|
+
if (res.statusCode === 400)
|
|
81
|
+
return 'rejected';
|
|
82
|
+
return 'offline';
|
|
83
|
+
}
|
|
84
|
+
catch {
|
|
85
|
+
return 'offline';
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
export async function fetchBacklog(status) {
|
|
89
|
+
const token = authToken();
|
|
90
|
+
if (!token)
|
|
91
|
+
return { outcome: 'no-login' };
|
|
92
|
+
try {
|
|
93
|
+
const query = status ? `?status=${encodeURIComponent(status)}` : '';
|
|
94
|
+
const res = await request('GET', `/${API_BASE}/list${query}`, token);
|
|
95
|
+
if (res.statusCode === 401)
|
|
96
|
+
return { outcome: 'expired' };
|
|
97
|
+
if (res.statusCode === 403)
|
|
98
|
+
return { outcome: 'forbidden' };
|
|
99
|
+
if (res.statusCode !== 200)
|
|
100
|
+
return { outcome: 'offline' };
|
|
101
|
+
const parsed = parseData(res.data);
|
|
102
|
+
return { outcome: 'ok', items: parsed?.items ?? [] };
|
|
103
|
+
}
|
|
104
|
+
catch {
|
|
105
|
+
return { outcome: 'offline' };
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=backlog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backlog.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/utilities/backlog.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,8 +15,28 @@ Command.create({
|
|
|
15
15
|
description: `Just a little pet project... I really liked the Dunnet game that
|
|
16
16
|
came with MacOS but has been removed. I really like the Shadowrun world, and
|
|
17
17
|
thought I'd mess around with a little text-based version of it.`,
|
|
18
|
-
validOpts: [
|
|
18
|
+
validOpts: [
|
|
19
|
+
{ name: 'player', description: 'Which runner to play (skips the character menu).' },
|
|
20
|
+
{ name: 'telemetry', boolFlag: true, description: 'Re-ask the play-session recording question for this account.' },
|
|
21
|
+
{ name: 'backlog', boolFlag: true, description: 'Print the play-tester backlog from maka-cli.com and exit.' },
|
|
22
|
+
{ name: 'filter', values: ['open', 'in-progress', 'complete', 'wont-fix'], description: 'With --backlog: show only items in this status.' },
|
|
23
|
+
]
|
|
19
24
|
}, async function (args, opts) {
|
|
25
|
+
// BACKLOG DUMP, and nothing else. Deliberately the first thing in the
|
|
26
|
+
// handler: everything below starts a play session -- a session dir, a
|
|
27
|
+
// Logger singleton primed with a fake screen, a cloud reconcile and
|
|
28
|
+
// two interactive prompts. Reading a list should touch none of it.
|
|
29
|
+
// This also sits OUTSIDE the handler's big try/catch, so it owns its
|
|
30
|
+
// own error reporting.
|
|
31
|
+
if (opts.backlog) {
|
|
32
|
+
const { dumpBacklog } = await import('./sideQuest/utilities/backlog-dump.js');
|
|
33
|
+
await dumpBacklog(opts.filter);
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
if (opts.filter) {
|
|
37
|
+
Log.error('--filter only means something with --backlog.');
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
20
40
|
// Lazy game-graph load (see the comment at the imports above). One
|
|
21
41
|
// parallel block so the handler body below is otherwise untouched.
|
|
22
42
|
const [{ SceneSeedGenerator }, { ARCHETYPES, getArchetype, outfitArchetype }, { TERMINAL_RESET_SEQUENCE }, { Player }, { Room }, { Logger }, { savesDir, savePathFor, listSaves, deleteSave, readSave, writeSaveAtomic }, { isLockHeld }, { SAVE_VERSION }, { authToken, fetchSummaries, fetchSave, pushSave, deleteCloudSave, reconcile },] = await Promise.all([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sideQuest.sub.cmd.js","sourceRoot":"","sources":["../../../../../src/commands/game/sideQuest.sub.cmd.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sideQuest.sub.cmd.js","sourceRoot":"","sources":["../../../../../src/commands/game/sideQuest.sub.cmd.ts"],"names":[],"mappings":"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"}
|
|
@@ -63,6 +63,18 @@ void (async () => {
|
|
|
63
63
|
}
|
|
64
64
|
const argv = minimist(process.argv.slice(2));
|
|
65
65
|
const args = argv._;
|
|
66
|
+
// Meteor's build system derives tool paths from where the running script
|
|
67
|
+
// lives, which a packaged executable's virtual snapshot breaks. Rather than
|
|
68
|
+
// chase those assumptions, hand the whole command to a real Node running
|
|
69
|
+
// this same CLI from disk -- see tools/sdk-loader/relocate.ts. Decided here,
|
|
70
|
+
// BEFORE any command runs, so nothing has done half its work by the time we
|
|
71
|
+
// switch processes. No-op under an npm install and inside the child.
|
|
72
|
+
const { isPackaged } = await import('./tools/sdk-loader/sdk-loader.class.js');
|
|
73
|
+
const { needsRealNode, reexecOnRealNode } = await import('./tools/sdk-loader/relocate.js');
|
|
74
|
+
if (isPackaged() && needsRealNode(args[0])) {
|
|
75
|
+
await reexecOnRealNode(process.argv.slice(2));
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
66
78
|
const deepCopyArgv = JSON.parse(JSON.stringify(argv));
|
|
67
79
|
delete deepCopyArgv._;
|
|
68
80
|
const opts = humps.camelizeKeys(deepCopyArgv);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"maka.js","sourceRoot":"","sources":["../../../src/maka.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"maka.js","sourceRoot":"","sources":["../../../src/maka.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** True in the child: an ordinary Node process running the CLI out of the
|
|
2
|
+
* runtime directory rather than out of node_modules. */
|
|
3
|
+
export declare function isRelocated(): boolean;
|
|
4
|
+
/** Whether this invocation drives Meteor and therefore needs a real Node.
|
|
5
|
+
* `command` is the raw first argument, so "g:route" and "build" both work. */
|
|
6
|
+
export declare function needsRealNode(command: unknown): boolean;
|
|
7
|
+
/** Re-execs this command on a real Node and exits with the child's status.
|
|
8
|
+
* Never returns. */
|
|
9
|
+
export declare function reexecOnRealNode(args: string[]): Promise<never>;
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
// Runs Meteor-driving commands on a real Node instead of inside the packaged
|
|
2
|
+
// executable.
|
|
3
|
+
//
|
|
4
|
+
// THE PROBLEM. Meteor's build system computes tool paths from the location of
|
|
5
|
+
// the running script. Inside a packaged executable that location is a virtual
|
|
6
|
+
// snapshot, so a build plugin ends up looking for something like
|
|
7
|
+
// <snapshot>/bundle/isobuild/package-source and dies. That is not one bug: it
|
|
8
|
+
// is a class of them, the instances live in GENERATED plugin bundles where
|
|
9
|
+
// there is nothing central to patch, and fixing them one at a time is
|
|
10
|
+
// unbounded work with no way to know when you are done.
|
|
11
|
+
//
|
|
12
|
+
// THE FIX. Do not fight it. The executable already downloads a real Node for
|
|
13
|
+
// the toolchain to spawn (runtime-fetch.ts), and the CLI is a single
|
|
14
|
+
// self-contained CommonJS bundle. So for SDK-backed commands, write that
|
|
15
|
+
// bundle out to a real directory and re-exec the whole CLI on the real Node.
|
|
16
|
+
// Every path the toolchain derives is then an ordinary filesystem path and the
|
|
17
|
+
// entire class of failures stops existing at once.
|
|
18
|
+
//
|
|
19
|
+
// The child is an ordinary Node process, so process.pkg is undefined there and
|
|
20
|
+
// it takes the normal in-process path -- which also means it cannot recurse
|
|
21
|
+
// back into here. The one thing it must be told is that it is a RELOCATED CLI
|
|
22
|
+
// rather than an npm install, because those two disagree about what a missing
|
|
23
|
+
// SDK means: for an npm install it is a broken install, for this it is a
|
|
24
|
+
// first run that should fetch. MAKA_RELOCATED carries exactly that.
|
|
25
|
+
import fs from 'fs';
|
|
26
|
+
import path from 'path';
|
|
27
|
+
import spawn from 'cross-spawn';
|
|
28
|
+
import { Log } from '../log/log.class.js';
|
|
29
|
+
import { cliVersion } from '../version/cli-version.js';
|
|
30
|
+
import { runtimeDir, ensureNode } from './runtime-fetch.js';
|
|
31
|
+
// The commands that reach ensureSdkInit(), and nothing else:
|
|
32
|
+
// build -> mpi.buildViaSdk()
|
|
33
|
+
// run -> mpi.runViaSdk()
|
|
34
|
+
// create -> scaffold.createEmptyMeteorProject() + pkg.installMeteorPackage()
|
|
35
|
+
//
|
|
36
|
+
// Deliberately NOT here: test, deploy and debug go through
|
|
37
|
+
// mpi.invokeMeteorCommand(), which spawns a real globally-installed `meteor`
|
|
38
|
+
// binary rather than the SDK, so they already work from the executable.
|
|
39
|
+
// Adding a command here that does not need it costs a process launch and a
|
|
40
|
+
// slower start; omitting one that does need it fails loudly rather than
|
|
41
|
+
// silently, which is the safer direction to be wrong in.
|
|
42
|
+
const SDK_BACKED = new Set(['build', 'b', 'run', 'r', 'create', 'c']);
|
|
43
|
+
const RELOCATED_ENV = 'MAKA_RELOCATED';
|
|
44
|
+
/** True in the child: an ordinary Node process running the CLI out of the
|
|
45
|
+
* runtime directory rather than out of node_modules. */
|
|
46
|
+
export function isRelocated() {
|
|
47
|
+
return process.env[RELOCATED_ENV] === '1';
|
|
48
|
+
}
|
|
49
|
+
/** Whether this invocation drives Meteor and therefore needs a real Node.
|
|
50
|
+
* `command` is the raw first argument, so "g:route" and "build" both work. */
|
|
51
|
+
export function needsRealNode(command) {
|
|
52
|
+
if (typeof command !== 'string' || !command) {
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
return SDK_BACKED.has(command.split(':')[0]);
|
|
56
|
+
}
|
|
57
|
+
function cliHome() {
|
|
58
|
+
// Keyed by version so an upgraded binary never re-uses the previous
|
|
59
|
+
// release's bundle.
|
|
60
|
+
return path.join(runtimeDir(), 'cli', cliVersion());
|
|
61
|
+
}
|
|
62
|
+
/** Copies a directory out of the executable's snapshot onto the real disk.
|
|
63
|
+
* read+write rather than copyFileSync: the snapshot filesystem supports
|
|
64
|
+
* reading, but is not a real filesystem and does not implement every fs
|
|
65
|
+
* operation. */
|
|
66
|
+
function copyOut(src, dest) {
|
|
67
|
+
fs.mkdirSync(dest, { recursive: true });
|
|
68
|
+
for (const entry of fs.readdirSync(src, { withFileTypes: true })) {
|
|
69
|
+
const from = path.join(src, entry.name);
|
|
70
|
+
const to = path.join(dest, entry.name);
|
|
71
|
+
if (entry.isDirectory()) {
|
|
72
|
+
copyOut(from, to);
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
fs.writeFileSync(to, fs.readFileSync(from));
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
/** Writes the CLI to disk if it isn't already there, and returns the path to
|
|
80
|
+
* the bundle to run. */
|
|
81
|
+
function ensureCliOnDisk() {
|
|
82
|
+
const home = cliHome();
|
|
83
|
+
const bundle = path.join(home, 'maka.cjs');
|
|
84
|
+
// Written last, so a run interrupted mid-copy is not mistaken for a
|
|
85
|
+
// complete one on the next attempt.
|
|
86
|
+
const marker = path.join(home, '.complete');
|
|
87
|
+
if (fs.existsSync(marker) && fs.existsSync(bundle)) {
|
|
88
|
+
return bundle;
|
|
89
|
+
}
|
|
90
|
+
fs.rmSync(home, { recursive: true, force: true });
|
|
91
|
+
fs.mkdirSync(home, { recursive: true });
|
|
92
|
+
// __filename inside the executable is the snapshot path of this very
|
|
93
|
+
// bundle, and the snapshot is readable, so the CLI can copy itself out.
|
|
94
|
+
fs.writeFileSync(bundle, fs.readFileSync(__filename));
|
|
95
|
+
// The templates are the one asset not inlined into the bundle -- the
|
|
96
|
+
// scaffolder reads them off disk relative to global.MAKA_COMMAND_PATH.
|
|
97
|
+
// maka.ts probes <dir>/templates and <dir>/typescript/src/templates, so
|
|
98
|
+
// laying them out under typescript/src/ makes the child find them by the
|
|
99
|
+
// same rule the executable uses.
|
|
100
|
+
const templatesSrc = path.join(global.MAKA_COMMAND_PATH, 'templates');
|
|
101
|
+
if (fs.existsSync(templatesSrc)) {
|
|
102
|
+
copyOut(templatesSrc, path.join(home, 'typescript', 'src', 'templates'));
|
|
103
|
+
}
|
|
104
|
+
fs.writeFileSync(marker, `${cliVersion()}\n`);
|
|
105
|
+
return bundle;
|
|
106
|
+
}
|
|
107
|
+
/** Re-execs this command on a real Node and exits with the child's status.
|
|
108
|
+
* Never returns. */
|
|
109
|
+
export async function reexecOnRealNode(args) {
|
|
110
|
+
const node = await ensureNode();
|
|
111
|
+
const bundle = ensureCliOnDisk();
|
|
112
|
+
if (process.env.MAKA_DEV === 'True') {
|
|
113
|
+
Log.notice(`Running on ${node} from ${bundle}`);
|
|
114
|
+
}
|
|
115
|
+
const child = spawn(node, [bundle, ...args], {
|
|
116
|
+
stdio: 'inherit',
|
|
117
|
+
env: { ...process.env, [RELOCATED_ENV]: '1' },
|
|
118
|
+
});
|
|
119
|
+
const { code, signal } = await new Promise((resolve) => {
|
|
120
|
+
child.on('close', (c, s) => resolve({ code: c, signal: s }));
|
|
121
|
+
child.on('error', (e) => {
|
|
122
|
+
Log.error(`Could not start the Meteor toolchain: ${e.message}`);
|
|
123
|
+
resolve({ code: 1, signal: null });
|
|
124
|
+
});
|
|
125
|
+
});
|
|
126
|
+
// A signalled child has no exit code; report it the way a shell would so
|
|
127
|
+
// `maka run` interrupted with Ctrl-C does not look like a clean exit.
|
|
128
|
+
process.exit(signal ? 1 : code ?? 0);
|
|
129
|
+
throw new Error('unreachable');
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=relocate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"relocate.js","sourceRoot":"","sources":["../../../../../src/tools/sdk-loader/relocate.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,7 @@ import { Log } from '../log/log.class.js';
|
|
|
19
19
|
import { Actions } from '../actions/actions.class.js';
|
|
20
20
|
import { sdkRange } from '../version/cli-version.js';
|
|
21
21
|
import { ensureSdkInstalled, fetchedNodeBinary, ensureNode, sdkPrefixFor } from './runtime-fetch.js';
|
|
22
|
+
import { isRelocated } from './relocate.js';
|
|
22
23
|
// Split into parts on purpose. The packager statically scans for literal
|
|
23
24
|
// specifiers inside require()/require.resolve() calls, and a single
|
|
24
25
|
// '@maka/meteor-sdk' string in such a position makes it decide the entire
|
|
@@ -100,14 +101,17 @@ let fetchDeclined = false;
|
|
|
100
101
|
* packaged builds -- see applyExecPathOverride(). */
|
|
101
102
|
export async function ensureSdkAvailable() {
|
|
102
103
|
installInspectorShim();
|
|
104
|
+
yieldMainModuleToSdk();
|
|
103
105
|
const existing = findSdkRoot();
|
|
104
106
|
if (existing) {
|
|
105
107
|
await applyExecPathOverride();
|
|
106
108
|
return existing;
|
|
107
109
|
}
|
|
108
|
-
if (!isPackaged()) {
|
|
110
|
+
if (!isPackaged() && !isRelocated()) {
|
|
109
111
|
// An npm install with a missing dependency is a broken install, not
|
|
110
|
-
// something to paper over with a download.
|
|
112
|
+
// something to paper over with a download. The relocated child is the
|
|
113
|
+
// exception: it is this CLI running from the runtime directory on a
|
|
114
|
+
// fetched Node, where a missing SDK just means first run.
|
|
111
115
|
throw new Error('@maka/meteor-sdk could not be resolved. Try reinstalling maka ' +
|
|
112
116
|
'(`npm i -g @maka/maka-cli`).');
|
|
113
117
|
}
|
|
@@ -131,6 +135,37 @@ export async function ensureSdkAvailable() {
|
|
|
131
135
|
await applyExecPathOverride();
|
|
132
136
|
return root;
|
|
133
137
|
}
|
|
138
|
+
/** Lets the SDK install its own process.mainModule shim when this CLI is
|
|
139
|
+
* running as a CommonJS bundle.
|
|
140
|
+
*
|
|
141
|
+
* Build plugins in the wild locate the running tool through
|
|
142
|
+
* process.mainModule.filename and then process.mainModule.require() an
|
|
143
|
+
* absolute path under it -- zodern:types' bundled tools-imports.js is the
|
|
144
|
+
* known case, and it reaches for isobuild/package-source, project-context
|
|
145
|
+
* and packaging/tropohouse. The SDK handles this: src/bootstrap.js's
|
|
146
|
+
* ensureMainModuleShim() points a fake mainModule at its OWN tools/
|
|
147
|
+
* directory so those lookups land on the real files.
|
|
148
|
+
*
|
|
149
|
+
* But that shim is guarded by `if (process.mainModule) return;` -- it only
|
|
150
|
+
* fills in the UNDEFINED case, deliberately never clobbering a real CJS main
|
|
151
|
+
* module. An npm install has an ESM entry point, so mainModule is undefined
|
|
152
|
+
* and the shim engages. The single-file build is CommonJS, so mainModule is
|
|
153
|
+
* defined and points at maka.cjs, the shim declines, and every plugin then
|
|
154
|
+
* computes <directory of maka.cjs>/isobuild/package-source and dies. That is
|
|
155
|
+
* what made `maka build` fail from the executable -- first as
|
|
156
|
+
* <snapshot>/bundle/isobuild/..., then, after relocating to a real Node, as
|
|
157
|
+
* <runtime>/cli/<version>/isobuild/... The path changed; the cause did not.
|
|
158
|
+
*
|
|
159
|
+
* Clearing it hands the decision back to the SDK, which knows where its own
|
|
160
|
+
* tools/ lives. Preferable to fabricating a shim here, which would duplicate
|
|
161
|
+
* that knowledge and rot the moment the SDK's layout moves. Only done for the
|
|
162
|
+
* two CommonJS-bundle cases; an npm install is left completely alone. */
|
|
163
|
+
function yieldMainModuleToSdk() {
|
|
164
|
+
if (!isPackaged() && !isRelocated()) {
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
process.mainModule = undefined;
|
|
168
|
+
}
|
|
134
169
|
let inspectorShimmed = false;
|
|
135
170
|
/** Satisfies `import * as inspector from 'inspector'` inside a packaged
|
|
136
171
|
* executable, where that module does not exist.
|