0.39.1
Brings the fork up to date with the upstream TCA release 0.39.1
Please refer to the TCA release notes for 0.39.1 and 0.39.0.
This brings the fork up to date with all the commits from TCA after the Concurrency Beta was merged, then up to version 0.39.1.
Migration notes
Please refer to PR #58 for more details, but the main points can be found below.
⚠️ Breaking changes due to Effect
no longer typealiasing SignalProducer
⚠️
This update will cause countless breaking changes in projects as Effect
is now a struct
that wraps a SignalProducer
instead of being a typealias
of it. This is not as big of a problem in upstream TCA because Effect
is still a Publisher
, so all Combine operators will keep working on Effect
operation chains, whereas in RAS-TCA they will now break.
We felt that despite being a harder migration path, users will be (forcibly 😅) steered away from SP-based effects in favor of the new async
based ones quicker. Deprecation warnings providing fix-its were difficult to add, so please bear with the compiler screaming a bit at you 🙏🏼
ReactiveSwift 7.1 dependency
This release now points to ReactiveSwift 7.1, which already includes async
APIs in TestScheduler
and DateScheduler
.
New SignalProducerConvertible.values
Async(Throwing)Stream
APIs
In order to use SignalProducer
s in the async
"world", while replicating the existing APIs in Combine
, two new
values
computed properties in SignalProducerConvertible
were added:
values: AsyncStream<Value>
whenError == Never
values: AsyncThrowingStream<Value, Swift.Error>
otherwise