Realm Blog

Realm Cocoa 0.84

We just pushed a Realm Objective-C update to this website and to CocoaPods. Here’s what’s new!

API breaking changes

  • The timer used to trigger notifications has been removed. Notifications are now only triggered by commits made in other threads, and can not currently be triggered by changes made by other processes. Interprocess notifications will be re-added in a future commit with an improved design.

Enhancements

  • Updating to core library version 0.82.2.
  • Add property deletedFromRealm to RLMObject to indicate objects which have been deleted.
  • Add support for the IN operator in predicates.
  • Add support for the BETWEEN operator in link queries.
  • Add support for multi-level link queries in predicates (e.g. foo.bar.baz = 5).
  • Switch to building the SDK from source when using CocoaPods and add a Realm.Headers subspec for use in targets that should not link a copy of Realm (such as test targets).
  • Allow unregistering from change notifications in the change notification handler block.
  • Significant performance improvements when holding onto large numbers of RLMObjects.
  • Realm-Xcode6.xcodeproj now only builds using Xcode6-Beta6.
  • Improved performance during RLMArray iteration, especially when mutating contained objects.

Bugfixes

  • Fix crashes and assorted bugs when sorting or querying a RLMArray returned from a query.
  • Notifications are no longer sent when initializing new RLMRealm instances on background threads.
  • Handle object cycles in -[RLMObject description] and -[RLMArray description].
  • Lowered the deployment target for the Xcode 6 projects and Swift examples to iOS 7.0, as they didn’t actually require 8.0.
  • Support setting model properties starting with the letter ‘z’ — we were checking for char < z instead of char <= z. Yeah we know, we know :) …
  • Fixed crashes that could result from switching between Debug and Release builds of Realm.

Swift

For Swift, be aware that you must still include Realm-Xcode6.xcodeproj from source. As of this writing, that Xcodeproj now targets Xcode/Swift beta6 exclusively.


The reference documentation has also been expanded a bit in this version, and can be found at /docs/cocoa/ — happy hacking!


Realm Team

At Realm, our mission is to help developers build better apps faster. We provide a unique set of tools and platform technologies designed to make it easy for developers to build apps with sophisticated, powerful features — things like realtime collaboration, augmented reality, live data synchronization, offline experiences, messaging, and more.

Everything we build is developed with an eye toward enabling developers for what we believe the mobile internet evolves into — an open network of billions of users and trillions of devices, and realtime interactivity across them all.

Get more development news like this