bansa v1.0.0-beta Release Notes
Release Date: 2016-05-05 // about 7 years ago-
The early versions of this project were fun experiments in Kotlin. As I played around with it more and talked to others, I hoped I might make this project useful to others, rather an as a simple experiment.
Therefore, I set down the following criteria for what I wanted from the library:
- Idiomatic Java and Kotlin usage
- Low method count
- 👌 Support for all basic Redux concepts in the smallest possible package. This includes the Store, Middleware, Reducers, and Subscribers/Subscriptions.
- Dev Tools that allow for Time Travel debugging
- ✅ Well tested
As this library now meets those goals, I think it's time to give it a beta label. Please try it out in your projects, and if we find it's all stable, we'll publish to 1.0.0 soon!
Previous changes from v0.3.0
-
This is a big change! Bansa is now written in Java, and no longer has a dependency on Rx. This drops the method count dramatically, and makes Bansa far easier to use in a normal Java Android app.
There is also a companion version available, called
bansaKotlin
, that provides more idiomatic interfaces for the Kotlin programming language.I've also tried to keep the migration path simple. If you've been using Bansa, it shouldn't be a big rewrite of the way you were doing things before. The most important changes:
- ⬇️ Reducers are no longer lambdas, but proper classes. I.e. move from
{ state: MyState, action: Any ->...
toReducer<MyState, Any> { state, action ->...
- Bansa now provides it's own small
Subscriber
andSubscription
interfaces, replacing RxJava versions. - ✅ The constructor for creating a store using Middleware has been simplified.
createStore(intialState, reducer)
is nowBaseStore(initialState, reducer, Middleware...)
- ⬇️ Reducers are no longer lambdas, but proper classes. I.e. move from