All Versions
124
Latest Version
Avg Release Cycle
27 days
Latest Release
76 days ago

Changelog History
Page 1

  • v6.1.0

    January 17, 2020

    ✨ Enhancements

    • 🔌 The Realm Gradle plugin now applies kapt when used in Kotlin Multiplatform projects. Note, Realm Java still only works for the Android part of a Kotlin Multiplatform project. (Issue #6653)
    • The error message shown when no native code could be found for the device is now much more descriptive. This is particular helpful if an app is using App Bundle or APK Split and the resulting APK was side-loaded outside the Google Play Store. (Issue #6673)
    • RealmResults.asJson() now encode binary data as Base64 and null object links are reported as null instead of [].

    🛠 Fixed

    • 🛠 Fixed using RealmList with a primitive type sometimes crashing with Destruction of mutex in use. (Issue #6689)
    • RealmObjectSchema.transform() would crash if one of the DynamicRealmObject provided are deleted from the Realm. (Issue #6657, since 0.86.0)
    • The Realm Transformer will no longer attempt to send anonymous metrics when Gradle is invoked with --offline. (Issue #6691)

    Compatibility

    • Realm Object Server: 3.23.1 or later.
    • ⬆️ File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
    • 🚀 APIs are backwards compatible with all previous release of realm-java in the 6.x.y series.

    Internal

    • ⚡️ Updated to ReLinker 1.4.0.
    • ⚡️ Updated to Object Store commit: 2a204063e1e1a366efbdd909fbea9effceb7d3c4.
    • ⚡️ Updated to Realm Sync 4.9.4.
    • ⚡️ Updated to Realm Core 5.23.8.

    Credits

    • 👍 Thanks to @sellmair (Sebastian Sellmair) for improving Kotlin Multiplatform support.
  • v6.0.2

    November 21, 2019

    ✨ Enhancements

    • None.

    🛠 Fixed

    • 🔀 [ObjectServer] SyncSession progress listeners now work correctly in combination with SyncConfiguration.waitForInitialRemoteData().
    • 0️⃣ The @RealmModule annotation would be stripped on an empty class when using R8 resulting in apps crashing on startup with io.realm.DefaultRealmModule is not a RealmModule. Add @RealmModule to the class definition.. (#6449)

    Compatibility

    • Realm Object Server: 3.23.1 or later.
    • ⬆️ File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
    • 🚀 APIs are backwards compatible with all previous release of realm-java in the 6.x.y series.

    Internal

    • ⚡️ Updated to Object Store commit: ad96a4c334b475dd67d50c1ca419e257d7a21e18.
    • ⚡️ Updated to Realm Sync v4.8.3.
  • v6.0.1

    November 11, 2019

    ⬆️ NOTE: Anyone using encrypted Realms are strongly advised to upgrade to this version.

    ✨ Enhancements

    • None

    🛠 Fixed

    • When using encrypted Realms a race condition could lead to the Realm ending up corrupted when the file increased in size. This could manifest as a wide array of different error messages. Most commonly seen has been "Fatal signal 11 (SIGSEGV) from Java_io_realm_internal_UncheckedRow_nativeGetString", "RealmFileException: Top ref outside file" and "Unable to open a realm at path. ACCESS_ERROR: Invalid mnemonic". (#6152, since 5.0.0)
    • 🖨 RealmResults.asJSON() now prints lists with primitive values directly instead of wrapping each value in an object with an !ARRAY_VALUE property.

    Compatibility

    • Realm Object Server: 3.23.1 or later.
    • ⬆️ File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
    • 🚀 APIs are backwards compatible with all previous release of realm-java in the 6.x.y series.

    Internal

    • ⚡️ Updated to Realm Sync 4.7.12.
    • ⚡️ Updated to Realm Core 5.23.6.

    Credits

    • Thanks to Vladimir Konkov (@vladimirfx) for help with isolating (#6152).
  • v6.0.0

    October 01, 2019

    💥 Breaking Changes

    • 🔀 [ObjectServer] The PermissionManager is no longer backed by Realms but instead a REST API. This means that the PermissionManager class has been removed and all methods have been moved to SyncUser. Some method names have been renamed slightly and return values for methods have changed from RealmResults<Permission> to List<Permission>. This should only have an impact if change listeners were used to listen for changes. In these cases, you must now manually retry the request.

    ✨ Enhancements

    None.

    🛠 Fixed

    None.

    Compatibility

    • Realm Object Server: 3.23.1 or later.
    • ⬆️ File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
    • 🚀 APIs are backwards compatible with all previous release of realm-java in the 6.x.y series.

    Internal

    • [ObjectServer] The OKHttp client will now follow redirects from the Realm Object Server.
  • v5.15.2

    September 30, 2019

    ✨ Enhancements

    • None.

    🛠 Fixed

    • 🖨 null values were not printed correctly when using RealmResults.asJSON() (Realm Core Issue #3399)
    • 🔀 [ObjectServer] Queries with nullable Date's did not serialize correctly. Only relevant if using Query-based Synchronization. (Realm Core issue #3388)
    • 🛠 [ObjectServer] Fixed crash with java.lang.IllegalStateException: The following changes cannot be made in additive-only schema mode when opening an old Realm created between Realm Java 5.10.0 and Realm Java 5.13.0. (Issue #6619, since 5.13.0).

    Compatibility

    • Realm Object Server: 3.21.0 or later.
    • ⬆️ File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
    • 🚀 APIs are backwards compatible with all previous release of realm-java in the 5.x.y series.

    Internal

    • ⚡️ Updated to Object Store commit: 8416010e4be5e32ba552ff3fb29e500f3102d3db.
    • ⚡️ Updated to Realm Sync 4.7.8.
    • ⚡️ Updated to Realm Core 5.23.5.
    • ⚡️ Updated Docker image used on CI to Node 10.
  • v5.15.1

    September 09, 2019

    ✨ Enhancements

    • None.

    🛠 Fixed

    • 🏗 Projects with flatDirs repositories defined crashed the build with MissingPropertyException. (Issue #6610, since 5.15.0).

    Compatibility

    • Realm Object Server: 3.21.0 or later.
    • ⬆️ File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
    • 🚀 APIs are backwards compatible with all previous release of realm-java in the 5.x.y series.

    Internal

    • None.
  • v5.15.0

    September 05, 2019

    ✨ Enhancements

    • 🏗 [ObjectServer] Added support for Client Resync for fully synchronized Realms which automatically will recover the local Realm in case the server is rolled back. This largely replaces the Client Reset mechanism. Can be configured using SyncConfiguration.Builder.clientResyncMode(). (Issue #6487)

    🛠 Fixed

    • ⬆️ Huawei devices reporting Permission denied when opening a Realm file after an app upgrade or factory reset. This does not automatically fix already existing Realm files. See this FAQ entry for more details. (Issue #5715)
    • ⚡️ Realm.copyToRealm() and Realm.insertOrUpdate() crashed on model classes if @LinkingObjects was used to target a field with a re-defined internal name in the parent class (e.g. by using @RealmField). (Issue #6581)

    Compatibility

    • Realm Object Server: 3.21.0 or later.
    • ⬆️ File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
    • 🚀 APIs are backwards compatible with all previous release of realm-java in the 5.x.y series.

    Internal

    • 🔀 Implemented direct access to sync workers on Cloud, bypassing the Sync Proxy: the binding will override the sync session's url prefix if the token refresh response for a realm contains a sync worker path field.
    • ⚡️ Updated to Object Store commit: 9f19d79fde248ba37cef0bd52fe64984f9d71be0.
    • ⚡️ Updated to Realm Sync 4.7.4.
    • ⚡️ Updated to Realm Core 5.23.2.
  • v5.14.1

    ✨ Enhancements

    • None.

    🛠 Fixed

    • ⚡️ Realm.copyToRealm() and Realm.insertOrUpdate() crashed on model classes if @LinkingObjects was used to target a field with a re-defined internal name in the parent class (e.g. by using @RealmField). (Issue #6581)

    Compatibility

    • Realm Object Server: 3.21.0 or later.
    • ⬆️ File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
    • 🚀 APIs are backwards compatible with all previous release of realm-java in the 5.x.y series.

    Internal

    • None.
  • v5.14.0

    August 12, 2019

    🗄 Deprecated

    • 🔀 [ObjectServer] SyncCredentials.nickname() has been deprecated in favour of SyncCredentials.usernamePassword().
    • 🔀 [ObjectServer] SyncCredentials.IdentityProvider.NICKNAME has been deprecated in favour of SyncCredentials.IdentityProvider.USERNAME_PASSWORD.

    ✨ Enhancements

    • None.

    🛠 Fixed

    • None.

    Compatibility

    • Realm Object Server: 3.21.0 or later.
    • ⬆️ File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
    • 🚀 APIs are backwards compatible with all previous release of realm-java in the 5.x.y series.

    Internal

    • None.
  • v5.13.1

    August 05, 2019

    🗄 Deprecated

    • 🔀 SyncCredentials.nickname() has been deprecated in favour of SyncCredentials.usernamePassword().
    • 🔀 SyncCredentials.IdentityProvider.NICKNAME has been deprecated in favour of SyncCredentials.IdentityProvider.USERNAME_PASSWORD.

    ✨ Enhancements

    • None.

    🛠 Fixed

    • [ObjectServer] The C++ networking layer now correctly uses any system defined proxy the same way the Java networking layer does. (Issue #6574).
    • 🔌 The Realm bytecode transformer now works correctly with Android Gradle Plugin 3.6.0-alpha01 and beyond. (Issue #6531).
    • Queries on RealmLists with objects containing indexed integers could return the wrong result. (Issue #6522, since 5.11.0)

    Compatibility

    • Realm Object Server: 3.21.0 or later.
    • ⬆️ File format: Generates Realms with format v9 (Reads and upgrades all previous formats)
    • 🚀 APIs are backwards compatible with all previous release of realm-java in the 5.x.y series.

    Internal

    • ⚡️ Updated JavaAssist in the Realm Transformer to 3.25.0-GA.
    • ⚡️ Updated to Realm Core 5.23.1.
    • ⚡️ Updated to Realm Sync 4.7.1.
    • ⚡️ Updated to Object Store commit: bcc6a7524e52071bfcd35cf740f506e0cc6a595e