Releases: KStateMachine/kstatemachine
KStateMachine v.0.33.0
Add ExportMetaInfo
with ResolutionHint
mechanism.
This change extends unsafe export feature capabilities. You can specify Event to perform unsafe conditional lambda calls, or specify targetStates without calling lambdas at all.
https://kstatemachine.github.io/kstatemachine/pages/export.html#export-with-unsafecallconditionallambdas-flag
Fix some bugs in export feature.
Top level transitions declared in StateMachine level were not exported.
Full Changelog: v0.32.0...v.0.33.0
KStateMachine v0.32.0
Add event recording mechanism implementation using Kotlinx.Serialization
, allowing to serialize and restore state machines 💾.
The implementation is located in new separated artefact kstatemachine.serialization
Some DSL methods like addState
, addInitialState
etc became suspendable
. This allows calling suspend functions in a moment of state machine creation if necessary, as all those DSL method has a trailing lambda as a last argument.
docs https://kstatemachine.github.io/kstatemachine/pages/persistence.html
Full Changelog: v0.31.1...v0.32.0
KStateMachine v0.31.1
Fix export output. Now it contains explicit StateMachine block (wrapping all output). This is necessary for machines with parallel child mode for instance.
Full Changelog: v0.31.0...v0.31.1
KStateMachine v0.31.0
Update Kotlin to 2.0.0
Minor fixes
Major documentation update
Full Changelog: v0.30.0...v0.31.0
KStateMachine v0.30.0
- This is a big release with several breaking changes (mostly you only have to update your imports or reorder method arguments)
- The biggest new feature of this release is an EventRecording mechanism allowing to serialise and deserialise StateMachine's configuration. See more info in docs and code comments.
- Added useful shortcut functions
processEventByAsync()
andprocessEventByLaunch()
- Add
JS
andWasmJS
platforms support (those platforms does not support blocking APIs due to lack of runBlocking support) - Improve documentation
Full Changelog: v0.27.0...v0.30.0
KStateMachine v0.27.0
KStateMachine v0.26.0
What's Changed
- Allow specify multiple target states for transitions by @nsk90 in #91
- Add Mermaid export feature by @nsk90 in #92
- Add unsafeCallConditionalLambdas flag for export feature, to allow partly export conditionally calculated transitions.
Full Changelog: v0.25.1...v0.26.0
KStateMachine v0.25.1
Full Changelog: v0.25.0...v0.25.1
Update library dependencies versions
KStateMachine v0.25.0
What's Changed
- Rework StateMachine starting process using Event by @nsk90 in #83
- Allow using choiceState in initial state path.
Full Changelog: v0.24.1...v0.25.0
KStateMachine v0.24.1
Fix bug that stopped machine could not be destroyed.
Fix bug that navigation to child of parallel state could not be performed.
Full Changelog: v0.24.0...v0.24.1