You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Breaking changes
Requires RealmSwift 20.0.6 or newer (Realm 20.x). RealmSwift 20.0.2 does not build with Xcode 27; 20.0.6 does (#222, #220, #223).
Minimum deployment targets raised to match RealmSwift 20: iOS 15, macOS 12, tvOS 15, watchOS 9.
Removed the public Obs typealias. Use RxSwift.Observable instead.
Carthage is no longer supported. Use Swift Package Manager.
Fixed
Observable.collection(from:), array(from:), changeset(from:) and arrayWithChangeset(from:) with synchronousStart: true (the default) no longer lose a write that another thread commits between subscribing and Realm's first notification. Realm folds such a write into its initial notification, which these observables used to drop as a duplicate of the synchronous value. Now the initial notification is emitted when it's at a newer Realm version than the synchronous value. In that case changeset(from:) emits it with a nil changeset (#74).
Added
Observable.from(object:emitInitialValue:properties:on:) and Observable.propertyChanges(object:on:) accept a dispatch queue to deliver notifications on (#219).
SPM exposes both a static RxRealm product and a dynamic RxRealm-Dynamic product (#214).
Changed
The CocoaPods dependency is now RealmSwift only (it pulls in Realm), with RxSwift/RxCocoa ~> 6.9.
New CI: SwiftLint, swift test on macOS, xcodebuild test on iOS and tvOS, a watchOS build and pod lib lint. Releases are created from vX.Y.Z tags on main (see RELEASING.md).
Tests trigger background writes only after subscribing, which removes a race that could hang the suite, and every blocking wait now times out after 10 seconds.