===== Workcraft v3.1.3 (2017-02-02) =====
=== Usability improvements ===
* First release under //permissive// [[:download:license|MIT license]].
* For better support of scripting the //Tool// plugins are partitioned into:
* Editors (Selection, Connection, Node generation, etc.)
* Commands (Transformation, Layout, Conversion, Synthesis, Verification). Currently all except the //Verification// commands are scriptable, i.e. can be called from a JavaScript (see [[:help:scripting|scripting interface]] examples).
* All JAR files are moved to ''bin'' directory. This is to prevent users from starting Workcraft by double-clicking ''workcraft.jar'' file, without setting necessary environment variables which is done by ''workcraft'' runner script.
* Automatically reconfigure if no model plugins found.
* New hierarchy separator ''.'' is used now as it is natively supported by Petrify and MPSat.
* Compatibility with old flatname ''__'' and hierarchy '/' separators.
* Initial support for importing STGs with hierarchical nodes from ''.g'' files.
* Simplified //New work// dialog -- only the model type can be selected, redundant checkboxes and the title textbox are removed.
* In verification results window, long MPSat traces are scrolled instead of expanding the textbox to fit the whole trace.
* Message box for long MPSat diagnostics only outputs the first and last 10 lines. The whole log still can be seen in the //Output// tab.
=== Model and tool plugins ===
* Digital Circuit plugin
* Check the type of environment model and issue a warning if it is not an STG.
* Enable use of ''.g'' files for circuit environment.
* Revised export of unmapped gates as Verilog assign statements. This also fixes a bug in Verilog export of stdC synthesis results.
* Bugfixes for trace expansion (appending the //violating// transition) for conformation and output persistency properties.
* Signal Transition Graph plugin
* Specialised Concepts layout with proxy places and read-arcs. Standard GraphvizDot layout is still available as an option.
* Error out if Petrify produces partial CSC solution.
* Dataflow Structure plugin
* Export of high-level structure into Verilog.
* Move anchor points of connections when copying pipeline slices for wagging.
* Bugfix for changing colour of tokens in simulation.
=== Fixes and technical stuff ===
* Updated //UnfoldingTools//
* Support for ''.'' in IDs so it can be used as a hierarchy separator in Workcraft.
* Bug fixes and optimisations in logic decomposition and Verilog output (MPSat).
* Bug fix in cut-off check for dummy events (Punf).
* Updated //PetrifyTools//
* ''-write_sg'' and ''-draw_astg'' parameters so no need for symbolic links (or copies) ''write_sg'' and ''draw_astg'' of ''petrify'' binary.
* Constants are written as Verilog-style ''1'b1'' and ''1'b0'' insrtead of SIS-style ''-1-'' and ''-0-''.
* Bugfixes for OSX shortcuts
* Cmd-Q correctly exists Workcraft.
* Up and Down can be used in text areas.
* Interpret //two-finger-click// of a touchpad as a //right-click// of a mouse.
* Better test coverage with the focus on STG and Circuit plugins (improved from 17% to 32%).
* Consistent state of global settings and plugin settings.
* Cleanup of //Framework// and //Workspace// singletons.
* Updated JavaCC (parser generator) to v7.0.0.
* Extend work metadata with Workcraft version and creation timestamp. This is used in compatibility manager to open files created with old versions of Workcraft.