Skip to content

Releases: Kontur-Mobile/VisualFSM

4.0.0

09 Apr 08:21
c187b24
Compare
Choose a tag to compare

Improvements:

  • added LogParams argument to Feature for configuring built-in logging, with support for custom loggers and formatters. This provides an alternative to implementing the TransitionCallbacks interface for logging purposes

  • updated TransitionCallbacks: all method overrides are now optional; a new method onInitialStateReceived has been added

  • removed deprecated methods in Transition

  • updated dependencies

3.0.0

05 Jun 05:53
83adc70
Compare
Choose a tag to compare

New functionality:

  • added an optional ability to set an external state source for a Feature (IStateSource argument). This can be useful for communicating between Features via shared state, or for working with other state-based frameworks. Documentation

Error correction:

  • fixed an error in a graph when using nested classes in state classes

Removing deprecated methods and integrations:

  • support for RxJava 2 has been discontinued
  • removed deprecated Feature constructors
  • removed deprecated state graph drawing methods

2.0.0

17 Apr 10:19
655a522
Compare
Choose a tag to compare

New features:

  • extended generic parameters of Transition to accept a sealed class as transition source and destination thus describing a bunch of transitions in a single Transition
  • added SelfTransition as a new type of Transition to ease the creation of a state transition without the state class changing
  • updated dependencies versions

Changes without backwards compatibility:

  • minimal Kotlin version is 1.9
  • minimal JDK version is 17
  • new behavior for Transition with a basic sealed class in its generic parameters

Updated example of use in KMM project: https://github.com/Kontur-Mobile/VisualFSM-Sample-KMM

1.5.1

16 Oct 06:48
165a7b1
Compare
Choose a tag to compare

New features:

  • Added functionality to generate a csv file with all transitions for FSM analysis using third-party tools

1.4.0

26 Jun 06:03
a0884da
Compare
Choose a tag to compare

Improvements:

  • Graph visualization customization

To improve readability of the graph, the ability to manage graphviz attributes when generating a graph has been added.
Using 'DotAttributes' you can change the style of the entire graph, set the shape and color of edges and nodes.
Use the preset 'DotAttributesDefaultPreset' or create your own for your project.

1.3.3

02 May 13:08
c5aa33c
Compare
Choose a tag to compare

Improvements:

  • Fixed use of AtomicFU, no need to add it as a dependency to the main project anymore
  • Added warning suppression to generated code

1.3.2

03 Apr 08:41
fb6e67c
Compare
Choose a tag to compare

Bug fixes:

  • Fixed behavior of AsyncWorker.proceed() after calling AsyncWorker.unbind() method
  • Fixed handling of AsyncWorker ExecuteAndCancelExist task

1.3.1

22 Feb 08:48
4bb5042
Compare
Choose a tag to compare

Bug fixes:

  • Fixed handling of AsyncWorker ExecuteAndCancelExist task

1.3.0

24 Jan 10:30
0167263
Compare
Choose a tag to compare

Improvements:

  • Added a possibility to change the Coroutine Dispatcher in the AsyncWorker constructor

Bug fixes:

  • Fixed the onStateSubscriptionError exceptions handler in the AsyncWorker that catches all unhandled exceptions

1.2.1

20 Nov 08:14
59fac93
Compare
Choose a tag to compare

Minor improvements:

  • Added internal modifier to generated TransitionFactory if base Action class contains internal modifier
  • Added validation of the class name of Feature and Transitions generics at the stage of code generation
  • Added getEdgeName method to VisualFSM tools to get edge name by Transition class
  • Changed Flow to StateFlow for Feature states observing