We are delighted to announce Dezyne 2.11: The first standalone release of the Dezyne-IDE that includes simulation and visualization similar to 2.9.
Dezyne-IDE introduces an LSP langserver.org server ('ide lsp' with basic code completion and goto-definition support.
The documentation, which has not been fully updated for 2.11 yet, is available here: download.verum.com/documentation.html.
Dezyne is developed on GNU/Linux, and has been demonstrated to work on the Windows Subsystem for Linux. Dezyne 2.10 is being used on native MS Windows. The Dezyne 2.11 additions on top of 2.10 are not fully tested on native MS Windows, however they do work on WSL2. If you would like to help us to finish the porting effort or repair other shortcomings, please email your bug reports to bugreport@verum.com. We will evaluate your reports and track them via the Gitlab dezyne-issues project, see our guide to writing helpful bug reports.
What's next?
In the upcoming releases we aim to introduce a complete and correct state diagram, a language pack for C#, ...
Enjoy!
The Verum Team
Download
Here are the binary downloads and a GPG detached signature[*]:
dezyne-2.11.0-x86_64-linux.tar.gz (54MB)
dezyne-2.11.0-i686-windows.zip (120MB)
dezyne-ide-2.11.0-x86_64-linux.tar.gz (74MB)
dezyne-ide-2.11.0-i686-windows.zip (159MB)
Here are the GPG detached signatures[*]:
dezyne-2.11.0-x86_64-linux.tar.gz.sig
dezyne-2.11.0-i686-windows.zip.sig
dezyne-ide-2.11.0-x86_64-linux.tar.gz.sig
dezyne-ide-2.11.0-i686-windows.zip.sig
Here are the MD5 and SHA1 checksums:
7a8c0c6f95001fe1c8adf564bf6db7c2 dezyne-2.11.0.x86_64-linux.tar.gz
a90fc0a883df840aa848470571f308e7 dezyne-2.11.0.i686-windows.zip
592de005ceb85f2423b5ef651d284bff dezyne-ide-2.11.0.x86_64-linux.tar.gz
56b0c9072963b7b107c4d575d8b6adbb dezyne-ide-2.11.0.i686-windows.zip
d59d1a32e1f2861a2c315a9fa15450fcaec2085c dezyne-2.11.0.x86_64-linux.tar.gz
73b88a373cbf74af90f911ea3f497545ba237f84 dezyne-2.11.0.i686-windows.zip
b24c4d0271b68ef4e39a594b4c0a4fbe2402d974 dezyne-ide-2.11.0.x86_64-linux.tar.gz
2cd772dcf23e6a863519aae00ffe84168010d451 dezyne-ide-2.11.0.i686-windows.zip
[*] Use a .sig file to verify that the corresponding file (without the .sig suffix) is intact. First, be sure to download both the .sig file and the corresponding tarball. Then, run a command like this:
gpg --verify dezyne-2.11.0-x86_64-linux.tar.gz.sig
If that command fails because you don't have the required public key, then run this command to import it:
gpg --keyserver keys.gnupg.net --recv-keys 1A858392E331EAFDB8C27FFBF3C1A0D9C1D65273
and rerun the 'gpg --verify' command.
Get informed, get involved
See gitlab.com/dezyne/dezyne-issues
Join #dezyne
on irc.freenode.net.
NEWS
Dezyne-IDE
Changes in 2.11.0 since 2.9.1
- The integrated Eclipse download has been discontinued.
- Dezyne is now stand alone, client only, serverless, pure GNU Guile Scheme.
Dezyne-IDE has browser-based views and integrates with any LSP-aware editor.
- Support for GNU Emacs.
Support for Electron-based editors, such as VSCodium.
- VSCode plugin: dzn-lsp-1.0.2.vsix
Commands
- A new command `ide lsp' provides a stdio-based Language Protocol Server for the Dezyne language.
- The Dezyne-IDE, view-commands are now subcommands
ide':
ide parse', 'ide simulate',ide verify',
ide browse',ide daemon
,ide hello', and
ide bye'.
Views
The Trace view now places the buttons with the port's time line.
The State view was removed. The state view in 2.9 (and earlier) was often incomplete or incorrect. A complete and correct State view will return.
The Table views were removed.
The watch window has been integrated in the sequence diagram.
The watch window itself is now deprecated.
Diagram click is optionally (ide lsp --relay-daemon) mapped to an LSP publishDiagnostics message, this will likely change in the near future.
Dezyne core
Changes in 2.11.0 since 2.10.1
Commands
- A new command `dzn language' supports DZN-language completion and lookups.
- The commands
dzn cat and
dzn ls' have been removed.
Parser
A well-formedness check was added for trigger, action, and function-call arguments.
Changes in 2.10.1 since 2.10.0
Usability
- The dzn command now exits gracefully when given an unknown command.
- The dzn-mode for GNU Emacs is now a major mode called "Dezyne".
Parser
- Parse errors in imported dzn-files now show the import inclusion path.
- Using newlines between
dollar'-expressions and toplevel
dollar'-statements is now an error.
Code generation
- Performance has been improved.
- The C++ code generator is now prepared for C++20: The dzn::port::meta fields are renamed to "provide" and "require".
- The Scheme code generator uses the "namespace to module" feature. This code generator is experimental, and not available in the regular binary release.
- The JavaScript code generator uses the "namespace to module" feature. This code generator is experimental, and not available in the regular binary release.
Documentation
- The infocenter has been converted to texinfo and is now included in the release.
Noteworthy bug fixes
Fixed a regression of using two different types of async interface in one behaviour.
About Dezyne
In Dezyne, you define components and their interfaces through a familiar and compact C/Java like-language. The Dezyne language is targeted at the logic or event-driven behaviour of an application. The interfaces are the specification and the components are the implementation.
Dezyne automatically verifies semantic correctness of the logic behaviour and proves that the components correctly implement the interfaces. A user can simulate the behaviour to validate whether this is as intended. Diagrams and logical views are generated automatically from the language description. As a final step code can be generated in a number of standard programming languages.
Without having to rely on a process Dezyne automatically highlights problems areas, stimulates communication about these and enforces that components work together.
About Verum
verum.com is a leading developer of software design tools to create, simulate, mathematically verify and automatically generate code for embedded and cyber-physical systems.
At Verum, we help our customers and partners solve the most challenging software issues of today and tomorrow. We support customers with our product Dezyne, a software engineering toolset that enables engineers to specify, design, validate and formally verify software components for embedded systems combined with consultancy services.