Realm Xamarin v1.5.0 Release Notes

Release Date: 2017-06-20 // almost 7 years ago
  • โœจ Enhancements

    • ๐Ÿ”ฆ Exposed new API on the User class for working with permissions: (#1361)
      • ApplyPermissionsAsync, OfferPermissionsAsync, and AcceptPermissionOfferAsync allow you to grant, revoke, offer, and accept permissions.
      • GetPermissionOffers, GetPermissionOfferResponses, and GetPermissionChanges allow you to review objects, added via the above mentioned methods.
      • GetGrantedPermissionsAsync allows you to inspect permissions granted to or by the current user.
    • When used with RealmConfiguration (i.e. local Realm), Realm.GetInstanceAsync will perform potentially costly operation, such as executing migrations or compaction on a background thread. (#1406)
    • ๐Ÿ”ฆ Expose User.ChangePasswordAsync(userId, password) API to allow admin users to change other users' passwords. (#1412)
    • ๐Ÿ”ฆ Expose SyncConfiguration.TrustedCAPath API to allow providing a custom CA that will be used to validate SSL traffic to the Realm Object Server. (#1423)
    • ๐Ÿ”ฆ Expose Realm.IsInTransaction API to check if there's an active transaction for that Realm. (#1452)

    ๐Ÿ› Bug fixes

    • ๐Ÿ›  Fix a crash when querying over properties that have [MapTo] applied. (#1405)
    • ๐Ÿ›  Fix an issue where synchronized Realms did not connect to the remote server in certain situations, such as when an application was offline when the Realms were opened but later regained network connectivity. (#1407)
    • ๐Ÿ›  Fix an issue where incorrect property name will be passed to RealmObject.PropertyChanged subscribers when the actual changed property is below a Backlink property. (#1433)
    • ๐Ÿ›  Fix an exception being thrown when referencing Realm in a PCL test assembly without actually using it. (#1434)
    • ๐Ÿ›  Fix a bug when SyncConfiguration.EnableSSLValidation would be ignored when passed to Realm.GetInstanceAsync. (#1423)

    ๐Ÿ’ฅ Breaking Changes

    • The constructors of PermissionChange, PermissionOffer, and PermissionOfferResponse are now private. Use the new User.ApplyPermissionsAsync, User.OfferPermissionsAsync, and User.AcceptPermissionOfferAsync API. (#1361)
    • ๐Ÿ—„ User.GetManagementRealm and User.GetPermissionRealm are now deprecated. Use the new permission related API on User to achieve the same results. (#1361)
    • User.ChangePassword(password) has been renamed to User.ChangePasswordAsync(password). (#1412)
    • โœ‚ Removed the following obsolete API: (#1425)
      • Realm.ObjectForPrimaryKey<T>(long id)
      • Realm.ObjectForPrimaryKey<T>(string id)
      • Realm.ObjectForPrimaryKey(string className, long id)
      • Realm.ObjectForPrimaryKey(string className, string id)
      • Realm.Manage<T>(T obj, bool update)
      • Realm.Close()
      • Realm.CreateObject<T>()
      • IOrderedQueryable<T>.ToNotifyCollectionChanged<T>(Action<Exception> errorCallback)
      • IOrderedQueryable<T>.ToNotifyCollectionChanged<T>(Action<Exception> errorCallback, bool coalesceMultipleChangesIntoReset)
      • IRealmCollection<T>.ObjectSchema
    • ๐Ÿ‘ป Realm.DeleteRealm now throws an exception if called while an instance of that Realm is still open.