2.1.15

(fix): Ensure dynamic snippet method calls can use literal values

2.1.14

(fix): Create link in README.MD file to the REFERENCE.MD file

2.1.12

(fix): Add support for configuration ‘experimental-fully-qualified-namespaces’ to generate fully qualified typenames and namespaces. Add support for experimental-dotnet-format to have dotnet format reduce namespaces and namespace prefixes. (this can take a large amount of memory) This creates code that is much cleaner, and can easily support multiple endpoints with identical names in the generated code without name or namespace collisions.

2.1.10

(fix): Generate reference.md file as long as there are some endpoints.

2.1.8

(fix): Idempotent headers are added to the headers in the request

2.1.7

(fix): Improve generation so that all expected tests/samples correctly generate and compile.

(fix): In RawClient.cs namespace references are prefixed with global:: to ensure that the class works correctly when an explicit namespace and client class are used that could cause it to collide.

(fix): Set csharpier version to 1.1.* to avoid inadvertently picking up 1.0.3 which has an inconsistency in formatting.

2.1.6

(feat): Trigger release to use new version of CSharpier formatter

2.1.5

(fix): Add test for RawClient.ts to test Query Parameter Escaping

2.1.4

(fix): ensure that query parameters are Uri encoded in RawClient.cs

2.1.3

(fix): uses fully qualified class name System.IO.Stream for downloads

2.1.2

(feat): Generate methods to support FileDownload (returns a Task<Stream>). Example:

1 var request = new FooAudioRequest {
2 Format = Format.Wav,
3 Song = "Happy Birthday"
4 };
5 var stream = await client.Songs.CreateSongAsync(request);
6 // copy the stream to a file
7 using (var fileStream = new FileStream("song.wav", FileMode.Create, FileAccess.Write))
8 {
9 await stream.CopyToAsync(fileStream);
10 }

(feat): Generate streaming/SSE JSON responses (returns an IAsyncEnumerable<...>). Example:

1var request = new FooRequest
2{
3 Names = ["Bob", "Alice"]
4};
5
6// iterate over the list of items returned
7await foreach( var item in client.People.CreatePeopleStreamingAsync(request)) {
8 Console.WriteLine($"Text for {item.Name} : {item.Text}");
9}

2.1.0

(feat): Pass in custom pager context to the custom pager factory. The context contains the send request method, initial HTTP request, client options, and request options. SDK authors can improve their custom pagination implementation with this context available to them.

2.0.3

(fix): Mockserver tests were generated based on the endpoint name being tested. When multiple endpoints have the same name, they would override each other, resulting in only one of them being tested. Mockserver tests are now namespaced and written to the filesystem following the same structure as the generated endpoints are.

(fix): Update the type referencing logic to take into account the current namespace, other namespaces, and more scenarios where it could conflicts.

2.0.2

(fix): Improve auto-pagination logic to consider empty strings in response as null cursors and stop paging.