Spring Team
Stephane Maldini

Stephane Maldini

Project Reactor Lead

San Francisco, CA

A multi-tasker eating tech 24/7, Stephane is interested in cloud computing, data science and messaging. Leading the Project Reactor, he is in a mission to help developers create reactive and efficient architectures on the JVM and beyond.
Blog Posts by Stephane Maldini

Reactor Bismuth-SR3 is now available

A shipment of fixes and goodies has arrived and it is brought to you by the new Bismuth-SR3 Bill Of Material. This version is now used by Spring Framework 5.0.1 ! Our site projectreactor.io reflects those latest updates.

Reactor-Core 3.1.1

release notes

A quality update including more than 20 fixes and just a couple new features: Kotlin extensions for Reactor conversion from Publisher and the Flux#limitRequest operator alternative to Flux#take with an explicit upper limit to the produced demand.

We are now working on 3.1.2.RELEASE. Have a look at our issues backlog for a more detailed scope.

Read more...

Reactor Aluminium-SR1 has landed

A batch update of releases has arrived and it is brought to you with the new Aluminium-SR1 Bill Of Material. Just in time for Spring Framework M5 !

Reactor-Core 3.0.5

release notes

An important quality update with new features including predicated-based windows and the checkpoint operator, fixes, test coverage and for the first time in 3.0.x line, a draft reference guide.

We are now working on 3.0.6.RELEASE which is going to be our last major 3.0 content update before 3.1.0.RELEASE. We encourage our Spring Community to just follow deprecated instructions if they hit any of the @Deprecated API, thus simply preparing for a quick, painless, upgrade when time comes. Have a look at our issues backlog for a more detailed scope.

Read more...

Ready your Java 8 Reactive apps now, Reactor 3.0 GA is out !

After more than a year of work, multiple milestones and fine tuning based on much feedback, I have the pleasure of announcing Reactor 3 General Availability. You will find Reactor Core 3.0.2.RELEASE on Maven Central.

Join the chat at https://gitter.im/reactor/reactor Reactor Core

What is Reactor 3 ?

Reactor 3 provides a powerful and efficient reactive programming model for Java 8 based applications. The model builds upon the experience of both Reactor 2 and RxJava 1 and introduces a fluent way to compose asynchronous backpressure-ready event processing. Spring Framework 5 uses Reactor 3 to build and eventually expose a complete reactive story.

Read more...

Reactor Core 3.0 becomes a unified Reactive Foundation on Java 8

[Update]
Following our Reactor 2.5 introduction, we shifted the version to 3.0 to reflect better the major redesign effort overtaken.

A meaningful composition API

The former reactor-stream module has been merged into Reactor Core 3.0. Flux and Mono respectively representing 0..N and 0..1 sequence types now cover a solid range of operations for the following categories:

  • Cold-to-Hot or Multicasting : publish, publishNext, cache, multicast
  • Aggregating/Reducing (Transforming) : buffer, reduce, scan, window, sample
  • Filtering : filter, exists, single
  • Conditioning : timeout, take, takeUntil, skip, skipUntil
  • Combining : withLatestFrom, combineLatest
  • Backpressuring : onBackpressureDrop, onBackpressureLatest
Read more...

Reactor 2.5 : A Second Generation Reactive Foundation for the JVM

Entering Reactive Streams Era

Reactor 2.0 development started by the end of 2014, around the same time as Reactive Streams. We were keen on joining the effort and early adopt a backpressure protocol to mitigate our main message-passing limitation: bounded capacity. We delivered in Reactor 2.0 the first attempt to make Reactive Streams implementations of RingBuffer-based schedulers and derived an increasingly popular reactive pattern: Reactive Extensions.

Meanwhile, Reactive Streams started getting traction and an entire ecosystem of libraries discussed this transition. The regular concern ? Implementing Reactive Streams semantics is all but an easy task. We observed an increasing need for a reactive foundation to solve message-passing and implement common streaming operators. We therefore created a dedicated project space for Reactor Core and started a focused effort with Spring Framework team.

Read more...