KStateMachine is a Kotlin DSL library for creating state machines and statecharts.
Full Changelog: https://github.com/nsk90/kstatemachine/compare/v0.20.0...v0.21.0
This is big release with many breaking changes. The major one is coroutines support.
See the docs for more info.
Full Changelog: https://github.com/nsk90/kstatemachine/compare/v0.18.1...v0.20.0
Full Changelog: https://github.com/nsk90/kstatemachine/compare/v0.18.0...v0.18.1
jitpack
publication kotlin compatibility mode. (kotlin 1.6, 1.7, java8, java11)FinishedEvent
to DataState
. This implemented with DataExtractor
which actually might be used for any type of event if necessary. FinishedEvent
cannot be DataEvent
(does not fit requirements), so I did not found any way to use "typesafe transition" mechanisms in this case.startFrom
with data argument overloadFull Changelog: https://github.com/nsk90/kstatemachine/compare/v0.17.0...v0.18.0
Add transition types. Add doNotThrowOnMultipleTransitionsMatch flag. Add processEvent() return value. Add FinishedEvent data field. Fix undo() called from onEntry() Fix calling stop()/destroy() during execution of pending events.
Full Changelog: https://github.com/nsk90/kstatemachine/compare/v0.16.0...v0.17.0
Full Changelog: https://github.com/nsk90/kstatemachine/compare/v0.15.0...v0.16.0
Full Changelog: https://github.com/nsk90/kstatemachine/compare/v0.14.0...v0.15.0
Add history state support
Full Changelog: https://github.com/nsk90/kstatemachine/compare/v0.13.0...v0.14.0
Add possibility to call processEvent() from any listeners.
Full Changelog: https://github.com/nsk90/kstatemachine/compare/v0.12.0...v0.13.0
Added choice pseudo state. Pass event and argument to all guard/condition functions as this.
Full Changelog: https://github.com/nsk90/kstatemachine/compare/v0.11.1...v0.12.0