RxJavaComputationExpressions
RxJavaComputationExpressions copied to clipboard
Status of the project
No updates for 11 months, no mentions of work being done to support 2.x.
What is the status going forward, does it need some developer love or is it considered a "final" release version?
Hi. The problem is that 2.x, although quite ready in my opinion, isn't finalized yet and the review/discussion process is really slow.
Generally, I didn't encounter many users of this companion library (14 stars vs 8100 stars).
I've looked at the code and 2 of the internal operators require Subscribers.wrap
and the OperatorWhileDoWhile
doesn't support backpressure.
Would you like to develop the 2.x version of this library?
I was looking for a way to help the project while learning about the internals, and this is small enough for me to start a branch without fear of breaking compatibility for everyone. I'm willing to spend time on it, and if you have any pointers I'll gladly follow.
I've created the 2.x branch and set it up so it builds at least. I've emptied the code so you can start porting the old operators. You may want to re-implement the operators for Observable
, NbpObservable
and perhaps even Single
.
Are you familiar with Reactive-Streams and how to program for it?
I have read the spec, but not much about RxJava's implementation of it. Your blog post about ConnectableObservable made me aware that I lack some knowledge of the internal implementation, and that's what I want to learn.
I plan to peek at how other operators are implemented first, understand what the tests require, and go from there.
If you have any resource that may help with it, I'd be grateful.
The ifThen
and switchCase
look almost the same, but for OperatorWhileDoWhile
, you'll need the SubscriptionArbiter
and trampolining to avoid deep stacks. Look at the PublisherRepeat implementation in 2.x for hints.
I haven't forgotten about this. Sadly my time has been scarce lately, I'll have more chances around Christmas.
@pakoito @akarnokd any plans on porting this to work with rxjava 2.x?
See https://github.com/akarnokd/RxJava2Extensions#computational-expressions