realm-java v10.4.0 Release Notes

Release Date: 2021-03-26 // 25 days ago
  • ๐Ÿš€ All releases from 10.4.0 and forward are now found on mavenCentral() instead of jcenter().

    ๐Ÿ‘ A minimal supported setup will therefore now look like this:

    allprojects {
        buildscript {
            repositories {
                mavenCentral()
            }
            dependencies {
                classpath "io.realm:realm-gradle-plugin:10.4.0"
            }
        }
    
        repositories {
            mavenCentral()
        }
    }
    

    ๐Ÿš€ SNAPSHOT releases have also been moved from http://oss.jfrog.org/artifactory/oss-snapshot-local ๐Ÿ‘€ to https://oss.sonatype.org/content/repositories/snapshots/. See here for more information.

    โœจ Enhancements

    • โž• Added support for the string-based Realm Query Language through RealmQuery.rawPredicate(...). This allows many new type of queries not previously supported by the typed query API. See the Javadoc on this method for further details. (Issue #6116)
    • ๐ŸŽ Performance of sorting on more than one property has been improved. Especially important if many elements match on the first property.

    ๐Ÿ›  Fixes

    • Calling max/min/sum/avg on a List may give wrong results (Realm Core #4252, since v10.0.0)
    • ๐Ÿ›  Fix an issue when using RealmResults.freeze() across threads with different transaction versions. Previously, copying the RealmsResults' native resource could result in a stale state or objects from a future version. (Realm Core #4254).
    • โฌ†๏ธ On 32-bit devices you may get exception with "No such object" when upgrading to v10.* (#7314, since v10.0.0)

    Compatibility

    • โฌ†๏ธ File format: Generates Realms with format v20. Unsynced Realms will be upgraded from Realm Java 2.0 and later. Synced Realms can only be read and upgraded if created with Realm Java v10.0.0-BETA.1.
    • ๐Ÿš€ APIs are backwards compatible with all previous release of realm-java in the 10.x.y series.
    • Realm Studio 10.0.0 or above is required to open Realms created by this version.

    Internal

    • โšก๏ธ Updated to Realm Core 10.5.6, commit 92129110dece2cee59839e20be3a7067084a1196.
    • โšก๏ธ Updated to NDK 22.0.7026061.
    • โšก๏ธ Updated to ReLinker 1.4.3.

Previous changes from v10.3.1

  • โœจ Enhancements

    • None.

    ๐Ÿ›  Fixes

    • RxJava Flowables/Observables and Coroutine Flows would crash if they were created from a RealmList and the parent object holding the list was deleted. Now, the stream is disposed/closed instead. (Issue #7242)
    • ๐Ÿ›  Fixes Realm models default values containing objects with a PK might crash with a RealmPrimaryKeyConstraintException. (Issue #7269)

    Compatibility

    • โฌ†๏ธ File format: Generates Realms with format v20. Unsynced Realms will be upgraded from Realm Java 2.0 and later. Synced Realms can only be read and upgraded if created with Realm Java v10.0.0-BETA.1.
    • ๐Ÿš€ APIs are backwards compatible with all previous release of realm-java in the 10.x.y series.
    • Realm Studio 10.0.0 or above is required to open Realms created by this version.

    Internal

    • None.