===== Workcraft v3.4.1 (2023-08-24) ===== === Usability improvements === * Enable user-defined flat name separator for page references; the default is ''_'' which is configurable via //Editor->Separator for converting page references into flat name// of global preferences * Improve option dialog with mnemonics and shortcuts for Yes/No/Cancel buttons * Calculate model bounding box before exporting its visual layer into a graphics file, such as PNG and SVG * Move //Comment// settings into a subsection of //Visual// settings of global preferences * Add settings for MPSat custom cost functions in verification and synthesis modes * Detailed header mode for file export to include timestamp of file creation, operating system info and JavaScript command used * Extend support for Bison syntax check to highlight warnings in custom properties * Remove support email from Help menu in favour of GitHub issues === Model and tool plugins === * Digital Circuit plugin * Add regex for user-defined auxiliary ports that should be excluded from output persistency check; the default is empty, and is configurable via //Digital Circuit->Auxiliary ports regex to exclude from verification, e.g. sig|req[0-9]*|bus__\d+// of global preferences * Exclude scanout ports from output persistency check * Improve //Output persistency// property to accept exception pairs of signals for WAIT elements * Improve reporting of structural issues on Verilog import, e.g. for inconsistently connected nets and multiple top level modules * Extend substitution rules to enable user-defined extra gate pins, e.g. for scan * Add info on invalid files into refinement statistics that is accessible via //Tools->Statistics->Refinement analysis// * Use colors defined in //Signals// settings of global preferences when rendering contact names * Improve snapping to grid when creating nets with //Connect// tool * Signal Transition Graph plugin * Improve verification of delay insensitive interface with a possibility to define exceptions * Add verification property for the absence of self-triggering output and internal signals, with a possibility to define exceptions - it is accessible via //Verification->Absence of local self-triggering (without dummies) [MPSat]...// * Promote delay insensitive interface and absence of local self-triggering to //essential// properties === Fixes and technical stuff === * Update toolchain to Gradle v8.3, CheckStyle v10.12.2, Jacoco v0.8.10, JavaCC plugin v3.0.0, Batik v1.17 * Update UnfoldingTools backend with several bugfixes, revised Reach syntax and binaries rebuilt using GCC 13 and GLIBC v2.37 * Recognise development mode of running from source * Drop dependency on Kotlin as not used much by plugins * Improve GitHub actions with recent MacOS and Windows runners, and Jacoco/Coveralls task for coverage report * Fix PowerShell starter script for use of local JRE