Realm Kotlin 0.6.0

Nabil Hachicha
Realm Blog
Published in
2 min readOct 19, 2021

--

We just released v0.6.0 of Realm Kotlin. It contains support for Kotlin/JVM, indexed fields as well as a number of bug fixes.

Kotlin/JVM support

The new Realm Kotlin SDK was designed from its inception to support Multiplatform. So far, we’ve been focusing on KMM targets i.e Android and iOS but there was a push from the community to add JVM support, this is now possible using 0.6.0 by enabling the following DSL into your project:

kotlin {    jvm()    // other targets …}

Now your app can target:

Android, iOS, macOS and JVM (Linux since Centos 7, macOS x86_64 and Windows 8.1 64).

What to build with Kotlin/JVM?

Where is it installed?

The native library dependency is extracted from the cinterop-jar and installed into a default location on your machine:

  • Linux:
$HOME/.cache/io.realm.kotlin/
  • macOS:
$HOME/Library/Caches/io.realm.kotlin/
  • Windows:
%localappdata%\io-realm-kotlin\

Support Indexed fields

To index a field, use the @Index annotation. Like primary keys, this makes writes slightly slower, but makes reads faster. It’s best to only add indexes when you’re optimizing the read performance for specific situations.

Abstracted public API into interfaces

If you tried out the previous version, you will notice that we did an internal refactoring of the project in order to make public APIs consumable via interfaces instead of classes (ex: Realm and RealmConfiguration), this should increase decoupling and make mocking and testability easier for developers.

🎉 Thanks for reading. Now go forth and build amazing apps with Realm! As always, we’re around on GitHub, Twitter and #realm channel on the official Kotlin Slack.

See the full changelog for all the details.

--

--