Reactive Streams is an initiative to provide a standard for asynchronous stream processing with non-blocking back pressure.

Four months have passed since Reactive Streams 1.0.1 was released, and back then it was promised that after JDK9 had shipped, a compatibility/conversion library—to seamlessly convert between java.util.concurrent.Flow.* and the org.reactivestreams namespaces—would be coming in the next release.

Not only have we done that in 1.0.2—a TCK for implementations of the java.util.concurrent.Flow interfaces is also included in this release, so no more need to manually adapt your java.util.concurrent.Flow.* implementations to the Reactive Streams namespace in order to use the TCK anymore!

As all other 1.0.x releases of Reactive Streams, 1.0.2 is binary—and semantically—compatible with the previous releases. Also, all artifacts, documentation, and the specification is licensed under Creative Commons Zero (Public Domain).

Some of the highlights of the 1.0.2 release are: the Flow adapters, the Flow TCK, Automatic-Module-Names in all of the artifacts, improved TCK coverage, the RangePublisher example, and specification clarifications.

Akka Streams has already merged support and passed all TCK tests for Reactive Streams 1.0.2, and will release it shortly, in the upcoming Akka 2.5.9 release.

Next steps:

  • If you are a Reactive Streams user—there’s nothing you need to change.
  • If you are an Akka Streams user—there’s nothing you need to change.
  • If you are a Reactive Streams implementor, update the version of your dependencies to 1.0.2 and run a compile + test to verify that the implementation passes the tests still compile and pass the new TCK.
  • If you are an implementor of java.util.concurrent.Flow.* interfaces, then make sure your implementations pass the new Flow TCK, and of course, that they conform to the spec.
  • If you are a Reactive Streams or java.util.concurrent.Flow.* user—and you need to convert between org.reactivestreams and java.util.concurrent.Flow—use the new flow adapters library.


Viktor Klang, Deputy CTO of Lightbend, Inc.

Documentation links:

All artifacts in 1.0.2

Share


Comments


View All Posts or Filter By Tag