Skip to content

Releases: reactor/reactor-core

v3.8.0

07 Nov 22:53
fedfdd2

Choose a tag to compare

Reactor Core 3.8.0 is part of 2025.0.0 Release Train.

3.8.0 Highlights

Enhanced Null Safety using JSpecify

🦺 Reactor Core 3.8.0 introduces JSpecify annotations for comprehensive null safety, replacing the legacy JSR 305-based annotations with a modern, properly specified standard that prevents NullPointerExceptions through build-time checks. This upgrade provides enhanced IDE support, seamless Kotlin integration with automatic translation to Kotlin's null safety system, and more precise nullability declarations including support for arrays, varargs, and generic types — making Reactor APIs safer and more developer-friendly across the entire ecosystem.

⚠️ Nullability annotations from reactor.util.annotation have been deprecated in favour of JSpecify annotations.

📖 Check the refreshed reference documentation section on Null Safety.

⚠️ Note for Kotlin users: While this change is backwards compatible in the Java ecosystem and does not dictate a new generation of Reactor Core, we do appreciate it can appear as breaking changes for Kotlin codebases. The benefits are well defined nullness of the Reactor API and reduction of the ceremony that was required prior to the introduction of JSpecify annotations.

Repeat Spec

Repeat functionality from Reactor Addons has been ported to Reactor Core under the RepeatSpec class and can be used in conjunction with the Flux#repeatWhen() and Mono#repeatWhen() operators. Make sure to check out the Javadoc.

Reactor Core Micrometer version aligned with Reactor Core version

The reactor-core-micrometer library, which is part of the reactor-core repository is always released together with reactor-core, hence we decided to align their versions starting from 3.8.0 (the previous line was 1.2.x corresponding with 3.7.x of reactor-core).

What's Changed

⚠️ Update considerations and deprecations

  • Introduce JSpecify for nullability annotations by @chemicL in #4091

✨ New features and improvements

🐞 Bug fixes

  • Fix RetryBackoffSpec multiplier handling of fractional values by @chemicL in #4048
  • Adjust Flux#map mapper to disallow null return values by @chemicL in #4103

📖 Documentation

New Contributors

Full Changelog: v3.7.3...v3.8.0

v3.7.13

07 Nov 17:16
dbbb82f

Choose a tag to compare

Reactor Core 3.7.13 is part of the 2024.0.12 Release Train.

What's Changed

✨ New features and improvements

Full Changelog: v3.7.12...v3.7.13

v3.8.0-RC1

14 Oct 09:18
0e4e24c

Choose a tag to compare

v3.8.0-RC1 Pre-release
Pre-release

Reactor Core 3.8.0-RC1 is part of the 2025.0.0-RC1 Release Train.

What's Changed

⚠️ Update considerations and deprecations

  • Introduce JSpecify for nullability annotations by @chemicL in #4091

✨ New features and improvements

🐞 Bug fixes

  • Adjust Flux#map mapper to disallow null return values by @chemicL in #4103

Full Changelog: v3.8.0-M7...v3.8.0-RC1

v3.7.12

14 Oct 07:38
a1dcd93

Choose a tag to compare

Reactor Core 3.7.12 is part of the 2024.0.11 Release Train.

What's Changed

✨ New features and improvements

Full Changelog: v3.7.11...v3.7.12

v3.8.0-M7

10 Sep 07:37
f7b5427

Choose a tag to compare

v3.8.0-M7 Pre-release
Pre-release

Reactor Core 3.8.0-M7 is part of the 2025.0.0-M7 Release Train.

What's Changed

✨ New features and improvements

Full Changelog: v3.8.0-M6...v3.8.0-M7

v3.7.11

10 Sep 07:37
abae33b

Choose a tag to compare

Reactor Core 3.7.11 is part of the 2024.0.10 Release Train.

What's Changed

✨ New features and improvements

Full Changelog: v3.7.9...v3.7.11

v3.8.0-M6

12 Aug 11:31
97712f0

Choose a tag to compare

v3.8.0-M6 Pre-release
Pre-release

Reactor Core 3.8.0-M6 is part of the 2025.0.0-M6 Release Train.

What's Changed

✨ New features and improvements

Full Changelog: v3.8.0-M5...v3.8.0-M6

v3.7.9

12 Aug 06:25
4965f64

Choose a tag to compare

Reactor Core 3.7.9 is part of the 2024.0.9 Release Train.

What's Changed

✨ New features and improvements

Full Changelog: v3.7.8...v3.7.9

v3.8.0-M5

15 Jul 14:06
fce7664

Choose a tag to compare

v3.8.0-M5 Pre-release
Pre-release

Reactor Core 3.8.0-M5 is part of the 2025.0.0-M5 Release Train.

What's Changed

✨ New features and improvements

🐞 Bug fixes

  • Fix RetryBackoffSpec multiplier handling of fractional values by @chemicL in #4048

New Contributors

Full Changelog: v3.8.0-M4...v3.8.0-M5

v3.7.8

15 Jul 14:00
5630334

Choose a tag to compare

Reactor Core 3.7.8 is part of the 2024.0.8 Release Train.

What's Changed

✨ New features and improvements

🐞 Bug fixes

  • Fix RetryBackoffSpec multiplier handling of fractional values by @chemicL in #4048

New Contributors

Full Changelog: v3.7.7...v3.7.8