The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
A major release with a complete overhaul of the Redux pattern.
### Idiomatic Redux pattern
![Old Pattern](https://user-images.githubusercontent.com/932822/152201267-93cd2dcb-0bad-498f-b118-63aca04197a9.png)
### New reducer to `Effect` pattern
![New Pattern](https://user-images.githubusercontent.com/932822/152201839-2fe1a2c9-7257-40ad-bf37-bff2869816ec.png)
* In this context an `Effect` is essentially a Combine stream i.e. `AnyPublisher<A, Never>`.
## Changes
- Removed `Middleware` requirement
- Introduced an `Environment` object to encapsulate dependencies for side effects
- New `Reducer` function signature: `typealias Reducer<A, S: Equatable, E> = (A, inout S, E) -> AnyPublisher<A, Never>`
- Added a `statePublisher` property which mirrors the `@Published state` property.
A single bug fix for a implicitly unwrapped value
Initial release
4 years ago