All Versions
169
Latest Version
Avg Release Cycle
35 days
Latest Release
781 days ago
Changelog History
Page 1
Changelog History
Page 1
-
v10.12.0 Changes
September 22, 2022โจ Enhancements
- ๐ [RealmApp] Introduced
SyncSession.RecoverOrDiscardUnsyncedChangesStrategy
, an alternative automatic client reset strategy that tries to automatically recover any unsynced data from the client, and discards any unsynced data if not possible. This is now the default client reset policy if not explicitly set in theSyncConfiguration
. - ๐ [RealmApp] Introduced
SyncSession.RecoverUnsyncedChangesStrategy
, an alternative automatic client reset strategy that tries to automatically recover any unsynced data from the client and will revert to manual client reset if not possible. - ๐ [RealmApp] Flexible sync client reset is no longer limited to
ManuallyRecoverChangesStrategy
, it now supports all available strategies:RecoverOrDiscardUnsyncedChangesStrategy
,RecoverUnsyncedChangesStrategy
,DiscardUnsyncedChangesStrategy
andManuallyRecoverChangesStrategy
.
๐ Fixed
- Now queries can point to fields with query language-reserved words like 'desc', 'sort', 'distinct', etc. Issue #7705
Compatibility
- โฌ๏ธ File format: Generates Realms with format v22. 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.6.y series.
- Realm Studio 11.0.0-alpha.0 or above is required to open Realms created by this version.
Internal
- โก๏ธ Update to Realm Core 12.6.0, commit: 5da7744b4056ad185c025bccf0924f17f73f7a91.
- ๐ [RealmApp] Introduced
-
v10.11.1 Changes
July 14, 2022โจ Enhancements
- None
๐ Fixed
- ๐ Fixed deadlock while trying to close all Realm instances during a manual client reset. Issue #7696)
- ๐ [RealmApp] Throw RuntimeException if subscription set is requested and flexible sync is not enabled. (Realm Core issue #5079)
- โ Adding an object to a Set, deleting the parent object, and then deleting the previously mentioned object causes crash. (Realm Core issue #5387, since 11.0.0)
- ๐ [RealmApp] The sync client may have sent a corrupted upload cursor leading to a fatal error from the server due to an uninitialized variable. (#5460
- ๐ [RealmApp] Flexible sync would not correctly resume syncing if a bootstrap was interrupted. (#5466
- ๐ [RealmApp] Flexible sync subscription state changes will now correctly be reported after sync progress is reported. (#5553
Compatibility
- โฌ๏ธ File format: Generates Realms with format v22. 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.6.y series.
- Realm Studio 11.0.0-alpha.0 or above is required to open Realms created by this version.
Internal
- โก๏ธ Update to Realm Core 12.3.0, commit: 55a48c287b5e3a8ca129c257ec7e3b92bcb2a05f.
-
v10.11.0 Changes
May 20, 2022โจ Enhancements
- Throw a more comprehensive error when initializing Realm on an Instant App.
๐ Fixed
- ๐ Fixed various corruption bugs when encryption is used. (Realm Core issue #5360, since 10.10.0)
- ๐ Fixed imprecise conversion from double/float to Decimal128. (Realm Core issue #5191)
- ๐ Fixed
RealmQuery.distinct
when it receives three or more arguments. (Issue #7639) - ๐ Fix issues resolving class information for
copyToRealmOrUpdate
for already managed objects in multi module projects. (Issue #7650)
Compatibility
- โฌ๏ธ File format: Generates Realms with format v22. 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.6.y series.
- Realm Studio 11.0.0-alpha.0 or above is required to open Realms created by this version.
Internal
- โก๏ธ Update to Realm Core 11.14.0, commit: db7ca86cf7ff8c9c3da6c7e742ecd46315ddc280.
Credits
-
v10.10.1 Changes
January 26, 2022โจ Enhancements
- ๐ง [RealmApp] Add support for setting the filename on Flexible and Partition Sync configurations.
๐ Fixed
- ๐ป [RealmApp] Creating multiple anonymous subscriptions for a Realm would throw an exception.
Compatibility
- โฌ๏ธ File format: Generates Realms with format v22. 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.6.y series.
- Realm Studio 11.0.0-alpha.0 or above is required to open Realms created by this version.
Internal
- โก๏ธ Updated to Android Gradle Plugin 7.1.0
- โก๏ธ Updated to Gradle 7.3.3.
-
v10.10.0 Changes
January 18, 2022โจ Enhancements
- ๐ [RealmApp] Add support for a new mode for synchronized realms: Flexible Sync that only synchronizes selective parts of the backend data. The following classes have been added to support this:
Subscription
,SubscriptionSet
andMutableSubscriptionSet
. This mode and all APIs are marked as Beta.
๐ Fixed
- ๐ [RealmApp] The sync client will now drain the receive queue when send fails with ECONNRESET - ensuring that any error message from the server gets received and processed. (Realm Core issue #5078)
- ๐ [RealmApp] UserIdentity metadata table grows indefinitely. (Realm Core issue #5152)
- Schema validation was missing for embedded objects in sets, resulting in an unhelpful error being thrown if the user attempted to define one.
- Output from the annotation processor was not deterministic, which could result in cache misses. (Issue #7615)
- Crashes when using
RealmAny
insideRealmList
on ARM 32 devices. (Issue #7626)
Compatibility
- โฌ๏ธ File format: Generates Realms with format v22. 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.6.y series.
- Realm Studio 11.0.0-alpha.0 or above is required to open Realms created by this version.
Internal
- โก๏ธ Update to Realm Core 11.9.0, commit: 733f12702d16ab0d0c7fea0831a2aee5ca5c26db.
Credits
- Thanks to @jprinet for making the annotation processor output deterministic.
- ๐ [RealmApp] Add support for a new mode for synchronized realms: Flexible Sync that only synchronizes selective parts of the backend data. The following classes have been added to support this:
-
v10.9.0 Changes
December 06, 2021โจ Enhancements
- ๐ [RealmApp] Add support for UUID's as partition values. (Issue #7598)
- ๐ [RealmApp] Reduced native memory usage when working with synchronized Realms.
- ๐ [RealmApp] Make it possible to bundle synchronized Realms in apps using
Realm.writeCopyTo()
andSyncConfiguration.Builder.assetFile()
. - ๐ง The Realm Transformer and Realm Gradle Plugin now supports the Gradle Configuration Cache. (Issue #7299)
- ๐ [RealmApp] Introduced
SyncSession.DiscardUnsyncedChangesStrategy
, an alternative automatic client reset strategy that doesn't require the Realm to be closed, but discards any unsynced data from the client. This is now the default policy if not overridden.
๐ Deprecated
- ๐ [RealmApp]
SyncSession.ClientResetHandler()
. UseSyncSession.ManuallyRecoverUnsyncedChangesStrategy()
instead. - ๐ [RealmApp]
AppConfiguration.Builder.defaultClientResetHandler()
. UseAppConfiguration.Builder.setDefaultSyncClientResetStrategy()
instead. - 0๏ธโฃ [RealmApp]
AppConfiguration.getDefaultClientResetHandler()
. UseAppConfiguration.getDefaultSyncClientResetStrategy()
instead. - ๐ [RealmApp]
SyncConfiguration.Builder.clientResetHandler()
. UseSyncConfiguration.Builder.setSyncClientResetStrategy()
instead. - ๐ [RealmApp]
SyncConfiguration.getClientResetHandler()
. UseSyncConfiguration.getSyncClientResetStrategy()
instead.
๐ Fixed
- ๐ [RealmApp] Setting
AppConfiguration.syncRootDirectory()
didn't have any effect beside creating the new folder. Realms were still placed in the default location. - ๐ [RealmApp] Bug where progress notifiers continue to be called after the download of a synced realm is complete. (Issue Realm Core #4919)
- [RealmApp] User being left in the logged in state when the user's refresh token expires. (Issue Realm Core #4882, since v10)
- Using "sort", "distinct", or "limit" as field name in query expression would cause an "Invalid predicate" error. (Issue #7545, since v10.X.X)
- Crash when quering with 'Not()' followed by empty group. (Issue Realm Core #4168 since v1.0.0)
- Streaming download notifiers reported incorrect values for transferrable bytes. (Issue Realm Core #5008 since v11.5.2)
@sum
and@avg
queries on Dictionaries of floats or doubles used too much precision for intermediates, resulting in incorrect rounding.
Compatibility
- โฌ๏ธ File format: Generates Realms with format v22. 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.6.y series.
- Realm Studio 11.0.0-alpha.0 or above is required to open Realms created by this version.
Internal
- โก๏ธ Updated to Realm Core 11.7.0, commit: 81eafa44879eb5f5829b345005abf99adb306133.
- ๐ Building the SDK now requires JDK 11.
- โก๏ธ Updated to Gradle 7.2.
- โก๏ธ Updated to Android Gradle Plugin 7.1.0-beta03.
- โก๏ธ Updated to Kotlin 1.5.31.
- โก๏ธ Updated to Kotlin Coroutines 1.5.2.
- โก๏ธ Updated to CMake 3.21.4.
- โก๏ธ Updated to NDK 23.1.7779620.
- Disable analytics for any value of the
REALM_DISABLE_ANALYTICS
environment variable, not justtrue
. - ๐ Disable analytics whenever the
CI
environment variable is set.
-
v10.8.1 Changes
October 28, 2021โจ Enhancements
- None.
๐ Fixed
- [RealmApp] Failing to refresh the access token due to a 401/403 error will now correctly emit an error with
ErrorCode.BAD_AUTHENTICATION
rather thanErrorCode.PERMISSION_DENIED
. (Realm Core #4881, since 10.6.1) - ๐ [RealmApp] If an object with a null primary key was deleted by another sync client, the exception
KeyNotFound: No such object
could be triggered. (Realm Core #4885, since 10.0.0) - ๐ป Exceptions inside change listeners running on background looper threads would crash the Looper with a native
JNI DETECTED ERROR IN APPLICATION: JNI NewLocalRef called with pending exception
instead of the original Java exception. This could also happen when canceling a corutine using a background looper as a Dispatcher. - ๐ [RealmApp] Reduced native memory use when synchronizing changes with the server in the background.
Compatibility
- โฌ๏ธ File format: Generates Realms with format v22. 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.6.y series.
- Realm Studio 11.0.0-alpha.0 or above is required to open Realms created by this version.
Internal
- โก๏ธ Updated to Realm Core 11.4.1, commit: 23f60515a00f076a9e3f2dc672fe1ae07601ee90.
-
v10.8.0 Changes
August 27, 2021โจ Enhancements
- [RealmApp]
ErrorCode.INVALID_EMAIL_PASSWORD
has been added, and is now thrown instead ofErrorCode.SERVICE_UNKNOWN
when loggin in with the wrong credentials. RealmQuery.rawPredicate()
now accepts a "BETWEEN" operator. Can be used like "age BETWEEN {20, 60}" which means "'Age' must be in the open interval ]20;60[".- ๐ [RealmApp] Added
User.remove()
andUser.removeAsync()
that makes it possible to delete a user's Realm(s) from the device.
๐ Fixed
- [RealmApp] Crash when integrating a schema from the server with a
RealmAny
property to a Realm File that already had that property defined locally. (Realm Core #4873, since 10.0.0) - [RealmApp] Refreshing the access token after 30 minutes would fail silently, causing infinite retries every 10 seconds. This would also block opening Realms when opening an app with an already logged in user. (Issue #7501, since 10.0.0)
- [RealmApp] Clarified Javadoc for
User.logOut()
andUser.logOutAsync()
as these methods do not delete a user's Realm(s). - ๐ Build error when having cross module model references (Issue #7474, since v10.4.0)
Compatibility
- โฌ๏ธ File format: Generates Realms with format v22. 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.6.y series.
- Realm Studio 11.0.0-alpha.0 or above is required to open Realms created by this version.
Internal
- โก๏ธ Updated to Realm Core 11.3.0, commit: 321c79a67119db8177af13eefd5378586648ba73.
- [RealmApp]
-
v10.7.1 Changes
August 03, 2021โจ Enhancements
- None.
๐ Fixed
- ๐ [RealmApp] Crash when an object which is linked to by a
RealmAny
is invalidated (Sync only). (Realm Core #4828, since v10.6.0) - Object change listeners did not handle the object being deleted properly, which could result in assertion failures mentioning "m_table" in ObjectNotifier (Realm Core #4824, since v10.6.0).
- Crash when delivering notifications over a nested hierarchy of lists of
RealmAny
that contain object references. (Realm Core #4803, since v10.6.0)
Compatibility
- โฌ๏ธ File format: Generates Realms with format v22. 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.6.y series.
- Realm Studio 11.0.0-alpha.0 or above is required to open Realms created by this version.
Internal
- โก๏ธ Updated to Realm Core 11.2.0, commit: 583fc73040709383470797813096bee17802398e.
-
v10.7.0 Changes
July 27, 2021๐ฅ Breaking Changes
- โ Removed automatic injection of repositories from Gradle plugin. From now on
mavenCentral()
repository needs to be added manually. (Issue #7365)
โจ Enhancements
- None.
๐ Fixed
- [RealmApp] Realm.getInstanceAsync does not wait for the initial remote data. (Issue #7517)
- Build errors when doing incremental builds with Android Studio's Apply Changes...-actions. (Issue #7473)
Compatibility
- โฌ๏ธ File format: Generates Realms with format v22. 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.6.y series.
- Realm Studio 11.0.0-alpha.0 or above is required to open Realms created by this version.
Internal
- โก๏ธ Updated to Realm Core 11.1.1, commit: 71db56caba8f8ef0398eedfffb82a908cb94ccec.
- โ Removed automatic injection of repositories from Gradle plugin. From now on