@typespec/compiler 0.47.0-dev.0 → 0.47.0-dev.10
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/dist/manifest.js +2 -2
- package/dist/src/core/checker.d.ts.map +1 -1
- package/dist/src/core/checker.js +103 -18
- package/dist/src/core/checker.js.map +1 -1
- package/dist/src/core/cli/{args.d.ts → actions/compile/args.d.ts} +3 -2
- package/dist/src/core/cli/actions/compile/args.d.ts.map +1 -0
- package/dist/src/core/cli/{args.js → actions/compile/args.js} +11 -6
- package/dist/src/core/cli/actions/compile/args.js.map +1 -0
- package/dist/src/core/cli/actions/compile/compile.d.ts +7 -0
- package/dist/src/core/cli/actions/compile/compile.d.ts.map +1 -0
- package/dist/src/core/cli/actions/compile/compile.js +105 -0
- package/dist/src/core/cli/actions/compile/compile.js.map +1 -0
- package/dist/src/core/cli/actions/format.d.ts +9 -0
- package/dist/src/core/cli/actions/format.d.ts.map +1 -0
- package/dist/src/core/cli/actions/format.js +25 -0
- package/dist/src/core/cli/actions/format.js.map +1 -0
- package/dist/src/core/cli/actions/info.d.ts +6 -0
- package/dist/src/core/cli/actions/info.d.ts.map +1 -0
- package/dist/src/core/cli/actions/info.js +21 -0
- package/dist/src/core/cli/actions/info.js.map +1 -0
- package/dist/src/core/cli/actions/init.d.ts +7 -0
- package/dist/src/core/cli/actions/init.d.ts.map +1 -0
- package/dist/src/core/cli/actions/init.js +14 -0
- package/dist/src/core/cli/actions/init.js.map +1 -0
- package/dist/src/core/cli/actions/vs.d.ts +5 -0
- package/dist/src/core/cli/actions/vs.d.ts.map +1 -0
- package/dist/src/core/cli/actions/vs.js +73 -0
- package/dist/src/core/cli/actions/vs.js.map +1 -0
- package/dist/src/core/cli/actions/vscode.d.ts +11 -0
- package/dist/src/core/cli/actions/vscode.d.ts.map +1 -0
- package/dist/src/core/cli/actions/vscode.js +34 -0
- package/dist/src/core/cli/actions/vscode.js.map +1 -0
- package/dist/src/core/cli/cli.js +26 -363
- package/dist/src/core/cli/cli.js.map +1 -1
- package/dist/src/core/cli/index.d.ts +1 -1
- package/dist/src/core/cli/index.d.ts.map +1 -1
- package/dist/src/core/cli/index.js +1 -1
- package/dist/src/core/cli/index.js.map +1 -1
- package/dist/src/core/cli/install-vsix.d.ts +3 -0
- package/dist/src/core/cli/install-vsix.d.ts.map +1 -0
- package/dist/src/core/cli/install-vsix.js +42 -0
- package/dist/src/core/cli/install-vsix.js.map +1 -0
- package/dist/src/core/cli/types.d.ts +6 -0
- package/dist/src/core/cli/types.d.ts.map +1 -0
- package/dist/src/core/cli/types.js +2 -0
- package/dist/src/core/cli/types.js.map +1 -0
- package/dist/src/core/cli/utils.d.ts +35 -0
- package/dist/src/core/cli/utils.d.ts.map +1 -0
- package/dist/src/core/cli/utils.js +114 -0
- package/dist/src/core/cli/utils.js.map +1 -0
- package/dist/src/core/deprecation.d.ts +31 -0
- package/dist/src/core/deprecation.d.ts.map +1 -0
- package/dist/src/core/deprecation.js +48 -0
- package/dist/src/core/deprecation.js.map +1 -0
- package/dist/src/core/index.d.ts +1 -0
- package/dist/src/core/index.d.ts.map +1 -1
- package/dist/src/core/index.js +1 -0
- package/dist/src/core/index.js.map +1 -1
- package/dist/src/core/install.d.ts +2 -1
- package/dist/src/core/install.d.ts.map +1 -1
- package/dist/src/core/install.js +3 -5
- package/dist/src/core/install.js.map +1 -1
- package/dist/src/core/messages.d.ts +97 -2
- package/dist/src/core/messages.d.ts.map +1 -1
- package/dist/src/core/messages.js +33 -0
- package/dist/src/core/messages.js.map +1 -1
- package/dist/src/core/options.d.ts +4 -0
- package/dist/src/core/options.d.ts.map +1 -1
- package/dist/src/core/parser.js +1 -1
- package/dist/src/core/parser.js.map +1 -1
- package/dist/src/core/program.d.ts.map +1 -1
- package/dist/src/core/program.js +5 -3
- package/dist/src/core/program.js.map +1 -1
- package/dist/src/core/types.d.ts +9 -1
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/core/types.js.map +1 -1
- package/dist/src/core/util.d.ts +1 -0
- package/dist/src/core/util.d.ts.map +1 -1
- package/dist/src/core/util.js +1 -0
- package/dist/src/core/util.js.map +1 -1
- package/dist/src/emitter-framework/asset-emitter.js +2 -2
- package/dist/src/emitter-framework/asset-emitter.js.map +1 -1
- package/dist/src/emitter-framework/type-emitter.d.ts +1 -1
- package/dist/src/emitter-framework/type-emitter.d.ts.map +1 -1
- package/dist/src/emitter-framework/type-emitter.js +1 -1
- package/dist/src/emitter-framework/type-emitter.js.map +1 -1
- package/dist/src/emitter-framework/types.d.ts +1 -1
- package/dist/src/emitter-framework/types.d.ts.map +1 -1
- package/dist/src/init/init.js +1 -1
- package/dist/src/init/init.js.map +1 -1
- package/dist/src/lib/decorators.d.ts +1 -7
- package/dist/src/lib/decorators.d.ts.map +1 -1
- package/dist/src/lib/decorators.js +4 -11
- package/dist/src/lib/decorators.js.map +1 -1
- package/dist/src/server/completion.d.ts.map +1 -1
- package/dist/src/server/completion.js +9 -5
- package/dist/src/server/completion.js.map +1 -1
- package/lib/decorators.tsp +8 -2
- package/lib/lib.tsp +1 -1
- package/package.json +1 -1
- package/dist/src/core/cli/args.d.ts.map +0 -1
- package/dist/src/core/cli/args.js.map +0 -1
package/dist/src/core/cli/cli.js
CHANGED
|
@@ -6,27 +6,18 @@ try {
|
|
|
6
6
|
catch {
|
|
7
7
|
// package only present in dev.
|
|
8
8
|
}
|
|
9
|
-
/* eslint-disable no-console */
|
|
10
|
-
import { spawnSync } from "child_process";
|
|
11
|
-
import { mkdtemp, readdir, rm } from "fs/promises";
|
|
12
|
-
import watch from "node-watch";
|
|
13
|
-
import os from "os";
|
|
14
|
-
import { resolve } from "path";
|
|
15
|
-
import { fileURLToPath } from "url";
|
|
16
9
|
import yargs from "yargs";
|
|
17
|
-
import { loadTypeSpecConfigForPath } from "../../config/index.js";
|
|
18
|
-
import { InitTemplateError, initTypeSpecProject } from "../../init/index.js";
|
|
19
|
-
import { compilerAssert, logDiagnostics } from "../diagnostics.js";
|
|
20
|
-
import { resolveTypeSpecEntrypoint } from "../entrypoint-resolution.js";
|
|
21
|
-
import { findUnformattedTypeSpecFiles, formatTypeSpecFiles } from "../formatter-fs.js";
|
|
22
10
|
import { installTypeSpecDependencies } from "../install.js";
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
28
|
-
import {
|
|
11
|
+
import { typespecVersion } from "../util.js";
|
|
12
|
+
import { compileAction } from "./actions/compile/compile.js";
|
|
13
|
+
import { formatAction } from "./actions/format.js";
|
|
14
|
+
import { printInfoAction } from "./actions/info.js";
|
|
15
|
+
import { initAction } from "./actions/init.js";
|
|
16
|
+
import { installVSExtension, uninstallVSExtension } from "./actions/vs.js";
|
|
17
|
+
import { installVSCodeExtension, uninstallVSCodeExtension, } from "./actions/vscode.js";
|
|
18
|
+
import { handleInternalCompilerError, withCliHost, withCliHostAndDiagnostics, } from "./utils.js";
|
|
29
19
|
async function main() {
|
|
20
|
+
// eslint-disable-next-line no-console
|
|
30
21
|
console.log(`TypeSpec compiler v${typespecVersion}\n`);
|
|
31
22
|
await yargs(process.argv.slice(2))
|
|
32
23
|
.scriptName("tsp")
|
|
@@ -99,13 +90,16 @@ async function main() {
|
|
|
99
90
|
})
|
|
100
91
|
.option("warn-as-error", {
|
|
101
92
|
type: "boolean",
|
|
102
|
-
default: false,
|
|
103
93
|
describe: "Treat warnings as errors and return non-zero exit code if there are any.",
|
|
104
94
|
})
|
|
105
95
|
.option("no-emit", {
|
|
106
96
|
type: "boolean",
|
|
107
|
-
default: false,
|
|
108
97
|
describe: "Run emitters but do not emit any output.",
|
|
98
|
+
})
|
|
99
|
+
.option("ignore-deprecated", {
|
|
100
|
+
type: "boolean",
|
|
101
|
+
default: false,
|
|
102
|
+
describe: "Suppresses all `deprecated` diagnostics.",
|
|
109
103
|
})
|
|
110
104
|
.option("arg", {
|
|
111
105
|
type: "array",
|
|
@@ -113,23 +107,7 @@ async function main() {
|
|
|
113
107
|
string: true,
|
|
114
108
|
describe: "Key/value of arguments that are used in the configuration.",
|
|
115
109
|
});
|
|
116
|
-
},
|
|
117
|
-
const host = createCLICompilerHost(args);
|
|
118
|
-
const diagnostics = [];
|
|
119
|
-
const entrypoint = await resolveTypeSpecEntrypoint(host, resolvePath(process.cwd(), args.path), (diag) => diagnostics.push(diag));
|
|
120
|
-
if (entrypoint === undefined || diagnostics.length > 0) {
|
|
121
|
-
logDiagnostics(diagnostics, host.logSink);
|
|
122
|
-
process.exit(1);
|
|
123
|
-
}
|
|
124
|
-
const cliOptions = await getCompilerOptionsOrExit(host, entrypoint, args);
|
|
125
|
-
const program = await compileInput(host, entrypoint, cliOptions);
|
|
126
|
-
if (program.hasError()) {
|
|
127
|
-
process.exit(1);
|
|
128
|
-
}
|
|
129
|
-
if (program.emitters.length === 0 && !program.compilerOptions.noEmit) {
|
|
130
|
-
console.log("No emitter was configured, no output was generated. Use `--emit <emitterName>` to pick emitter or specify it in the typespec config.");
|
|
131
|
-
}
|
|
132
|
-
})
|
|
110
|
+
}, withCliHost((host, args) => compileAction(host, args)))
|
|
133
111
|
.command("code", "Manage VS Code Extension.", (cmd) => {
|
|
134
112
|
return cmd
|
|
135
113
|
.demandCommand(1, "No command specified.")
|
|
@@ -138,14 +116,14 @@ async function main() {
|
|
|
138
116
|
description: "Use VS Code Insiders",
|
|
139
117
|
default: false,
|
|
140
118
|
})
|
|
141
|
-
.command("install", "Install VS Code Extension", () => { }, (args) => installVSCodeExtension(
|
|
142
|
-
.command("uninstall", "Uninstall VS Code Extension", () => { }, (args) => uninstallVSCodeExtension(
|
|
119
|
+
.command("install", "Install VS Code Extension", () => { }, withCliHostAndDiagnostics((host, args) => installVSCodeExtension(host, args)))
|
|
120
|
+
.command("uninstall", "Uninstall VS Code Extension", () => { }, withCliHostAndDiagnostics((host, args) => uninstallVSCodeExtension(host, args)));
|
|
143
121
|
})
|
|
144
122
|
.command("vs", "Manage Visual Studio Extension.", (cmd) => {
|
|
145
123
|
return cmd
|
|
146
124
|
.demandCommand(1, "No command specified")
|
|
147
|
-
.command("install", "Install Visual Studio Extension.", () => { }, (
|
|
148
|
-
.command("uninstall", "Uninstall VS Extension", () => { }, () => uninstallVSExtension());
|
|
125
|
+
.command("install", "Install Visual Studio Extension.", () => { }, withCliHostAndDiagnostics((host) => installVSExtension(host)))
|
|
126
|
+
.command("uninstall", "Uninstall VS Extension", () => { }, withCliHostAndDiagnostics((host) => uninstallVSExtension(host)));
|
|
149
127
|
})
|
|
150
128
|
.command("format <include...>", "Format given list of TypeSpec files.", (cmd) => {
|
|
151
129
|
return cmd
|
|
@@ -166,335 +144,20 @@ async function main() {
|
|
|
166
144
|
type: "boolean",
|
|
167
145
|
describe: "Verify the files are formatted.",
|
|
168
146
|
});
|
|
169
|
-
},
|
|
170
|
-
if (args["check"]) {
|
|
171
|
-
const unformatted = await findUnformattedTypeSpecFiles(args["include"], {
|
|
172
|
-
exclude: args["exclude"],
|
|
173
|
-
debug: args.debug,
|
|
174
|
-
});
|
|
175
|
-
if (unformatted.length > 0) {
|
|
176
|
-
console.log(`Found ${unformatted.length} unformatted files:`);
|
|
177
|
-
for (const file of unformatted) {
|
|
178
|
-
console.log(` - ${file}`);
|
|
179
|
-
}
|
|
180
|
-
process.exit(1);
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
else {
|
|
184
|
-
await formatTypeSpecFiles(args["include"], {
|
|
185
|
-
exclude: args["exclude"],
|
|
186
|
-
debug: args.debug,
|
|
187
|
-
});
|
|
188
|
-
}
|
|
189
|
-
})
|
|
147
|
+
}, withCliHost((host, args) => formatAction(host, args)))
|
|
190
148
|
.command("init [templatesUrl]", "Create a new TypeSpec project.", (cmd) => cmd.positional("templatesUrl", {
|
|
191
149
|
description: "Url of the initialization template",
|
|
192
150
|
type: "string",
|
|
193
|
-
}),
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
await initTypeSpecProject(host, process.cwd(), args.templatesUrl);
|
|
197
|
-
}
|
|
198
|
-
catch (e) {
|
|
199
|
-
if (e instanceof InitTemplateError) {
|
|
200
|
-
logDiagnostics(e.diagnostics, host.logSink);
|
|
201
|
-
process.exit(1);
|
|
202
|
-
}
|
|
203
|
-
throw e;
|
|
204
|
-
}
|
|
205
|
-
})
|
|
206
|
-
.command("install", "Install typespec dependencies", () => { }, () => installTypeSpecDependencies(process.cwd()))
|
|
207
|
-
.command("info", "Show information about current TypeSpec compiler.", () => { }, (args) => printInfo(createCLICompilerHost(args)))
|
|
151
|
+
}), withCliHostAndDiagnostics((host, args) => initAction(host, args)))
|
|
152
|
+
.command("install", "Install typespec dependencies", () => { }, withCliHost((host) => installTypeSpecDependencies(host, process.cwd())))
|
|
153
|
+
.command("info", "Show information about current TypeSpec compiler.", () => { }, withCliHostAndDiagnostics((host) => printInfoAction(host)))
|
|
208
154
|
.version(typespecVersion)
|
|
209
155
|
.demandCommand(1, "You must use one of the supported commands.").argv;
|
|
210
156
|
}
|
|
211
|
-
function compileInput(host, path, compilerOptions, printSuccess = true) {
|
|
212
|
-
let compileRequested = false;
|
|
213
|
-
let currentCompilePromise = undefined;
|
|
214
|
-
const log = (message, ...optionalParams) => {
|
|
215
|
-
const prefix = compilerOptions.watchForChanges ? `[${new Date().toLocaleTimeString()}] ` : "";
|
|
216
|
-
console.log(`${prefix}${message}`, ...optionalParams);
|
|
217
|
-
};
|
|
218
|
-
const runCompilePromise = () => {
|
|
219
|
-
// Don't run the compiler if it's already running
|
|
220
|
-
if (!currentCompilePromise) {
|
|
221
|
-
// Clear the console before compiling in watch mode
|
|
222
|
-
if (compilerOptions.watchForChanges) {
|
|
223
|
-
console.clear();
|
|
224
|
-
}
|
|
225
|
-
currentCompilePromise = compile(host, resolve(path), compilerOptions)
|
|
226
|
-
.then(onCompileFinished)
|
|
227
|
-
.catch(internalCompilerError);
|
|
228
|
-
}
|
|
229
|
-
else {
|
|
230
|
-
compileRequested = true;
|
|
231
|
-
}
|
|
232
|
-
return currentCompilePromise;
|
|
233
|
-
};
|
|
234
|
-
const runCompile = () => void runCompilePromise();
|
|
235
|
-
const onCompileFinished = (program) => {
|
|
236
|
-
if (program.diagnostics.length > 0) {
|
|
237
|
-
log("Diagnostics were reported during compilation:\n");
|
|
238
|
-
logDiagnostics(program.diagnostics, host.logSink);
|
|
239
|
-
logDiagnosticCount(program.diagnostics);
|
|
240
|
-
}
|
|
241
|
-
else {
|
|
242
|
-
if (printSuccess) {
|
|
243
|
-
log("Compilation completed successfully.");
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
console.log(); // Insert a newline
|
|
247
|
-
currentCompilePromise = undefined;
|
|
248
|
-
if (compilerOptions.watchForChanges && compileRequested) {
|
|
249
|
-
compileRequested = false;
|
|
250
|
-
runCompile();
|
|
251
|
-
}
|
|
252
|
-
return program;
|
|
253
|
-
};
|
|
254
|
-
if (compilerOptions.watchForChanges) {
|
|
255
|
-
runCompile();
|
|
256
|
-
return new Promise((resolve, reject) => {
|
|
257
|
-
const watcher = watch(path, {
|
|
258
|
-
recursive: true,
|
|
259
|
-
filter: (f) => [".js", ".tsp", ".cadl"].indexOf(getAnyExtensionFromPath(f)) > -1 &&
|
|
260
|
-
!/node_modules/.test(f),
|
|
261
|
-
}, (e, name) => {
|
|
262
|
-
runCompile();
|
|
263
|
-
});
|
|
264
|
-
// Handle Ctrl+C for termination
|
|
265
|
-
process.on("SIGINT", () => {
|
|
266
|
-
watcher.close();
|
|
267
|
-
console.info("Terminating watcher...\n");
|
|
268
|
-
});
|
|
269
|
-
});
|
|
270
|
-
}
|
|
271
|
-
else {
|
|
272
|
-
return runCompilePromise();
|
|
273
|
-
}
|
|
274
|
-
}
|
|
275
|
-
function logDiagnosticCount(diagnostics) {
|
|
276
|
-
const errorCount = diagnostics.filter((x) => x.severity === "error").length;
|
|
277
|
-
const warningCount = diagnostics.filter((x) => x.severity === "warning").length;
|
|
278
|
-
const addSuffix = (count, suffix) => count > 1 ? `${count} ${suffix}s` : count === 1 ? `${count} ${suffix}` : undefined;
|
|
279
|
-
const errorText = addSuffix(errorCount, "error");
|
|
280
|
-
const warningText = addSuffix(warningCount, "warning");
|
|
281
|
-
console.log(`\nFound ${[errorText, warningText].filter((x) => x !== undefined).join(", ")}.`);
|
|
282
|
-
}
|
|
283
|
-
function createCLICompilerHost(args) {
|
|
284
|
-
return { ...NodeHost, logSink: createConsoleSink({ pretty: args.pretty }) };
|
|
285
|
-
}
|
|
286
|
-
async function getCompilerOptionsOrExit(host, entrypoint, args) {
|
|
287
|
-
const [options, diagnostics] = await getCompilerOptions(host, entrypoint, process.cwd(), args, process.env);
|
|
288
|
-
if (diagnostics.length > 0) {
|
|
289
|
-
logDiagnostics(diagnostics, host.logSink);
|
|
290
|
-
}
|
|
291
|
-
if (options === undefined) {
|
|
292
|
-
logDiagnosticCount(diagnostics);
|
|
293
|
-
process.exit(1);
|
|
294
|
-
}
|
|
295
|
-
return options;
|
|
296
|
-
}
|
|
297
|
-
async function installVsix(pkg, install, debug) {
|
|
298
|
-
var _a;
|
|
299
|
-
// download npm package to temporary directory
|
|
300
|
-
const temp = await mkdtemp(joinPaths(os.tmpdir(), "typespec"));
|
|
301
|
-
const npmArgs = ["install"];
|
|
302
|
-
// hide npm output unless --debug was passed to typespec
|
|
303
|
-
if (!debug) {
|
|
304
|
-
npmArgs.push("--silent");
|
|
305
|
-
}
|
|
306
|
-
// NOTE: Using cwd=temp with `--prefix .` instead of `--prefix ${temp}` to
|
|
307
|
-
// workaround https://github.com/npm/cli/issues/3256. It's still important
|
|
308
|
-
// to pass --prefix even though we're using cwd as otherwise, npm might
|
|
309
|
-
// find a package.json file in a parent directory and install to that
|
|
310
|
-
// directory.
|
|
311
|
-
npmArgs.push("--prefix", ".");
|
|
312
|
-
// To debug with a locally built package rather than pulling from npm,
|
|
313
|
-
// specify the full path to the packed .tgz using TYPESPEC_DEBUG_VSIX_TGZ
|
|
314
|
-
// environment variable.
|
|
315
|
-
npmArgs.push((_a = process.env.TYPESPEC_DEBUG_VSIX_TGZ) !== null && _a !== void 0 ? _a : pkg);
|
|
316
|
-
run("npm", npmArgs, { cwd: temp, debug });
|
|
317
|
-
// locate .vsix
|
|
318
|
-
const dir = joinPaths(temp, "node_modules", pkg);
|
|
319
|
-
const files = await readdir(dir);
|
|
320
|
-
const vsixPaths = [];
|
|
321
|
-
for (const file of files) {
|
|
322
|
-
if (file.endsWith(".vsix")) {
|
|
323
|
-
vsixPaths.push(joinPaths(dir, file));
|
|
324
|
-
}
|
|
325
|
-
}
|
|
326
|
-
compilerAssert(vsixPaths.length > 0, `Installed ${pkg} from npm, but didn't find any .vsix files in it.`);
|
|
327
|
-
// install extension
|
|
328
|
-
install(vsixPaths);
|
|
329
|
-
// delete temporary directory
|
|
330
|
-
await rm(temp, { recursive: true });
|
|
331
|
-
}
|
|
332
|
-
function runCode(codeArgs, insiders, debug) {
|
|
333
|
-
try {
|
|
334
|
-
run(insiders ? "code-insiders" : "code", codeArgs, {
|
|
335
|
-
// VS Code's CLI emits node warnings that we can't do anything about. Suppress them.
|
|
336
|
-
extraEnv: { NODE_NO_WARNINGS: "1" },
|
|
337
|
-
debug,
|
|
338
|
-
allowNotFound: true,
|
|
339
|
-
});
|
|
340
|
-
}
|
|
341
|
-
catch (error) {
|
|
342
|
-
if (error.code === "ENOENT") {
|
|
343
|
-
console.error(`error: Couldn't find VS Code 'code' command in PATH. Make sure you have the VS Code executable added to the system PATH.`);
|
|
344
|
-
if (process.platform === "darwin") {
|
|
345
|
-
console.log("See instruction for Mac OS here https://code.visualstudio.com/docs/setup/mac");
|
|
346
|
-
}
|
|
347
|
-
if (debug) {
|
|
348
|
-
console.log(error.stack);
|
|
349
|
-
}
|
|
350
|
-
process.exit(1);
|
|
351
|
-
}
|
|
352
|
-
}
|
|
353
|
-
}
|
|
354
|
-
async function installVSCodeExtension(insiders, debug) {
|
|
355
|
-
await installVsix("typespec-vscode", (vsixPaths) => {
|
|
356
|
-
runCode(["--install-extension", vsixPaths[0]], insiders, debug);
|
|
357
|
-
}, debug);
|
|
358
|
-
}
|
|
359
|
-
async function uninstallVSCodeExtension(insiders, debug) {
|
|
360
|
-
await runCode(["--uninstall-extension", "microsoft.typespec-vscode"], insiders, debug);
|
|
361
|
-
}
|
|
362
|
-
function getVsixInstallerPath() {
|
|
363
|
-
return getVSInstallerPath("resources/app/ServiceHub/Services/Microsoft.VisualStudio.Setup.Service/VSIXInstaller.exe");
|
|
364
|
-
}
|
|
365
|
-
function getVSWherePath() {
|
|
366
|
-
return getVSInstallerPath("vswhere.exe");
|
|
367
|
-
}
|
|
368
|
-
function getVSInstallerPath(relativePath) {
|
|
369
|
-
var _a;
|
|
370
|
-
if (process.platform !== "win32") {
|
|
371
|
-
console.error("error: Visual Studio extension is not supported on non-Windows.");
|
|
372
|
-
process.exit(1);
|
|
373
|
-
}
|
|
374
|
-
return joinPaths((_a = process.env["ProgramFiles(x86)"]) !== null && _a !== void 0 ? _a : "", "Microsoft Visual Studio/Installer", relativePath);
|
|
375
|
-
}
|
|
376
|
-
function isVSInstalled(versionRange) {
|
|
377
|
-
const vswhere = getVSWherePath();
|
|
378
|
-
const proc = run(vswhere, ["-property", "instanceid", "-prerelease", "-version", versionRange], {
|
|
379
|
-
stdio: [null, "pipe", "inherit"],
|
|
380
|
-
allowNotFound: true,
|
|
381
|
-
});
|
|
382
|
-
return proc.status === 0 && proc.stdout;
|
|
383
|
-
}
|
|
384
|
-
const VSIX_ALREADY_INSTALLED = 1001;
|
|
385
|
-
const VSIX_NOT_INSTALLED = 1002;
|
|
386
|
-
const VSIX_USER_CANCELED = 2005;
|
|
387
|
-
const VS_SUPPORTED_VERSION_RANGE = "[17.0,)";
|
|
388
|
-
async function installVSExtension(debug) {
|
|
389
|
-
const vsixInstaller = getVsixInstallerPath();
|
|
390
|
-
if (!isVSInstalled(VS_SUPPORTED_VERSION_RANGE)) {
|
|
391
|
-
console.error("error: No compatible version of Visual Studio found.");
|
|
392
|
-
process.exit(1);
|
|
393
|
-
}
|
|
394
|
-
await installVsix("typespec-vs", (vsixPaths) => {
|
|
395
|
-
for (const vsix of vsixPaths) {
|
|
396
|
-
console.log(`Installing extension for Visual Studio...`);
|
|
397
|
-
run(vsixInstaller, [vsix], {
|
|
398
|
-
allowedExitCodes: [VSIX_ALREADY_INSTALLED, VSIX_USER_CANCELED],
|
|
399
|
-
});
|
|
400
|
-
}
|
|
401
|
-
}, debug);
|
|
402
|
-
}
|
|
403
|
-
async function uninstallVSExtension() {
|
|
404
|
-
const vsixInstaller = getVsixInstallerPath();
|
|
405
|
-
run(vsixInstaller, ["/uninstall:88b9492f-c019-492c-8aeb-f325a7e4cf23"], {
|
|
406
|
-
allowedExitCodes: [VSIX_NOT_INSTALLED, VSIX_USER_CANCELED],
|
|
407
|
-
});
|
|
408
|
-
}
|
|
409
|
-
/**
|
|
410
|
-
* Print the resolved TypeSpec configuration.
|
|
411
|
-
*/
|
|
412
|
-
async function printInfo(host) {
|
|
413
|
-
var _a;
|
|
414
|
-
const cwd = process.cwd();
|
|
415
|
-
console.log(`Module: ${fileURLToPath(import.meta.url)}`);
|
|
416
|
-
const config = await loadTypeSpecConfigForPath(host, cwd);
|
|
417
|
-
const jsyaml = await import("js-yaml");
|
|
418
|
-
const excluded = ["diagnostics", "filename"];
|
|
419
|
-
const replacer = (emitter, value) => excluded.includes(emitter) ? undefined : value;
|
|
420
|
-
console.log(`User Config: ${(_a = config.filename) !== null && _a !== void 0 ? _a : "No config file found"}`);
|
|
421
|
-
console.log("-----------");
|
|
422
|
-
console.log(jsyaml.dump(config, { replacer }));
|
|
423
|
-
console.log("-----------");
|
|
424
|
-
logDiagnostics(config.diagnostics, host.logSink);
|
|
425
|
-
logDiagnosticCount(config.diagnostics);
|
|
426
|
-
if (config.diagnostics.some((d) => d.severity === "error")) {
|
|
427
|
-
process.exit(1);
|
|
428
|
-
}
|
|
429
|
-
}
|
|
430
|
-
// NOTE: We could also use { shell: true } to let windows find the .cmd, but that breaks
|
|
431
|
-
// ENOENT checking and handles spaces poorly in some cases.
|
|
432
|
-
const isCmdOnWindows = ["code", "code-insiders", "npm"];
|
|
433
|
-
function run(command, commandArgs, options) {
|
|
434
|
-
var _a, _b, _c;
|
|
435
|
-
if (options === null || options === void 0 ? void 0 : options.debug) {
|
|
436
|
-
if (options) {
|
|
437
|
-
console.log(options);
|
|
438
|
-
}
|
|
439
|
-
console.log(`> ${command} ${commandArgs.join(" ")}\n`);
|
|
440
|
-
}
|
|
441
|
-
if (options === null || options === void 0 ? void 0 : options.extraEnv) {
|
|
442
|
-
options.env = {
|
|
443
|
-
...((_a = options === null || options === void 0 ? void 0 : options.env) !== null && _a !== void 0 ? _a : process.env),
|
|
444
|
-
...options.extraEnv,
|
|
445
|
-
};
|
|
446
|
-
}
|
|
447
|
-
const baseCommandName = getBaseFileName(command);
|
|
448
|
-
if (process.platform === "win32" && isCmdOnWindows.includes(command)) {
|
|
449
|
-
command += ".cmd";
|
|
450
|
-
}
|
|
451
|
-
const finalOptions = {
|
|
452
|
-
encoding: "utf-8",
|
|
453
|
-
stdio: "inherit",
|
|
454
|
-
...(options !== null && options !== void 0 ? options : {}),
|
|
455
|
-
};
|
|
456
|
-
const proc = spawnSync(command, commandArgs, finalOptions);
|
|
457
|
-
if (options === null || options === void 0 ? void 0 : options.debug) {
|
|
458
|
-
console.log(proc);
|
|
459
|
-
}
|
|
460
|
-
if (proc.error) {
|
|
461
|
-
if (proc.error.code === "ENOENT" && !(options === null || options === void 0 ? void 0 : options.allowNotFound)) {
|
|
462
|
-
console.error(`error: Command '${baseCommandName}' not found.`);
|
|
463
|
-
if (options === null || options === void 0 ? void 0 : options.debug) {
|
|
464
|
-
console.log(proc.error.stack);
|
|
465
|
-
}
|
|
466
|
-
process.exit(1);
|
|
467
|
-
}
|
|
468
|
-
else {
|
|
469
|
-
throw proc.error;
|
|
470
|
-
}
|
|
471
|
-
}
|
|
472
|
-
if (proc.status !== 0 && !((_b = options === null || options === void 0 ? void 0 : options.allowedExitCodes) === null || _b === void 0 ? void 0 : _b.includes((_c = proc.status) !== null && _c !== void 0 ? _c : 0))) {
|
|
473
|
-
console.error(`error: Command '${baseCommandName} ${commandArgs.join(" ")}' failed with exit code ${proc.status}.`);
|
|
474
|
-
process.exit(proc.status || 1);
|
|
475
|
-
}
|
|
476
|
-
return proc;
|
|
477
|
-
}
|
|
478
|
-
function internalCompilerError(error) {
|
|
479
|
-
// NOTE: An expected error, like one thrown for bad input, shouldn't reach
|
|
480
|
-
// here, but be handled somewhere else. If we reach here, it should be
|
|
481
|
-
// considered a bug and therefore we should not suppress the stack trace as
|
|
482
|
-
// that risks losing it in the case of a bug that does not repro easily.
|
|
483
|
-
if (error instanceof ExternalError) {
|
|
484
|
-
// ExternalError should already have all the relevant information needed when thrown.
|
|
485
|
-
console.error(error);
|
|
486
|
-
}
|
|
487
|
-
else {
|
|
488
|
-
console.error("Internal compiler error!");
|
|
489
|
-
console.error("File issue at https://github.com/microsoft/typespec");
|
|
490
|
-
console.error();
|
|
491
|
-
console.error(error);
|
|
492
|
-
}
|
|
493
|
-
process.exit(1);
|
|
494
|
-
}
|
|
495
157
|
process.on("unhandledRejection", (error) => {
|
|
158
|
+
// eslint-disable-next-line no-console
|
|
496
159
|
console.error("Unhandled promise rejection!");
|
|
497
|
-
|
|
160
|
+
handleInternalCompilerError(error);
|
|
498
161
|
});
|
|
499
|
-
main().catch(
|
|
162
|
+
main().catch(handleInternalCompilerError);
|
|
500
163
|
//# sourceMappingURL=cli.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/core/cli/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/core/cli/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from "./args.js";
|
|
1
|
+
export * from "./actions/compile/args.js";
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/cli/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/cli/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from "./args.js";
|
|
1
|
+
export * from "./actions/compile/args.js";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/cli/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/cli/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-vsix.d.ts","sourceRoot":"","sources":["../../../../src/core/cli/install-vsix.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG7C,wBAAsB,WAAW,CAAC,CAAC,GAAG,IAAI,EACxC,IAAI,EAAE,eAAe,EACrB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,GAClC,OAAO,CAAC,CAAC,CAAC,CA6CZ"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { mkdtemp, readdir, rm } from "fs/promises";
|
|
2
|
+
import os from "os";
|
|
3
|
+
import { compilerAssert } from "../diagnostics.js";
|
|
4
|
+
import { joinPaths } from "../path-utils.js";
|
|
5
|
+
import { run } from "./utils.js";
|
|
6
|
+
export async function installVsix(host, pkg, install) {
|
|
7
|
+
var _a;
|
|
8
|
+
// download npm package to temporary directory
|
|
9
|
+
const temp = await mkdtemp(joinPaths(os.tmpdir(), "typespec"));
|
|
10
|
+
const npmArgs = ["install"];
|
|
11
|
+
// hide npm output unless --debug was passed to typespec
|
|
12
|
+
if (!host.debug) {
|
|
13
|
+
npmArgs.push("--silent");
|
|
14
|
+
}
|
|
15
|
+
// NOTE: Using cwd=temp with `--prefix .` instead of `--prefix ${temp}` to
|
|
16
|
+
// workaround https://github.com/npm/cli/issues/3256. It's still important
|
|
17
|
+
// to pass --prefix even though we're using cwd as otherwise, npm might
|
|
18
|
+
// find a package.json file in a parent directory and install to that
|
|
19
|
+
// directory.
|
|
20
|
+
npmArgs.push("--prefix", ".");
|
|
21
|
+
// To debug with a locally built package rather than pulling from npm,
|
|
22
|
+
// specify the full path to the packed .tgz using TYPESPEC_DEBUG_VSIX_TGZ
|
|
23
|
+
// environment variable.
|
|
24
|
+
npmArgs.push((_a = process.env.TYPESPEC_DEBUG_VSIX_TGZ) !== null && _a !== void 0 ? _a : pkg);
|
|
25
|
+
run(host, "npm", npmArgs, { cwd: temp });
|
|
26
|
+
// locate .vsix
|
|
27
|
+
const dir = joinPaths(temp, "node_modules", pkg);
|
|
28
|
+
const files = await readdir(dir);
|
|
29
|
+
const vsixPaths = [];
|
|
30
|
+
for (const file of files) {
|
|
31
|
+
if (file.endsWith(".vsix")) {
|
|
32
|
+
vsixPaths.push(joinPaths(dir, file));
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
compilerAssert(vsixPaths.length > 0, `Installed ${pkg} from npm, but didn't find any .vsix files in it.`);
|
|
36
|
+
// install extension
|
|
37
|
+
const result = install(vsixPaths);
|
|
38
|
+
// delete temporary directory
|
|
39
|
+
await rm(temp, { recursive: true });
|
|
40
|
+
return result;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=install-vsix.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-vsix.js","sourceRoot":"","sources":["../../../../src/core/cli/install-vsix.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEjC,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,IAAqB,EACrB,GAAW,EACX,OAAmC;;IAEnC,8CAA8C;IAC9C,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC;IAE5B,wDAAwD;IACxD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;QACf,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;KAC1B;IAED,0EAA0E;IAC1E,0EAA0E;IAC1E,uEAAuE;IACvE,qEAAqE;IACrE,aAAa;IACb,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAE9B,sEAAsE;IACtE,yEAAyE;IACzE,wBAAwB;IACxB,OAAO,CAAC,IAAI,CAAC,MAAA,OAAO,CAAC,GAAG,CAAC,uBAAuB,mCAAI,GAAG,CAAC,CAAC;IAEzD,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzC,eAAe;IACf,MAAM,GAAG,GAAG,SAAS,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;IACjC,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC1B,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;SACtC;KACF;IAED,cAAc,CACZ,SAAS,CAAC,MAAM,GAAG,CAAC,EACpB,aAAa,GAAG,mDAAmD,CACpE,CAAC;IAEF,oBAAoB;IACpB,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAElC,6BAA6B;IAC7B,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpC,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/cli/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAEnD,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACnD,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;CAChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/core/cli/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
3
|
+
import { SpawnSyncOptionsWithStringEncoding } from "child_process";
|
|
4
|
+
import { Diagnostic } from "../types.js";
|
|
5
|
+
import { CliCompilerHost } from "./types.js";
|
|
6
|
+
export interface RunOptions extends Partial<SpawnSyncOptionsWithStringEncoding> {
|
|
7
|
+
readonly debug?: boolean;
|
|
8
|
+
readonly extraEnv?: NodeJS.ProcessEnv;
|
|
9
|
+
readonly allowNotFound?: boolean;
|
|
10
|
+
readonly allowedExitCodes?: number[];
|
|
11
|
+
}
|
|
12
|
+
export interface CliHostArgs {
|
|
13
|
+
pretty?: boolean;
|
|
14
|
+
debug?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export declare function withCliHost<T extends CliHostArgs>(fn: (host: CliCompilerHost, args: T) => void | Promise<void>): (args: T) => void | Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Resolve Cli host automatically using cli args and handle diagnostics returned by the action.
|
|
19
|
+
*/
|
|
20
|
+
export declare function withCliHostAndDiagnostics<T extends CliHostArgs>(fn: (host: CliCompilerHost, args: T) => readonly Diagnostic[] | Promise<readonly Diagnostic[]>): (args: T) => void | Promise<void>;
|
|
21
|
+
export declare function createCLICompilerHost(options: CliHostArgs): CliCompilerHost;
|
|
22
|
+
export declare function run(host: CliCompilerHost, command: string, commandArgs: string[], options?: RunOptions): import("child_process").SpawnSyncReturns<string>;
|
|
23
|
+
export declare function logDiagnosticCount(diagnostics: readonly Diagnostic[]): void;
|
|
24
|
+
/**
|
|
25
|
+
* Handle an internal compiler error.
|
|
26
|
+
*
|
|
27
|
+
* NOTE: An expected error, like one thrown for bad input, shouldn't reach
|
|
28
|
+
* here, but be handled somewhere else. If we reach here, it should be
|
|
29
|
+
* considered a bug and therefore we should not suppress the stack trace as
|
|
30
|
+
* that risks losing it in the case of a bug that does not repro easily.
|
|
31
|
+
*
|
|
32
|
+
* @param error error thrown
|
|
33
|
+
*/
|
|
34
|
+
export declare function handleInternalCompilerError(error: unknown): never;
|
|
35
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/core/cli/utils.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,kCAAkC,EAAa,MAAM,eAAe,CAAC;AAO9E,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAK7C,MAAM,WAAW,UAAW,SAAQ,OAAO,CAAC,kCAAkC,CAAC;IAC7E,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACtC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAgB,WAAW,CAAC,CAAC,SAAS,WAAW,EAC/C,EAAE,EAAE,CAAC,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAC3D,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAKnC;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,WAAW,EAC7D,EAAE,EAAE,CAAC,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,KAAK,SAAS,UAAU,EAAE,GAAG,OAAO,CAAC,SAAS,UAAU,EAAE,CAAC,GAC7F,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAUnC;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,eAAe,CAI3E;AAED,wBAAgB,GAAG,CACjB,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EAAE,EACrB,OAAO,CAAC,EAAE,UAAU,oDAmDrB;AAED,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,QAWpE;AAED;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,CAcjE"}
|