Releases: beyondeye/Reduks
small fix to may 2023 release
Maintenance release may 2023
-
rewrite all gradle build scripts to support
android gradle plugin -> 8.0.1
gradle -> 8.0
android target sdk -> 33
kotlin -> 1.8.20
coroutines -> 1.7.1
dokka -> 1.8.10
gson -> 2.10.1
androidx.appcompat:appcompat - > 1.6.1
androidx.lifecycle.*** -> 2.6.1 -
Added integration with github actions for publishing maven artifacts to github packages
maintenance release + bug fixes for ReduksFragment
kotlin -> 1.3.61
kotlin_coroutines -> 1.3.3
dokka -> 0.10.0
android gradle plugin -> 3.5.3
androidx.appcompat:appcompat -> 1.1.0
androidx.lifecycle:lifecycle-extensions -> 2.1.0
com.google.code.gson:gson -> 2.8.6
gradle -> 5.4.1
- improved async store tests
- introduced ReduksFragment abstract class for better integration of android fragments with reduks
- fixed method isFragmentVisible for ReduksFragment
- bugfix in reduksfragment, redukActivity was not defined as property method
- bugfix for ReduksFragment: attached activity can be null, if fragment not yet attached
migration to androidx, kotlin 1.3.21
maintenance release.
migrated to androidx, kotlin bumped to 1.3.21
kotlin 1.3.20, coroutines 1.1.1
maintenance release
kotlin -> 1.3.20
coroutines -> 1.1.1
dependencies updated for android studio 3.3
android studio -> 3.3.0
gradle -> 4.10.1
target sdk -> 28
kotlin -> 1.3.11
android support libs -> 28.0.0
kjsonpatch -> 0.3.21
Migration to kotlin 1.3 and coroutines 1.0.0 and a lots more!
Lot of time since last release, lots of new features!
Kotlin
- kotlin 1.3.0
- Completed migration of all coroutines code to coroutines 1.0.0
- fixed android dokka doc generation
Selectors
- Slightly faster
withSingleField
selector - Introduced new selector
withSingleFieldByValue
, for primitive type fields. - Rewriting of reselect for allowing for selectors by value also for computed selectors arguments
- added new method signalChanged() to Selector, for forcing selector recomputation
- added condition onChangeIn for selectors
Integration with Android Architecture Components
- completed support for saving and restoring Reduks state on configuration changes using Android Arch component ViewModel
PCollections
- reduks-pcollection is now a pure java module, removed all kotlin deps
Reduks modules
- improved reduks modules syntax (use / operator instead of .. for reduks context)
- added support for hierarchical modules with arbitrary number of levels
Reduks Saga
- integration of saga middleware with
AsyncReduksActivity
- added Saga yield selectField
- added SagaAction interface for marking actions to be processed only in Sagas not in regular reducers
Error Logging
- introduced store.errorLogFn field that define a logger where to send internal Reduks errors (for example exception in reducer or when notifying subscribers). For a ReduksActivity, this logger is automatically set to the standard android logger
AsyncStore
- simplified AsyncStore (now logic is very similar to KovenantStore). this also fixes the issue that retrieving the store state after dispatching an action was not garanteed to return the state after processing of the action. Now this is garanteed (as it was in KovenantStore)
DispatcherFn
-
added DispatcherFn for returning encapsulated store dispatcher method
-
many other fixes
dependencies updated for android studio 3.3
android studio -> 3.3.0
gradle -> 4.10.1
target sdk -> 28
kotin -> 1.3.11
android support libs -> 28.0.0
kjsonpatch -> 0.3.21
bug fixes
Reduks-saga + refactoring
In this release:
- split reduks-core in
- reduks-core
- reduks-core-async: all coroutine related basic stuff, like AsyncActionMiddleware and AsyncStore
- reduks-core-modules: all MultiStore related stuff.
- Initial release for reduks-saga module!!: a port of https://redux-saga.js.org/ using kotlin coroutines
Reduks Saga implementation is in a pretty advanced stage but still in the works, this is the reason why this is release is marked as a beta (b1)