ttsc 0.12.2 → 0.12.4
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/cmd/platform/main.go +9 -0
- package/cmd/ttsc/api_compile.go +109 -101
- package/cmd/ttsc/api_compile_branches_test.go +55 -57
- package/cmd/ttsc/api_transform.go +54 -49
- package/cmd/ttsc/api_transform_branches_test.go +30 -32
- package/cmd/ttsc/build.go +111 -108
- package/cmd/ttsc/build_branches_test.go +95 -97
- package/cmd/ttsc/helpers_test.go +39 -28
- package/cmd/ttsc/main.go +111 -104
- package/cmd/ttsc/main_alias_branches_test.go +21 -23
- package/cmd/ttscserver/main.go +96 -90
- package/cmd/ttscserver/run_lsp_prefers_tsgo_flag_test.go +22 -22
- package/cmd/ttscserver/run_lsp_reports_server_error_test.go +22 -22
- package/cmd/ttscserver/run_lsp_uses_tsgo_environment_test.go +23 -23
- package/cmd/utility-host/main.go +30 -23
- package/driver/lsp.go +53 -7
- package/driver/plugins.go +88 -72
- package/driver/program.go +362 -339
- package/driver/rewrite.go +442 -380
- package/internal/lspserver/lsp_envelope.go +64 -64
- package/internal/lspserver/lsp_frame.go +60 -60
- package/internal/lspserver/lsp_plugin.go +57 -57
- package/internal/lspserver/lsp_proxy.go +265 -251
- package/internal/lspserver/lsp_server.go +155 -144
- package/lib/TtscCompiler.d.ts +7 -0
- package/lib/TtscCompiler.js +7 -0
- package/lib/TtscCompiler.js.map +1 -1
- package/lib/compiler/internal/buildNativeCompiler.d.ts +11 -1
- package/lib/compiler/internal/buildNativeCompiler.js +23 -3
- package/lib/compiler/internal/buildNativeCompiler.js.map +1 -1
- package/lib/compiler/internal/compileProjectInMemory.d.ts +9 -0
- package/lib/compiler/internal/compileProjectInMemory.js +36 -21
- package/lib/compiler/internal/compileProjectInMemory.js.map +1 -1
- package/lib/compiler/internal/paths.d.ts +27 -0
- package/lib/compiler/internal/paths.js +70 -0
- package/lib/compiler/internal/paths.js.map +1 -0
- package/lib/compiler/internal/project/readProjectConfig.d.ts +9 -1
- package/lib/compiler/internal/project/readProjectConfig.js +80 -1
- package/lib/compiler/internal/project/readProjectConfig.js.map +1 -1
- package/lib/compiler/internal/project/resolveProjectConfig.d.ts +13 -1
- package/lib/compiler/internal/project/resolveProjectConfig.js +24 -1
- package/lib/compiler/internal/project/resolveProjectConfig.js.map +1 -1
- package/lib/compiler/internal/resolveBinary.d.ts +9 -1
- package/lib/compiler/internal/resolveBinary.js +17 -1
- package/lib/compiler/internal/resolveBinary.js.map +1 -1
- package/lib/compiler/internal/resolveEmittedJavaScript.d.ts +16 -1
- package/lib/compiler/internal/resolveEmittedJavaScript.js +42 -10
- package/lib/compiler/internal/resolveEmittedJavaScript.js.map +1 -1
- package/lib/compiler/internal/resolveTsgo.d.ts +21 -1
- package/lib/compiler/internal/resolveTsgo.js +23 -1
- package/lib/compiler/internal/resolveTsgo.js.map +1 -1
- package/lib/compiler/internal/runBuild.d.ts +19 -0
- package/lib/compiler/internal/runBuild.js +112 -46
- package/lib/compiler/internal/runBuild.js.map +1 -1
- package/lib/compiler/internal/runSingleFileEmit.d.ts +10 -1
- package/lib/compiler/internal/runSingleFileEmit.js +14 -1
- package/lib/compiler/internal/runSingleFileEmit.js.map +1 -1
- package/lib/compiler/internal/sharedHostHelpers.d.ts +5 -0
- package/lib/compiler/internal/sharedHostHelpers.js +6 -2
- package/lib/compiler/internal/sharedHostHelpers.js.map +1 -1
- package/lib/compiler/internal/spawnNative.d.ts +21 -0
- package/lib/compiler/internal/spawnNative.js +59 -0
- package/lib/compiler/internal/spawnNative.js.map +1 -0
- package/lib/compiler/internal/transformProjectInMemory.d.ts +15 -1
- package/lib/compiler/internal/transformProjectInMemory.js +57 -61
- package/lib/compiler/internal/transformProjectInMemory.js.map +1 -1
- package/lib/launcher/internal/getCompilerVersionText.js +7 -0
- package/lib/launcher/internal/getCompilerVersionText.js.map +1 -1
- package/lib/launcher/internal/prepareExecution.js +32 -0
- package/lib/launcher/internal/prepareExecution.js.map +1 -1
- package/lib/launcher/internal/resolveCacheDir.d.ts +9 -0
- package/lib/launcher/internal/resolveCacheDir.js +22 -0
- package/lib/launcher/internal/resolveCacheDir.js.map +1 -0
- package/lib/launcher/internal/resolveTtscserverBinary.js +2 -0
- package/lib/launcher/internal/resolveTtscserverBinary.js.map +1 -1
- package/lib/launcher/internal/runTtsc.d.ts +10 -0
- package/lib/launcher/internal/runTtsc.js +101 -16
- package/lib/launcher/internal/runTtsc.js.map +1 -1
- package/lib/launcher/internal/runTtscserver.js +10 -35
- package/lib/launcher/internal/runTtscserver.js.map +1 -1
- package/lib/launcher/internal/runTtsx.d.ts +8 -0
- package/lib/launcher/internal/runTtsx.js +33 -7
- package/lib/launcher/internal/runTtsx.js.map +1 -1
- package/lib/plugin/internal/buildSourcePlugin.d.ts +38 -0
- package/lib/plugin/internal/buildSourcePlugin.js +40 -17
- package/lib/plugin/internal/buildSourcePlugin.js.map +1 -1
- package/lib/plugin/internal/loadProjectPlugins.d.ts +26 -0
- package/lib/plugin/internal/loadProjectPlugins.js +32 -18
- package/lib/plugin/internal/loadProjectPlugins.js.map +1 -1
- package/lib/structures/ITtscCompilerTransformation.d.ts +15 -2
- package/lib/structures/internal/TtscSingleFileEmitOptions.d.ts +0 -2
- package/package.json +9 -9
- package/shim/ast/go.mod +9 -0
- package/shim/ast/go.sum +20 -0
- package/shim/ast/safe_text.go +86 -0
- package/shim/ast/shim.go +24 -0
- package/shim/ast/test/node_text_joins_multi_hop_qualified_name_test.go +32 -0
- package/shim/ast/test/node_text_joins_one_hop_qualified_name_test.go +31 -0
- package/shim/ast/test/node_text_returns_empty_for_nil_test.go +23 -0
- package/shim/ast/test/node_text_returns_identifier_text_test.go +27 -0
- package/shim/ast/test/node_text_skips_empty_qualified_left_test.go +30 -0
- package/shim/checker/shim.go +35 -0
- package/shim/core/shim.go +17 -0
- package/shim/diagnosticwriter/shim.go +4 -0
- package/shim/lsp/shim.go +3 -3
- package/shim/printer/shim.go +20 -0
- package/src/TtscCompiler.ts +7 -0
- package/src/compiler/internal/buildNativeCompiler.ts +23 -3
- package/src/compiler/internal/compileProjectInMemory.ts +34 -25
- package/src/compiler/internal/paths.ts +68 -0
- package/src/compiler/internal/project/readProjectConfig.ts +86 -1
- package/src/compiler/internal/project/resolveProjectConfig.ts +24 -1
- package/src/compiler/internal/resolveBinary.ts +17 -1
- package/src/compiler/internal/resolveEmittedJavaScript.ts +43 -12
- package/src/compiler/internal/resolveTsgo.ts +29 -1
- package/src/compiler/internal/runBuild.ts +110 -55
- package/src/compiler/internal/runSingleFileEmit.ts +14 -1
- package/src/compiler/internal/sharedHostHelpers.ts +7 -7
- package/src/compiler/internal/spawnNative.ts +64 -0
- package/src/compiler/internal/transformProjectInMemory.ts +47 -67
- package/src/launcher/internal/getCompilerVersionText.ts +7 -0
- package/src/launcher/internal/prepareExecution.ts +32 -0
- package/src/launcher/internal/resolveCacheDir.ts +19 -0
- package/src/launcher/internal/resolveTtscserverBinary.ts +2 -0
- package/src/launcher/internal/runTtsc.ts +120 -20
- package/src/launcher/internal/runTtscserver.ts +9 -1
- package/src/launcher/internal/runTtsx.ts +33 -8
- package/src/plugin/internal/buildSourcePlugin.ts +40 -14
- package/src/plugin/internal/loadProjectPlugins.ts +42 -18
- package/src/structures/ITtscCompilerTransformation.ts +15 -2
- package/src/structures/ITtscPlugin.ts +0 -1
- package/src/structures/internal/TtscSingleFileEmitOptions.ts +0 -2
- package/tools/gen_shims/main.go +43 -8
- package/utility/host.go +294 -245
|
@@ -7,7 +7,21 @@ exports.resolveTsgo = resolveTsgo;
|
|
|
7
7
|
const node_fs_1 = __importDefault(require("node:fs"));
|
|
8
8
|
const node_module_1 = require("node:module");
|
|
9
9
|
const node_path_1 = __importDefault(require("node:path"));
|
|
10
|
-
/**
|
|
10
|
+
/**
|
|
11
|
+
* Resolve the consumer project's TypeScript-Go preview binary and metadata.
|
|
12
|
+
*
|
|
13
|
+
* Resolution order:
|
|
14
|
+
*
|
|
15
|
+
* 1. `opts.binary` or `TTSC_TSGO_BINARY` env var — must be an existing absolute
|
|
16
|
+
* path; returns `{ binary, packageJson: "", packageRoot, version: "custom"
|
|
17
|
+
* }`.
|
|
18
|
+
* 2. `@typescript/native-preview` resolved from the project `cwd`.
|
|
19
|
+
* 3. `@typescript/native-preview` resolved from `opts.resolveFrom` (for test
|
|
20
|
+
* harnesses and embedders that anchor to a different directory).
|
|
21
|
+
*
|
|
22
|
+
* Throws a descriptive error when the package or platform binary is missing so
|
|
23
|
+
* callers never have to reason about undefined binary paths.
|
|
24
|
+
*/
|
|
11
25
|
function resolveTsgo(opts = {}) {
|
|
12
26
|
const env = opts.env ?? process.env;
|
|
13
27
|
const explicit = opts.binary ?? env.TTSC_TSGO_BINARY;
|
|
@@ -23,6 +37,8 @@ function resolveTsgo(opts = {}) {
|
|
|
23
37
|
};
|
|
24
38
|
}
|
|
25
39
|
const cwd = node_path_1.default.resolve(opts.cwd ?? process.cwd());
|
|
40
|
+
// Resolve the package.json of @typescript/native-preview.
|
|
41
|
+
// Try cwd first, then the optional resolveFrom anchor.
|
|
26
42
|
let packageJson;
|
|
27
43
|
packageJson =
|
|
28
44
|
resolveNativePreviewPackageJson(node_path_1.default.join(cwd, "package.json")) ??
|
|
@@ -65,6 +81,11 @@ function resolveTsgo(opts = {}) {
|
|
|
65
81
|
version: typeof manifest.version === "string" ? manifest.version : "unknown",
|
|
66
82
|
};
|
|
67
83
|
}
|
|
84
|
+
/**
|
|
85
|
+
* Attempt to resolve the `package.json` of `@typescript/native-preview`
|
|
86
|
+
* starting from `from` (a package.json path or directory). Returns `undefined`
|
|
87
|
+
* when the package is not resolvable from that location.
|
|
88
|
+
*/
|
|
68
89
|
function resolveNativePreviewPackageJson(from) {
|
|
69
90
|
try {
|
|
70
91
|
return (0, node_module_1.createRequire)(from).resolve("@typescript/native-preview/package.json");
|
|
@@ -73,6 +94,7 @@ function resolveNativePreviewPackageJson(from) {
|
|
|
73
94
|
return undefined;
|
|
74
95
|
}
|
|
75
96
|
}
|
|
97
|
+
/** Parse a JSON file and return the result as a plain object. */
|
|
76
98
|
function readPackageJson(file) {
|
|
77
99
|
return JSON.parse(node_fs_1.default.readFileSync(file, "utf8"));
|
|
78
100
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveTsgo.js","sourceRoot":"","sources":["../../../src/compiler/internal/resolveTsgo.ts"],"names":[],"mappings":";;;;;;AAAA,sDAAyB;AACzB,6CAA4C;AAC5C,0DAA6B;AAE7B
|
|
1
|
+
{"version":3,"file":"resolveTsgo.js","sourceRoot":"","sources":["../../../src/compiler/internal/resolveTsgo.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,9 +9,28 @@ export declare function runBuild(options?: TtscBuildOptions & {
|
|
|
9
9
|
skipDiagnosticsCheck?: boolean;
|
|
10
10
|
forceListEmittedFiles?: boolean;
|
|
11
11
|
}): TtscBuildResult;
|
|
12
|
+
/**
|
|
13
|
+
* Merge two `TtscBuildResult` values into one.
|
|
14
|
+
*
|
|
15
|
+
* - `status`: the right status wins unless it is 0 (failure propagates).
|
|
16
|
+
* - `diagnostics`: concatenated left then right.
|
|
17
|
+
* - `emittedFiles`: right wins when present, otherwise left is kept.
|
|
18
|
+
* - `stdout`/`stderr`: concatenated left then right.
|
|
19
|
+
*/
|
|
12
20
|
export declare function appendBuildOutput(left: TtscBuildResult, right: TtscBuildResult): TtscBuildResult;
|
|
21
|
+
/**
|
|
22
|
+
* `TtscBuildResult` with `diagnostics` made optional. Used internally when
|
|
23
|
+
* diagnostics are parsed lazily from stdout/stderr by `normalizeBuildOutput`.
|
|
24
|
+
*/
|
|
13
25
|
type PartialBuildResult = Omit<TtscBuildResult, "diagnostics"> & {
|
|
14
26
|
diagnostics?: ITtscCompilerDiagnostic[];
|
|
15
27
|
};
|
|
28
|
+
/**
|
|
29
|
+
* Normalise a raw spawn result into a `TtscBuildResult`.
|
|
30
|
+
*
|
|
31
|
+
* When `diagnostics` is absent they are parsed from the text output. When the
|
|
32
|
+
* process exited non-zero but stderr is empty and stdout is non-empty, stdout
|
|
33
|
+
* is moved to stderr so the error is visible to callers who only check stderr.
|
|
34
|
+
*/
|
|
16
35
|
export declare function normalizeBuildOutput(result: PartialBuildResult, cwd?: string): TtscBuildResult;
|
|
17
36
|
export {};
|
|
@@ -6,15 +6,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.runBuild = runBuild;
|
|
7
7
|
exports.appendBuildOutput = appendBuildOutput;
|
|
8
8
|
exports.normalizeBuildOutput = normalizeBuildOutput;
|
|
9
|
-
const node_child_process_1 = require("node:child_process");
|
|
10
|
-
const node_fs_1 = __importDefault(require("node:fs"));
|
|
11
9
|
const node_path_1 = __importDefault(require("node:path"));
|
|
12
10
|
const loadProjectPlugins_1 = require("../../plugin/internal/loadProjectPlugins");
|
|
13
11
|
const resolveProjectConfig_1 = require("./project/resolveProjectConfig");
|
|
14
12
|
const resolveBinary_1 = require("./resolveBinary");
|
|
15
13
|
const resolveTsgo_1 = require("./resolveTsgo");
|
|
16
14
|
const sharedHostHelpers_1 = require("./sharedHostHelpers");
|
|
17
|
-
|
|
15
|
+
const spawnNative_1 = require("./spawnNative");
|
|
16
|
+
/**
|
|
17
|
+
* Merge extra environment variables over `process.env`, always injecting
|
|
18
|
+
* `TTSC_NODE_BINARY` so child processes can re-invoke the same Node.js binary
|
|
19
|
+
* without searching `PATH`.
|
|
20
|
+
*/
|
|
18
21
|
function mergeEnv(extra) {
|
|
19
22
|
const base = {
|
|
20
23
|
...process.env,
|
|
@@ -24,6 +27,12 @@ function mergeEnv(extra) {
|
|
|
24
27
|
return base;
|
|
25
28
|
return { ...base, ...extra };
|
|
26
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* Build the environment for a native plugin spawn. Injects `TTSC_TSGO_BINARY`
|
|
32
|
+
* and `TTSC_TTSX_BINARY` alongside the base env from `mergeEnv`. For
|
|
33
|
+
* transform-stage plugins, also passes `TTSC_LINKED_PLUGINS_JSON` containing
|
|
34
|
+
* any linked sources so they run inside the same process as the host plugin.
|
|
35
|
+
*/
|
|
27
36
|
function nativePluginEnv(extra, execution, plugin) {
|
|
28
37
|
const env = mergeEnv({
|
|
29
38
|
TTSC_TSGO_BINARY: process.env.TTSC_TSGO_BINARY ?? execution.tsgo.binary,
|
|
@@ -39,40 +48,6 @@ function nativePluginEnv(extra, execution, plugin) {
|
|
|
39
48
|
}
|
|
40
49
|
return env;
|
|
41
50
|
}
|
|
42
|
-
function spawnBinary(binary, args, options) {
|
|
43
|
-
const viaNode = /\.(?:[cm]?js|ts)$/i.test(binary);
|
|
44
|
-
if (!viaNode) {
|
|
45
|
-
ensureExecutable(binary);
|
|
46
|
-
}
|
|
47
|
-
return (0, node_child_process_1.spawnSync)(viaNode ? process.execPath : binary, viaNode ? [binary, ...args] : [...args], {
|
|
48
|
-
cwd: options.cwd,
|
|
49
|
-
env: options.env,
|
|
50
|
-
encoding: options.encoding,
|
|
51
|
-
maxBuffer: 1024 * 1024 * 256,
|
|
52
|
-
windowsHide: true,
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
function ensureExecutable(binary) {
|
|
56
|
-
if (process.platform === "win32") {
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
try {
|
|
60
|
-
const mode = node_fs_1.default.statSync(binary).mode & 0o777;
|
|
61
|
-
if ((mode & 0o111) !== 0) {
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
node_fs_1.default.chmodSync(binary, mode | 0o755);
|
|
65
|
-
}
|
|
66
|
-
catch {
|
|
67
|
-
/* keep the original spawn error path */
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
function outputText(value) {
|
|
71
|
-
if (value == null) {
|
|
72
|
-
return "";
|
|
73
|
-
}
|
|
74
|
-
return typeof value === "string" ? value : value.toString("utf8");
|
|
75
|
-
}
|
|
76
51
|
/**
|
|
77
52
|
* Run `ttsc` against a tsconfig. Returns once the binary exits so the CLI can
|
|
78
53
|
* decide how to surface diagnostics. Does not throw on non-zero exit.
|
|
@@ -152,12 +127,21 @@ function runBuild(options = {}) {
|
|
|
152
127
|
});
|
|
153
128
|
return runTsgoBuild(execution, options, args);
|
|
154
129
|
}
|
|
130
|
+
/**
|
|
131
|
+
* Dispatch a build through the shared-host native plugin. The host plugin is
|
|
132
|
+
* the one that owns the process (non-linked); all other transform plugins ride
|
|
133
|
+
* inside it via the `--plugins-json` flag.
|
|
134
|
+
*/
|
|
155
135
|
function buildWithNativeCompilerPlugins(options, execution, plugins) {
|
|
156
136
|
const host = (0, sharedHostHelpers_1.selectSharedHostPlugin)(plugins);
|
|
157
137
|
return runNativePluginCommand(host, createNativeBuildArgs(execution, options, plugins), options, execution, "ttsc.build");
|
|
158
138
|
}
|
|
139
|
+
/**
|
|
140
|
+
* Run `tsgo -p <tsconfig> [extraArgs]` and return the normalized result. Used
|
|
141
|
+
* for the no-emit type-check pass that precedes file emission.
|
|
142
|
+
*/
|
|
159
143
|
function runTsgo(execution, extraArgs, options) {
|
|
160
|
-
const res =
|
|
144
|
+
const res = (0, spawnNative_1.spawnNative)(execution.tsgo.binary, [
|
|
161
145
|
"-p",
|
|
162
146
|
execution.tsconfig,
|
|
163
147
|
...extraArgs,
|
|
@@ -175,12 +159,17 @@ function runTsgo(execution, extraArgs, options) {
|
|
|
175
159
|
}
|
|
176
160
|
return normalizeBuildOutput({
|
|
177
161
|
status: res.status ?? 1,
|
|
178
|
-
stdout: outputText(res.stdout),
|
|
179
|
-
stderr: outputText(res.stderr),
|
|
162
|
+
stdout: (0, spawnNative_1.outputText)(res.stdout),
|
|
163
|
+
stderr: (0, spawnNative_1.outputText)(res.stderr),
|
|
180
164
|
}, execution.projectRoot);
|
|
181
165
|
}
|
|
166
|
+
/**
|
|
167
|
+
* Run `tsgo` with the full emit arguments and parse `TSFILE:` lines from stdout
|
|
168
|
+
* into `emittedFiles`. The TSFILE lines are stripped before the result is
|
|
169
|
+
* returned so they do not appear in the user-facing output.
|
|
170
|
+
*/
|
|
182
171
|
function runTsgoBuild(execution, options, args) {
|
|
183
|
-
const res =
|
|
172
|
+
const res = (0, spawnNative_1.spawnNative)(execution.tsgo.binary, args, {
|
|
184
173
|
cwd: execution.projectRoot,
|
|
185
174
|
env: mergeEnv(options.env),
|
|
186
175
|
encoding: "utf8",
|
|
@@ -193,8 +182,8 @@ function runTsgoBuild(execution, options, args) {
|
|
|
193
182
|
}
|
|
194
183
|
const result = {
|
|
195
184
|
status: res.status ?? 1,
|
|
196
|
-
stdout: outputText(res.stdout),
|
|
197
|
-
stderr: outputText(res.stderr),
|
|
185
|
+
stdout: (0, spawnNative_1.outputText)(res.stdout),
|
|
186
|
+
stderr: (0, spawnNative_1.outputText)(res.stderr),
|
|
198
187
|
};
|
|
199
188
|
const emittedFiles = parseEmittedFiles(result.stdout);
|
|
200
189
|
if (emittedFiles.length !== 0) {
|
|
@@ -202,6 +191,7 @@ function runTsgoBuild(execution, options, args) {
|
|
|
202
191
|
}
|
|
203
192
|
return normalizeBuildOutput({ ...result, emittedFiles }, execution.projectRoot);
|
|
204
193
|
}
|
|
194
|
+
/** Build the argument list for a direct `tsgo` build invocation. */
|
|
205
195
|
function createTsgoBuildArgs(execution, options, flags) {
|
|
206
196
|
const args = ["-p", execution.tsconfig];
|
|
207
197
|
if (options.emit === true) {
|
|
@@ -219,9 +209,14 @@ function createTsgoBuildArgs(execution, options, flags) {
|
|
|
219
209
|
args.push(...createTsgoDiagnosticArgs(options));
|
|
220
210
|
return args;
|
|
221
211
|
}
|
|
212
|
+
/**
|
|
213
|
+
* Return `["--pretty", "false"]` when structured diagnostics are requested so
|
|
214
|
+
* that the output can be parsed line-by-line, or an empty array otherwise.
|
|
215
|
+
*/
|
|
222
216
|
function createTsgoDiagnosticArgs(options) {
|
|
223
217
|
return options.structuredDiagnostics === true ? ["--pretty", "false"] : [];
|
|
224
218
|
}
|
|
219
|
+
/** Build the argument list for a native plugin `build`/`check` invocation. */
|
|
225
220
|
function createNativeBuildArgs(execution, options, plugins) {
|
|
226
221
|
const args = [
|
|
227
222
|
options.emit === false ? "check" : "build",
|
|
@@ -246,6 +241,7 @@ function createNativeBuildArgs(execution, options, plugins) {
|
|
|
246
241
|
}
|
|
247
242
|
return args;
|
|
248
243
|
}
|
|
244
|
+
/** Build the argument list for a native plugin check/fix/format invocation. */
|
|
249
245
|
function createNativeCheckArgs(execution, options) {
|
|
250
246
|
const args = [
|
|
251
247
|
nativeCheckSubcommand(options),
|
|
@@ -277,6 +273,10 @@ function nativeCheckSubcommand(options) {
|
|
|
277
273
|
return "fix";
|
|
278
274
|
return "check";
|
|
279
275
|
}
|
|
276
|
+
/**
|
|
277
|
+
* Serialize the plugin list to a compact JSON string for `--plugins-json=`.
|
|
278
|
+
* Only the fields the native binary protocol requires are included.
|
|
279
|
+
*/
|
|
280
280
|
function serializeNativePlugins(plugins) {
|
|
281
281
|
return JSON.stringify(plugins.map((plugin) => ({
|
|
282
282
|
config: plugin.config,
|
|
@@ -284,6 +284,10 @@ function serializeNativePlugins(plugins) {
|
|
|
284
284
|
stage: plugin.stage,
|
|
285
285
|
})));
|
|
286
286
|
}
|
|
287
|
+
/**
|
|
288
|
+
* Run every check-stage plugin in order, short-circuiting on the first non-zero
|
|
289
|
+
* exit. Aggregates diagnostics and output across all check plugins.
|
|
290
|
+
*/
|
|
287
291
|
function runNativeCheckPlugins(options, execution) {
|
|
288
292
|
let out = {
|
|
289
293
|
diagnostics: [],
|
|
@@ -300,8 +304,13 @@ function runNativeCheckPlugins(options, execution) {
|
|
|
300
304
|
}
|
|
301
305
|
return out;
|
|
302
306
|
}
|
|
307
|
+
/**
|
|
308
|
+
* Spawn a single native plugin binary with the given args and return the
|
|
309
|
+
* normalized build result. `label` is used in the thrown error message so the
|
|
310
|
+
* caller's context (e.g. `"ttsc.check"` or `"ttsc.build"`) is preserved.
|
|
311
|
+
*/
|
|
303
312
|
function runNativePluginCommand(plugin, args, options, execution, label) {
|
|
304
|
-
const res =
|
|
313
|
+
const res = (0, spawnNative_1.spawnNative)(plugin.binary, args, {
|
|
305
314
|
cwd: execution.projectRoot,
|
|
306
315
|
env: nativePluginEnv(options.env, execution, plugin),
|
|
307
316
|
encoding: "utf8",
|
|
@@ -311,10 +320,18 @@ function runNativePluginCommand(plugin, args, options, execution, label) {
|
|
|
311
320
|
}
|
|
312
321
|
return normalizeBuildOutput({
|
|
313
322
|
status: res.status ?? 1,
|
|
314
|
-
stdout: outputText(res.stdout),
|
|
315
|
-
stderr: outputText(res.stderr),
|
|
323
|
+
stdout: (0, spawnNative_1.outputText)(res.stdout),
|
|
324
|
+
stderr: (0, spawnNative_1.outputText)(res.stderr),
|
|
316
325
|
}, execution.projectRoot);
|
|
317
326
|
}
|
|
327
|
+
/**
|
|
328
|
+
* Merge two `TtscBuildResult` values into one.
|
|
329
|
+
*
|
|
330
|
+
* - `status`: the right status wins unless it is 0 (failure propagates).
|
|
331
|
+
* - `diagnostics`: concatenated left then right.
|
|
332
|
+
* - `emittedFiles`: right wins when present, otherwise left is kept.
|
|
333
|
+
* - `stdout`/`stderr`: concatenated left then right.
|
|
334
|
+
*/
|
|
318
335
|
function appendBuildOutput(left, right) {
|
|
319
336
|
return normalizeBuildOutput({
|
|
320
337
|
diagnostics: [...left.diagnostics, ...right.diagnostics],
|
|
@@ -324,6 +341,11 @@ function appendBuildOutput(left, right) {
|
|
|
324
341
|
stderr: left.stderr + right.stderr,
|
|
325
342
|
});
|
|
326
343
|
}
|
|
344
|
+
/**
|
|
345
|
+
* Resolve all runtime context needed for a build: cwd, tsconfig path, project
|
|
346
|
+
* root, tsgo binary location, and the loaded native plugin list. Centralised
|
|
347
|
+
* here so every code path in `runBuild` shares the same resolution logic.
|
|
348
|
+
*/
|
|
327
349
|
function resolveExecutionContext(options) {
|
|
328
350
|
const cwd = node_path_1.default.resolve(options.cwd ?? process.cwd());
|
|
329
351
|
const tsconfig = (0, resolveProjectConfig_1.resolveProjectConfig)({
|
|
@@ -351,6 +373,10 @@ function resolveExecutionContext(options) {
|
|
|
351
373
|
tsconfig,
|
|
352
374
|
};
|
|
353
375
|
}
|
|
376
|
+
/**
|
|
377
|
+
* Extract `TSFILE: <path>` lines from tsgo stdout and return the absolute
|
|
378
|
+
* paths. tsgo emits these when `--listEmittedFiles` is passed.
|
|
379
|
+
*/
|
|
354
380
|
function parseEmittedFiles(stdout) {
|
|
355
381
|
const out = [];
|
|
356
382
|
for (const line of stdout.split(/\r?\n/)) {
|
|
@@ -361,6 +387,10 @@ function parseEmittedFiles(stdout) {
|
|
|
361
387
|
}
|
|
362
388
|
return out;
|
|
363
389
|
}
|
|
390
|
+
/**
|
|
391
|
+
* Remove `TSFILE:` lines from tsgo stdout so they do not appear in the
|
|
392
|
+
* user-facing output after they have been parsed into `emittedFiles`.
|
|
393
|
+
*/
|
|
364
394
|
function stripEmittedFileLines(stdout) {
|
|
365
395
|
return stdout
|
|
366
396
|
.split(/\r?\n/)
|
|
@@ -368,6 +398,13 @@ function stripEmittedFileLines(stdout) {
|
|
|
368
398
|
.join("\n")
|
|
369
399
|
.replace(/\n+$/, "");
|
|
370
400
|
}
|
|
401
|
+
/**
|
|
402
|
+
* Normalise a raw spawn result into a `TtscBuildResult`.
|
|
403
|
+
*
|
|
404
|
+
* When `diagnostics` is absent they are parsed from the text output. When the
|
|
405
|
+
* process exited non-zero but stderr is empty and stdout is non-empty, stdout
|
|
406
|
+
* is moved to stderr so the error is visible to callers who only check stderr.
|
|
407
|
+
*/
|
|
371
408
|
function normalizeBuildOutput(result, cwd) {
|
|
372
409
|
const diagnostics = result.diagnostics ?? parseCompilerDiagnostics(result, cwd);
|
|
373
410
|
if (result.status === 0 || result.stderr.trim().length !== 0) {
|
|
@@ -384,6 +421,11 @@ function normalizeBuildOutput(result, cwd) {
|
|
|
384
421
|
stderr: result.stdout,
|
|
385
422
|
};
|
|
386
423
|
}
|
|
424
|
+
/**
|
|
425
|
+
* Parse structured diagnostics from the combined stderr+stdout text when the
|
|
426
|
+
* caller did not supply pre-parsed diagnostics. ANSI escape codes are stripped
|
|
427
|
+
* and `TSFILE:` / `Found N errors` summary lines are skipped.
|
|
428
|
+
*/
|
|
387
429
|
function parseCompilerDiagnostics(result, cwd) {
|
|
388
430
|
const lines = stripAnsi(`${result.stderr}\n${result.stdout}`).split(/\r?\n/);
|
|
389
431
|
const out = [];
|
|
@@ -407,6 +449,16 @@ function parseCompilerDiagnostics(result, cwd) {
|
|
|
407
449
|
}
|
|
408
450
|
return out;
|
|
409
451
|
}
|
|
452
|
+
/**
|
|
453
|
+
* Try to parse a single line as a TypeScript compiler diagnostic in one of
|
|
454
|
+
* three formats:
|
|
455
|
+
*
|
|
456
|
+
* - `file:line:col - category TSxxxx: message` (colon-separated, tsgo style)
|
|
457
|
+
* - `file(line,col): category TSxxxx: message` (paren style, classic tsc)
|
|
458
|
+
* - `category TSxxxx: message` (global, no file)
|
|
459
|
+
*
|
|
460
|
+
* Returns `null` when the line does not match any format.
|
|
461
|
+
*/
|
|
410
462
|
function parseDiagnosticLine(line, cwd) {
|
|
411
463
|
const colonMatch = line.match(/^(.+):(\d+):(\d+)\s+-\s+(error|warning|suggestion|message)\s+([A-Z]+)?(\d+|[A-Z][A-Z0-9_-]*):\s+(.+)$/i);
|
|
412
464
|
if (colonMatch) {
|
|
@@ -441,12 +493,21 @@ function parseDiagnosticLine(line, cwd) {
|
|
|
441
493
|
messageText: globalMatch[4],
|
|
442
494
|
};
|
|
443
495
|
}
|
|
496
|
+
/**
|
|
497
|
+
* Return an absolute file path. When `file` is already absolute it is returned
|
|
498
|
+
* unchanged; relative paths are resolved against `cwd` when available.
|
|
499
|
+
*/
|
|
444
500
|
function normalizeDiagnosticFile(file, cwd) {
|
|
445
501
|
if (node_path_1.default.isAbsolute(file) || cwd === undefined) {
|
|
446
502
|
return file;
|
|
447
503
|
}
|
|
448
504
|
return node_path_1.default.resolve(cwd, file);
|
|
449
505
|
}
|
|
506
|
+
/**
|
|
507
|
+
* Map a raw category string (`"error"`, `"warning"`, `"suggestion"`,
|
|
508
|
+
* `"message"`) to the canonical `ITtscCompilerDiagnostic.Category`. Any
|
|
509
|
+
* unrecognised value is coerced to `"error"`.
|
|
510
|
+
*/
|
|
450
511
|
function normalizeDiagnosticCategory(value) {
|
|
451
512
|
const lowered = value.toLowerCase();
|
|
452
513
|
return lowered === "warning" ||
|
|
@@ -455,9 +516,14 @@ function normalizeDiagnosticCategory(value) {
|
|
|
455
516
|
? lowered
|
|
456
517
|
: "error";
|
|
457
518
|
}
|
|
519
|
+
/**
|
|
520
|
+
* Parse a diagnostic code as a number when it is all digits (TS numeric codes
|
|
521
|
+
* like `2322`), or keep it as a string for plugin-defined alphanumeric codes.
|
|
522
|
+
*/
|
|
458
523
|
function normalizeDiagnosticCode(value) {
|
|
459
524
|
return /^\d+$/.test(value) ? Number(value) : value;
|
|
460
525
|
}
|
|
526
|
+
/** Strip ANSI escape sequences from `text` for line-by-line diagnostic parsing. */
|
|
461
527
|
function stripAnsi(text) {
|
|
462
528
|
return text.replace(/\x1b\[[0-9;?]*[ -/]*[@-~]/g, "");
|
|
463
529
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runBuild.js","sourceRoot":"","sources":["../../../src/compiler/internal/runBuild.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runBuild.js","sourceRoot":"","sources":["../../../src/compiler/internal/runBuild.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
1
|
import type { TtscSingleFileEmitOptions } from "../../structures/internal/TtscSingleFileEmitOptions";
|
|
2
|
-
/**
|
|
2
|
+
/**
|
|
3
|
+
* Emit one source file by building its project into a temporary directory.
|
|
4
|
+
*
|
|
5
|
+
* The full project is compiled with `forceListEmittedFiles` so that the emitted
|
|
6
|
+
* file list is available for `resolveEmittedJavaScript`. The temp directory is
|
|
7
|
+
* always cleaned up in the `finally` block, even on error.
|
|
8
|
+
*
|
|
9
|
+
* @returns The transformed JavaScript source text.
|
|
10
|
+
* @throws When the build exits non-zero or no output is produced for the file.
|
|
11
|
+
*/
|
|
3
12
|
export declare function runSingleFileEmit(options: TtscSingleFileEmitOptions): string;
|
|
@@ -10,7 +10,16 @@ const node_path_1 = __importDefault(require("node:path"));
|
|
|
10
10
|
const resolveProjectConfig_1 = require("./project/resolveProjectConfig");
|
|
11
11
|
const resolveEmittedJavaScript_1 = require("./resolveEmittedJavaScript");
|
|
12
12
|
const runBuild_1 = require("./runBuild");
|
|
13
|
-
/**
|
|
13
|
+
/**
|
|
14
|
+
* Emit one source file by building its project into a temporary directory.
|
|
15
|
+
*
|
|
16
|
+
* The full project is compiled with `forceListEmittedFiles` so that the emitted
|
|
17
|
+
* file list is available for `resolveEmittedJavaScript`. The temp directory is
|
|
18
|
+
* always cleaned up in the `finally` block, even on error.
|
|
19
|
+
*
|
|
20
|
+
* @returns The transformed JavaScript source text.
|
|
21
|
+
* @throws When the build exits non-zero or no output is produced for the file.
|
|
22
|
+
*/
|
|
14
23
|
function runSingleFileEmit(options) {
|
|
15
24
|
const cwd = node_path_1.default.resolve(options.cwd ?? process.cwd());
|
|
16
25
|
const sourceFile = realpathIfExists(node_path_1.default.isAbsolute(options.file)
|
|
@@ -61,6 +70,10 @@ function runSingleFileEmit(options) {
|
|
|
61
70
|
node_fs_1.default.rmSync(outDir, { recursive: true, force: true });
|
|
62
71
|
}
|
|
63
72
|
}
|
|
73
|
+
/**
|
|
74
|
+
* Resolve symlinks on `file` when it exists; return the original path when the
|
|
75
|
+
* file is not yet on disk (e.g. a synthetic path used in tests).
|
|
76
|
+
*/
|
|
64
77
|
function realpathIfExists(file) {
|
|
65
78
|
try {
|
|
66
79
|
return node_fs_1.default.realpathSync(file);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runSingleFileEmit.js","sourceRoot":"","sources":["../../../src/compiler/internal/runSingleFileEmit.ts"],"names":[],"mappings":";;;;;;AAAA,sDAAyB;AACzB,sDAAyB;AACzB,0DAA6B;AAG7B,yEAAsE;AACtE,yEAAsE;AACtE,yCAAsC;AAEtC
|
|
1
|
+
{"version":3,"file":"runSingleFileEmit.js","sourceRoot":"","sources":["../../../src/compiler/internal/runSingleFileEmit.ts"],"names":[],"mappings":";;;;;;AAAA,sDAAyB;AACzB,sDAAyB;AACzB,0DAA6B;AAG7B,yEAAsE;AACtE,yEAAsE;AACtE,yCAAsC;AAEtC;;;;;;;;;GASG;AACH,2BAAkC,OAAkC;IAClE,MAAM,GAAG,GAAG,mBAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACvD,MAAM,UAAU,GAAG,gBAAgB,CACjC,mBAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;QAC3B,CAAC,CAAC,OAAO,CAAC,IAAI;QACd,CAAC,CAAC,mBAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CACpC,CAAC;IACF,MAAM,QAAQ,GAAG,IAAA,2CAAoB,EAAC;QACpC,GAAG;QACH,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC3B,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,mBAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,iBAAE,CAAC,WAAW,CAAC,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,MAAM,EAAE,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAC3E,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAA,mBAAQ,EAAC;YACtB,GAAG,OAAO;YACV,GAAG;YACH,IAAI,EAAE,IAAI;YACV,qBAAqB,EAAE,IAAI;YAC3B,MAAM;YACN,QAAQ;SACT,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,+BAA+B;gBAC7B,MAAM,CAAC,MAAM;gBACb,IAAI;gBACJ,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,CACnC,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,IAAA,mDAAwB,EAAC;YACvC,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,MAAM;YACN,WAAW;YACX,UAAU;SACX,CAAC,CAAC;QACH,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,iDAAiD,UAAU,EAAE,CAC9D,CAAC;QACJ,CAAC;QACD,MAAM,WAAW,GAAG,iBAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACrD,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,MAAM,MAAM,GAAG,mBAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC;gBACzC,CAAC,CAAC,OAAO,CAAC,GAAG;gBACb,CAAC,CAAC,mBAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;YACnC,iBAAE,CAAC,SAAS,CAAC,mBAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACxD,iBAAE,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;YAAS,CAAC;QACT,iBAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB,CAAC,IAAY;IACpC,IAAI,CAAC;QACH,OAAO,iBAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -23,4 +23,9 @@ export declare function assertSharedHostCompatibility(plugins: readonly ITtscLoa
|
|
|
23
23
|
* transform wins when one is present.
|
|
24
24
|
*/
|
|
25
25
|
export declare function selectSharedHostPlugin(plugins: readonly ITtscLoadedNativePlugin[]): ITtscLoadedNativePlugin;
|
|
26
|
+
/**
|
|
27
|
+
* Return every plugin whose transform source is linked into another host binary
|
|
28
|
+
* rather than owning the process. The host binary passes these via
|
|
29
|
+
* `TTSC_LINKED_PLUGINS_JSON` so their Go code runs inside the same process.
|
|
30
|
+
*/
|
|
26
31
|
export declare function linkedTransformPlugins(plugins: readonly ITtscLoadedNativePlugin[]): ITtscLoadedNativePlugin[];
|
|
@@ -49,9 +49,13 @@ function assertSharedHostCompatibility(plugins, pass) {
|
|
|
49
49
|
* transform wins when one is present.
|
|
50
50
|
*/
|
|
51
51
|
function selectSharedHostPlugin(plugins) {
|
|
52
|
-
return
|
|
53
|
-
plugins[0]);
|
|
52
|
+
return plugins.find((plugin) => !isLinkedTransform(plugin)) ?? plugins[0];
|
|
54
53
|
}
|
|
54
|
+
/**
|
|
55
|
+
* Return every plugin whose transform source is linked into another host binary
|
|
56
|
+
* rather than owning the process. The host binary passes these via
|
|
57
|
+
* `TTSC_LINKED_PLUGINS_JSON` so their Go code runs inside the same process.
|
|
58
|
+
*/
|
|
55
59
|
function linkedTransformPlugins(plugins) {
|
|
56
60
|
return plugins.filter(isLinkedTransform);
|
|
57
61
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharedHostHelpers.js","sourceRoot":"","sources":["../../../src/compiler/internal/sharedHostHelpers.ts"],"names":[],"mappings":";;;;;;AAEA;;;GAGG;AACH,
|
|
1
|
+
{"version":3,"file":"sharedHostHelpers.js","sourceRoot":"","sources":["../../../src/compiler/internal/sharedHostHelpers.ts"],"names":[],"mappings":";;;;;;AAEA;;;GAGG;AACH,2BAAkC,MAA+B;IAC/D,OAAO,MAAM,CAAC,KAAK,KAAK,WAAW,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC;AAClE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,uCACE,OAA2C,EAC3C,IAAiC;IAEjC,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACtE,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO;IACT,CAAC;IACD,MAAM,aAAa,GAAG;QACpB,GAAG,IAAI,GAAG,CACR,OAAO;aACJ,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;aAC9C,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAClC;KACF,CAAC;IACF,IAAI,aAAa,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QAC9B,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GACV,IAAI,KAAK,MAAM;QACb,CAAC,CAAC,8DAA8D;QAChE,CAAC,CAAC,2EAA2E,CAAC;IAClF,MAAM,IAAI,KAAK,CACb,QAAQ;QACN,MAAM;QACN,iEAAiE,CACpE,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,gCACE,OAA2C;IAE3C,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAE,CAAC;AAC7E,CAAC;AAED;;;;GAIG;AACH,gCACE,OAA2C;IAE3C,OAAO,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAC3C,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Spawn a native binary (or a Node.js script when the path has a JS/TS
|
|
3
|
+
* extension) with the given args and return the `spawnSync` result. Sets a
|
|
4
|
+
* generous 256 MiB output buffer so large projects do not truncate.
|
|
5
|
+
*
|
|
6
|
+
* When `options.encoding` is omitted it defaults to `"utf8"`. Pass an explicit
|
|
7
|
+
* value when the caller needs a different encoding or raw `Buffer` output.
|
|
8
|
+
*/
|
|
9
|
+
export declare function spawnNative(binary: string, args: readonly string[], options: {
|
|
10
|
+
cwd?: string;
|
|
11
|
+
env?: NodeJS.ProcessEnv;
|
|
12
|
+
encoding?: BufferEncoding;
|
|
13
|
+
}): import("node:child_process").SpawnSyncReturns<string>;
|
|
14
|
+
/**
|
|
15
|
+
* Ensure the binary has the executable bit set on POSIX systems. Silently skips
|
|
16
|
+
* on Windows and swallows `chmod` errors to let the original spawn error
|
|
17
|
+
* surface instead of masking it with a permission error.
|
|
18
|
+
*/
|
|
19
|
+
export declare function ensureExecutable(binary: string): void;
|
|
20
|
+
/** Coerce a `spawnSync` output value to a plain string, defaulting to `""`. */
|
|
21
|
+
export declare function outputText(value: string | Buffer | null | undefined): string;
|