Skip to content

Commit f780a03

Browse files
bump typespec version to 1.1.0 (#5350)
* bump the version * regen but failed * fix the issues * regen * regen * fix test cases * bump to official version
1 parent f0825a6 commit f780a03

File tree

188 files changed

+2418
-2356
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

188 files changed

+2418
-2356
lines changed

package-lock.json

Lines changed: 246 additions & 342 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,11 @@
1212
"url": "https://github.com/Azure/autorest.csharp/issues"
1313
},
1414
"devDependencies": {
15-
"@typespec/http-specs": "0.1.0-alpha.22",
16-
"@typespec/spector": "0.1.0-alpha.14",
17-
"@azure-tools/azure-http-specs": "0.1.0-alpha.17",
18-
"@azure-tools/typespec-azure-resource-manager": "0.56.2",
19-
"@azure-tools/typespec-client-generator-core": "0.56.2",
15+
"@typespec/http-specs": "0.1.0-alpha.23",
16+
"@typespec/spector": "0.1.0-alpha.15",
17+
"@azure-tools/azure-http-specs": "0.1.0-alpha.19",
18+
"@azure-tools/typespec-azure-resource-manager": "0.57.0",
19+
"@azure-tools/typespec-client-generator-core": "0.57.1",
2020
"@azure-tools/typespec-csharp": "file:src/TypeSpec.Extension/Emitter.Csharp",
2121
"@azure-tools/unbranded-tests": "file:test/UnbrandedProjects",
2222
"@microsoft.azure/autorest.testserver": "3.3.50",

samples/AnomalyDetector/tspCodeModel.json

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4279,7 +4279,8 @@
42794279
"isEndpoint": true,
42804280
"skipUrlEncoding": false,
42814281
"explode": false,
4282-
"kind": "Client"
4282+
"kind": "Client",
4283+
"serverUrlTemplate": "{Endpoint}/anomalydetector/{ApiVersion}"
42834284
},
42844285
{
42854286
"$id": "555",
@@ -4306,7 +4307,8 @@
43064307
"crossLanguageDefinitionId": "TypeSpec.string"
43074308
},
43084309
"value": "v1.1"
4309-
}
4310+
},
4311+
"serverUrlTemplate": "{Endpoint}/anomalydetector/{ApiVersion}"
43104312
}
43114313
],
43124314
"decorators": [
@@ -21317,7 +21319,8 @@
2131721319
"isEndpoint": true,
2131821320
"skipUrlEncoding": false,
2131921321
"explode": false,
21320-
"kind": "Client"
21322+
"kind": "Client",
21323+
"serverUrlTemplate": "{Endpoint}/anomalydetector/{ApiVersion}"
2132121324
},
2132221325
{
2132321326
"$id": "2920",
@@ -21344,7 +21347,8 @@
2134421347
"crossLanguageDefinitionId": "TypeSpec.string"
2134521348
},
2134621349
"value": "v1.1"
21347-
}
21350+
},
21351+
"serverUrlTemplate": "{Endpoint}/anomalydetector/{ApiVersion}"
2134821352
}
2134921353
],
2135021354
"decorators": [],
@@ -27852,7 +27856,8 @@
2785227856
"isEndpoint": true,
2785327857
"skipUrlEncoding": false,
2785427858
"explode": false,
27855-
"kind": "Client"
27859+
"kind": "Client",
27860+
"serverUrlTemplate": "{Endpoint}/anomalydetector/{ApiVersion}"
2785627861
},
2785727862
{
2785827863
"$id": "3723",
@@ -27879,7 +27884,8 @@
2787927884
"crossLanguageDefinitionId": "TypeSpec.string"
2788027885
},
2788127886
"value": "v1.1"
27882-
}
27887+
},
27888+
"serverUrlTemplate": "{Endpoint}/anomalydetector/{ApiVersion}"
2788327889
}
2788427890
],
2788527891
"decorators": [],

src/TypeSpec.Extension/Emitter.Csharp/package.json

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -35,46 +35,46 @@
3535
],
3636
"dependencies": {
3737
"@autorest/csharp": "3.0.0-beta.20240625.4",
38-
"@typespec/http-client-csharp": "1.0.0-alpha.20250527.7"
38+
"@typespec/http-client-csharp": "1.0.0-alpha.20250618.2"
3939
},
4040
"peerDependencies": {
41-
"@azure-tools/typespec-azure-core": ">=0.56.0 <1.0.0",
42-
"@azure-tools/typespec-client-generator-core": ">=0.56.0 <1.0.0",
43-
"@azure-tools/typespec-azure-resource-manager": ">=0.56.0 <1.0.0",
44-
"@azure-tools/typespec-azure-rulesets": ">=0.56.0 <1.0.0",
45-
"@azure-tools/typespec-autorest": ">=0.56.0 <1.0.0",
41+
"@azure-tools/typespec-azure-core": ">=0.57.0 <0.58.0 || ~0.58.0-0",
42+
"@azure-tools/typespec-client-generator-core": ">=0.57.0 <0.58.0 || ~0.58.0-0",
43+
"@azure-tools/typespec-azure-resource-manager": ">=0.57.0 <0.58.0 || ~0.58.0-0",
44+
"@azure-tools/typespec-azure-rulesets": ">=0.57.0 <0.58.0 || ~0.58.0-0",
45+
"@azure-tools/typespec-autorest": ">=0.57.0 <0.58.0 || ~0.58.0-0",
4646
"@azure-tools/typespec-liftr-base": ">=0.6.0 <1.0.0",
47-
"@typespec/compiler": "^1.0.0",
48-
"@typespec/events": ">=0.70.0 <1.0.0",
49-
"@typespec/http": "^1.0.1",
50-
"@typespec/openapi": "^1.0.0",
51-
"@typespec/rest": ">=0.70.0 <1.0.0",
52-
"@typespec/sse": ">=0.70.0 <1.0.0",
53-
"@typespec/streams": ">=0.70.0 <1.0.0",
54-
"@typespec/versioning": ">=0.70.0 <1.0.0",
55-
"@typespec/xml": ">=0.70.0 <1.0.0"
47+
"@typespec/compiler": "^1.1.0",
48+
"@typespec/events": ">=0.71.0 <1.0.0",
49+
"@typespec/http": "^1.1.0",
50+
"@typespec/openapi": "^1.1.0",
51+
"@typespec/rest": ">=0.71.0 <1.0.0",
52+
"@typespec/sse": ">=0.71.0 <1.0.0",
53+
"@typespec/streams": ">=0.71.0 <1.0.0",
54+
"@typespec/versioning": ">=0.71.0 <1.0.0",
55+
"@typespec/xml": ">=0.71.0 <1.0.0"
5656
},
5757
"devDependencies": {
58-
"@azure-tools/typespec-azure-core": "0.56.0",
59-
"@azure-tools/typespec-client-generator-core": "0.56.2",
60-
"@azure-tools/typespec-azure-resource-manager": "0.56.2",
61-
"@azure-tools/typespec-azure-rulesets": "0.56.0",
62-
"@azure-tools/typespec-autorest": "0.56.0",
58+
"@azure-tools/typespec-azure-core": "0.57.0",
59+
"@azure-tools/typespec-client-generator-core": "0.57.1",
60+
"@azure-tools/typespec-azure-resource-manager": "0.57.0",
61+
"@azure-tools/typespec-azure-rulesets": "0.57.0",
62+
"@azure-tools/typespec-autorest": "0.57.0",
6363
"@azure-tools/typespec-liftr-base": "0.8.0",
6464
"@eslint/js": "^9.15.0",
6565
"@types/mocha": "~10.0.9",
6666
"@types/node": "~22.7.9",
6767
"@types/prettier": "^2.6.3",
68-
"@typespec/compiler": "1.0.0",
69-
"@typespec/events": "0.70.0",
70-
"@typespec/http": "1.0.1",
71-
"@typespec/library-linter": "0.70.0",
72-
"@typespec/openapi": "1.0.0",
73-
"@typespec/rest": "0.70.0",
74-
"@typespec/sse": "0.70.0",
75-
"@typespec/streams": "0.70.0",
76-
"@typespec/versioning": "0.70.0",
77-
"@typespec/xml": "0.70.0",
68+
"@typespec/compiler": "1.1.0",
69+
"@typespec/events": "0.71.0",
70+
"@typespec/http": "1.1.0",
71+
"@typespec/library-linter": "0.71.0",
72+
"@typespec/openapi": "1.1.0",
73+
"@typespec/rest": "0.71.0",
74+
"@typespec/sse": "0.71.0",
75+
"@typespec/streams": "0.71.0",
76+
"@typespec/versioning": "0.71.0",
77+
"@typespec/xml": "0.71.0",
7878
"eslint": "^9.15.0",
7979
"globals": "^15.2.0",
8080
"prettier": "^3.3.3",

src/TypeSpec.Extension/Emitter.Csharp/src/backward-compatibility.ts

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import {
77
SdkBuiltInKinds,
88
UsageFlags
99
} from "@azure-tools/typespec-client-generator-core";
10-
import { CodeModel } from "@typespec/http-client-csharp";
10+
import { CodeModel, InputClient } from "@typespec/http-client-csharp";
1111

1212
/*
1313
* This function transforms the code model for backward compatibility to avoid massive code on autorest.csharp's csharp part.
@@ -58,7 +58,30 @@ export function transformCodeModel(codeModel: CodeModel): CodeModel {
5858
}
5959
}
6060
}
61+
// fix the endpoint parameter in client to always be a url
62+
for (const client of codeModel.clients) {
63+
fixEndpointParameter(client);
64+
}
6165
return codeModel;
66+
67+
function fixEndpointParameter(client: InputClient) {
68+
if (client.parameters) {
69+
for (const param of client.parameters) {
70+
if (param.isEndpoint && param.type.kind === "string") {
71+
param.type = {
72+
kind: "url",
73+
name: "url",
74+
crossLanguageDefinitionId: "TypeSpec.url"
75+
};
76+
}
77+
}
78+
}
79+
if (client.children) {
80+
for (const child of client.children) {
81+
fixEndpointParameter(child);
82+
}
83+
}
84+
}
6285
}
6386

6487
interface DecoratedType {

test/CadlRanchProjects.Tests/VersioningRemovedBetaVersionTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,15 +67,15 @@ public void TestRemovedMembers()
6767
Assert.AreEqual(4, v3Methods.Count());
6868

6969
// All 2 versions are defined
70-
var enumType = typeof(Versions);
70+
var enumType = typeof(RemovedClientOptions.ServiceVersion);
7171
Assert.AreEqual(new string[] { "V1", "V2preview"}, enumType.GetEnumNames());
7272
}
7373

7474
[Test]
7575
public Task Versioning_Removed_BetaVersion_V3Model() => Test(async (host) =>
7676
{
7777
var model = new ModelV3("123");
78-
var response = await new RemovedClient(host, Versions.V2preview).ModelV3Async(model);
78+
var response = await new RemovedClient(host).ModelV3Async(model);
7979
Assert.AreEqual(200, response.GetRawResponse().Status);
8080
Assert.AreEqual("123", response.Value.Id);
8181
});

test/CadlRanchProjects.Tests/VersioningRemovedOldVersionTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,15 +69,15 @@ public void TestRemovedMembers()
6969
Assert.AreEqual(4, v3Methods.Count());
7070

7171
// 1 version are defined
72-
var enumType = typeof(Versions);
72+
var enumType = typeof(RemovedClientOptions.ServiceVersion);
7373
Assert.AreEqual(new string[] { "V1"}, enumType.GetEnumNames());
7474
}
7575

7676
[Test]
7777
public Task Versioning_Removed_OldVersion_V3Model() => Test(async (host) =>
7878
{
7979
var model = new ModelV3("123", EnumV3.EnumMemberV1);
80-
var response = await new RemovedClient(host, Versions.V1).ModelV3Async(model);
80+
var response = await new RemovedClient(host).ModelV3Async(model);
8181
Assert.AreEqual(200, response.GetRawResponse().Status);
8282
Assert.AreEqual("123", response.Value.Id);
8383
Assert.AreEqual(EnumV3.EnumMemberV1, response.Value.EnumProp);

test/CadlRanchProjects.Tests/versioning-added.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ public void TestAddedMembers()
6161
public Task Versioning_Added_v1() => Test(async (host) =>
6262
{
6363
ModelV1 modelV1 = new ModelV1("foo", EnumV1.EnumMemberV2, BinaryData.FromObjectAsJson(10));
64-
var response = await new AddedClient(host, Versions.V2).V1Async("bar", modelV1);
64+
var response = await new AddedClient(host).V1Async("bar", modelV1);
6565
Assert.AreEqual(200, response.GetRawResponse().Status);
6666
Assert.AreEqual("foo", response.Value.Prop);
6767
Assert.AreEqual(EnumV1.EnumMemberV2, response.Value.EnumProp);
@@ -72,7 +72,7 @@ public Task Versioning_Added_v1() => Test(async (host) =>
7272
public Task Versioning_Added_v2() => Test(async (host) =>
7373
{
7474
ModelV2 modelV2 = new ModelV2("foo", EnumV2.EnumMember, BinaryData.FromObjectAsJson("bar"));
75-
var response = await new AddedClient(host, Versions.V2).V2Async(modelV2);
75+
var response = await new AddedClient(host).V2Async(modelV2);
7676
Assert.AreEqual(200, response.GetRawResponse().Status);
7777
Assert.AreEqual("foo", response.Value.Prop);
7878
Assert.AreEqual(EnumV2.EnumMember, response.Value.EnumProp);
@@ -83,7 +83,7 @@ public Task Versioning_Added_v2() => Test(async (host) =>
8383
public Task Versioning_Added_InterfaceV2() => Test(async (host) =>
8484
{
8585
ModelV2 modelV2 = new ModelV2("foo", EnumV2.EnumMember, BinaryData.FromObjectAsJson("bar"));
86-
var response = await new AddedClient(host, Versions.V2).GetInterfaceV2Client().V2InInterfaceAsync(modelV2);
86+
var response = await new AddedClient(host).GetInterfaceV2Client().V2InInterfaceAsync(modelV2);
8787
Assert.AreEqual(200, response.GetRawResponse().Status);
8888
Assert.AreEqual("foo", response.Value.Prop);
8989
Assert.AreEqual(EnumV2.EnumMember, response.Value.EnumProp);

test/CadlRanchProjects.Tests/versioning-madeOptional.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public void CheckMadeOptionalMemebers()
2727
public Task Versioning_MadeOptional_test() => Test(async (host) =>
2828
{
2929
TestModel body = new TestModel("foo");
30-
var response = await new MadeOptionalClient(host, Versions.V2).TestAsync(body);
30+
var response = await new MadeOptionalClient(host).TestAsync(body);
3131
Assert.AreEqual(200, response.GetRawResponse().Status);
3232
Assert.AreEqual("foo", response.Value.Prop);
3333
});

test/CadlRanchProjects.Tests/versioning-removed.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,15 +55,15 @@ public void TestRemovedMembers()
5555
Assert.IsNull(Type.GetType("Versioning.Removed.InterfaceV1"));
5656

5757
// All 3 versions are defined
58-
var enumType = typeof(Versions);
58+
var enumType = typeof(RemovedClientOptions.ServiceVersion);
5959
Assert.AreEqual(new string[] { "V1", "V2preview", "V2" }, enumType.GetEnumNames());
6060
}
6161

6262
[Test]
6363
public Task Versioning_Removed_v2() => Test(async (host) =>
6464
{
6565
ModelV2 modelV2 = new ModelV2("foo", EnumV2.EnumMemberV2, BinaryData.FromObjectAsJson("bar"));
66-
var response = await new RemovedClient(host, Versions.V2).V2Async(modelV2);
66+
var response = await new RemovedClient(host).V2Async(modelV2);
6767
Assert.AreEqual(200, response.GetRawResponse().Status);
6868
Assert.AreEqual("foo", response.Value.Prop);
6969
Assert.AreEqual(EnumV2.EnumMemberV2, response.Value.EnumProp);
@@ -74,7 +74,7 @@ public Task Versioning_Removed_v2() => Test(async (host) =>
7474
public Task Versioning_Removed_V3Model() => Test(async (host) =>
7575
{
7676
var model = new ModelV3("123", EnumV3.EnumMemberV1);
77-
var response = await new RemovedClient(host, Versions.V2).ModelV3Async(model);
77+
var response = await new RemovedClient(host).ModelV3Async(model);
7878
Assert.AreEqual(200, response.GetRawResponse().Status);
7979
Assert.AreEqual("123", response.Value.Id);
8080
Assert.AreEqual(EnumV3.EnumMemberV1, response.Value.EnumProp);

0 commit comments

Comments
 (0)