This release introduces implicit interface illegals: Specifying illegal
in an interface is now optional, similar to components.
Dezyne now also has implicit temporary variables: a single valued action or call can now be used in if
and reply
expressions.
Simplified (filtered) state diagrams can now be generated by using the new --hide
and --remove
options on ide state
.
In the state view, selecting a node highlights all directly reachable nodes, improving the navigation of large models. Pressing .
highlights the initial state.
In the trace view, the beginning of a livelock error is now marked with <loop>
.
Changes in 2.14.0 since 2.13.3
- Views
- In the trace view, the beginning of a livelock error is now marked with “” (#44).
- In the state view, selecting a node highlights all directly reachable nodes, improving the navigation of large models. Pressing
.
highlights the initial state. - Pressing
F1
in the views shows a brief help popup with the mapping of keys and buttons.
- Commands
- The
ide state
command now supports hiding of unwanted detail. The new options-R,--remove=...
and-H,--hide=...
can be used to filter-out port state or extended state from the nodes, action transition labels or even all transition labels (#29).
- The
- Noteworthy bug fixes
- A failure to stop the daemon using
ide bye
is now handled gracefully.
- A failure to stop the daemon using
Dezyne-IDE
Changes in 2.13.3 since 2.13.2
- Views
- In the trace view, the order of lifelines of the ports can be changed by dragging them to a new place.
- For verification errors that have multiple error messages or extra informational messages, such as compliance errors or range errors, in the trace view each message can be clicked to show the relevant location in the Dezyne code.
- Noteworthy bug fixes
- The
ide lsp
command has been greatly improved (#38,#41,#51,#52):- Redundant parsing has been eliminated: The callbacks for reading a file and for parsing are now called only once per file; greatly improving performance on larger projects,
- The lsp server can no longer be flooded with “didChange” messages, leading to a denial of service: superseeded “didChange” messages are now dropped; also cancel-requests are honored,
- Error messages no longer contain the skipped text; this makes the root cause of the error easier to spot,
- An import statement refering to a non-existing file is now reported as a syntax error,
- A syntax check is now also performed when a file is opened, any errors are reported,
- When a file is opened using the “textDocument/didOpen” command, the text from the message is used instead of accessing the file system,
- The “textDocument/didOpen” command now also works even if the file is not present on the file system,
- Two problems with unbounded recursion and several crashes have been fixed.
- The goto definition function now also considers the identifier to the left of the cursor if the cursor is on punctuation, catering for users that use a caret instead of a cursor in their editor.
- A second
ide simulate
session for another model from the same file now corretly simulates and presents the newly selected model, - The System view now automatically updates after running a new
ide system
command (#56). - A bug has been fixed in the System view that could cause stack-overflow in JavaScript.
- The