The original decision behind Mutable<T> was made to maintain syntactical similarity with iOS. We agreed this is not necessary, and we'd prefer to make things simpler.
fun reduce(state: Mutable<State>, action: Action): List<Effect<Action>>
// into
fun reduce(state: State, action: Action): ResultOrSomething<State, List<Effect<Action>>>
Description
The original decision behind
Mutable<T>
was made to maintain syntactical similarity with iOS. We agreed this is not necessary, and we'd prefer to make things simpler.after https://github.com/toggl/komposable-architecture/issues/51 it should become
Let's make sure we can do the transition as painless as possible, let's provide @Deprecated if it makes sense
Definition of done