Skip to content

Migration to kotlin 1.3 and coroutines 1.0.0 and a lots more!

Choose a tag to compare

@beyondeye beyondeye released this 08 Nov 13:16

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