github realm/realm-swift v10.23.0

latest releases: v10.54.0, v20.0.0, v10.53.1...
2 years ago

Enhancements

  • Add Realm.writeCopy(configuration:)/[RLMRealm writeCopyForConfiguration:] which gives the following functionality:
    • Export a local non-sync Realm to be used with MongoDB Realm Sync when the configuration is derived from a sync RLMUser/User.
    • Write a copy of a local Realm to a destination specified in the configuration.
    • Write a copy of a synced Realm in use with user A, and open it with user B.
    • Note that migrations may be required when using a local realm configuration to open a realm file that was copied from a synchronized realm.
      An exception will be thrown if a Realm exists at the destination.
  • Add a seedFilePath option to RLMRealmConfiguration and Configuration. If this option is set then instead of creating an empty Realm, the realm at the seedFilePath will be copied to the fileURL of the new Realm. If a Realm file already exists at the
    destination path, the seed file will not be copied and the already existing Realm will be opened instead. Note that to use this parameter with a synced Realm configuration the seed Realm must be appropriately copied to a destination with Realm.writeCopy(configuration:)/[RLMRealm writeCopyForConfiguration:] first.
  • Add ability to permanently delete a User from a MongoDB Realm app. This can be invoked with User.delete()/[RLMUser deleteWithCompletion:].
  • Add NSCopying conformance to RLMDecimal128 and RLMObjectId.
  • Add Xcode 13.3 binaries to the release package (and remove 13.0).

Fixed

  • Add support of arm64 in Carthage build (#7154
  • Adding missing support for IN queries to primitives types on Type Safe Queries.
    let persons = realm.objects(Person.self).where {
      let acceptableNames = ["Tom", "James", "Tyler"]
      $0.name.in([acceptableNames])
    }
    (Cocoa #7633, since v10.19.0)
  • Work around a compiler crash when building with Swift 5.6 / Xcode 13.3. CustomPersistable's PersistedType must now always be a built-in type rather than possibly another CustomPersistable type as Swift 5.6 has removed support for infinitely-recursive associated types (#7654).
  • Fix redundant call to filter on @ObservedResults from searchable component (since v10.19.0).

Compatibility

  • Realm Studio: 11.0.0 or later.
  • APIs are backwards compatible with all previous releases in the 10.x.y series.
  • Carthage release for Swift is built with Xcode 13.2.1.
  • CocoaPods: 1.10 or later.
  • Xcode: 12.4-13.3 beta 3.

Don't miss a new realm-swift release

NewReleases is sending notifications on new releases.