reactor-core v3.3.6.RELEASE Release Notes

Release Date: 2020-06-25 // almost 4 years ago
  • ๐Ÿš€ Reactor-Core 3.3.6.RELEASE is part of Dysprosium-SR8 Release Train.

    ๐Ÿฑ โœจ New features and improvements

    • EnsureDeferredSubscription makes requests serially if there is racing between set / requestN (according to RS spec Rule 2.7)(#2164)
    • Ensure FluxSwitchOnFirst serializes requests (according to RS spec Rule 2.7) (#2161)
    • Ensures next element is dropped if UnicastProcessor disposed to avoid racing between onNext and dispose (#2180)
    • โฑ Use ZoneId.of(String) to avoid blocking disk load during first access of Schedulers.boundedElastic() (#2143)

    ๐Ÿฑ ๐Ÿž Bug fixes

    • Accommodate ASYNC fusion in Mono.metrics() to avoid NullPointerException or hanging in certain cases (#2160 )
    • ๐Ÿ›  Fix volatile read of first element and ConditionalSubscriber classcast in FluxSwitchOnFirst (#2166)
    • ๐Ÿ”„ Change the Subscription set by reportThrowInSubscribe to an instance compatible with QueueSubscription, preventing fused cases where a ClassCastException would be thrown. (#2152 )

    ๐Ÿ“š ๐Ÿ“– Documentation, Tests and Build

    • โœ… [test] Fix publishOn scan test, hiccup before asserting BUFFERED
    • ๐Ÿ‘ [doc] Better describe Mono.first() and Mono.or() behavior (#2159)
    • [doc] Fix typo Retry.fromFunction() instead of from() (#2172)
    • [doc] Fix RetrySpec doc: throwablePredicate is actually filter (#2162)
    • [doc] Document onCancel / onDipose limited to 1 use (#2015)
    • ๐Ÿšš [doc] Remove wrong curly braces in generate code 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