Releases: ReactiveCocoa/ReactiveSwift
7.2.1
7.2.1
- Add primary associated types to property and binding protocols (#888, kudos to @braker1nine)
- Fix the Carthage build checks (kudos to @mluisbrown)
- Add dynamic library support for SPM (#886 kudos to @mluisbrown)
- Fixed
BindingTarget.initthat uses a keypath to avoid source breaking change in SE-0481 (#890 kudos to @mluisbrown)
7.2.0
- Change
QueueSchedulerto use unspecified QoS when QoS parameter is defaulted (#880, kudos to @jamieQ) - Add support for visionOS (#875, kudos to @NachoSoto)
- Fix CI release git tag push trigger (#869, kudos to @p4checo)
- Find and remove items from Bag using a binary search to improve performance when the collection gets large (#878, kudos to @nickoto)
- Add extension to
ScopedDisposablefor innerSerialDisposable(#873, kudos to @sirnacnud) - Updated project settings for Xcode 16, bumped min deployment targets to iOS 12, macOS 10.13, tvOS 12, watchOS 4, visionOS 1.0 (#883, kudos to @mluisbrown)
7.1.1
This the second minor release of ReactiveSwift 7.
The minimum deployment targets for Apple OSes have been increased to iOS 11, macOS 10.13, tvOS 11 and watchOS 4. If you need to support older OS versions, please continue to use 7.0.0 or 7.1.0.
7.1.0
This the first minor release of ReactiveSwift 7.
The minimum deployment targets for Apple OSes have been increased to iOS 10, macOS 10.12, tvOS 10 and watchOS 3. If you need to support older OS versions, please continue to use 7.0.0.
Changes
- Add CI Release jobs on tag push (#862, kudos to @p4checo)
- Fix some issues related to locking, bumped min OS versions to iOS 10, macOS 10.12, tvOS 10, watchOS 3 (#859, kudos to @mluisbrown)
- Add
asynchelpers to Schedulers (#857, kudos to @p4checo) - Add primary associated types to SignalProducerConvertible & SignalProducerProtocol (#855, kudos to @braker1nine)
- Refactor Github Actions to cover more swift versions (#858, kudos to @braker1nine)
- Use
OSAllocatedUnfairLockinstead ofos_unfair_lockon supported Apple platforms (#856, kudos to @mluisbrown)
7.0
This is the first release of ReactiveSwift 7.0. It has a couple of minor breaking changes in both ABI and source over ReactiveSwift 6.0.
Changes
-
The UnidirectionalBinding operator
<~returns non optional values. (#834, kudos to @NicholasTD07) -
Fixed issue where
SingalProducer.try(upTo:interval:count:)shares state between invocation ofstarton the same producer. (#829, kudos to @sebastiangrail) -
Signal.Eventis now marked as frozen enum. (#841, kudos to @NachoSoto)
6.7.0
This is the seventh minor release of ReactiveSwift 6.
Additions
-
Signaloffers two special variants for advanced users: unserialized and reentrant-unserialized. (#797)The input observer of these variants assume that mutual exclusion has been enforced by its callers.
You can create these variants through four
Signalstatic methods:unserialized(_:),unserializedPipe(_:),reentrantUnserialized(_:)andreentrantUnserializedPipe(_:). These would be adopted by ReactiveCocoa UIKit bindings to improve interoperability with Loop, to tackle some legitimate recursive delivery scenarios (e.g. around first responder management), and also to reduce fine-grained locking in ReactiveCocoa.Note that the default behavior of
Signalhas not been changed — event serialization remains the default behavior. -
SignalProduceroffers an unserialized variant viaSignalProducer.unserialized(_:). (#797) -
TestSchedulercan now advanced its clock byTimeInterval. (#828, kudos to @carsten-wenderdel)
Changes
-
Signaland Properties now use fewer locks, which should translate into minor performance improvements. (#797) -
Fixed spelling error in
Lifetime.Tokenclass documentation. (#835, kudos to @ansonj) -
As a continued refactoring effort since ReactiveSwift 6.6.0, all unary
SignalandSignalProduceroperators have been migrated to a new internal representation.When debugging your application, the call stacks involving ReactiveSwift may now look cleaner, without the clutter of compiler-generated reabstraction thunks. See #799 for an example.
6.7.0 Release Candidate 1
Release Candidate 1 of ReactiveSwift 6.7.0 has been promoted to be the stable release.
Check the 6.7.0 release note for more details.
6.6.1
6.6.0
This is the sixth minor release of ReactiveSwift 6.0.
Addition
- Added the
SignalProducer.Type.interval()operator for emitting values on a regular schedule. (#810, kudos to @mluisbrown)
Changes
-
When debugging your application, the call stacks involving ReactiveSwift may start to look cleaner and less cryptic. This is an on-going refactoring effort to improve the developer experience. See #799 for an example.
-
Bumped deployment target to iOS 9.0, per Xcode 12 warnings. (#818, kudos to @harleyjcooper)
-
Fixed a few deprecation warning when the project is being built. (#819, kudos to @apps4everyone)
6.5.0
This is the fifth minor release of ReactiveSwift 6.0.
Signal operators to work with SignalProducer.
Changes
-
Fixed a
SignalProducer.liftissue which may leak intermediate signals. (#808) -
Add ExpressibleByNilLiteral constraint to OptionalProtocol (#805, kudos to @nkristek)
-
Add variadic sugar for boolean static methods such as
Property.any(boolProperty1, boolProperty2, boolProperty3)(#801, kudos to @fortmarek)