@typespec/http-client-csharp 0.1.9-alpha.20250121.1 → 0.1.9-alpha.20250121.3
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/emitter/constants.d.ts +1 -0
- package/dist/emitter/constants.d.ts.map +1 -1
- package/dist/emitter/constants.js +1 -0
- package/dist/emitter/constants.js.map +1 -1
- package/dist/emitter/emitter.d.ts +7 -1
- package/dist/emitter/emitter.d.ts.map +1 -1
- package/dist/emitter/emitter.js +87 -48
- package/dist/emitter/emitter.js.map +1 -1
- package/dist/emitter/lib/lib.d.ts +22 -2
- package/dist/emitter/lib/lib.d.ts.map +1 -1
- package/dist/emitter/lib/lib.js +8 -0
- package/dist/emitter/lib/lib.js.map +1 -1
- package/dist/emitter/lib/utils.d.ts +8 -0
- package/dist/emitter/lib/utils.d.ts.map +1 -1
- package/dist/emitter/lib/utils.js +29 -0
- package/dist/emitter/lib/utils.js.map +1 -1
- package/dist/generator/Microsoft.Generator.CSharp.ClientModel.StubLibrary.dll +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.ClientModel.StubLibrary.pdb +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.ClientModel.dll +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.ClientModel.pdb +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.Customization.dll +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.Customization.pdb +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.Input.dll +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.Input.pdb +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.dll +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.pdb +0 -0
- package/dist/typespec-http-client-csharp.d.ts +29 -2
- package/package.json +1 -1
|
@@ -4,4 +4,5 @@ export declare const projectedNameClientKey = "client";
|
|
|
4
4
|
export declare const mockApiVersion = "0000-00-00";
|
|
5
5
|
export declare const tspOutputFileName = "tspCodeModel.json";
|
|
6
6
|
export declare const configurationFileName = "Configuration.json";
|
|
7
|
+
export declare const minSupportedDotNetSdkVersion = 8;
|
|
7
8
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../emitter/src/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,oBAAoB,SAAS,CAAC;AAC3C,eAAO,MAAM,sBAAsB,WAAW,CAAC;AAC/C,eAAO,MAAM,sBAAsB,WAAW,CAAC;AAC/C,eAAO,MAAM,cAAc,eAAe,CAAC;AAC3C,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AACrD,eAAO,MAAM,qBAAqB,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../emitter/src/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,oBAAoB,SAAS,CAAC;AAC3C,eAAO,MAAM,sBAAsB,WAAW,CAAC;AAC/C,eAAO,MAAM,sBAAsB,WAAW,CAAC;AAC/C,eAAO,MAAM,cAAc,eAAe,CAAC;AAC3C,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AACrD,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAC1D,eAAO,MAAM,4BAA4B,IAAI,CAAC"}
|
|
@@ -6,4 +6,5 @@ export const projectedNameClientKey = "client";
|
|
|
6
6
|
export const mockApiVersion = "0000-00-00";
|
|
7
7
|
export const tspOutputFileName = "tspCodeModel.json";
|
|
8
8
|
export const configurationFileName = "Configuration.json";
|
|
9
|
+
export const minSupportedDotNetSdkVersion = 8;
|
|
9
10
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../emitter/src/constants.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAE/F,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAC3C,MAAM,CAAC,MAAM,sBAAsB,GAAG,QAAQ,CAAC;AAC/C,MAAM,CAAC,MAAM,sBAAsB,GAAG,QAAQ,CAAC;AAC/C,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,CAAC;AAC3C,MAAM,CAAC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AACrD,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../emitter/src/constants.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAE/F,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAC3C,MAAM,CAAC,MAAM,sBAAsB,GAAG,QAAQ,CAAC;AAC/C,MAAM,CAAC,MAAM,sBAAsB,GAAG,QAAQ,CAAC;AAC/C,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,CAAC;AAC3C,MAAM,CAAC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AACrD,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAC1D,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC"}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
import { EmitContext } from "@typespec/compiler";
|
|
1
|
+
import { EmitContext, Program } from "@typespec/compiler";
|
|
2
2
|
import { NetEmitterOptions } from "./options.js";
|
|
3
3
|
export declare function $onEmit(context: EmitContext<NetEmitterOptions>): Promise<void>;
|
|
4
|
+
/** check the dotnet sdk installation.
|
|
5
|
+
* Report diagnostic if dotnet sdk is not installed or its version does not meet prerequisite
|
|
6
|
+
* @param program The typespec compiler program
|
|
7
|
+
* @param minVersionRequisite The minimum required major version
|
|
8
|
+
*/
|
|
9
|
+
export declare function validateDotNetSdk(program: Program, minMajorVersion: number): Promise<boolean>;
|
|
4
10
|
//# sourceMappingURL=emitter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitter.d.ts","sourceRoot":"","sources":["../../emitter/src/emitter.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,WAAW,
|
|
1
|
+
{"version":3,"file":"emitter.d.ts","sourceRoot":"","sources":["../../emitter/src/emitter.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,WAAW,EAKX,OAAO,EAER,MAAM,oBAAoB,CAAC;AAgB5B,OAAO,EAAE,iBAAiB,EAAuC,MAAM,cAAc,CAAC;AAwBtF,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,iBAAiB,CAAC,iBAmJpE;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,OAAO,CAAC,CAkBlB"}
|
package/dist/emitter/emitter.js
CHANGED
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
2
2
|
// Licensed under the MIT License. See License.txt in the project root for license information.
|
|
3
3
|
import { createSdkContext, UsageFlags } from "@azure-tools/typespec-client-generator-core";
|
|
4
|
-
import { getDirectoryPath, joinPaths, logDiagnostics, resolvePath, } from "@typespec/compiler";
|
|
5
|
-
import { spawn } from "child_process";
|
|
4
|
+
import { getDirectoryPath, joinPaths, logDiagnostics, NoTarget, resolvePath, } from "@typespec/compiler";
|
|
6
5
|
import fs, { statSync } from "fs";
|
|
7
6
|
import { PreserveType, stringifyRefs } from "json-serialize-refs";
|
|
8
7
|
import { dirname } from "path";
|
|
9
8
|
import { fileURLToPath } from "url";
|
|
10
|
-
import { configurationFileName, tspOutputFileName } from "./constants.js";
|
|
9
|
+
import { configurationFileName, minSupportedDotNetSdkVersion, tspOutputFileName, } from "./constants.js";
|
|
11
10
|
import { createModel } from "./lib/client-model-builder.js";
|
|
11
|
+
import { reportDiagnostic } from "./lib/lib.js";
|
|
12
12
|
import { LoggerLevel } from "./lib/log-level.js";
|
|
13
13
|
import { Logger } from "./lib/logger.js";
|
|
14
|
+
import { execAsync } from "./lib/utils.js";
|
|
14
15
|
import { resolveOptions, resolveOutputFolder } from "./options.js";
|
|
15
16
|
import { defaultSDKContextOptions } from "./sdk-context-options.js";
|
|
16
17
|
/**
|
|
@@ -95,23 +96,35 @@ export async function $onEmit(context) {
|
|
|
95
96
|
const generatorPath = resolvePath(projectRoot + "/dist/generator/Microsoft.Generator.CSharp.dll");
|
|
96
97
|
const command = `dotnet --roll-forward Major ${generatorPath} ${outputFolder} -p ${options["plugin-name"]}${constructCommandArg(newProjectOption)}${constructCommandArg(existingProjectOption)}${constructCommandArg(debugFlag)}`;
|
|
97
98
|
Logger.getInstance().info(command);
|
|
98
|
-
|
|
99
|
-
"
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
if (result.
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
99
|
+
try {
|
|
100
|
+
const result = await execAsync("dotnet", [
|
|
101
|
+
"--roll-forward",
|
|
102
|
+
"Major",
|
|
103
|
+
generatorPath,
|
|
104
|
+
outputFolder,
|
|
105
|
+
"-p",
|
|
106
|
+
options["plugin-name"],
|
|
107
|
+
newProjectOption,
|
|
108
|
+
existingProjectOption,
|
|
109
|
+
debugFlag,
|
|
110
|
+
], { stdio: "inherit" });
|
|
111
|
+
if (result.exitCode !== 0) {
|
|
112
|
+
const isValid = await validateDotNetSdk(sdkContext.program, minSupportedDotNetSdkVersion);
|
|
113
|
+
// if the dotnet sdk is valid, the error is not dependency issue, log it as normal
|
|
114
|
+
if (isValid) {
|
|
115
|
+
if (result.stderr)
|
|
116
|
+
Logger.getInstance().error(result.stderr);
|
|
117
|
+
if (result.stdout)
|
|
118
|
+
Logger.getInstance().verbose(result.stdout);
|
|
119
|
+
throw new Error(`Failed to generate the library. Exit code: ${result.exitCode}`);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
catch (error) {
|
|
124
|
+
const isValid = await validateDotNetSdk(sdkContext.program, minSupportedDotNetSdkVersion);
|
|
125
|
+
// if the dotnet sdk is valid, the error is not dependency issue, log it as normal
|
|
126
|
+
if (isValid)
|
|
127
|
+
throw new Error(error);
|
|
115
128
|
}
|
|
116
129
|
if (!options["save-inputs"]) {
|
|
117
130
|
// delete
|
|
@@ -122,36 +135,62 @@ export async function $onEmit(context) {
|
|
|
122
135
|
}
|
|
123
136
|
}
|
|
124
137
|
}
|
|
125
|
-
|
|
126
|
-
|
|
138
|
+
/** check the dotnet sdk installation.
|
|
139
|
+
* Report diagnostic if dotnet sdk is not installed or its version does not meet prerequisite
|
|
140
|
+
* @param program The typespec compiler program
|
|
141
|
+
* @param minVersionRequisite The minimum required major version
|
|
142
|
+
*/
|
|
143
|
+
export async function validateDotNetSdk(program, minMajorVersion) {
|
|
144
|
+
try {
|
|
145
|
+
const result = await execAsync("dotnet", ["--version"], { stdio: "pipe" });
|
|
146
|
+
return validateDotNetSdkVersion(program, result.stdout, minMajorVersion);
|
|
147
|
+
}
|
|
148
|
+
catch (error) {
|
|
149
|
+
if (error && "code" in error && error["code"] === "ENOENT") {
|
|
150
|
+
reportDiagnostic(program, {
|
|
151
|
+
code: "invalid-dotnet-sdk-dependency",
|
|
152
|
+
messageId: "missing",
|
|
153
|
+
format: {
|
|
154
|
+
dotnetMajorVersion: `${minMajorVersion}`,
|
|
155
|
+
downloadUrl: "https://dotnet.microsoft.com/",
|
|
156
|
+
},
|
|
157
|
+
target: NoTarget,
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
return false;
|
|
161
|
+
}
|
|
127
162
|
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
exitCode: exitCode ?? -1,
|
|
148
|
-
stdio: Buffer.concat(stdio).toString(),
|
|
149
|
-
stdout: Buffer.concat(stdout).toString(),
|
|
150
|
-
stderr: Buffer.concat(stderr).toString(),
|
|
151
|
-
proc: child,
|
|
163
|
+
function validateDotNetSdkVersion(program, version, minMajorVersion) {
|
|
164
|
+
if (version) {
|
|
165
|
+
const dotIndex = version.indexOf(".");
|
|
166
|
+
const firstPart = dotIndex === -1 ? version : version.substring(0, dotIndex);
|
|
167
|
+
const major = Number(firstPart);
|
|
168
|
+
if (isNaN(major)) {
|
|
169
|
+
Logger.getInstance().error("Invalid .NET SDK version.");
|
|
170
|
+
return false;
|
|
171
|
+
}
|
|
172
|
+
if (major < minMajorVersion) {
|
|
173
|
+
reportDiagnostic(program, {
|
|
174
|
+
code: "invalid-dotnet-sdk-dependency",
|
|
175
|
+
messageId: "invalidVersion",
|
|
176
|
+
format: {
|
|
177
|
+
installedVersion: version,
|
|
178
|
+
dotnetMajorVersion: `${minMajorVersion}`,
|
|
179
|
+
downloadUrl: "https://dotnet.microsoft.com/",
|
|
180
|
+
},
|
|
181
|
+
target: NoTarget,
|
|
152
182
|
});
|
|
153
|
-
|
|
154
|
-
|
|
183
|
+
return false;
|
|
184
|
+
}
|
|
185
|
+
return true;
|
|
186
|
+
}
|
|
187
|
+
else {
|
|
188
|
+
Logger.getInstance().error("Cannot get the installed .NET SDK version.");
|
|
189
|
+
return false;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
function constructCommandArg(arg) {
|
|
193
|
+
return arg !== "" ? ` ${arg}` : "";
|
|
155
194
|
}
|
|
156
195
|
function transformJSONProperties(key, value) {
|
|
157
196
|
// convertUsageNumbersToStrings
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../emitter/src/emitter.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAE/F,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAEL,gBAAgB,EAChB,SAAS,EACT,cAAc,
|
|
1
|
+
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../emitter/src/emitter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const reportDiagnostic: <C extends "no-apiVersion" | "no-route" | "invalid-name" | "general-warning" | "general-error" | "no-root-client" | "unsupported-auth", M extends keyof {
|
|
1
|
+
export declare const reportDiagnostic: <C extends "no-apiVersion" | "no-route" | "invalid-name" | "general-warning" | "general-error" | "invalid-dotnet-sdk-dependency" | "no-root-client" | "unsupported-auth", M extends keyof {
|
|
2
2
|
"no-apiVersion": {
|
|
3
3
|
readonly default: import("@typespec/compiler").CallableMessage<["service"]>;
|
|
4
4
|
};
|
|
@@ -14,6 +14,11 @@ export declare const reportDiagnostic: <C extends "no-apiVersion" | "no-route" |
|
|
|
14
14
|
"general-error": {
|
|
15
15
|
readonly default: import("@typespec/compiler").CallableMessage<["message"]>;
|
|
16
16
|
};
|
|
17
|
+
"invalid-dotnet-sdk-dependency": {
|
|
18
|
+
readonly default: import("@typespec/compiler").CallableMessage<[]>;
|
|
19
|
+
readonly missing: import("@typespec/compiler").CallableMessage<["dotnetMajorVersion", "downloadUrl"]>;
|
|
20
|
+
readonly invalidVersion: import("@typespec/compiler").CallableMessage<["installedVersion", "dotnetMajorVersion", "downloadUrl"]>;
|
|
21
|
+
};
|
|
17
22
|
"no-root-client": {
|
|
18
23
|
readonly default: "Cannot generate CSharp SDK since no public root client is defined in typespec file.";
|
|
19
24
|
};
|
|
@@ -36,13 +41,18 @@ export declare const reportDiagnostic: <C extends "no-apiVersion" | "no-route" |
|
|
|
36
41
|
"general-error": {
|
|
37
42
|
readonly default: import("@typespec/compiler").CallableMessage<["message"]>;
|
|
38
43
|
};
|
|
44
|
+
"invalid-dotnet-sdk-dependency": {
|
|
45
|
+
readonly default: import("@typespec/compiler").CallableMessage<[]>;
|
|
46
|
+
readonly missing: import("@typespec/compiler").CallableMessage<["dotnetMajorVersion", "downloadUrl"]>;
|
|
47
|
+
readonly invalidVersion: import("@typespec/compiler").CallableMessage<["installedVersion", "dotnetMajorVersion", "downloadUrl"]>;
|
|
48
|
+
};
|
|
39
49
|
"no-root-client": {
|
|
40
50
|
readonly default: "Cannot generate CSharp SDK since no public root client is defined in typespec file.";
|
|
41
51
|
};
|
|
42
52
|
"unsupported-auth": {
|
|
43
53
|
readonly default: import("@typespec/compiler").CallableMessage<["message"]>;
|
|
44
54
|
};
|
|
45
|
-
}, C, M>) => void, createDiagnostic: <C extends "no-apiVersion" | "no-route" | "invalid-name" | "general-warning" | "general-error" | "no-root-client" | "unsupported-auth", M extends keyof {
|
|
55
|
+
}, C, M>) => void, createDiagnostic: <C extends "no-apiVersion" | "no-route" | "invalid-name" | "general-warning" | "general-error" | "invalid-dotnet-sdk-dependency" | "no-root-client" | "unsupported-auth", M extends keyof {
|
|
46
56
|
"no-apiVersion": {
|
|
47
57
|
readonly default: import("@typespec/compiler").CallableMessage<["service"]>;
|
|
48
58
|
};
|
|
@@ -58,6 +68,11 @@ export declare const reportDiagnostic: <C extends "no-apiVersion" | "no-route" |
|
|
|
58
68
|
"general-error": {
|
|
59
69
|
readonly default: import("@typespec/compiler").CallableMessage<["message"]>;
|
|
60
70
|
};
|
|
71
|
+
"invalid-dotnet-sdk-dependency": {
|
|
72
|
+
readonly default: import("@typespec/compiler").CallableMessage<[]>;
|
|
73
|
+
readonly missing: import("@typespec/compiler").CallableMessage<["dotnetMajorVersion", "downloadUrl"]>;
|
|
74
|
+
readonly invalidVersion: import("@typespec/compiler").CallableMessage<["installedVersion", "dotnetMajorVersion", "downloadUrl"]>;
|
|
75
|
+
};
|
|
61
76
|
"no-root-client": {
|
|
62
77
|
readonly default: "Cannot generate CSharp SDK since no public root client is defined in typespec file.";
|
|
63
78
|
};
|
|
@@ -80,6 +95,11 @@ export declare const reportDiagnostic: <C extends "no-apiVersion" | "no-route" |
|
|
|
80
95
|
"general-error": {
|
|
81
96
|
readonly default: import("@typespec/compiler").CallableMessage<["message"]>;
|
|
82
97
|
};
|
|
98
|
+
"invalid-dotnet-sdk-dependency": {
|
|
99
|
+
readonly default: import("@typespec/compiler").CallableMessage<[]>;
|
|
100
|
+
readonly missing: import("@typespec/compiler").CallableMessage<["dotnetMajorVersion", "downloadUrl"]>;
|
|
101
|
+
readonly invalidVersion: import("@typespec/compiler").CallableMessage<["installedVersion", "dotnetMajorVersion", "downloadUrl"]>;
|
|
102
|
+
};
|
|
83
103
|
"no-root-client": {
|
|
84
104
|
readonly default: "Cannot generate CSharp SDK since no public root client is defined in typespec file.";
|
|
85
105
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../../emitter/src/lib/lib.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../../emitter/src/lib/lib.ts"],"names":[],"mappings":"AAkEA,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sDAAE,SAAS,wFAAS,CAAC"}
|
package/dist/emitter/lib/lib.js
CHANGED
|
@@ -35,6 +35,14 @@ const $lib = createTypeSpecLibrary({
|
|
|
35
35
|
default: paramMessage `${"message"}`,
|
|
36
36
|
},
|
|
37
37
|
},
|
|
38
|
+
"invalid-dotnet-sdk-dependency": {
|
|
39
|
+
severity: "error",
|
|
40
|
+
messages: {
|
|
41
|
+
default: paramMessage `Invalid .NET SDK installed.`,
|
|
42
|
+
missing: paramMessage `The dotnet command was not found in the PATH. Please install the .NET SDK version ${"dotnetMajorVersion"} or above. Guidance for installing the .NET SDK can be found at ${"downloadUrl"}.`,
|
|
43
|
+
invalidVersion: paramMessage `The .NET SDK found is version ${"installedVersion"}. Please install the .NET SDK ${"dotnetMajorVersion"} or above and ensure there is no global.json in the file system requesting a lower version. Guidance for installing the .NET SDK can be found at ${"downloadUrl"}.`,
|
|
44
|
+
},
|
|
45
|
+
},
|
|
38
46
|
"no-root-client": {
|
|
39
47
|
severity: "error",
|
|
40
48
|
messages: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../../../emitter/src/lib/lib.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAE/F,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAExD,MAAM,IAAI,GAAG,qBAAqB,CAAC;IACjC,IAAI,EAAE,8BAA8B;IACpC,WAAW,EAAE;QACX,eAAe,EAAE;YACf,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,sCAAsC,SAAS,EAAE;aACvE;SACF;QACD,UAAU,EAAE;YACV,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,oCAAoC,SAAS,EAAE;aACrE;SACF;QACD,cAAc,EAAE;YACd,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,6CAA6C,MAAM,6CAA6C;aACtH;SACF;QACD,iBAAiB,EAAE;YACjB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,GAAG,SAAS,EAAE;aACpC;SACF;QACD,eAAe,EAAE;YACf,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,GAAG,SAAS,EAAE;aACpC;SACF;QACD,gBAAgB,EAAE;YAChB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EACL,qFAAqF;aACxF;SACF;QACD,kBAAkB,EAAE;YAClB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,GAAG,SAAS,EAAE;aACpC;SACF;KACF;IACD,OAAO,EAAE;QACP,OAAO,EAAE,uBAAuB;KACjC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC"}
|
|
1
|
+
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../../../emitter/src/lib/lib.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAE/F,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAExD,MAAM,IAAI,GAAG,qBAAqB,CAAC;IACjC,IAAI,EAAE,8BAA8B;IACpC,WAAW,EAAE;QACX,eAAe,EAAE;YACf,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,sCAAsC,SAAS,EAAE;aACvE;SACF;QACD,UAAU,EAAE;YACV,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,oCAAoC,SAAS,EAAE;aACrE;SACF;QACD,cAAc,EAAE;YACd,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,6CAA6C,MAAM,6CAA6C;aACtH;SACF;QACD,iBAAiB,EAAE;YACjB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,GAAG,SAAS,EAAE;aACpC;SACF;QACD,eAAe,EAAE;YACf,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,GAAG,SAAS,EAAE;aACpC;SACF;QACD,+BAA+B,EAAE;YAC/B,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,6BAA6B;gBAClD,OAAO,EAAE,YAAY,CAAA,qFAAqF,oBAAoB,mEAAmE,aAAa,GAAG;gBACjN,cAAc,EAAE,YAAY,CAAA,iCAAiC,kBAAkB,iCAAiC,oBAAoB,oJAAoJ,aAAa,GAAG;aACzS;SACF;QACD,gBAAgB,EAAE;YAChB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EACL,qFAAqF;aACxF;SACF;QACD,kBAAkB,EAAE;YAClB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,GAAG,SAAS,EAAE;aACpC;SACF;KACF;IACD,OAAO,EAAE;QACP,OAAO,EAAE,uBAAuB;KACjC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC"}
|
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
import { SdkContext, SdkModelPropertyTypeBase, SdkPathParameter } from "@azure-tools/typespec-client-generator-core";
|
|
2
2
|
import { Enum, EnumMember, Model, ModelProperty, Operation, Scalar } from "@typespec/compiler";
|
|
3
|
+
import { SpawnOptions } from "child_process";
|
|
3
4
|
import { InputParameter } from "../type/input-parameter.js";
|
|
4
5
|
export declare function capitalize(str: string): string;
|
|
5
6
|
export declare function getNameForTemplate(model: Model): string;
|
|
6
7
|
export declare function getTypeName(context: SdkContext, type: Model | Enum | EnumMember | ModelProperty | Scalar | Operation): string;
|
|
7
8
|
export declare function createContentTypeOrAcceptParameter(mediaTypes: string[], name: string, nameInRequest: string): InputParameter;
|
|
8
9
|
export declare function isSdkPathParameter(parameter: SdkModelPropertyTypeBase): parameter is SdkPathParameter;
|
|
10
|
+
export declare function execAsync(command: string, args?: string[], options?: SpawnOptions): Promise<{
|
|
11
|
+
exitCode: number;
|
|
12
|
+
stdio: string;
|
|
13
|
+
stdout: string;
|
|
14
|
+
stderr: string;
|
|
15
|
+
proc: any;
|
|
16
|
+
}>;
|
|
9
17
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../emitter/src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../emitter/src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,UAAU,EACV,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC/F,OAAO,EAAS,YAAY,EAAE,MAAM,eAAe,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAI5D,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAMvD;AAED,wBAAgB,WAAW,CACzB,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,KAAK,GAAG,IAAI,GAAG,UAAU,GAAG,aAAa,GAAG,MAAM,GAAG,SAAS,GACnE,MAAM,CAYR;AAED,wBAAgB,kCAAkC,CAChD,UAAU,EAAE,MAAM,EAAE,EACpB,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,GACpB,cAAc,CA4BhB;AAED,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,wBAAwB,GAClC,SAAS,IAAI,gBAAgB,CAE/B;AAED,wBAAsB,SAAS,CAC7B,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,GAAG,CAAA;CAAE,CAAC,CA6BzF"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { getLibraryName, getSdkModel, } from "@azure-tools/typespec-client-generator-core";
|
|
2
|
+
import { spawn } from "child_process";
|
|
2
3
|
import { InputOperationParameterKind } from "../type/input-operation-parameter-kind.js";
|
|
3
4
|
import { RequestLocation } from "../type/request-location.js";
|
|
4
5
|
export function capitalize(str) {
|
|
@@ -55,4 +56,32 @@ export function createContentTypeOrAcceptParameter(mediaTypes, name, nameInReque
|
|
|
55
56
|
export function isSdkPathParameter(parameter) {
|
|
56
57
|
return parameter.kind === "path";
|
|
57
58
|
}
|
|
59
|
+
export async function execAsync(command, args = [], options = {}) {
|
|
60
|
+
const child = spawn(command, args, options);
|
|
61
|
+
return new Promise((resolve, reject) => {
|
|
62
|
+
child.on("error", (error) => {
|
|
63
|
+
reject(error);
|
|
64
|
+
});
|
|
65
|
+
const stdio = [];
|
|
66
|
+
const stdout = [];
|
|
67
|
+
const stderr = [];
|
|
68
|
+
child.stdout?.on("data", (data) => {
|
|
69
|
+
stdout.push(data);
|
|
70
|
+
stdio.push(data);
|
|
71
|
+
});
|
|
72
|
+
child.stderr?.on("data", (data) => {
|
|
73
|
+
stderr.push(data);
|
|
74
|
+
stdio.push(data);
|
|
75
|
+
});
|
|
76
|
+
child.on("exit", (exitCode) => {
|
|
77
|
+
resolve({
|
|
78
|
+
exitCode: exitCode ?? -1,
|
|
79
|
+
stdio: Buffer.concat(stdio).toString(),
|
|
80
|
+
stdout: Buffer.concat(stdout).toString(),
|
|
81
|
+
stderr: Buffer.concat(stderr).toString(),
|
|
82
|
+
proc: child,
|
|
83
|
+
});
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
}
|
|
58
87
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../emitter/src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../emitter/src/lib/utils.ts"],"names":[],"mappings":"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"}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -12,7 +12,7 @@ export declare function $onEmit(context: EmitContext<NetEmitterOptions>): Promis
|
|
|
12
12
|
|
|
13
13
|
export declare const configurationFileName = "Configuration.json";
|
|
14
14
|
|
|
15
|
-
export declare const createDiagnostic: <C extends "no-apiVersion" | "no-route" | "invalid-name" | "general-warning" | "general-error" | "no-root-client" | "unsupported-auth", M extends keyof {
|
|
15
|
+
export declare const createDiagnostic: <C extends "no-apiVersion" | "no-route" | "invalid-name" | "general-warning" | "general-error" | "invalid-dotnet-sdk-dependency" | "no-root-client" | "unsupported-auth", M extends keyof {
|
|
16
16
|
"no-apiVersion": {
|
|
17
17
|
readonly default: CallableMessage<["service"]>;
|
|
18
18
|
};
|
|
@@ -28,6 +28,11 @@ export declare const createDiagnostic: <C extends "no-apiVersion" | "no-route" |
|
|
|
28
28
|
"general-error": {
|
|
29
29
|
readonly default: CallableMessage<["message"]>;
|
|
30
30
|
};
|
|
31
|
+
"invalid-dotnet-sdk-dependency": {
|
|
32
|
+
readonly default: CallableMessage<[]>;
|
|
33
|
+
readonly missing: CallableMessage<["dotnetMajorVersion", "downloadUrl"]>;
|
|
34
|
+
readonly invalidVersion: CallableMessage<["installedVersion", "dotnetMajorVersion", "downloadUrl"]>;
|
|
35
|
+
};
|
|
31
36
|
"no-root-client": {
|
|
32
37
|
readonly default: "Cannot generate CSharp SDK since no public root client is defined in typespec file.";
|
|
33
38
|
};
|
|
@@ -50,6 +55,11 @@ readonly default: CallableMessage<["message"]>;
|
|
|
50
55
|
"general-error": {
|
|
51
56
|
readonly default: CallableMessage<["message"]>;
|
|
52
57
|
};
|
|
58
|
+
"invalid-dotnet-sdk-dependency": {
|
|
59
|
+
readonly default: CallableMessage<[]>;
|
|
60
|
+
readonly missing: CallableMessage<["dotnetMajorVersion", "downloadUrl"]>;
|
|
61
|
+
readonly invalidVersion: CallableMessage<["installedVersion", "dotnetMajorVersion", "downloadUrl"]>;
|
|
62
|
+
};
|
|
53
63
|
"no-root-client": {
|
|
54
64
|
readonly default: "Cannot generate CSharp SDK since no public root client is defined in typespec file.";
|
|
55
65
|
};
|
|
@@ -139,7 +149,7 @@ export declare interface NetEmitterOptions extends SdkEmitterOptions {
|
|
|
139
149
|
|
|
140
150
|
export declare const NetEmitterOptionsSchema: JSONSchemaType<NetEmitterOptions>;
|
|
141
151
|
|
|
142
|
-
export declare const reportDiagnostic: <C extends "no-apiVersion" | "no-route" | "invalid-name" | "general-warning" | "general-error" | "no-root-client" | "unsupported-auth", M extends keyof {
|
|
152
|
+
export declare const reportDiagnostic: <C extends "no-apiVersion" | "no-route" | "invalid-name" | "general-warning" | "general-error" | "invalid-dotnet-sdk-dependency" | "no-root-client" | "unsupported-auth", M extends keyof {
|
|
143
153
|
"no-apiVersion": {
|
|
144
154
|
readonly default: CallableMessage<["service"]>;
|
|
145
155
|
};
|
|
@@ -155,6 +165,11 @@ export declare const reportDiagnostic: <C extends "no-apiVersion" | "no-route" |
|
|
|
155
165
|
"general-error": {
|
|
156
166
|
readonly default: CallableMessage<["message"]>;
|
|
157
167
|
};
|
|
168
|
+
"invalid-dotnet-sdk-dependency": {
|
|
169
|
+
readonly default: CallableMessage<[]>;
|
|
170
|
+
readonly missing: CallableMessage<["dotnetMajorVersion", "downloadUrl"]>;
|
|
171
|
+
readonly invalidVersion: CallableMessage<["installedVersion", "dotnetMajorVersion", "downloadUrl"]>;
|
|
172
|
+
};
|
|
158
173
|
"no-root-client": {
|
|
159
174
|
readonly default: "Cannot generate CSharp SDK since no public root client is defined in typespec file.";
|
|
160
175
|
};
|
|
@@ -177,6 +192,11 @@ readonly default: CallableMessage<["message"]>;
|
|
|
177
192
|
"general-error": {
|
|
178
193
|
readonly default: CallableMessage<["message"]>;
|
|
179
194
|
};
|
|
195
|
+
"invalid-dotnet-sdk-dependency": {
|
|
196
|
+
readonly default: CallableMessage<[]>;
|
|
197
|
+
readonly missing: CallableMessage<["dotnetMajorVersion", "downloadUrl"]>;
|
|
198
|
+
readonly invalidVersion: CallableMessage<["installedVersion", "dotnetMajorVersion", "downloadUrl"]>;
|
|
199
|
+
};
|
|
180
200
|
"no-root-client": {
|
|
181
201
|
readonly default: "Cannot generate CSharp SDK since no public root client is defined in typespec file.";
|
|
182
202
|
};
|
|
@@ -230,4 +250,11 @@ export declare function setSDKContextOptions(options: CreateSdkContextOptions):
|
|
|
230
250
|
|
|
231
251
|
export declare const tspOutputFileName = "tspCodeModel.json";
|
|
232
252
|
|
|
253
|
+
/** check the dotnet sdk installation.
|
|
254
|
+
* Report diagnostic if dotnet sdk is not installed or its version does not meet prerequisite
|
|
255
|
+
* @param program The typespec compiler program
|
|
256
|
+
* @param minVersionRequisite The minimum required major version
|
|
257
|
+
*/
|
|
258
|
+
export declare function validateDotNetSdk(program: Program, minMajorVersion: number): Promise<boolean>;
|
|
259
|
+
|
|
233
260
|
export { }
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@typespec/http-client-csharp",
|
|
3
|
-
"version": "0.1.9-alpha.20250121.
|
|
3
|
+
"version": "0.1.9-alpha.20250121.3",
|
|
4
4
|
"author": "Microsoft Corporation",
|
|
5
5
|
"description": "The typespec library that can be used to generate C# models from a TypeSpec REST protocol binding",
|
|
6
6
|
"homepage": "https://github.com/Microsoft/typespec",
|