0.42.35
This is a minor maintenance release appropriate for all ServiceTalk users that contains several useful improvements and bug fixes. This release is expected to be a "drop-in" replacement for all prior 0.42.X releases.
Changes
Behavior changes
- 7f0b795 -
Publisher.[retry|repeat]
change default exception handling mode (#2642)- It's unexpected by Reactive Streams specification that
Subscriber
methods can throw. If they do,Publisher.retry*
andPublisher.repeat*
operators will try-catch it and propagateIllegalStateException
downstream. Previously, such exceptions were propagated upstream and could be observed by the retry predicate, which is not expected. In case users need pre-existing behavior,Publisher.retry*
operators added a new overload that takesterminateOnNextException
boolean.
- It's unexpected by Reactive Streams specification that
- c30e076 -
RetryingHttpRequesterFilter
: don't wait for LB if it's unhealthy (#2648)- Now
LoadBalancer
can throw not onlyNoAvailableHostException
but alsoNoActiveHostException
. If users' business logic processesNoAvailableHostException
, they should processNoActiveHostException
the same way.
- Now
API deprecations
- d078d0d -
Publisher.scanWith
enhancements (#2640)- Deprecate
ScanWithMapper
andScanWithLifetimeMapper
in favor of the newScanMapper
andScanLifetimeMapper
. - Deprecate
Publisher.scanWith(Supplier)
in favor of the newPublisher.scanWithMapper(Supplier)
. - Deprecate
Publisher.scanWithLifetime(Supplier)
in favor of the newPublisher.scanWithLifetimeMapper(Supplier)
.
- Deprecate
New features
Bug Fixes
- 3843dd4 -
Publisher.[retry|repeat]
operators demand management ifonNext
throws (#2639) - c30e076 -
RetryingHttpRequesterFilter
: don't wait for LB if it's unhealthy (#2648)
Improvements
- e257614 - Apply optimized execution strategy for converted connections (#2634)
- d078d0d -
Publisher.scanWith
enhancements (#2640) - cf1da8d - Enhance debug logging for
ReservableRequestConcurrencyControllers
(#2645) - 140abce -
DefaultDnsClient
log when resolution fails with an exception (#2646) - 996e41b -
Publisher.retry
wrap exceptions thrown fromonNext
(#2649) - d4a0c22 - Increase default
SslConfig.maxCertificateListBytes()
to 32Kb (#2650) - 2a114c0 - Remove incorrect assertions from logging lifecycle observers (#2644)
Thank you
Every idea, review, and bug-report counts and so we thought it is worth mentioning those who helped in this area. Please report any unintended omission.
@bryce-anderson
@daschl
@idelpivnitskiy
@Scottmitch
@tkountis