davidmoten / rxjava-jdbc

Efficient execution and functional composition of database calls using jdbc and RxJava Observables
Apache License 2.0
807 stars 113 forks source link

RxJava 2.0 Planning? #63

Open thomasnield opened 8 years ago

thomasnield commented 8 years ago

Hey @davidmoten,

This is probably going to be a somewhat large refactoring task. What are your plans with RxJava 2.0 being on the horizon? Will there be two versions of this codebase on two branches? With two separate 1.0.x and 2.0.x releases?

Tom

davidmoten commented 8 years ago

Hi Tom, haven't planned it yet. I'd support both rxjava 1.x and 2.x for a good while but not sure if I'd branch this repo or fork to new repo rxjava-jdbc2.

RxJava2 is a way off production ready and lots of api change still happening so no rush I think.

Cheers Dave

On Sun, 4 Sep 2016, 13:50 Thomas Nield notifications@github.com wrote:

Hey @davidmoten https://github.com/davidmoten,

This is probably going to be a somewhat large refactoring task. What are your plans with RxJava 2.0 being on the horizon? Will there be two versions of this codebase on two branches? With two separate 1.0.x and 2.0.x releases?

Tom

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/davidmoten/rxjava-jdbc/issues/63, or mute the thread https://github.com/notifications/unsubscribe-auth/AATa63_Ui98HqLRMhT62aFfFoKsiwWyfks5qmkAOgaJpZM4J0c1f .

thomasnield commented 8 years ago

Well that's a relief, haha I was already planning my own libraries for the transition. I'm glad there is good reason to hold off then.

Sounds good. Ill adopt that fork approach for my stuff and recommend it to others, that's a good idea. You can close this issue or leave it open.

akarnokd commented 8 years ago

Switching between branches is somewhat inconvenient for me in RxJava. I'd prefer separate project so you can have both of them open in the same Eclipse workspace (not sure how IntelliJ would be affected).

I may be able to help you with porting this to 2.x but it really depends on the extra features you did or how deeply you depended on 1.x structure that has to be remade.

thomasnield commented 8 years ago

@akarnokd I'm glad you're here, thanks for helping out. I can try to help you and @davidmoten but my low-level RxJava knowledge is limited, and I'm a bit overloaded with projects right now. I can assist with testing functionality on my end against SQLite, PostgreSQL, and MySQL.

davidmoten commented 8 years ago

thanks @akarnokd. Porting shouldn't be a problem for this one, thanks for the offer of help!

Speaking of switching branches between RxJava 1.x and 2.x in Eclipse what I did was cloned RxJava again to an RxJava2 folder and imported that to Eclipse as project rxjava2. That way I can have them both open.

akarnokd commented 8 years ago

Just fire up a new repo or branch (build ready) and I'll do the conversion.

akarnokd commented 8 years ago

Looks like rxjava-extras needs the conversion first, at least those parts used by this library.

davidmoten commented 8 years ago

Yep, I'll have a look at them both (or just the bits that rxjava-jdbc uses) and plan it. rxjava-jdbc needs a rewrite I reckon, it predates useful rxjava operators and predates my improved knowledge. Might leave that till after a simple migration to 2.x though.

On Sun, 30 Oct 2016, 07:57 David Karnok notifications@github.com wrote:

Looks like rxjava-extras needs the conversion first, at least those parts used by this library.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/davidmoten/rxjava-jdbc/issues/63#issuecomment-257115669, or mute the thread https://github.com/notifications/unsubscribe-auth/AATa6ytjaxyRSIo4CufH6msGDj2Uoo3gks5q47M5gaJpZM4J0c1f .

krishna81m commented 7 years ago

Hello, just checking if 2.x support is available in beta?

thomasnield commented 7 years ago

@krishna81m I don't think it is. Last time I checked RxJava-Extras needed to be ported over to RxJava2 since it is a dependency. There likely needs to be some design decisions regarding Flowables vs Observables, and whether to support one or both (I'm leaning towards the latter since both can be included in the builder).

If you need to urgently use this with RxJava 2.0, I recommend looking at RxJava2Interop by David Karnok to convert the Observables into its RxJava 2.0 counterparts.

It's a bit unfortunate David and the other RxJava gurus are ridiculously busy. I'd take a stab at it but I'm busy writing the Learning RxJava book with Packt. If anybody can provide help I know many people (including myself) would be highly appreciative.

davidmoten commented 7 years ago

Hello, just checking if 2.x support is available in beta? Thanks @thomasnield for answering. Use RxJava2Interop as suggested to use the existing library.

Work is under way on rxjava2-jdbc at https://github.com/davidmoten/rxjava2-jdbc as a complete rewrite. I'll get back to it shortly. New version is discussed at https://github.com/davidmoten/rxjava2-jdbc/wiki but is still in development (not passing all tests at the moment).

ArekCzarnik commented 7 years ago

any news on rxjava2-jdbc? it is still under development ?

thomasnield commented 7 years ago

@ArekCzarnik David Moten is pretty busy. I've created my own implementation in Kotlin to get by in the interim.

https://github.com/thomasnield/rxkotlin-jdbc/blob/master/src/main/kotlin/org/nield/rxkotlinjdbc/JdbcExtensions.kt

It's pretty lightweight and just leverages extension functions. It doesn't have the reactive parameter features though in RxJava-JDBC, as well as named parameters. And of course, it only works with Kotlin, not Java.

davidmoten commented 7 years ago

I imagine I'll juggle my priorities to favour rxjava2-jdbc given enough interest. It's on my radar (as is your book @thomasnield, thanks for answering).

davidmoten commented 7 years ago

Just got past a blocker in rxjava2-jdbc, development can accelerate now, if you watch the rxjava2-jdbc project you'll probably notice some action in the next week or so.

thomasnield commented 7 years ago

@davidmoten awesome, thanks David!

davidmoten commented 7 years ago

An update on rxjava2-jdbc:

You're welcome to have a play with it, I'll endeavour to keep master buildable till release.

davidmoten commented 7 years ago

Ah, needs more work, don't bother playing with it yet!

davidmoten commented 7 years ago

Ok, rxjava2-jdbc is up and running, tests pass now, 0.1-RC1 has been released to Maven Central so anyone interested have a play! https://github.com/davidmoten/rxjava2-jdbc

thomasnield commented 7 years ago

@davidmoten awesome, thanks David! I'm going to share this right now.