1.8.1
(fix):
Fixes a bug where the OauthTokenProvider.cs
was incorrectly referencing
the endpoint method, causing code to fail to compile.
(fix):
Fixes a bug where the OauthTokenProvider.cs
was incorrectly referencing
the endpoint method, causing code to fail to compile.
(feat):
Add support for generated README.md
files.
(feat):
Add support for service-level headers.
(feat):
Generate snippet.json
file containing usage snippets for each endpoint.
(feat):
Apply the timeout configured on the ClientOptions
and RequestOptions
type.
(feat):
Add exponential backoff retrier, which acts upon MaxRetries
configuration option specified on the ClientOptions
and RequestOptions
.
(feat):
Generate the RawClientTests.cs
file which includes retry logic tests.
(internal):
Refactor the RawClient
with additional helper methods so that it’s easier to follow.
(fix):
Fix a bug where OneOf
used directly as request or response types fail serialization.
(internal):
Generate a Version
class which is used to reference the current version.
(feat):
Add support for sending the User-Agent
header.
(internal):
The RawClient
now supports HTTP headers within the ClientOptions
and RequestOptions
types.
(feat):
Add support for the package-id
configuration, which is used to control the name of the package in NuGet.
(feat):
Add support for mock server tests with generate-mock-server-tests
configuration option.
(internal):
Omit null
property values in requests.
(fix):
Fix a bug where request bodies are not sent for wrapped requests that include headers or query params.
(fix):
Fix a bug where enums, dates, and datetimes are sometimes not serialized properly as query parameters and headers.
(feat):
Add support for read-only-memory-types
configuration.
(feat):
Add the CancellationToken
parameter as the last parameter to every endpoint method.
(feat):
Add support for gRPC/Protobuf endpoints.
(feat):
Add support for Protobuf file dependencies to generate gRPC client stubs.
(fix):
Fix potential namespace and type conflicts.
(break):
The C# SDK is now on major version 1.0.0. To preserve compatibility with pre-1.0.0, set all of {root-namespace-for-core-classes, pascal-case-environments, simplify-object-dictionaries} to false
.
(internal):
Core classes that are exposed publicly are now in the root namespace.
(internal):
Types that were previously generated as Dictionary<string, object?>
are now just object
.
(internal):
Environment names are pascal-cased.
(feat):
Generating specific error types can now be turned off with the generate-error-types
configuration.
(feat):
Get better Unit Testing JSON comparison results by using FluentAssertions
.
(internal):
Mark internal files internal
.
(feat):
Make all client classes Partial
.
(internal):
Don’t override toString
on Exceptions.
(fix):
Fix a bug where conflicting class names and namespaces cause compile to fail.