Realm v2.1.0 Release Notes

Release Date: 2016-10-25 // over 7 years ago
  • ๐Ÿ’ฅ Breaking changes

    Object Server API Changes (In Beta)

    • ๐Ÿ”€ Renamed User to SyncUser, Credentials to SyncCredentials and Session to SyncSession to align names with Cocoa.
    • โœ‚ Removed SyncManager.setLogLevel(). Use RealmLog.setLevel() instead.
    • ๐Ÿ”€ SyncUser.logout() now correctly clears SyncUser.currentUser() (#3638).
    • ๐Ÿ”ง Missing ProGuard configuration for libraries used by Sync extension (#3596).
    • ๐Ÿ”€ Error handler was not called when sync session failed (#3597).
    • โž• Added User.all() that returns all known Realm Object Server users.
    • โฌ†๏ธ Upgraded Realm Sync to 1.0.0-BETA-3.2

    ๐Ÿ—„ Deprecated

    • Logger. Use RealmLogger instead.
    • AndroidLogger. The logger for Android is implemented in native code instead.

    ๐Ÿ› Bug fixes

    • ๐Ÿ“ฆ The following were not kept by ProGuard: names of native methods not in the io.realm.internal package, names of classes used in method signature (#3596).
    • Permission error when a database file was located on external storage (#3140).
    • Memory leak when unsubscribing from a RealmResults/RealmObject RxJava Observable (#3552).

    โœจ Enhancements

    • Realm.compactRealm() now works for encrypted Realms.
    • โž• Added first(E defaultValue) and last(E defaultValue) methods to RealmList and RealmResult. These methods will return the provided object instead of throwing an IndexOutOfBoundsException if the list is empty.
    • โฌ‡๏ธ Reduce transformer logger verbosity (#3608).
    • ๐ŸŒฒ RealmLog.setLevel(int) for setting the log level across all loggers.

    Internal

    • โฌ†๏ธ Upgraded Realm Core to 2.1.3

    Credits

    • 0๏ธโƒฃ Thanks to Max Furman (@maxfurman) for adding support for first() and last() default values.