All Versions
169
Latest Version
Avg Release Cycle
35 days
Latest Release
641 days ago

Changelog History
Page 10

  • v3.7.0 Changes

    September 01, 2017

    ๐Ÿ—„ Deprecated

    • ๐Ÿ”€ [ObjectServer] SyncUser.getManagementRealm(). Use SyncUser.getPermissionManager() instead.

    โœจ Enhancements

    • ๐Ÿ”€ [ObjectServer] SyncUser.getPermissionManager added as a helper API for working with permissions and permission offers.

    Internal

    • โฌ†๏ธ [ObjectServer] Upgraded OkHttp to 3.7.0.
  • v3.6.0 Changes

    September 01, 2017

    ๐Ÿ’ฅ Breaking Changes

    • ๐Ÿ”€ [ObjectServer] SyncUser.logout() no longer throws an exception when associated Realms instances are not closed (#4962).

    ๐Ÿ—„ Deprecated

    • ๐Ÿ”€ [ObjectServer] SyncUser#retrieveUser and SyncUser#retrieveUserAsync replaced by SyncUser#retrieveInfoForUser ๐Ÿ”€ and SyncUser#retrieveInfoForUserAsync which returns a SyncUserInfo with mode information (#5008).
    • ๐Ÿ”€ [ObjectServer] SyncUser#Callback replaced by the generic version SyncUser#RequestCallback<T>.

    โœจ Enhancements

    • ๐Ÿ”€ [ObjectServer] Added SyncSession.uploadAllLocalChanges().
    • ๐Ÿ‘ [ObjectServer] APIs of UserStore have been changed to support same user identity but different authentication server scenario.
    • ๐Ÿ”€ [ObjectServer] Added SyncUser.allSessions to retrieve the all valid sessions belonging to the user (#4783).
    • โž• Added Nullable annotation to methods that may return null in order to improve Kotlin usability. This also introduced a dependency to com.google.code.findbugs:jsr305.
    • org.jetbrains.annotations.NotNull is now an alias for @Required. This means that the Realm Schema now fully understand Kotlin non-null types.
    • โž• Added support for new data type MutableRealmIntegers. The new type behaves almost exactly as a reference to a Long (mutable nullable, etc) but supports increment and decrement methods, which implement a Conflict Free Replicated Data Type, whose value will converge even when changed across distributed devices with poor connections (#4266).
    • โž• Added more detailed exception message for RealmMigrationNeeded.
    • โฌ†๏ธ Bumping schema version only without any actual schema changes will just succeed even when the migration block is not supplied. It threw an RealmMigrationNeededException before in the same case.
    • Throw IllegalStateException when schema validation fails because of wrong declaration of @LinkingObjects.

    ๐Ÿ› Bug Fixes

    • Potential crash after using Realm.getSchema() to change the schema of a typed Realm. Realm.getSchema() now returns an immutable RealmSchema instance.
    • โšก๏ธ Realm.copyToRealmOrUpdate() could cause a RealmList field to contain duplicated elements (#4957).
    • RealmSchema.create(String) and RealmObjectSchema.setClassName(String) did not accept class name whose length was 51 to 57.
    • โ†ช Workaround for an Android JVM crash when using compactOnLaunch() (#4964).
    • ๐Ÿ‘ป Class name in exception message from link query is wrong (#5096).
    • The compactOnLaunch callback is no longer invoked if the Realm at that path is already open on other threads.

    Internal

    • ๐Ÿ”€ [ObjectServer] removed ObjectServerUser and its inner classes, in a step to reduce SyncUser complexity (#3741).
    • ๐Ÿ”€ [ObjectServer] changed the SyncSessionStopPolicy to AfterChangesUploaded to align with other binding and to prevent use cases where the Realm might be deleted before the last changes get synchronized (#5028).
    • โฌ†๏ธ Upgraded Realm Sync to 1.10.8
    • Let Object Store handle migration.
  • v3.5.0 Changes

    July 11, 2017

    โœจ Enhancements

    • โž• Added RealmConfiguration.Builder.compactOnLaunch() to compact the file on launch (#3739).
    • [ObjectServer] Adding user lookup API for administrators (#4828).
    • An IllegalStateException will be thrown if the given RealmModule doesn't include all required model classes (#3398).

    ๐Ÿ› Bug Fixes

    • ๐Ÿ› Bug in isNull(), isNotNull(), isEmpty(), and isNotEmpty() when queries involve nullable fields in link queries (#4856).
    • ๐Ÿ› Bug in how to resolve field names when querying @LinkingObjects as the last field (#4864).
    • ๐ŸŒฒ Rare crash in RealmLog when log level was set to LogLevel.DEBUG.
    • Broken case insensitive query with indexed field (#4788).
    • ๐Ÿ”€ [ObjectServer] Bug related to the behaviour of SyncUser#logout and the use of invalid SyncUser with SyncConfiguration (#4822).
    • [ObjectServer] Not all error codes from the server were recognized correctly, resulting in UNKNOWN being reported instead.
    • ๐Ÿ”€ [ObjectServer] Prevent the use of a SyncUser that explicitly logged out, to open a Realm (#4975).

    Internal

    • ๐Ÿ‘‰ Use Object Store to do table initialization.
    • โœ‚ Removed Table#Table(), Table#addEmptyRow(), Table#addEmptyRows(), Table#add(Object...), Table#pivot(long,long,PivotType) and Table#createnative().
    • โฌ†๏ธ Upgraded Realm Core to 2.8.6
    • โฌ†๏ธ Upgraded Realm Sync to 1.10.5
    • โœ‚ Removed io.realm.internal.OutOfMemoryError. java.lang.OutOfMemoryError will be thrown instead.
  • v3.4.0 Changes

    June 22, 2017

    ๐Ÿ’ฅ Breaking Changes

    • โšก๏ธ [ObjectServer] Updated protocol version to 18 which is only compatible with ROS > 1.6.0.

    ๐Ÿ—„ Deprecated

    • RealmSchema.close() and RealmObjectSchema.close(). They don't need to be closed manually. They were added to the public API by mistake.

    โœจ Enhancements

    • ๐Ÿ”€ [ObjectServer] Added support for Sync Progress Notifications through SyncSession.addDownloadProgressListener(ProgressMode, ProgressListener) and SyncSession.addUploadProgressListener(ProgressMode, ProgressListener) (#4104).
    • ๐Ÿ”€ [ObjectServer] Added SyncSession.getState() (#4784).
    • โž• Added support for querying inverse relationships (#2904).
    • ๐Ÿšš Moved inverse relationships out of beta stage.
    • โž• Added Realm.getDefaultConfiguration() (#4725).

    ๐Ÿ› Bug Fixes

    • ๐Ÿ”€ [ObjectServer] Bug which may crash when the JNI local reference limitation was reached on sync client thread.
    • [ObjectServer] Retrying connections with exponential backoff, when encountering ConnectException (#4310).
    • When converting nullable BLOB field to required, null values should be converted to byte[0] instead of byte[1].
    • ๐Ÿ› Bug which may cause duplicated primary key values when migrating a nullable primary key field to not nullable. RealmObjectSchema.setRequired() and RealmObjectSchema.setNullable() will throw when converting a nullable primary key field with null values stored to a required primary key field.

    Internal

    • โฌ†๏ธ Upgraded to Realm Sync 1.10.1
    • โฌ†๏ธ Upgraded to Realm Core 2.8.4

    Credits

    • โฌ†๏ธ Thanks to Anis Ben Nsir (@abennsir) for upgrading Roboelectric in the unitTestExample (#4698).
  • v3.3.2 Changes

    June 09, 2017

    ๐Ÿ› Bug Fixes

    • [ObjectServer] Crash when an authentication error happens (#4726).
    • ๐Ÿ”€ [ObjectServer] Enabled encryption with Sync (#4561).
    • [ObjectServer] Admin users did not connect correctly to the server (#4750).

    Internal

    • Factor out internal interface ManagedObject.
  • v3.3.1 Changes

    May 26, 2017

    ๐Ÿ› Bug Fixes

    • ๐Ÿ”€ [ObjectServer] Accepted extra columns against synced Realm (#4706).
  • v3.3.0 Changes

    May 24, 2017

    โœจ Enhancements

    • ๐Ÿ”€ [ObjectServer] Added two options to SyncConfiguration to provide a trusted root CA trustedRootCA and to disable SSL validation disableSSLVerification (#4371).
    • ๐Ÿ”€ [ObjectServer] Added support for changing passwords through SyncUser.changePassword() using an admin user (#4588).

    ๐Ÿ› Bug Fixes

    • Queries on proguarded Realm model classes, failed with "Table not found" (#4673).
  • v3.2.1 Changes

    May 19, 2017

    โœจ Enhancements

    • ๐Ÿ‘ป Not in transaction illegal state exception message changed to "Cannot modify managed objects outside of a write transaction.".

    ๐Ÿ› Bug Fixes

    • [ObjectServer] schemaVersion was mistakenly required in order to trigger migrations (#4658).
    • ๐Ÿšš [ObjectServer] Fields removed from model classes will now correctly be hidden instead of throwing an exception when opening the Realm (#4658).
    • Random crashes which were caused by a race condition in encrypted Realm (#4343).

    Internal

    • โฌ†๏ธ Upgraded to Realm Sync 1.8.5.
    • โฌ†๏ธ Upgraded to Realm Core 2.8.0.
  • v3.2.0 Changes

    May 16, 2017

    โœจ Enhancements

    • ๐Ÿ”€ [ObjectServer] Added support for SyncUser.isAdmin() (#4353).
    • ๐Ÿ”€ [ObjectServer] New set of Permission API's have been added to SyncUser through SyncUser.getPermissionManager() (#4296).
    • ๐Ÿ”€ [ObjectServer] Added support for changing passwords through SyncUser.changePassword() (#4423).
    • ๐Ÿ— [ObjectServer] Added support for SyncConfiguration.Builder.waitForInitialRemoteData() (#4270).
    • Transient fields are now allowed in model classes, but are implicitly treated as having the @Ignore annotation (#4279).
    • โž• Added Realm.refresh() and DynamicRealm.refresh() (#3476).
    • โž• Added Realm.getInstanceAsync() and DynamicRealm.getInstanceAsync() (#2299).
    • โž• Added DynamicRealmObject#linkingObjects(String,String) to support linking objects on DynamicRealm (#4492).
    • โž• Added support for read only Realms using RealmConfiguration.Builder.readOnly() and SyncConfiguration.Builder.readOnly()(#1147).
    • ๐Ÿ”„ Change listeners will now auto-expand variable names to be more descriptive when using Android Studio.
    • ๐Ÿ–จ The toString() methods for the standard and dynamic proxies now print "proxy", or "dynamic" before the left bracket enclosing the data.

    ๐Ÿ› Bug Fixes

    • @LinkingObjects annotation now also works with Kotlin (#4611).

    Internal

    • ๐Ÿ‘‰ Use separated locks for different RealmCaches (#4551).
  • v3.1.4

    May 04, 2017