Releases: ReSwift/Recombine
Releases · ReSwift/Recombine
Recombine 1.0 🎉
After months of using Recombine on a real application, I was able to glean insights that went into the design of this new version, removing pain points and improving interactions with SwiftUI.
Breaking API Changes:
Store
is now namedBaseStore
.StoreTransform
is now namedLensedStore
, with now lenses actions as well as state, reflected in a new type parameter.- There are now three lensing functions, one for state, one for actions, and one for both.
API Additions:
- Added an
AnyStore
type erasing wrapper.
0.7.0
Breaking API Changes:
Middleware
's code surface has been greatly reduced. It can only be created as an empty passthrough, created with a closure that returns a publisher of its refined type, or be concatenated onto anotherMiddleware
.ActionStrata
is now a subtype ofStore
.
0.6.0
Breaking API Changes:
Middleware
now consumes aPublisher
ofState
and produces publishers.Store
andStoreTransform
are parameterised by the "raw" action type they support (the type that will be sent through theMiddleware
) and their "refined" action type (the type that is produced by theMiddleware
).dispatch(_ actions:)
is nowdispatch(raw:)
anddispatch(refined:)
.
0.5.2
Breaking API Changes:
Reducer
is now a protocol with two interoperable default implementations:PureReducer
andMutatingReducer
.Store
now requires aScheduler
for its events.
API Changes:
- Changed
state
to@Published
. - Added the
StoreTransform
wrapper type. - Added the
lensing(_:)
function to allowStore
to be windowed via the newStoreTransform
wrapper type.