An MVI framework for Kotlin and Android
Fixed
assert
function.TestFlowObserver
Lots of improvements in this release!
? BREAKING CHANGES ?
Stream
and its associated extension functions)
Container.stateFlow
and Container.sideEffectFlow
. Do not convert the flows to LiveData
due to numerous observed issues.#121 made us run extra checks on our connection methods and Stream turned out to not behave as expected threading-wise. We've discussed next steps and decided to deprecate the Stream interface and expose Flows instead. This decision did not come lightly because we wanted the core module to be agnostic of the internal implementation (i.e. not expose coroutines).
Our reasoning behind why we did this in the end:
The change had a cascading effect through all of our connection methods which required a Streams the base connection method. A good amount of changes were required, but we have kept backwards compatibility for the next release.
Full list of changes:
Orbit 2 is a simple scaffolding you can build a Redux/MVI-like architecture around. In Orbit 2 we took the best features of Orbit 1 and have rewritten the rest from scratch.
And more!...
Finishing touches:
CoroutineScope
sonCreate
lambda in testsMiddlewares now retain the entire stack of transformers to make it easier to stub flows out for interaction testing
Fininshing touches: