@azure-tools/typespec-python 0.60.0 → 0.60.2

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.
@@ -3,198 +3,22 @@ import { exec as execCallback } from "child_process";
3
3
  import { promisify } from "util";
4
4
  import yargs from "yargs";
5
5
  import { hideBin } from "yargs/helpers";
6
- import { dirname, join, relative, resolve } from "path";
6
+ import { join, resolve } from "path";
7
7
  import { promises, rmSync } from "fs";
8
8
  import { fileURLToPath } from "url";
9
+ import { BASE_AZURE_EMITTER_OPTIONS, BASE_EMITTER_OPTIONS, buildOptions, regenerate, toPosix, } from "./regenerate-common.js";
9
10
  // Promisify the exec function
10
11
  const exec = promisify(execCallback);
11
12
  // Get the directory of the current file
12
13
  const PLUGIN_DIR = resolve(fileURLToPath(import.meta.url), "../../../");
13
14
  const AZURE_HTTP_SPECS = resolve(PLUGIN_DIR, "node_modules/@azure-tools/azure-http-specs/specs");
14
15
  const HTTP_SPECS = resolve(PLUGIN_DIR, "node_modules/@typespec/http-specs/specs");
15
- // Add this near the top with other constants
16
- const SKIP_SPECS = [];
16
+ const EMITTER_NAME = "@azure-tools/typespec-python";
17
17
  const AZURE_EMITTER_OPTIONS = {
18
- "azure/client-generator-core/access": {
19
- namespace: "specs.azure.clientgenerator.core.access",
20
- },
21
- "azure/client-generator-core/alternate-type": {
22
- namespace: "specs.azure.clientgenerator.core.alternatetype",
23
- },
24
- "azure/client-generator-core/api-version": {
25
- namespace: "specs.azure.clientgenerator.core.apiversion",
26
- },
27
- "azure/client-generator-core/client-initialization": {
28
- namespace: "specs.azure.clientgenerator.core.clientinitialization",
29
- },
30
- "azure/client-generator-core/client-location": {
31
- namespace: "specs.azure.clientgenerator.core.clientlocation",
32
- },
33
- "azure/client-generator-core/deserialize-empty-string-as-null": {
34
- namespace: "specs.azure.clientgenerator.core.emptystring",
35
- },
36
- "azure/client-generator-core/flatten-property": {
37
- namespace: "specs.azure.clientgenerator.core.flattenproperty",
38
- },
39
- "azure/client-generator-core/usage": {
40
- namespace: "specs.azure.clientgenerator.core.usage",
41
- },
42
- "azure/client-generator-core/override": {
43
- namespace: "specs.azure.clientgenerator.core.override",
44
- },
45
- "azure/client-generator-core/hierarchy-building": {
46
- namespace: "specs.azure.clientgenerator.core.hierarchybuilding",
47
- },
48
- "azure/core/basic": {
49
- namespace: "specs.azure.core.basic",
50
- },
51
- "azure/core/lro/rpc": {
52
- namespace: "specs.azure.core.lro.rpc",
53
- },
54
- "azure/core/lro/standard": {
55
- namespace: "specs.azure.core.lro.standard",
56
- },
57
- "azure/core/model": {
58
- namespace: "specs.azure.core.model",
59
- },
60
- "azure/core/page": {
61
- namespace: "specs.azure.core.page",
62
- },
63
- "azure/core/scalar": {
64
- namespace: "specs.azure.core.scalar",
65
- },
66
- "azure/core/traits": {
67
- namespace: "specs.azure.core.traits",
68
- },
69
- "azure/encode/duration": {
70
- namespace: "specs.azure.encode.duration",
71
- },
72
- "azure/example/basic": {
73
- namespace: "specs.azure.example.basic",
74
- },
75
- "azure/payload/pageable": {
76
- namespace: "specs.azure.payload.pageable",
77
- },
78
- "azure/versioning/previewVersion": {
79
- namespace: "specs.azure.versioning.previewversion",
80
- },
81
- "client/structure/default": {
82
- namespace: "client.structure.service",
83
- },
84
- "client/structure/multi-client": {
85
- "package-name": "client-structure-multiclient",
86
- "namespace": "client.structure.multiclient",
87
- },
88
- "client/structure/renamed-operation": {
89
- "package-name": "client-structure-renamedoperation",
90
- "namespace": "client.structure.renamedoperation",
91
- },
92
- "client/structure/two-operation-group": {
93
- "package-name": "client-structure-twooperationgroup",
94
- "namespace": "client.structure.twooperationgroup",
95
- },
96
- "client/naming": {
97
- namespace: "client.naming.main",
98
- },
99
- "client/overload": {
100
- namespace: "client.overload",
101
- },
102
- "encode/duration": {
103
- namespace: "encode.duration",
104
- },
105
- "encode/numeric": {
106
- namespace: "encode.numeric",
107
- },
108
- "parameters/basic": {
109
- namespace: "parameters.basic",
110
- },
111
- "parameters/spread": {
112
- namespace: "parameters.spread",
113
- },
114
- "payload/content-negotiation": {
115
- namespace: "payload.contentnegotiation",
116
- },
117
- "payload/multipart": {
118
- namespace: "payload.multipart",
119
- },
120
- "serialization/encoded-name/json": {
121
- namespace: "serialization.encodedname.json",
122
- },
123
- "special-words": {
124
- namespace: "specialwords",
125
- },
126
- "service/multi-service": {
127
- namespace: "service.multiservice",
128
- },
18
+ ...BASE_AZURE_EMITTER_OPTIONS,
129
19
  };
130
20
  const EMITTER_OPTIONS = {
131
- "resiliency/srv-driven/old.tsp": {
132
- "package-name": "resiliency-srv-driven1",
133
- "namespace": "resiliency.srv.driven1",
134
- "package-mode": "azure-dataplane",
135
- "package-pprint-name": "ResiliencySrvDriven1",
136
- },
137
- "resiliency/srv-driven": {
138
- "package-name": "resiliency-srv-driven2",
139
- "namespace": "resiliency.srv.driven2",
140
- "package-mode": "azure-dataplane",
141
- "package-pprint-name": "ResiliencySrvDriven2",
142
- },
143
- "authentication/api-key": {
144
- "clear-output-folder": "true",
145
- },
146
- "authentication/http/custom": {
147
- "package-name": "authentication-http-custom",
148
- "namespace": "authentication.http.custom",
149
- "package-pprint-name": "Authentication Http Custom",
150
- },
151
- "authentication/union": [
152
- {
153
- "package-name": "authentication-union",
154
- "namespace": "authentication.union",
155
- },
156
- {
157
- "package-name": "setuppy-authentication-union",
158
- "namespace": "setuppy.authentication.union",
159
- "keep-setup-py": "true",
160
- },
161
- ],
162
- "type/array": {
163
- "package-name": "typetest-array",
164
- "namespace": "typetest.array",
165
- },
166
- "type/dictionary": {
167
- "package-name": "typetest-dictionary",
168
- "namespace": "typetest.dictionary",
169
- },
170
- "type/enum/extensible": {
171
- "package-name": "typetest-enum-extensible",
172
- "namespace": "typetest.enum.extensible",
173
- },
174
- "type/enum/fixed": {
175
- "package-name": "typetest-enum-fixed",
176
- "namespace": "typetest.enum.fixed",
177
- },
178
- "type/model/empty": {
179
- "package-name": "typetest-model-empty",
180
- "namespace": "typetest.model.empty",
181
- },
182
- "type/model/inheritance/enum-discriminator": {
183
- "package-name": "typetest-model-enumdiscriminator",
184
- "namespace": "typetest.model.enumdiscriminator",
185
- },
186
- "type/model/inheritance/nested-discriminator": {
187
- "package-name": "typetest-model-nesteddiscriminator",
188
- "namespace": "typetest.model.nesteddiscriminator",
189
- },
190
- "type/model/inheritance/not-discriminated": {
191
- "package-name": "typetest-model-notdiscriminated",
192
- "namespace": "typetest.model.notdiscriminated",
193
- },
194
- "type/model/inheritance/single-discriminator": {
195
- "package-name": "typetest-model-singlediscriminator",
196
- "namespace": "typetest.model.singlediscriminator",
197
- },
21
+ ...BASE_EMITTER_OPTIONS,
198
22
  "type/model/inheritance/recursive": [
199
23
  {
200
24
  "package-name": "typetest-model-recursive",
@@ -207,54 +31,6 @@ const EMITTER_OPTIONS = {
207
31
  "clear-output-folder": "true",
208
32
  },
209
33
  ],
210
- "type/model/usage": {
211
- "package-name": "typetest-model-usage",
212
- "namespace": "typetest.model.usage",
213
- },
214
- "type/model/visibility": [
215
- {
216
- "package-name": "typetest-model-visibility",
217
- "namespace": "typetest.model.visibility",
218
- },
219
- {
220
- "package-name": "headasbooleantrue",
221
- "namespace": "headasbooleantrue",
222
- "head-as-boolean": "true",
223
- },
224
- {
225
- "package-name": "headasbooleanfalse",
226
- "namespace": "headasbooleanfalse",
227
- "head-as-boolean": "false",
228
- },
229
- ],
230
- "type/property/nullable": {
231
- "package-name": "typetest-property-nullable",
232
- "namespace": "typetest.property.nullable",
233
- },
234
- "type/property/optionality": {
235
- "package-name": "typetest-property-optional",
236
- "namespace": "typetest.property.optional",
237
- },
238
- "type/property/additional-properties": {
239
- "package-name": "typetest-property-additionalproperties",
240
- "namespace": "typetest.property.additionalproperties",
241
- },
242
- "type/scalar": {
243
- "package-name": "typetest-scalar",
244
- "namespace": "typetest.scalar",
245
- },
246
- "type/property/value-types": {
247
- "package-name": "typetest-property-valuetypes",
248
- "namespace": "typetest.property.valuetypes",
249
- },
250
- "type/union": {
251
- "package-name": "typetest-union",
252
- "namespace": "typetest.union",
253
- },
254
- "type/union/discriminated": {
255
- "package-name": "typetest-discriminatedunion",
256
- "namespace": "typetest.discriminatedunion",
257
- },
258
34
  "client/structure/client-operation-group": {
259
35
  "package-name": "client-structure-clientoperationgroup",
260
36
  "namespace": "client.structure.clientoperationgroup",
@@ -271,27 +47,13 @@ const EMITTER_OPTIONS = {
271
47
  "package-name": "client-structure-twooperationgroup",
272
48
  "namespace": "client.structure.twooperationgroup",
273
49
  },
274
- "documentation": {
275
- "package-name": "specs-documentation",
276
- "namespace": "specs.documentation",
277
- },
278
50
  };
279
- function toPosix(dir) {
280
- return dir.replace(/\\/g, "/");
281
- }
282
- function getEmitterOption(spec, flavor) {
283
- const specDir = spec.includes("azure") ? AZURE_HTTP_SPECS : HTTP_SPECS;
284
- const relativeSpec = toPosix(relative(specDir, spec));
285
- const key = relativeSpec.includes("resiliency/srv-driven/old.tsp") ? relativeSpec : dirname(relativeSpec);
286
- const emitter_options = EMITTER_OPTIONS[key] || (flavor === "azure" ? AZURE_EMITTER_OPTIONS[key] : [{}]) || [{}];
287
- const result = Array.isArray(emitter_options) ? emitter_options : [emitter_options];
288
- return result;
289
- }
290
51
  // Function to execute CLI commands asynchronously
291
52
  async function executeCommand(tspCommand) {
292
53
  try {
293
- console.log(`exec: ${tspCommand.command}`);
294
- const { stdout, stderr } = await exec(tspCommand.command);
54
+ const cmd = tspCommand.command;
55
+ console.log(`exec: ${cmd}`);
56
+ const { stdout, stderr } = await exec(cmd);
295
57
  if (stdout)
296
58
  console.log(`stdout: ${stdout}`);
297
59
  if (stderr)
@@ -303,109 +65,6 @@ async function executeCommand(tspCommand) {
303
65
  throw error;
304
66
  }
305
67
  }
306
- const SpecialFlags = {
307
- azure: {
308
- "generate-test": true,
309
- "generate-sample": true,
310
- },
311
- };
312
- async function getSubdirectories(baseDir, flags) {
313
- const subdirectories = [];
314
- async function searchDir(currentDir) {
315
- const items = await promises.readdir(currentDir, { withFileTypes: true });
316
- const promisesArray = items.map(async (item) => {
317
- const subDirPath = join(currentDir, item.name);
318
- if (item.isDirectory()) {
319
- const mainTspPath = join(subDirPath, "main.tsp");
320
- const clientTspPath = join(subDirPath, "client.tsp");
321
- const mainTspRelativePath = toPosix(relative(baseDir, mainTspPath));
322
- // Replace the individual skip checks with:
323
- if (SKIP_SPECS.some((skipSpec) => mainTspRelativePath.includes(skipSpec)))
324
- return;
325
- const hasMainTsp = await promises
326
- .access(mainTspPath)
327
- .then(() => true)
328
- .catch(() => false);
329
- const hasClientTsp = await promises
330
- .access(clientTspPath)
331
- .then(() => true)
332
- .catch(() => false);
333
- if (mainTspRelativePath.toLowerCase().includes(flags.name || "")) {
334
- if (mainTspRelativePath.includes("resiliency/srv-driven")) {
335
- subdirectories.push(resolve(subDirPath, "old.tsp"));
336
- }
337
- if (hasClientTsp) {
338
- subdirectories.push(resolve(subDirPath, "client.tsp"));
339
- }
340
- else if (hasMainTsp) {
341
- subdirectories.push(resolve(subDirPath, "main.tsp"));
342
- }
343
- }
344
- // Recursively search in the subdirectory
345
- await searchDir(subDirPath);
346
- }
347
- });
348
- await Promise.all(promisesArray);
349
- }
350
- await searchDir(baseDir);
351
- return subdirectories;
352
- }
353
- function defaultPackageName(spec) {
354
- const specDir = spec.includes("azure") ? AZURE_HTTP_SPECS : HTTP_SPECS;
355
- return toPosix(relative(specDir, dirname(spec)))
356
- .replace(/\//g, "-")
357
- .toLowerCase();
358
- }
359
- function addOptions(spec, generatedFolder, flags) {
360
- const emitterConfigs = [];
361
- for (const config of getEmitterOption(spec, flags.flavor)) {
362
- const options = { ...config };
363
- options["flavor"] = flags.flavor;
364
- for (const [k, v] of Object.entries(SpecialFlags[flags.flavor] ?? {})) {
365
- options[k] = v;
366
- }
367
- if (options["emitter-output-dir"] === undefined) {
368
- const packageName = options["package-name"] || defaultPackageName(spec);
369
- options["emitter-output-dir"] = toPosix(`${generatedFolder}/test/${flags.flavor}/generated/${packageName}`);
370
- }
371
- if (flags.debug) {
372
- options["debug"] = "true";
373
- }
374
- options["examples-dir"] = toPosix(join(dirname(spec), "examples"));
375
- const configs = Object.entries(options).flatMap(([k, v]) => {
376
- return `--option @azure-tools/typespec-python.${k}=${typeof v === "string" && v.indexOf(" ") > -1 ? `"${v}"` : v}`;
377
- });
378
- emitterConfigs.push({
379
- optionsStr: configs.join(" "),
380
- outputDir: options["emitter-output-dir"],
381
- });
382
- }
383
- return emitterConfigs;
384
- }
385
- function _getCmdList(spec, flags) {
386
- return addOptions(spec, PLUGIN_DIR, flags).map((option) => {
387
- return {
388
- outputDir: option.outputDir,
389
- command: `tsp compile ${spec} --emit=${toPosix(PLUGIN_DIR)} ${option.optionsStr}`,
390
- };
391
- });
392
- }
393
- async function runTaskPool(tasks, poolLimit) {
394
- async function worker(start, end) {
395
- while (start < end) {
396
- await tasks[start]();
397
- start++;
398
- }
399
- }
400
- const workers = [];
401
- let start = 0;
402
- while (start < tasks.length) {
403
- const end = Math.min(start + poolLimit, tasks.length);
404
- workers.push((async () => await worker(start, end))());
405
- start = end;
406
- }
407
- await Promise.all(workers);
408
- }
409
68
  // create some files before regeneration. After regeneration, these files should be deleted and we will test it
410
69
  // in test case
411
70
  async function preprocess(flags) {
@@ -418,28 +77,28 @@ async function preprocess(flags) {
418
77
  await promises.writeFile(join(...folderParts, "generation", "subdir", "to_be_kept.py"), "# This file is to be kept after regeneration");
419
78
  }
420
79
  }
421
- async function regenerate(flags) {
422
- if (flags.flavor === undefined) {
423
- await regenerate({ ...flags, flavor: "azure" });
424
- await regenerate({ ...flags, flavor: "unbranded" });
425
- }
426
- else {
427
- await preprocess(flags);
428
- const flagsResolved = { debug: false, flavor: flags.flavor, ...flags };
429
- const subdirectoriesForAzure = await getSubdirectories(AZURE_HTTP_SPECS, flagsResolved);
430
- const subdirectoriesForNonAzure = await getSubdirectories(HTTP_SPECS, flagsResolved);
431
- const subdirectories = flags.flavor === "azure"
432
- ? [...subdirectoriesForAzure, ...subdirectoriesForNonAzure]
433
- : subdirectoriesForNonAzure;
434
- const cmdList = subdirectories.flatMap((subdirectory) => _getCmdList(subdirectory, flagsResolved));
435
- // Create tasks as functions for the pool
436
- const tasks = cmdList.map((tspCommand) => {
437
- return () => executeCommand(tspCommand);
438
- });
439
- // Run tasks with a concurrency limit
440
- await runTaskPool(tasks, 30);
441
- }
80
+ function _getCmdList(spec, flags) {
81
+ return buildOptions(spec, PLUGIN_DIR, flags, config).map((po) => {
82
+ const optionsStr = Object.entries(po.options)
83
+ .flatMap(([k, v]) => {
84
+ return `--option ${EMITTER_NAME}.${k}=${typeof v === "string" && v.indexOf(" ") > -1 ? `"${v}"` : v}`;
85
+ })
86
+ .join(" ");
87
+ return {
88
+ outputDir: po.outputDir,
89
+ command: `tsp compile ${spec} --emit=${toPosix(PLUGIN_DIR)} ${optionsStr}`,
90
+ };
91
+ });
442
92
  }
93
+ const config = {
94
+ azureHttpSpecs: AZURE_HTTP_SPECS,
95
+ httpSpecs: HTTP_SPECS,
96
+ emitterOptions: EMITTER_OPTIONS,
97
+ azureEmitterOptions: AZURE_EMITTER_OPTIONS,
98
+ preprocess,
99
+ getCmdList: _getCmdList,
100
+ executeCommand,
101
+ };
443
102
  // PARSE INPUT ARGUMENTS
444
103
  const argv = yargs(hideBin(process.argv))
445
104
  .option("flavor", {
@@ -458,7 +117,7 @@ const argv = yargs(hideBin(process.argv))
458
117
  description: "Specify filename if you only want to generate a subset",
459
118
  }).argv;
460
119
  const start = performance.now();
461
- regenerate(argv)
120
+ regenerate(argv, config)
462
121
  .then(() => console.log(`Regeneration successful, time taken: ${Math.round((performance.now() - start) / 1000)} s`))
463
122
  .catch((error) => console.error(`Regeneration failed: ${error.message}`));
464
123
  //# sourceMappingURL=regenerate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"regenerate.js","sourceRoot":"","sources":["../../../scripts/eng/regenerate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"regenerate.js","sourceRoot":"","sources":["../../../scripts/eng/regenerate.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azure-tools/typespec-python",
3
- "version": "0.60.0",
3
+ "version": "0.60.2",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec emitter for Python SDKs",
6
6
  "homepage": "https://github.com/Azure/autorest.python",
@@ -35,57 +35,57 @@
35
35
  "generator/**"
36
36
  ],
37
37
  "peerDependencies": {
38
- "@typespec/compiler": "^1.8.0",
39
- "@typespec/http": "^1.8.0",
40
- "@typespec/rest": ">=0.78.0 <1.0.0",
41
- "@typespec/versioning": ">=0.78.0 <1.0.0",
42
- "@typespec/openapi": "^1.8.0",
43
- "@typespec/events": ">=0.78.0 <1.0.0",
44
- "@typespec/sse": ">=0.78.0 <1.0.0",
45
- "@typespec/streams": ">=0.78.0 <1.0.0",
46
- "@typespec/xml": ">=0.78.0 <1.0.0",
47
- "@azure-tools/typespec-azure-core": ">=0.64.0 <1.0.0",
48
- "@azure-tools/typespec-azure-resource-manager": ">=0.64.1 <1.0.0",
49
- "@azure-tools/typespec-autorest": ">=0.64.1 <1.0.0",
50
- "@azure-tools/typespec-azure-rulesets": ">=0.64.0 <1.0.0",
51
- "@azure-tools/typespec-client-generator-core": ">=0.64.6 <1.0.0"
38
+ "@typespec/compiler": "^1.9.0",
39
+ "@typespec/http": "^1.9.1",
40
+ "@typespec/rest": ">=0.79.0 <1.0.0",
41
+ "@typespec/versioning": ">=0.79.0 <1.0.0",
42
+ "@typespec/openapi": "^1.9.0",
43
+ "@typespec/events": ">=0.79.0 <1.0.0",
44
+ "@typespec/sse": ">=0.79.0 <1.0.0",
45
+ "@typespec/streams": ">=0.79.0 <1.0.0",
46
+ "@typespec/xml": ">=0.79.0 <1.0.0",
47
+ "@azure-tools/typespec-azure-core": ">=0.65.0 <1.0.0",
48
+ "@azure-tools/typespec-azure-resource-manager": ">=0.65.0 <1.0.0",
49
+ "@azure-tools/typespec-autorest": ">=0.65.0 <1.0.0",
50
+ "@azure-tools/typespec-azure-rulesets": ">=0.65.0 <1.0.0",
51
+ "@azure-tools/typespec-client-generator-core": ">=0.65.3 <1.0.0"
52
52
  },
53
53
  "dependencies": {
54
54
  "js-yaml": "~4.1.0",
55
55
  "semver": "~7.6.2",
56
- "tsx": "~4.19.1",
57
- "@typespec/http-client-python": "~0.27.0",
56
+ "tsx": "^4.21.0",
57
+ "@typespec/http-client-python": "~0.27.2",
58
58
  "fs-extra": "~11.2.0"
59
59
  },
60
60
  "devDependencies": {
61
- "@typespec/compiler": "^1.8.0",
62
- "@typespec/http": "^1.8.0",
63
- "@typespec/rest": "~0.78.0",
64
- "@typespec/versioning": "~0.78.0",
65
- "@typespec/openapi": "^1.8.0",
66
- "@typespec/events": "~0.78.0",
67
- "@typespec/sse": "~0.78.0",
68
- "@typespec/streams": "~0.78.0",
69
- "@typespec/tspd": "~0.70.0",
70
- "@typespec/xml": "~0.78.0",
71
- "@azure-tools/typespec-azure-resource-manager": "~0.64.1",
72
- "@azure-tools/typespec-azure-core": "~0.64.0",
73
- "@azure-tools/typespec-azure-rulesets": "~0.64.0",
74
- "@azure-tools/typespec-autorest": "~0.64.1",
75
- "@azure-tools/typespec-client-generator-core": "~0.64.6",
76
- "@azure-tools/azure-http-specs": "0.1.0-alpha.36",
77
- "@typespec/http-specs": "0.1.0-alpha.32-dev.1",
78
- "@typespec/spector": "0.1.0-alpha.22",
61
+ "@typespec/compiler": "^1.9.0",
62
+ "@typespec/http": "^1.9.1",
63
+ "@typespec/rest": "~0.79.0",
64
+ "@typespec/versioning": "~0.79.0",
65
+ "@typespec/openapi": "^1.9.0",
66
+ "@typespec/events": "~0.79.0",
67
+ "@typespec/sse": "~0.79.0",
68
+ "@typespec/streams": "~0.79.0",
69
+ "@typespec/tspd": "~0.74.0",
70
+ "@typespec/xml": "~0.79.0",
71
+ "@azure-tools/typespec-azure-resource-manager": "~0.65.0",
72
+ "@azure-tools/typespec-azure-core": "~0.65.0",
73
+ "@azure-tools/typespec-azure-rulesets": "~0.65.0",
74
+ "@azure-tools/typespec-autorest": "~0.65.0",
75
+ "@azure-tools/typespec-client-generator-core": "~0.65.3",
76
+ "@azure-tools/azure-http-specs": "0.1.0-alpha.38-dev.2",
77
+ "@typespec/http-specs": "0.1.0-alpha.33-dev.2",
78
+ "@typespec/spector": "0.1.0-alpha.23",
79
79
  "@typespec/spec-api": "0.1.0-alpha.12",
80
80
  "@types/js-yaml": "~4.0.5",
81
- "@types/node": "~24.1.0",
81
+ "@types/node": "~25.0.2",
82
82
  "@types/yargs": "~17.0.33",
83
83
  "@types/semver": "7.5.8",
84
84
  "c8": "^10.1.3",
85
- "vitest": "^3.1.2",
86
- "rimraf": "~6.0.1",
87
- "typescript": "~5.8.2",
88
- "typescript-eslint": "^8.21.0",
85
+ "vitest": "^4.0.15",
86
+ "rimraf": "~6.1.2",
87
+ "typescript": "~5.9.2",
88
+ "typescript-eslint": "^8.49.0",
89
89
  "yargs": "~17.7.2",
90
90
  "chalk": "5.3.0",
91
91
  "@types/fs-extra": "11.0.4"