All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Remove all LINQ usage from product code
- Added an optional parameter to kiota middleware factory so options can be configured directly. #233
GetDefaultHandlerTypes
added toKiotaClientFactory
if you're creating your ownHttpClient
and still want to use the default handlers.
- Fixed an issue where fixed versions of abstractions would result in restore failures. #256
- Use
SocketsHttpHandler
withEnableMultipleHttp2Connections
as default HTTP message handler.
- KiotaClientFactory
create()
overload that accepts a list of handlers.
- UriReplacementHandler improvements to be added to middleware pipeline by default and respects options set in the HttpRequestMessage #242
- Adds
ConfigureAwait(false)
calls to async calls #240.
- Fixes default handler for NET framework to unlock HTTP/2 scenarios #237
- Have made System.* dependencies only be included on Net Standard's TFM & net 5 #230
- Set default request version to be Http/2
- When too many retries are attempted, the RetryHandler will now throw an
AggregateException
(instead of anInvalidOperationException
). TheInnerExceptions
property of theAggregateException
will contain a list ofApiException
with the HTTP status code and an error message if available.
- Added
net6.0
andnet8.0
as target frameworks.
- Fixes
IsTrimmable
property on the project.
- Adds support for
XXX
status code error mapping to HttpClientRequestAdapter.
- Fixes
ActicitySource
memory leak when the HttpClientRequestAdapter does not construct the HttpClient internally.
- Fixes a bug with internal
CloneAsync
method when using stream content types.
- Added support for dotnet 8.
- Fixes multiple initialization of
ActivitySource
instances on each request send #161.
- Added uri replacement handler.
- Added support for dotnet trimming.
- Fixes a bug where the
ParametersNameDecodingHandler
would also decode query parameter values.
- Added headers inspection handler to allow clients to observe request and response headers.
- Fixes a bug where empty streams would be passed to the serializers if the response content header is set.
- Fixes regression in request building when the passed httpClient base address ends with a
\
- Fixes a bug where NullReference Exception is thrown if a requestInformation is sent without providing UriTemplate
- RequestAdapter passes
HttpCompletionOption.ResponseHeadersRead
to HttpClient for Stream responses to avoid memory consumption for large payloads.
- Added propagating the HttpClientRequestAdapter's supplied HttpClient BaseAddress as the adapter's initial BaseUrl
- Includes Response headers in APIException for failed requests.
- Update minimum version of
System.Diagnostics.DiagnosticSource
to6.0.0
. - Update minimum version of
System.Text.Json
to6.0.0
.
- GA release
- Added the HTTP response status code on API exception.
- Aligns the HttpClientRequestAdapter with other langugages to use the BaseUrl from the RequestAdapter as the baseUrl for making requests.
- Adds support for nullalbe reference types.
- Added a method to convert abstract requests to native requests in the request adapter interface.
- Adds this library version as a product in the user-agent
- Release candidate 1
- Added multi-value headers support.
- Fixes RetryHandler to return the real wait time
- Changes the ResponseHandler parameter in IRequestAdapter to be a RequestOption
- Added tracing support through OpenTelemetry.
- Added support for additional status codes.
- Fixed a bug where CAE support would keep connections open when retrying.
- Added support for continuous access evaluation.
- Breaking: Changes target runtime to netstandard2.0
- Added supports for decoding parameter names.
- Fix issue with
HttpRequestAdapter
returning disposed streams when the requested return type is a Stream #10
- Added support for 204 no content responses
- Fixed a bug where BaseUrl would not be set in some scenarios
- Fixed a bug where scalar request would not deserialize correctly.
- Initial Nuget release