- Added: a new overload of
Reducer.pullback
for working with enum-based state. It uses a case path instead of a writable key path for extracting and embedding state for a particular enum case. - Added: a new
SwitchStore
view for converting stores on enum state into stores on individual enum cases (thanks @lukeredpath for sketching out the original implementation). - Changed:
Effect.timer
now callscancelInFlight: true
under the hood to automatically cancel any in-flight timers with the same cancellable id (thanks @dannyhertz). If you rely on the existing behavior, which allows for timers to interleave and stack on one another, this is a breaking change and you must manually create your timers usingPublishers.Timer
instead before upgrading. - Fixed:
ForEachStore
has been optimized and a crash related to removing rows has been fixed. - Fixed: documentation cleanup.
- Infrastructure: modernized example/demo code, along with assorted fixes (thanks @yimajo, @filblue).