- Updated
reactor-core
version to3.3.8.RELEASE
. - Updated
reactor-netty
version to0.9.10.RELEASE
. - Updated
netty
version to4.1.51.Final
. - Updated
netty-tcnative
version to2.0.31.Final
. - Updated handling of
OffsetDateTime
serialization to implicitly convert date strings missing time zone into UTC. - Updated
PollerFlux
andSyncPoller
to propagate exceptions when polling instead of only on failed statuses. - Redesigned
SimpleTokenCache
to gracefully attempt a token refresh 5 minutes before actual expiry - Added
ObjectSerializer
andJsonSerializer
APIs to support pluggable serialization within SDKs. - Added
TypeReference<T>
to enable serialization handling forClass<T>
andType
while retaining generics through a call stack. - Added
MemberNameConverter
which converts aMember
type ofField
orMethod
into its expected serialized JSON property name.
- Removed
tokenRefreshOptions()
fromTokenCredential
, defaulting token refresh offset to 5 minutes, and a default token refresh retry timeout of 30 seconds.
- Added
TokenRefreshOptions()
toTokenCredential
, with a default token refresh offset of 2 minutes, and a default token refresh retry timeout of 30 seconds.
- Added utility class
UserAgentUtil
which constructsUser-Agent
headers following SDK guidelines. - Modified Azure Context to Reactor Context to remove intermediate Map container.
- Added handling for more complex
Content-Type
headers such astext/custom+xml
.
- Fixed issue where
FluxUtil.toReactorContext
would includenull
values which aren't allowed in Reactor'sContext
. - Added
CoreUtils.bomAwareToString
that handles converting abyte[]
to a String based on a leading byte order mark or using the passedContent-Type
. - Updated percent encoding logic to properly handle
UTF-8
characters. - Added new constructors for
AzureException
,HttpRequestException
, andHttpResponseException
. - Deprecated
ClientLogger.logThowableAsWarning
, replaced withClientLogger.logThrowableAsWarning
. - Added utility method
FluxUtil.toFluxByteBuffer
which converts anInputStream
intoFlux<ByteBuffer>
. - Updated Reactor Core dependency.
- Added support for serialization and deserialization of discriminator types.
- Added
AzureKeyCredential
andAzureKeyCredentialPolicy
to support generic key based authorizations. - Fixed a deserialization issue when a JSON property contained a
.
and the containing class was annotated withJsonFlatten
. - Updated
reactor-core
dependency to3.3.3.RELEASE
. - Added APIs to
ClientLogger
to log checked exceptions that will be thrown. - Added simplified APIs to
ClientLogger
where only a message will be logged. - Fixed URL encoded form request issue where the URL would be encoded improperly.
- Added property to
HttpLogOptions
to enable pretty printing when logging a request or response body. - Added another
withContext
overload inFluxUtil
. - Added additional constants to
Configuration
.
- Enhanced and extended 'PagedIterable' implementation to cover additional use cases.
- Added additional constants to 'Tracer'.
- Added a factory method to create 'PollerFlux' that can avoid unnecessary poll if the LRO completed synchronously.
- Fixed race condition when loading 'BeforeRetryPolicyProvider' and 'AfterRetryPolicyProvider' implementations with 'ServiceLoader'.
- Fixed race condition when loading 'Tracer' implementations with 'ServiceLoader'.
- Fixed XML deserialization issue when byte order mark wasn't properly handled.
- Added default logging implementation for SLF4J.
- Modified checks to determine if logging is allowed.
- Improved logging performance.
- Enhanced and extended PagedFlux implementation to cover additional use cases.
- Enabled loading proxy configuration from the environment.
- Added support for Digest proxy authentication.
- Updated 'BufferedResponse' to deep copy the response to handle scenarios where the underlying stream is reclaimed.
- Ignore null headers and allow full url paths
- Add missing HTTP request methods to HttpMethod enum
- Support custom header with AddHeaderPolicy
- Support custom header name in RequestIDPolicy
- Prevent HttpLoggingPolicy Consuming Body
- Hide secret info from log info
- Ensure HTTPS is used when authenticating with tokens
- Reduce Prefetch Limit for PagedIterable and IterableStream
- Add Iterable overload for IterableStream
- Added support for creating reactor-netty-http client from an existing client.
- Added UserAgent helper methods for fetching client name and version from pom file.
- Added toReactorContext to FluxUtil.
- Logging exception at warning level, and append stack trace if log level is verbose.
- Fixed HttpLoggingPolicy to take null HttpLogOptions.
- Changed the User agent format.
- Hide the secrets from evnironment variable.
- UserAgentPolicy is using the value stored in the policy no matter what is stored in the passed request. Also, removed the service version from User agent format.
- Added Iterable overload for IterableStream.
- Reduce Prefetch Limit for PagedIterable and IterableStream.
- Ensure HTTPS is used when authenticating with tokens.
This package's documentation and samples
- Initial release. Please see the README and wiki for information on the new design.