Reactor-Core 3.3.6.RELEASE is part of Dysprosium-SR8 Release Train.
✨ New features and improvements
- Ensure
DeferredSubscriptionmakes requests serially if there is racing between set / requestN (according to RS spec Rule 2.7)(#2164) - Ensure
FluxSwitchOnFirstserializes requests (according to RS spec Rule 2.7) (#2161) - Ensures next element is dropped if
UnicastProcessordisposed to avoid racing betweenonNextanddispose(#2180) - Use
ZoneId.of(String)to avoid blocking disk load during first access ofSchedulers.boundedElastic()(#2143)
🪲 Bug fixes
- Accommodate
ASYNCfusion inMono.metrics()to avoidNullPointerExceptionor hanging in certain cases (#2160 ) - Fix volatile read of first element and
ConditionalSubscriberclasscast inFluxSwitchOnFirst(#2166) - Change the
Subscriptionset byreportThrowInSubscribeto an instance compatible withQueueSubscription, preventing fused cases where a ClassCastException would be thrown. (#2152 )
📖 Documentation, Tests and Build
- [test] Fix
publishOnscan test, hiccup before assertingBUFFERED - [doc] Better describe
Mono.first()andMono.or()behavior (#2159) - [doc] Fix typo
Retry.fromFunction()instead offrom()(#2172) - [doc] Fix
RetrySpecdoc:throwablePredicateis actually filter (#2162) - [doc] Document
onCancel/onDiposelimited to 1 use (#2015) - [doc] Remove wrong curly braces in
generatecode example (#2110) - [build] Have blockHoundTest fork JVM on every case (see #2144)
- [build] Consistently use tabs for gradle file indentation (#2157)
- [publication] Publish Gradle metadata, without optional dependencies (#2151)
👍 Thanks to the following contributors that also participated to this release
@alex-dukhno , @chakas , @berry120 , @OlegDokuka , @PyvesB , @josemalonsom