Releases: OpenCombine/OpenCombine
Releases · OpenCombine/OpenCombine
0.14.0
0.13.0
This release is compatible with Xcode 13.2.
Additions
- Windows support (thank you @MaxDesiatov!)
Publishers.Throttle
(#195, thank you @stuaustin)Publishers.PrefixUntilOutput
(#206)Publishers.Zip
(#222, thank you @MaxDesiatov and @ArthurChi)async
/await
extensions:Future.value
andPublisher.values
(#219)
Bugfixes
0.12.0
This release adds a new OpenCombineShim
product that will conditionally re-export either
Combine on Apple platforms, or OpenCombine on other platforms. Additionally, ObservableObject
protocol is now available and working on all platforms.
A bug with Timer(timeInterval:repeats:block:)
firing immediately not accounting for the passed
timeInterval
is fixed.
Merged pull requests:
- Fix
Timer(timeInterval:repeats:block:)
not accountingtimeInterval
(#196) via @grigorye - Add
OpenCombineShim
product for easier importing (#197) via @MaxDesiatov - Implementation for
ObservableObject
withMirror
(#201) via @kateinoigakukun
0.11.0
This release is compatible with Xcode 12.1.
Additions
Publisher.assigned(to:)
method that accepts aPublished.Publisher
.- New
Publisher.switchToLatest()
overloads. - New
Publisher.flatMap(maxPublishers:_:)
overloads. Optional.publisher
property.- New
_Introspection
protocol that allows to track and explore the subscription graph and data flow.
Bugfixes
- The project should now compile without warnings.
- The following entities have been updated to match the behavior of the newest Combine version:
Subscribers.Assign
Publishers.Breakpoint
Publishers.Buffer
CombineIdentifier
Publishers.CompactMap
Publishers.Concatenate
Publishers.Debounce
Publishers.Delay
DispatchQueue.SchedulerTimeType.Stride
Publishers.Drop
Publishers.Encode
Publishers.Decode
Publishers.Filter
Publishers.HandleEvents
Publishers.IgnoreOutput
Publishers.MeasureInterval
OperationQueue
schedulerPublished
Publishers.ReceiveOn
Publishers.ReplaceError
RunLoop scheduler
Publishers.Sequence
Subscribers.Sink
Publishers.SubscribeOn
Publishers.Timeout
Timer
publisher
Known issues
- The default implementation of the
objectWillChange
requirement of theObservableObject
protocol is not available in Swift 5.1 and later.
0.10.2
Bugfixes
- Fixed a crash caused by recursive acquisition of a non-recursive lock in SubbjectSubscriber (#186, thanks @stuaustin for the bug report)
Known issues
- The default implementation of the
objectWillChange
requirement of theObservableObject
protocol is not available in Swift 5.1 and later.
0.10.1
Bugfixes
- Fixed build errors on Linux with Swift 5.0 and Swift 5.3 toolchains (thanks, @adamleonard and @devmaximilian)
Known issues
- The default implementation of the
objectWillChange
requirement of theObservableObject
protocol is not available in Swift 5.1 and later.
0.10.0
This release is compatible with Xcode 11.5.
Additions
Timer.publish(every:tolerance:on:in:options:)
(#156, thank you @MaxDesiatov)OperationQueue
scheduler (#165)Publishers.Timeout
(#164)Publishers.Debounce
(#133)
Bugfixes
PassthroughSubject
,CurrentValueSubject
andFuture
have been rewritten from scratch. They are now faster, more correct and no longer leak subscriptions (#170).
Known issues
- The default implementation of the
objectWillChange
requirement of theObservableObject
protocol is not available in Swift 5.1 and later.
0.9.0
This release is compatible with Xcode 11.5.
Additions
- The
Subscribers.Demand
struct can be nicely formatted in LLDB (#146, thank you @mayoff). Publishers.SwitchToLatest
(#142).- The
RunLoop
scheduler inOpenCombineFoundation
(#131). Publishers.Catch
andPublishers.TryCatch
(#140).
Bugfixes
- Worked around a bug in the Swift compiler when building the
COpenCombineHelpers
target (#145, thank you @mayoff). - Improved documentation.
Known issues
- The default implementation of the
objectWillChange
requirement of theObservableObject
protocol is not available in Swift 5.1 and later.
0.8.0
This release is compatible with Xcode 11.3.1.
Additions
Publishers.ReplaceEmpty
(#122, thank you @spadafiva)NotificationCenter.Publisher
(#84)URLSession.DataTaskPublisher
(#127)Publishers.DropUntilOutput
(#136)Publishers.CollectByCount
(#137)Publishers.AssertNoFailure
(#138)Publishers.Buffer
(#143)
Bugfixes
- Fixed integer overflows in
DispatchQueue.SchedulerTimeType.Stride
(#126, #130) - Fixed the 'default will never be executed' warning on non-Darwin platforms (like Linux) (#129)
Known issues
- The default implementation of the
objectWillChange
requirement of theObservableObject
protocol is not available in Swift 5.1.
0.7.0
This release is compatible with Xcode 11.2.1.
Additions
Publishers.Delay
(#114)Publishers.ReceiveOn
(#115)Publishers.SubscribeOn
(#116)Publishers.MeasureInterval
(#117)Publishers.Breakpoint
(#118)Publishers.HandleEvents
(#118)Publishers.Concatenate
(#90)
Known issues
- The default implementation of the
objectWillChange
requirement of theObservableObject
protocol is not available in Swift 5.1.