Exposed icon indicating copy to clipboard operation
Exposed copied to clipboard

Kotlin/Native support

Open eyelash opened this issue 5 years ago • 21 comments

Are there any plans to support Kotlin/Native?

eyelash avatar Sep 05 '19 14:09 eyelash

It's not on the roadmap right now but we could consider it after implementing support for async java drivers.

Tapac avatar Sep 05 '19 14:09 Tapac

@Tapac I really love this library and using with Ktor and Android. I am not sure how much effort it will take to make it compatible with Kotlin multiplatform but certainly, if you consider it to do sooner, it would certainly lead over SQLDelight. Just imagine, if you are using the same library for server-side and your Android app and get support for multiplatform, how wonderful a dev life would be. :) Multiplatform already provides libraries for Coroutine, Http client, Serialization support and just missing this one piece for app side database.
And Thank you for all the wonderful work you and your team do. Appreciate!!!

vkhooda24 avatar Nov 16 '19 17:11 vkhooda24

@Tapac It's been a year now, I just wanted to ask if kotlin multiplatform support is on your roadmap now?

lbensaad avatar Sep 04 '20 19:09 lbensaad

Well, a prototype of async support is coming to Exposed just now so my guess is that MPP support isn't coming any time soon.

SeekDaSky avatar Sep 07 '20 14:09 SeekDaSky

@lbensaad , sorry, but I don't really have free time to dive into the native world. The problem is that I need to find the native drivers for each database and I'm not sure that there is a common interface such as JDBC in a native world.

It will be great if someone will try to contribute into the project in place of native support.

Tapac avatar Sep 08 '20 21:09 Tapac

@Tapac For MMP sqlite is enough.

saied89 avatar Feb 01 '21 14:02 saied89

Just a note to say I came looking; interested in reusing some of my server-side Exposed Repository classes on the client across Android / iOS / Desktop (KMP). As @saied89 says, SQLite on iOS is the extend of the K/N support I'd be needing. Thanks for Exposed, it's a pleasurable API!

chris-hatton avatar Oct 21 '21 10:10 chris-hatton

2 years have passed. I see this feature has appeared on your roadmap. It would be a good alternative to SqlDelight if it supports iOS

rsktash avatar Sep 26 '22 13:09 rsktash

Is there any progress?

mcxinyu avatar Jul 28 '23 01:07 mcxinyu

Hi if Exposed support kotlin multiplatform (jvm, android, ios, wasm) then we write one code for server and sqlite cache database in client. it's will be very easy to develop. please get help and idea from sqldelight library.

mahramane avatar Jan 28 '24 10:01 mahramane

Ktor 3.0 will support Kotlin Native.

It's time for Exposed to support Kotlin Native as well.

zoujiaqing avatar Mar 17 '24 01:03 zoujiaqing

I faced exactly the same problem, while I was playing around with Ktor 3.0 (beta). Until now there isn't any mature database driver that target the Kotlin Native. Although, there quite a few projects that wrap a C driver, using FFI.

I did the same, I created a small driver, wrapping the sqlx driver from the Rust ecosystem. If you want take a look here: https://github.com/smyrgeorge/sqlx4k

smyrgeorge avatar Jul 19 '24 11:07 smyrgeorge

Would really love to see Exposed for KMP. I much prefer it to room so I would use Exposed not only on server but in mobile apps too

H4kt avatar Aug 02 '24 22:08 H4kt