Open Jasper-M opened 1 year ago
Since the reactive-streams interop seems to be deprecated in favor of the flow interop,
Well, yes and no. reactive-streams is the only option available on JDK8, flow was introduced in JDK9.
Though I noticed that the compiler doesn't seem to actually show any deprecation warnings.
We implemented as a "soft" deprecation that only appears in scaladocs. This is because hard-deprecating would leave JDK8 users out in the cold.
Ah ok that makes sense.
Just to give a more concrete action for anyone hitting this issue: if you are on JDK 9+, please switch to the FS2 Flow
interop and if necessary use the official Reactive Streams FlowAdapters
.
There is no reason to use the FS2 Reactive Streams interop anymore unless you are stuck on JDK 8.
Edit: for the record, a PR to fix FS2 Reactive Streams interop is welcome, if anyone feels so inclined :)
The implementation still uses an uncancelable
async_
call which will hang on CE 3.5: https://github.com/typelevel/fs2/blob/9c523441c8f1770faafb36e01c893218162cdb72/reactive-streams/src/main/scala/fs2/interop/reactivestreams/StreamSubscriber.scala#L223The java flow interop is fixed, but the fix hasn't been released yet. Since the reactive-streams interop seems to be deprecated in favor of the flow interop, perhaps just releasing the fixed flow interop is sufficient? Though I noticed that the compiler doesn't seem to actually show any deprecation warnings.