Skip to content

Releases: reactor/reactor-core

v3.4.22

09 Aug 17:53
Compare
Choose a tag to compare

Reactor-Core 3.4.22 is part of 2020.0.22 Release Train (Europium SR22).

What's Changed

✨ New features and improvements

  • Add logging in Exceptions.throwIf[Jvm]Fatal, add isFatal methods by @simonbasle in #3122
  • Improve LoggerUtils support and add TestLoggerExtension by @simonbasle in #3123

📖 Documentation, Tests and Build

  • Clarify how to use processExistingClasses in debugging.adoc by @kicmeri in #3130
  • Refguide: Remove mention of discouraged subscribe variant by @simonbasle in #3141
  • Disable flaky BoundedElasticScheduler test by @simonbasle in #3142

🆙 Dependency Upgrades

  • Upgrade Gradle to 7.5, workaround nohttp, update gradle action by @simonbasle in #3127
  • Upgrade Gradle 7.5.1, Artifactory plugin 4.29.0 by @violetagg in #3144

New Contributors

Full Changelog: v3.4.21...v3.4.22

v3.5.0-M4

12 Jul 14:57
12473a4
Compare
Choose a tag to compare
v3.5.0-M4 Pre-release
Pre-release

Reactor-Core 3.5.0-M4 is part of 2022.0.0-M4 Release Train (F Milestone 4).

This version brings in a few changes, bugfixes and enhancements from the 3.4.x line, most notably from 3.4.21.

These are also listed below.

What's Changed

⚠️ Update considerations and deprecations

✨ New features and improvements

📖 Documentation, Tests and Build

  • Make context-propagation-api dependency optional + documentation by @simonbasle in #3100
  • Adapt to the changes in the context propagation API by @violetagg in #3113
  • From 3.4.x:
    • Clarify ContextN.putAll(Map) intended internal use in javadoc by @chemicL in #3103
    • Rework guide on Retry with Transient Errors by @simonbasle in #3093

🆙 Dependency Upgrades

New Contributors

Full Changelog: v3.5.0-M3...v3.5.0-M4

v3.4.21

12 Jul 12:07
Compare
Choose a tag to compare

Reactor-Core 3.4.21 is part of 2020.0.21 Release Train (Europium SR21).

What's Changed

✨ New features and improvements

  • Add windowTimeout sendNext early guard against maxSize overflow by @OlegDokuka in #3073
  • Add StateLogger for structured logging of state machines by @OlegDokuka in #3077
  • Implement disposing of tasks scheduled on VirtualTimeScheduler by @mdindoffer in #3097
  • Add forEach method to ContextView and subclasses by @chemicL in #3092
  • Introducing default impl for Context::forEach by @chemicL in #3101
  • Introducing Context::putAllMap by @chemicL in #3102

📖 Documentation, Tests and Build

  • Clarify ContextN.putAll(Map) intended internal use in javadoc by @chemicL in #3103
  • Rework guide on Retry with Transient Errors by @simonbasle in #3093

🆙 Dependency Upgrades

New Contributors

Full Changelog: v3.4.19...v3.4.21

v3.4.20

12 Jul 12:08
fe06759
Compare
Choose a tag to compare

❗ This release was not included in Project Reactor BOM.
Please check v3.4.21.

v3.5.0-M3

21 Jun 14:05
Compare
Choose a tag to compare
v3.5.0-M3 Pre-release
Pre-release

Reactor-Core 3.5.0-M3 is part of 2022.0.0-M3 Release Train (F Milestone 3).

This version brings in a few changes, bugfixes and enhancements from the 3.4.x line, most notably from 3.4.18 and 3.4.19. These are also listed below.

What's Changed

⚠️ Update considerations and deprecations

  • Scannable.tags() rework: change in how the tags are enumerated and added a tagsDeduplicated() method which allows to enumerate without duplicates (#3037)
  • Finalizing deprecation removals from public API with FluxProcessor and MonoProcessor and their implementations (#3051)
    • with the recent addition of a Sinks equivalent to EmitterProcessor, the most common remaining use case where Processor was needed is now covered (since #3042)

✨ New features and improvements

  • Fix windowTimeout stress test to use sinks by @OlegDokuka in #3074
  • from 3.4.x:
    • Add key hook parts to Schedulers.onHandleError by @simonbasle in #3039
    • [reactor-test] Add StepVerifier option to use ConditionalSubscriber by @simonbasle in #3035
    • Introduce an alternative to Processor-with-upstream case by @simonbasle in #3042
    • Rework Processor-with-upstream case to be backward compatible by @simonbasle in #3065
    • Implement variant of windowTimeout with fairBackpressure by @OlegDokuka in #3054
    • Add windowTimeout sendNext early guard against maxSize overflow by @OlegDokuka in #3073
    • Add StateLogger for structured logging of state machines by @OlegDokuka in #3077
    • Include classname of null-returning map function in NPE msg by @ismailalammar in #2984

🐞 Bug fixes

📖 Documentation, Tests and Build

🆙 Dependency Upgrades

New Contributors

v3.4.19

14 Jun 14:42
Compare
Choose a tag to compare

Reactor-Core 3.4.19 is part of 2020.0.20 Release Train (Europium SR20).

What's Changed

✨ New features and improvements

  • Add key hook parts to Schedulers.onHandleError by @simonbasle in #3039
  • [reactor-test] Add StepVerifier option to use ConditionalSubscriber by @simonbasle in #3035
  • Introduce an alternative to Processor-with-upstream case by @simonbasle in #3042
  • Rework Processor-with-upstream case to be backward compatible by @simonbasle in #3065
  • Implement variant of windowTimeout with fairBackpressure by @OlegDokuka in #3054
    • This is activated by the fairBackpressure boolean parameter.

🐞 Bug fixes

📖 Documentation, Tests and Build

  • Introducing JCStress tests for concurrent queues by @chemicL in #3069

🆙 Dependency Upgrades

New Contributors

v3.4.18

10 May 09:33
Compare
Choose a tag to compare

Reactor-Core 3.4.18 is part of 2020.0.19 Release Train (Europium SR19).

What's Changed

✨ New features and improvements

🐞 Bug fixes

  • Fix a Many sink / EmitterProcessor subscriber disposal leak by @simonbasle in #3029

🆙 Dependency Upgrades

  • Upgrade Checkout action, Mockito, Spotless, Artifactory by @simonbasle in #3030
  • Upgrade download, gradle enterprise, spotless, byteBuddy by @simonbasle in #3034

New Contributors

v3.5.0-M2

21 Apr 13:10
Compare
Choose a tag to compare
v3.5.0-M2 Pre-release
Pre-release

Feedback Needed

As always, milestones are an important step where your feedback is needed.

  • We are particularly interested in feedback for the tap operator (#3013) combined to the new metrics module (#3015).

  • One feature that didn't make it to this release but on which we'd like your input as well is a contextual variant of the task-decoration scheduler hook. See design in #2980 and candidate implementation in #2983.

What's Changed

⚠️ Update considerations and deprecations

  • Changes in metrics dependencies and approach
    • Reactor-Core now expects and assumes Micrometer 1.10 as the metrics baseline (#3006, #3025)
    • The inlined metrics() operator and other metrics features have been deprecated (#3015)
    • A new more generic tap operator is introduced, among other things it can replace metrics() (#3013)
    • One provider for the tap is the newly introduced reactor-core-micrometer module version 1.0.0-M2 (#3015)

✨ New features and improvements

  • Add 'tap', a generic side-effect/observability operator by @simonbasle in #3013
  • Add default contextView() implem to [Flux|Mono|Synchronous]Sink by @simonbasle in #3021

🐞 Bug fixes

  • Avoid FluxReplay buffer retaining/leaking with tiny TTL by @simonbasle in #2998
  • Fix subscribers being retained by SinkOneMulticast by @simonbasle in #3002
  • Fix a Many sink / EmitterProcessor subscriber disposal leak by @simonbasle in #3029

📖 Documentation, Tests and Build

  • [doc] Polish Schedulers javadoc for common/cached instances by @dedeibel in #2995
  • Increase landscape width of refguide content for readability by @tmyksj in #3009

🆙 Dependency Upgrades

New Contributors

v3.4.17

12 Apr 09:00
Compare
Choose a tag to compare

Reactor-Core 3.4.17 is part of 2020.0.18 Release Train (Europium SR18).

⚠️ Update considerations and deprecations

🐞 Bug fixes

  • [agent] Avoid instrumenting methods with unwrappable returnType by @simonbasle in #2973
  • Avoid FluxReplay buffer retaining/leaking with tiny TTL by @simonbasle in #2998
  • Fix subscribers being retained by SinkOneMulticast by @simonbasle in #3002

📖 Documentation, Tests and Build

  • [test] Fix flaky BoundedElasticTest with better controlled tasks by @simonbasle in #2968
  • [doc] Polish Schedulers javadoc for common/cached instances by @dedeibel in #2995
  • [test] Improve flaky BoundedElasticScheduler toString test by @simonbasle in #3010

🆙 Dependency Upgrades

  • April round of upgrades: Gradle 7.4.2, plugins (download, jmh, spotless, artifactory, gradle enterprise) by @simonbasle in #2992
  • Update gradle/gradle-build-action to v2.1.5 by @simonbasle in #2996
  • Update ByteBuddy to v1.12.9 by @simonbasle in #3008

New Contributors

v3.5.0-M1

23 Mar 09:33
Compare
Choose a tag to compare
v3.5.0-M1 Pre-release
Pre-release

What's Changed

⚠️ Update considerations and deprecations

🐞 Bug fixes

  • [agent] Avoid instrumenting methods with unwrappable returnType by @simonbasle in #2973

📖 Documentation, Tests and Build

  • [test] Fix flaky BoundedElasticTest with better controlled tasks by @simonbasle in #2968

Full Changelog: v3.4.16...v3.5.0-M1