Skip to content

@mtf90 mtf90 released this Feb 27, 2018 · 346 commits to develop since this release

Full changelog

Added

  • Added algorithms for computing adaptive distinguishing sequences for Mealy machines.
  • Added support for adding alphabet symbols after initial automaton construction.
  • Added support for Visibly Push-Down Automata (VPDA) in form of 1-SEVPAs.
  • Added (de-)serializers for the AUT format (see #14).
  • Added lazy (iterator based) methods for computing state- and transition covers, W-Method and Wp-Method tests.
  • Added a serializer for the SAF format.

Changed

  • Refactored the Maven artifact and Java package structure. Have a look at the List of AutomataLib Artifacts for an updated overview of available artifacts. In general, no functionality should have been removed (except of code marked with @Deprecated). The easiest way to migrate your code to the new version is probably by using the Auto-Import feature of your IDE of choice.

    The non-trivial refactorings include:

    • API methods no longer use wildcards in generic return parameters. This allows your code to not having to deal with them.
    • The visualization facade has been generified. Any getGraphDOTHelper() related code has been renamed to the more general getVisualizationHelper() terminology. The Visualization class now works by providing either the automata-dot-visualizer or automata-jung-visualizer JAR at runtime. This allows for potentially more visualizers in the future.
  • Replaced System.out logging, with calls to an SLF4j facade.

  • Code improvements due to employment of several static code-analysis plugins (findbugs, checkstyle, PMD, etc.) as well as setting up continuous integration at Travis CI.

Removed

  • Several classes and methods annotated with @Deprecated.

Fixed

  • Several bugs detected either by our newly employed static code-analysis toolchain or by our ongoing efforts to write tests.
Assets 2