1.40.0 (2023-06-02)
Features Added
- Added
TracingOptions
configurations allowing to pick a specificTracerProvider
implementation if several are resolved byServiceLoader
. - Added
MetricsOptions
configurations allowing to pick a specificMeterProvider
implementation if several are resolved byServiceLoader
. - Added
CoreUtils.randomUuid
to replace usage ofUUID.randomUUID
. In some casesUUID.randomUUID
used a blocking
call whereasCoreUtils.randomUuid
should never block. (#34790) - Added support for prefixes in
AzureKeyCredentialPolicy
. (#35010) - Added the ability to configure a backoff strategy for
FluxUtil.createRetriableDownloadFlux
. Previous retries
wouldn't backoff which could result in requests being sent to a service already at capacity and throttling. (#35035)
Bugs Fixed
- Fixed a bug where a known length wasn't passed to
BinaryData.fromStream
resulting it being handled as a
non-replayableBinaryData
. (#34851) - Changed the design of how
AsynchronousByteChannel
s were written to limit chances of race conditions between the
writer thread and the Reactor thread handlingonComplete
andonError
events. This results in more consistent
behavior at the cost of lower throughput, which will be investigated in future releases. (#35004)
Other Changes
- Changed how
ResponseError
is deserialized to support cases where the JSON wrapped theResponseError
with an
error
property. (#35052)
Dependency Updates
- Upgraded Reactor Core from
3.4.27
to3.4.29
.