Open
Description
Hi @pwittchen, now that Kotlin Coroutines Flow is stable, I'm wondering if there's any interest / plans to migrate the project to kotlin and expose Flow
in the APIs (or just your thoughts in general).
I'm aware that this is a RxJava project and you're also planning to support RxJava 3 so this might be out of scope for ReactiveNetwork. But there are a couple of reasons I still want to raise this issue:
- It's called ReactiveNetwork and not something like RxNetwork. I don't know maybe just because the name was taken? 😃
- It's useful because it provides reactive network change events through cold streams which fits well within a reactive / push-based architecture. I see RxJava as a layer of binding APIs for RxJava users, and there should be options for Kotlin Flow users.
- Generally I'd like to see the ecosystem move forward. I'm not here to pitch for replacing RxJava with Coroutines and I love RxJava and all its crazy operators. But Flow and Coroutines are getting tractions with first-class support from Kotlin / Jetbrains / Google (Lifecycle already supports Coroutines, Room supports Flow in latest alpha, and Paging 3.0 is being re-written in Kotlin with Coroutines and Flow).
A few options I have in mind:
- Re-write in Kotlin and Flow in separate branch (no RxJava dependency)
- Provide extension artifact for exposing
Flow
type instead of RxObsersvable
- Do nothing (maybe start a new repo) 😄
Regardless of what you think about this I'm still extremely grateful for the work you've put into this great library.