DVT IDE for VS Code VHDL User Guide
Rev. 22.1.29, 28 September 2022

Chapter 27. What is New?

#.# - major version - Includes new features, major enhancements, architectural changes, bug fixes. 
Since 2015, a major version is named in sync with the release year, for example the first major version of 2015 is 15.1.
NOTE: When switching to a new major version it is recommended to start in a new workspace.

#.#.# - minor version - Includes bug fixes, minor enhancements.

22.1.28 (28 September 2022)

Bugfixes

  • DVT-17578 Wrong OUT_OF_BOUNDS_SELECT error thrown in aggregate

  • DVT-17579 Wrong UNDECLARED_IDENTIFIER when aliased object is an array select followed by member access

  • DVT-17584 Do not throw SENSITIVITY_MISSING inside function/procedure declared inside process

  • DVT-17775 False MISSING_CONSTRAINT when subtype is using open keyword

  • DVT-17974 False ASSIGNMENT_NON_BLOCKING warning in sequential always block with event control error

  • DVT-18109 The +dvt_set_directive_nof_args only works within the first +dvt_init section

  • DVT-18127 Thread Dump Collector: Fix broken zips caused by SIGINT signals

Enhancements

  • DVT-17409 Build config: -ccwarn directive should take one argument

  • DVT-17593 Build config: -denalipath directive should take one argument

  • DVT-17776 Build config: -dms_wreal_init directive should take one argument

  • DVT-17937 Build config: -max_always_prune should take one argument

22.1.27 (13 September 2022)

Performance

  • DVT-17444 Improve parameter text value computation for large arrays

Bugfixes

  • vscode-970 Wrong breadcrumb when generating diagram from Design/Verification Hierarchy

  • vscode-994 Design Diagrams: Sometimes 'Show Connections' generates incomplete diagram

  • vscode-1014 Code Actions: Edit inserted at wrong offset when trigger editor is different than target editor

Enhancements

  • DVT-17893 Build config: Add predefined environment variable _XRUNROOT_ in xcelium.xrun compatibility mode

  • DVT-17938 Ability to customize the number of arguments for build config directives using +dvt_set_directive_nof_args

22.1.26 (7 September 2022)

Bugfixes

  • vscode-976 Build Console update is delayed a few seconds after the build is done

Enhancements

  • vscode-1012 Code Factory: Improve performance and usability

22.1.25 (30 August 2022)

Bugfixes

  • vscode-966 Sometimes Design and Verification Breadcrumbs are not visible

  • vscode-1002 Files displayed in the Compiled Files View should not be affected by the DVT.workspaceSymbols.maximumNumberOfSymbols preference

  • vscode-1005 Workspace Symbols: Unable to navigate to file in Windows

  • DVT-14659 Elaboration support for a configuration used inside another configuration with instance paths relative to the first

  • DVT-17977 Wrong evaluation of concatenation with left hand type conversion

Enhancements

  • DVT-17860 Automatically compress generated thread dumps

22.1.24 (22 August 2022)

Bugfixes

  • vscode-995 Preserve cursor focus when showing the Build Console

  • vscode-998 IllegalStateException thrown when using Extract to Module

Enhancements

  • vscode-878 Code Factory: Ability to use custom templates

  • vscode-961 Using Show Diagram on a port in Design Hierarchy Ports View should generate a connection diagram

  • vscode-981 Limit the number of symbols displayed in Workspace Symbols View

22.1.23 (16 August 2022)

CLEANUP

  • DVT-17912 Do not show BuildCancelException after canceling the elaboration in some cases

Features

  • vscode-697 Scope Breadcrumb: Ability to copy qualified name

Bugfixes

  • vscode-873 FSM Diagrams: The content of the transition table is duplicated when applying preferences

  • vscode-887 Open folder from a mapped network drive does not work

  • vscode-929 & vscode-959 Breadcrumb is not updated when switching from text editor to diagram

  • vscode-952 Ignore empty values of -lang argument in dvt_ls.sh and dvt_code.sh

  • vscode-974 NPE when computing breadcrumb after using hyperlinks

  • vscode-975 NPE when computing diagnostics after incremental build

  • vscode-979 Error thrown when invoking the "Activate" command inside an empty directory

  • vscode-982 Terminal environment is incorrectly altered when the inherited environment variables contain strings with other environment variables

  • DVT-15227 Cannot use range attribute on constrained port in a loop generate

Enhancements

  • vscode-707 Implement folding range on the server side

  • vscode-821 WaveDrom Diagrams: Display a message in the tooltip when wave description exceeds the limit of characters

  • vscode-904 Check for mandatory -lang argument when using dvt_ls.sh and dvt_code.sh

  • vscode-905 Prompt for selecting project language support if no language is found inside build.ls or .project files

  • vscode-935 Wavedrom Diagram updates as you type

  • vscode-980 Switch to Java 11 for Linux ARM64 and macOS Apple Silicon

  • DVT-15941 Set a limit for the number of incrementally adaptive elaborated instances

  • DVT-17678 Add folding range for #region/#endregion block

  • DVT-17934 Improve recurrence detection for instances under generate block during elaboration

  • DVT-17935 Add option to configure the maximum recurrence depth for instances under generates

22.1.22 (2 August 2022)

Performance

  • DVT-17878 Slow incremental adaptive elaboration when changing package content referenced in many modules

Enhancements

  • vscode-793 Ability to "Open Log" from DVT Language Servers View

  • DVT-17428 Natural Docs definition list formatting in tooltips is not rendered correctly

  • DVT-17875 Support negative values for loop generate indices

Bugfixes

  • DVT-14925 Incorrect recurrence detected for instances of the same design but with different parameter values

  • DVT-17575 Support for non-value entity generics in elaboration

  • DVT-17834 Recurrence not detected at incremental elaboration

  • DVT-17881 OutOfBoundsException thrown when selecting from an unpacked array

22.1.21 (21 July 2022)

Enhancements

  • DVT-17801 Elaborate enum constants defined inside architecture

Bugfixes

  • vscode-716 GUI freezes when the last match from the Verification/Design Hierarchy Views gets removed at incremental build

  • vscode-805 Design Hierarchy: Sometimes the view becomes empty after expand/collapse

  • vscode-926 JavaDoc tags are not highlighted

  • vscode-933 "Jump to Matching Pair" command has no effect for files opened during full build

  • vscode-937 Wavedrom diagrams are not generated for files opened during full build

  • vscode-953 Edits are applied directly when using "Refactoring with Preview..." command

  • vscode-954 Report an Issue gets stuck in "Collecting data..." when no folder is opened

  • vscode-955 Report an Issue: OS info not collected

22.1.20 (11 July 2022)

Enhancements

  • vscode-795 Ability to activate / deactivate DVT support in a workspace

  • vscode-895 Report an Issue: Collect all available registry files / logs / bootstrap logs when no language server is active

  • DVT-17743 Perform automatic profiling of design elaboration after a configurable time threshold

Bugfixes

  • vscode-648 Design Hierarchy/Verification Hierarchy scroll gets stuck after a sequence of actions

  • vscode-938 Update code templates to place cursor in the right position after insertion

  • DVT-17777 UNELABORATED_PACKAGE warnings are sometimes not properly triggered at incremental build in the currently edited file

22.1.19 (28 June 2022)

Enhancements

  • vscode-721 Ability to start VS Code / VSCodium using dvt_cli.sh -vscode

  • vscode-806 Compile Order: Ability to show only files with errors

  • DVT-14954 Evaluate assignments where the LH side is hierarchical identifier

  • DVT-17703 Rename NO_GENERATE_BLOCK_EVAL value of elaboration control directive to EACH_GENERATE_BLOCK_ONCE

  • DVT-17704 Add option to not elaborate generate blocks

Bugfixes

  • DVT-17570 Incorrect INCOMPLETE_ARRAY_AGGREGATE error for array of records initialization

  • DVT-17695 Missing UNELABORATED_PACKAGE warning for imported package in unelaborated module

22.1.18 (15 June 2022)

CLEANUP

  • vscode-843 Move trace log into a new console

  • vscode-893 Move server log and client log into separated consoles

Enhancements

  • vscode-728 Show server restart pop-up when changing .ls file

  • vscode-794 Periodically clean obsolete Language Server log files

  • vscode-838 Show server restart pop-up when changing server relevant preferences

Bugfixes

  • DVT-17671 False references in procedure calls for same named enum literals in a scope

22.1.17 (8 June 2022)

Features

  • vscode-826 Add file decorators for compiled/encrypted/skipped files

Bugfixes

  • vscode-701 Sometimes "Open Design Breadcrumb Instance" selection is wrong

  • vscode-740 Design Breadcrumb: Wrong updates when opening instances from Design Hierarchy

  • vscode-741 Design Breadcrumb: "Select Other Design Breadcrumb Instance" command has no effect when the active editor contains a schematic diagram

  • vscode-801 Design Breadcrumb: Wrong updates when triggering 'Open Design Breadcrumb Instance'

  • vscode-828 Design Breadcrumb: Wrong updates when double clicking on a port from Design Hierarchy

  • vscode-837 Design Breadcrumb Navigation doesn't work if the current editor contains a design diagram

  • vscode-868 Sometimes "Jump to Matching Pair" command triggers unnecessary scroll

  • vscode-897 Sometimes "dvt_ls.bat is not recognized as an internal or external command, operable program or batch file" error is thrown on Windows

  • DVT-17569 False AMBIGUOUS_EXPRESSION for function with optional argument

22.1.16 (31 May 2022)

Features

  • vscode-841 Ability to pass build configuration arguments to dvt_code.sh and dvt_ls.sh using -f, -F, or -name.build args

Enhancements

  • vscode-845 Show pop-up to disable nature when only one language license is available

Bugfixes

  • vscode-859 Rebuild should not be stopped when the provided compile waivers file is invalid

  • vscode-875 Extension doesn't work over Remote-SSH when using VS Code Insiders

  • vscode-876 Report an Issue gets stuck in "Collecting data..." when using VS Code Insiders

  • vscode-877 Prompt for selecting the project nature is not always displayed when creating a DVT project starting from an empty directory

  • vscode-879 Prompt for selecting the project nature displays wrong information when specifying the -lang flag to dvt_code.sh

  • vscode-881 Unable to start Language Server if the project path contains whitespaces

  • DVT-17043 Packages imported in unelaborated package are considered elaborated

  • DVT-17577 NullPointerException thrown in type conversion semantic check

  • DVT-17605 Search for references on enum literal definition does not work when another enum literal with the same name is defined in the enclosing scope

22.1.15 (18 May 2022)

Bugfixes

  • vscode-872 Extension doesn't work over Remote-SSH throwing "Maximum call stack size exceeded" error

22.1.14 (17 May 2022)

Performance

  • DVT-17563 Improve performance of semantic checks in the unelaborated design

CLEANUP

  • vscode-870 Change the id of DVT Themes to match their names

Enhancements

  • vscode-722 Add -map support for dvt_code.sh and dvt_ls.sh

  • vscode-768 Ability to reuse the current window when using dvt_code.sh from embedded terminal

Bugfixes

  • vscode-804 A new Language Server is always started regardless the value of the DVT.languageServer.selection

  • vscode-863 Unable to start Language Server when the value of DVT.languageServer.launchCommand preference contains single quotes

  • DVT-17493 Incorrect UNELABORATED_MODULE warning after incremental elaboration for bound module

22.1.13 (9 May 2022)

DEPRECATED

  • DVT-17543 Deprecate dvt_elaboration_expression_operator_control build directive

Enhancements

  • vscode-761 Ability to see to how many problems a compile waiver was applied in the dvt_build.log file

  • DVT-17445 Rework parameter string values for vhdl arrays

  • DVT-17486 Build log/output should be consistent across tools

  • DVT-17492 Ability to skip elaboration of instances based on path pattern

  • DVT-17536 Change +dvt_elaboration_skip_modules directive to accept simple pattern

  • DVT-17554 Change dvt_disable_unelaborated_package_constants directive name to be in line with other similar directives

22.1.12 (3 May 2022)

REMOVED

  • vscode-839 Remove DVT.textEditor.highlight.enableSemanticHighlight preferences

Enhancements

  • vscode-759 Enhance highlight in VS Code predefined themes

  • vscode-831 Add command for jumping to pair bracket or to matching begin/end block

  • vscode-840 Enhance DVT Light and DVT Dark themes

  • DVT-17263 Add support for procedure output argument update in evaluation

Bugfixes

  • vscode-785 DVT Light Theme: Input boxes from the preferences page don't have borders

  • vscode-848 Running dvt_ls script without "-build" argument results sometimes in wrong nature detection

22.1.11 (18 April 2022)

CLEANUP

  • DVT-17451 Change predefined project 'usb_sim_model' library name to valid identifier

Enhancements

  • DVT-15518 Add support for to_stdulogicvector evaluation function in std_logic_1164

Bugfixes

  • vscode-824 Sometimes Language Server becomes unreachable after expanding its entry in Language Servers View

22.1.10 (12 April 2022)

Enhancements

  • vscode-807 Show version in Diagnostics View

Bugfixes

  • vscode-666 Sometimes views become empty after moving them in UI

  • vscode-671 Language Servers View: Client info should become empty after disconnecting from the server

  • vscode-753 Report an Issue: Remote host settings are not collected when using Remote-SSH

  • vscode-754 Do not apply automatic transformation of characters in comments

  • vscode-788 Design Hierarchy View: Sometimes context menu is not entirely visible in ports panel

  • vscode-800 Sometimes "Show Diagram" command displays a blank editor

  • vscode-813 Arrows from Compile Order / Design Hierarchy / Verification Hierarchy View are not rendered correctly in VS Code 1.66

  • vscode-818 Sometimes "'common.bat' is not recognized as an internal or external command, operable program or batch file" error is thrown on Windows

  • DVT-17452 Diagram generation fails when triggered on a component's name

  • DVT-17461 ConcurrentModificationException thrown sometimes at elaboration in a mixed design when a component binds to module with implicit signals

  • DVT-17471 Do not show BuildCancelException after canceling the elaboration

22.1.9 (30 March 2022)

Enhancements

  • DVT-17404 Ability to stop elaboration at a certain module or entity based on file path

Bugfixes

  • vscode-749 Some comments from build configuration files are not properly highlighted

  • vscode-755 Task tags are not highlighted in VHDL files

  • vscode-774 When disconnecting from an embedded Language Server, the server doesn't close immediately

  • vscode-777 Design Breadcrumb: "Select Other Design Breadcrumb Instance" doesn't work

  • vscode-778 NullPointerException thrown when invoking formatting on a build configuration file

  • vscode-779 "DVT: Change Languages..." command does not restart the Language Server with the new languages set

  • vscode-780 "DVT LS registry file could not be created!" warning is thrown in Log Console

  • vscode-783 Unable to start Language Server if the extensions-dir contains whitespaces

  • vscode-784 Sometimes "mkdir: can't create directory '"C:/': " error is thrown on Windows

  • vscode-786 Output of Custom Scripts run through dvt.custom.script command cannot be passed to other tasks

  • vscode-787 "DVT: Copy All Diagnostics" command is visible when the extension is not active

22.1.8 (15 March 2022)

Features

  • vscode-730 Ability to run DVT Custom Scripts as tasks, at startup and using dvt.custom.script command

  • vscode-744 Ability to push DVT environment variables to terminal and tasks

  • DVT-17389 License: Add support for inline string license sources

  • DVT-17390 License: Add support for platform independent license source separator &

  • DVT-17391 License: Add support for using a local license by multiple applications at the same time under the same user

Enhancements

  • vscode-706 Ability to trigger Override Methods command from Content Assist

  • vscode-715 Ability to configure the "name" and "local" arguments in the <build_name>.ls file

  • vscode-734 Ability to print the language server version using dvt_ls.sh version

  • vscode-772 Add extension scripts to integrated terminal's PATH

  • vscode-773 Point dvt_code.sh to running VS Code / VSCodium binary when running through integrated terminal

  • DVT-17345 Limit maximum number of problems reported in the build log

  • DVT-17373 Change dvt_elaboration_loop_block_cutoff directive to elaborate at most the number specified of loop instances

  • DVT-17392 License: Send to the license server the client PID instead of the unused and dummy display value

Bugfixes

  • vscode-752 Content Assist: Generate setters/getters proposals are not displayed if the prefix is preceded by tabs

  • vscode-760 Waive error results in VS Code reload when using Remote-SSH

  • vscode-762 Extension should not be activated if the workspace folder is not a valid DVT project

  • vscode-767 A Language Server is started for a project found in the workspace state even when opening an empty VS Code

  • DVT-17393 License: Fixed custom port support in local license sources

22.1.7 (2 March 2022)

Bugfixes

  • vscode-743 Update getting started predefined projects

  • vscode-750 Silently pass through the dvt_code.sh prerequisites checks when ldconfig is missing

  • vscode-751 Sometimes the Language Server doesn't start on Windows throwing a PowerShell error about the "buffersize"

  • DVT-17313 FSM Diagrams: Diagram is not generated in some cases when a next variable is used

22.1.6 (23 February 2022)

Performance

  • DVT-17284 Improve elaboration performance for instances with many port connections

Features

  • vscode-710 Add settings to set environment variables visible to extension and to the extension started Language Servers

  • DVT-17312 Ability to relocate $HOME/.dvt using DVT_USER_DIR environment variable

Enhancements

  • DVT-17298 Add option to speed up elaboration in some cases by allowing more working memory

Bugfixes

  • vscode-682 Verification Hierarchy View: Pressing Top/Bottom buttons after commenting instance results in an empty view

  • vscode-684 Verification Hierarchy View: Sometimes GUI freezes after clearing the search bar

  • vscode-689 Ability to generate Wavedrom diagrams on macOS Apple Silicon and Linux ARM64

  • vscode-711 Open a Predefined Project: Collect projects from locations defined using DVT_PREDEFINED_PROJECTS_EXT_* env vars

  • vscode-714 In some cases the wrong build name is saved in the registry leading to a "ResponseErrorException: InitializeParams.initializationOptions.buildConfiguration doesn't match the language server build configuration" when connecting to that Language Server

  • vscode-717 Move the registry lock file from temp folder to the registry folder to avoid conflicts

  • DVT-17266 Refactor Rename of function name does not affect end label

  • DVT-17277 Incorrect actual value for package constant after incrementally changing its value

  • DVT-17279 Package constant UNRESOLVED_PARAMETER_VALUE warning disappears after incremental elaboration

22.1.5 (16 February 2022)

Bugfixes

  • vscode-702 Sometimes submenus from context menu are not entirely visible

22.1.4 (8 February 2022)

Enhancements

  • DVT-17028 Improve elaboration tooltip for parameters with no actual value

  • DVT-17209 Show LM_PROJECT value in the license log

Bugfixes

  • vscode-678 Design Breadcrumb is not working on Windows

  • vscode-680 URISyntaxException thrown on Windows

  • vscode-703 Highlight does not work for any other syntax except SystemVerilog and VHDL when using DVT color themes

  • DVT-17181 No actual value displayed for changed parameter name after incremental adaptive elaboration

22.1.3 (31 January 2022)

Bugfixes

  • vscode-676 Quick Fix: Add Port/Parameter doesn't work across languages

  • vscode-677 NullPointerException thrown when triggering hyperlinks on predefined element

  • vscode-687 Design Breadcrumb is not working if a definition hyperlink is triggered on an invalid element

  • vscode-693 Sometimes language detection does not work and a NullPointerException is thrown when -lang is not specified

22.1.2 (26 January 2022)

Bugfixes

  • vscode-662 Diagrams: Depth preferences are sometimes wrongfully marked as disabled

  • vscode-663 Design Diagrams: Depth preference is wrongfully set in the interface

  • vscode-672 "Show Design Hierarchy" command triggers an error if the DVT activity wasn't focused before

  • vscode-674 Diagrams: Filters are not preserved when navigating through the diagram using the Design Breadcrumb

  • vscode-675 Wrong element indentation in view when using "Show Design Hierarchy" command on a non-top element

  • vscode-690 "Enable DVT" command throws exception when no workspace folder is opened

  • vscode-692 Some scripts are not working correctly when ANSI colors are always set for some system commands

22.1.1 (18 January 2022)

Features

  • DVT-2463 & DVT-8579 & DVT-13533 Show the actual value of a parameter in its tooltip

  • DVT-14593 Trigger warning for unelaborated module/entity

  • DVT-14628 Show number of bits for value parameters when elaborated

  • DVT-14653 Show the actual value for an elaborated package constant

  • DVT-16742 Trigger warning for unelaborated package

  • DVT-17078 Changed default to true for the +dvt_enable_elaboration directive

Enhancements

  • vscode-638 Code Actions: Prefill the direction and width in Add Port QuickPick

  • vscode-654 Split self contained extension into multiple platform specific extensions

  • vscode-660 Ability to customize the number of diagnostics shown in Problems View

  • DVT-2513 Show module parameters in Design Hierarchy Ports View

  • DVT-4773 Generate design diagram based on evaluated expressions in generate blocks

  • DVT-6020 The "Show Design Hierarchy" action should be aware of the current design breadcrumb

  • DVT-8936 & DVT-10066 Enhance multiple tops elaboration

  • DVT-11383 Trigger warning for generic that has no actual associated with it

  • DVT-12633 Trigger port errors between a component and its entity binding

  • DVT-12697 Design Breadcrumb should be cursor sensitive

  • DVT-13034 Trigger elaboration warning for component with no entity binding

  • DVT-13381 Trigger error when specifying an architecture with a different name than the block configuration

  • DVT-14704 Ability to control elaboration steps

  • DVT-14809 Incremental elaboration should be performed only on changed designs

  • DVT-14930 Hyperlinks: Ability to jump to the assignment of a parameter

  • DVT-15209 Elaborate newly added design one level on editor open

  • DVT-17079 Ability to stop the elaboration of a certain cell (i.e. module, entity) based on name

  • DVT-17082 Add option to configure the cut-off number for elaborated loop blocks

  • DVT-17083 Trigger elaboration warnings for defective loop blocks

  • DVT-17084 Trigger error for invalid liblist when elaborating an instance

  • DVT-17085 Trigger elaboration error for configuration top with invalid design

  • DVT-17087 Trigger elaboration error for duplicate tops

  • DVT-17092 Trigger elaboration warning for unresolved parameter expression

  • DVT-17093 Trigger elaboration warning for unresolved enum name expression

  • DVT-17095 Trigger error for open override of a parameter with no default value

  • DVT-17096 Trigger elaboration warning for unresolved constant expression

  • DVT-17097 Trigger error for incomplete array aggregate used as parameter value

  • DVT-17098 Trigger error for duplicate association in aggregate used as parameter value

  • DVT-17099 Trigger error for out of bounds value in aggregate passed as parameter value

Bugfixes

  • vscode-596 Design Hierarchy View: Populate automatically when elaboration is on

  • vscode-597 Design Hierarchy View: Only the first top is shown when elaboration is on

  • vscode-618 Design Hierarchy View: Toggling elaboration results in an empty view

  • vscode-629 Focusing Output Panel clears the Design Breadcrumb for the current editor

  • vscode-634 Unable to use some commands from Command Palette when the Output Panel is focused

  • vscode-651 Diagrams: Sometimes preferences are wrongly marked as enabled/disabled

  • vscode-652 Code Actions: Refactoring proposals should be displayed only when invoking "Refactor..." command

  • vscode-657 "Go to definition" should jump to the implementation of the function instead of prototype

  • vscode-659 TypeError thrown by when using the diagrams

  • vscode-661 Sometimes diagrams are not rendered

  • vscode-664 Missing permissions for remote extension files when using Remote SSH

  • vscode-667 Compiled Files View: Populate automatically when connecting to a Language Server

  • DVT-14810 Update Design Hierarchy view at incremental for generate condition change

  • DVT-14833 False UNDECLARED_TOP error for VHDL design (entity, configuration) in mixed project

  • DVT-15495 No MISSING_PORT_CONNECTION warning when instantiating Verilog module in VHDL

  • DVT-16329 Subtype constraints are not evaluated when determining the type of a generic

  • DVT-16903 No references reported in SystemVerilog when searching for VHDL generics

21.1.53 (22 December 2021)

Enhancements

  • vscode-626 Improve UI for Extract to module / Move selection to file

  • vscode-607 Show commands in Command Palette only when the context is valid

Bugfixes

  • vscode-621 Design Diagrams: "Show Connections" does not uncheck "Hide unconnected ports" in preferences dialog

  • vscode-630 Diagrams are not generated if the cursor is placed at the end of an element name

  • vscode-631 Language Servers don't start on Windows

  • vscode-632 dvt_code.sh does not support -lang argument

  • vscode-637 Sometimes Outline View becomes empty after undoing a Code Action

21.1.52 (14 December 2021)

Features

  • vscode-127 Add support for VHDL