24.2.28 (11 December 2024)

Features

  • DVT-17857 New Quick Assist: Split / join constraint declaration and out of body implementation

  • DVT-21482 Parser: Support for IEEE 1800-2023 predefined weak_reference class

  • DVT-21526 Parser: Support for IEEE 1800-2023 default keyword in constructor declaration

Enhancements

  • DVT-11648 Extract to Method: Ability to extract an expression

  • DVT-19781 Semantic checks: Trigger error for assignment expression in constraint

  • DVT-21448 Assignment pattern is not evaluated for unpacked structs for type assignment

  • DVT-21713 AI Assistant: Format code sections returned by snippets and symbols

  • DVT-21730 AI Assistant: Add support for query_key:search_pattern symbol queries

  • DVT-21740 UVM Runtime Elaboration: Add support for 32bit DPI-C compilation

  • DVT-21775 Quick Query View: Semantic search should return all results matching the query_type when no name pattern is provided

  • DVT-21823 AI Assistant: Split logging into debug log and model communication

  • DVT-21934 PVerilog: Errors triggered in a generated code section should be reported on the first line of the associated preprocessed region

Bugfixes

  • DVT-12957 Extract Variable / to Method: Should not be available for incomplete expressions

  • DVT-14311 Extract to Method: Extracting from an extern implementation misplaces the extracted code when the prototype is written on multiple lines

  • DVT-17007 Extract to Variable: Wrong variable type inferred in specific scenarios

  • DVT-19605 PVerilog: Problem markers are missing for a preprocessing region which contains only comments

  • DVT-20150 & DVT-19225 PVerilog: Improper parsing when part of a macro definition resides in a generated code section

  • DVT-20415 PVerilog: Nested `ifdef blocks with a preprocessed body may cause improper parsing

  • DVT-21573 Parser: False syntax error for sequence expression not followed by semicolon in sequence declaration

  • DVT-21602 “Expand .* Port Connections” refactoring operation is unavailable for bound module instances

  • DVT-21668 Semantic check: False ILLEGAL_ASSIGNMENT reported on parameters with packed data type

  • DVT-21709 Restrict lazy bring-up of resurces actions to Project Explorer context menu

  • DVT-21718 UVM Runtime Elaboration: Fail to evaluate non-static member in scope of function

  • DVT-21769 UVM Field Editor fails to remove ‘`uvm_object_utils_end’ when unregistering fields

  • DVT-21795 Removed parent directory check from DesignSync Revision Control Integration script

  • DVT-21812 AI Assistant: Fixed “Unexpected params [null]” warning printed on stderr

  • DVT-21814 PVerilog: Improper parsing when part of a multiline comment resides in a generated code section

  • DVT-21815 PVerilog: Improper parsing when part of an `include statement resides in a generated code section

  • DVT-21816 AI Assistant: Do not allow chat sessions with empty names

  • DVT-21819 UVM Runtime Elaboration: $fscanf does not correctly handle multi-line input

  • DVT-21820 UVM Runtime Elaboration: Fail to evaluate type alias to specialized class when using class static access

  • DVT-21821 Declare Field/Variable Quick Fix: Wrong type inferred in plain Verilog files

  • DVT-21838 Build config: Files specified after +dvt_uvmhome_override directive are not compiled if no compatibility mode is specified

  • DVT-21846 AI Assistant: Sometimes, the chat autocomplete freezes while writing a symbol

  • DVT-21864 DVT CLI: When a threshold is specified for include auto the resources are not correctly filtered

  • DVT-21877 DVT CLI: Reintroduced the default threshold for -include auto

  • DVT-21884 & DVT-21943 UVM Runtime Elaboration: Wrong execution order of repeat statements within macro call

  • DVT-21886 AI Assistant: Chat view links are opened inside the chat instead of the external browser

  • DVT-21890 AI Assistant: Remove autocomplete proposals when the proposal matches the text

  • DVT-21896 AI Assistant: Sometimes, an error is thrown when resending a request

  • DVT-21900 Semantic checks: Do not trigger ILLEGAL_ASSIGNMENT error for classes with an undefined ancestor

  • DVT-21908 UVM Runtime Elaboration: ‘Watch’ action on a hierarchical variable doesn’t add the full variable scope in the Expressions View

  • DVT-21919 Missing UNELABORATED_ENTITY warning after project restore

  • DVT-21923 Add Parameter/Generic Quick Fix is not shown after restore

  • DVT-21937 AI Assistant: Sometimes, Markdown code blocks are not highlighted properly in the chat

  • DVT-21939 Semantic checks: False UNDECLARED_IDENTIFIER error for argument of function in randomize constraint block

  • DVT-21956 PVerilog: Improper parsing when part of an `ifdef block resides in a generated code section

  • DVT-21965 PVerilog: Problem markers are missing for a single word preprocessing region on the last line of the file

24.2.27 (26 November 2024)

Features

  • DVT-21455 UVM Runtime Elaboration: Ability to add watchpoints

  • DVT-21688 AI Assistant: Add support for Azure OpenAI provider

  • DVT-21772 AI Assistant: Add support for Anthropic provider

Enhancements

  • DVT-19902 Ability to use paths relative to current file in compile waivers <include/> tags

  • DVT-21288 Semantic checks: Trigger NON_STANDARD_ENUM_ASSIGNMENT warning in assignment pattern

  • DVT-21693 When no project is selected in a multiple projects workspace consider the first one as active

  • DVT-21697 AI Assistant: Console should not be focused every time a message is sent or received

  • DVT-21773 AI Assistant: Hide sensitive language model configuration when it’s presented in the UI

Bugfixes

  • DVT-17791 Incorrect parameter value when defparam assignment references enclosing scope parameter

  • DVT-19520 UVM Runtime Elaboration: ‘Show Associated Getters in Config DB View’ is not working in some cases

  • DVT-21468 UVM Runtime Elaboration: ‘Show associated Setter in Config DB View’ doesn’t take into account the editor breadcrumb path

  • DVT-21471 UVM Runtime Elaboration: Go to element declaration doesn’t update the breadcrumb to the right context

  • DVT-21720 UVM Runtime Elaboration: Execution stops multiple times in breakpoint on a macro that has a loop as first statement

  • DVT-21726 Compile Waivers: Waivers specified through +dvt_compile_waivers_file are not restored

  • DVT-21758 AI Assistant: The cursor is sometimes placed in the wrong position after using auto-complete in prompt editor

  • DVT-21759 AI Assistant: Sometimes Undo / Redo operations do not work in prompt editor

  • DVT-21760 AI Assistant: Markdown code blocks missing the language specifier are not rendered properly in the chat

  • DVT-21763 UVM Runtime Elaboration: In specific scenarios, conversion of the result to different bases is not shown in Expressions View

  • DVT-21765 Semantic checks: UNDECLARED_IDENTIFIER error not triggered in some cases in which the same module is elaborated multiple times

  • DVT-21768 UVM Runtime Elaboration: ‘Show in Config DB View’ doesn’t take into account the editor breadcrumb path

  • DVT-21781 AI Assistant: In certain scenarios, assistant messages fail to appear in the chat

  • DVT-21789 Quick Views: Sometimes focus is lost when opening a quick view

24.2.26 (14 November 2024)

Features

  • DVT-18717 UVM Runtime Elaboration: Log UVM Runtime Elaboration output to a dedicated file

  • DVT-21556 AI Assistant: Add shortcut to open a dialog with all commands

Enhancements

  • DVT-21453 UVM Runtime Elaboration: Inhibit toggle breakpoints in invalid contexts

  • DVT-21478 Console View: Searching for next / prev problem for consoles with very large contents does not work in specific scenarios

  • DVT-21564 UVM Runtime Elaboration: Show evaluation error stack trace in Expressions View details panel

  • DVT-21575 AI Assistant: Trim leading whitespace for code sections returned by snippets

  • DVT-21662 UVM Runtime Elaboration: System task $bits does not work on predefined types

  • DVT-21663 UVM Runtime Elaboration: System task $typename does not work on predefined types

  • DVT-21664 UVM Runtime Elaboration: Add support for interface::self()

  • DVT-21665 UVM Runtime Elaboration: Unsupported string predefined function putc()

  • DVT-21666 UVM Runtime Elaboration: Sampled value functions $past, $sampled, $rose, etc. are not implemented

  • DVT-21681 Parser: +dvt_file_compile_timeout not working when expanding macro in string

Bugfixes

  • DVT-17506 Quick Fix: Declare Function is not proposed inside modules

  • DVT-17745 & DVT-20018 Changing project database location does not work across tool restarts

  • DVT-21111 UVM Runtime Elaboration Debugger: Breakpoints and tracepoints message is not updated if editor marker line is modified

  • DVT-21143 Precompilation support: Build configuration errors are wrongfully cleared if load fails

  • DVT-21396 Elaboration: Wrong elaboration of sub-instance in some cases of multiple modules with the same name in different libraries

  • DVT-21417 UVM Runtime Elaboration: Assignment pattern evaluation fails in specific scenarios

  • DVT-21570 AI Assistant: Limit the length of session names generated by LLMs

  • DVT-21576 AI Assistant: Sometimes @selected snippet does not expand properly for single line declarations

  • DVT-21581 AI Assistant: Cloned sessions are not saved

  • DVT-21594 AI Assistant: “Stop Generating” command does not work inside compare view

  • DVT-21598 AI Assistant: Improve undo operation after inserting LLM generated code in the editor

  • DVT-21605 Performance: Speed-up elaboration when resolving many layers of same scope imbricated function calls

  • DVT-21640 AI Assistant: Pressing Escape when editing a session’s title after multiple renames wrongfully restores the original name

  • DVT-21667 UVM Runtime Elaboration: Constraint contradiction when using predefined array sum() function

  • DVT-21669 AI Assistant: When saving a blueprint, the name of the session is used as file name instead of the name of the blueprint

  • DVT-21676 Build config: +define definitions from env var expansions are ignored

  • DVT-21696 Increased JVM watchdog timeout to 60 seconds

24.2.25 (31 October 2024)

Features

  • DVT-11930 Quick Fix: Declare extern constraint prototype based on implementation

  • DVT-12196 Quick Fix: Implement extern constraint

  • DVT-21445 AI Assistant: Expand @usages of #file to the entire files that include the given file

Enhancements

  • DVT-17324 Ability to expand all macros in file

  • DVT-17920 Add non-standard warning for concatenation used instead of assignment pattern in parameter lists

  • DVT-18334 UVM Runtime Elaboration: Ability to add conditional breakpoints

  • DVT-18376 UVM Runtime Elaboration: Ability to watch expression in Expressions View

  • DVT-18378 DVT Resource Filters: Changing the active build configuration should recreate the compilation related filters

  • DVT-19063 DVT Resource Filters: Full build should recreate the compilation related filters

  • DVT-19778 & DVT-21138 DVT Resource Filters: Ability to bring-up resources on demand independent of how the project was created

  • DVT-20363 Precompilation Support: Ability to apply content filters for precompiled code

  • DVT-20422 Enhance ILLEGAL_CAST_EXCEPTION message error with reason of failure

  • DVT-20739 PVerilog: New +dvt_pverilog_mode+ directive to choose between compiling preprocessed or generated files

  • DVT-21105 UVM Runtime Elaboration: Enhance hot-swap algorithm

  • DVT-21362 DVT Debugger: Ability to add trigger points

  • DVT-21443 Report an Issue: Thread dump file names should be timestamped

  • DVT-21446 AI Assistant: Don’t include modifiers in method signatures when expanding @outline snippets

  • DVT-21451 UVM Runtime Elaboration: Ability to define a hit count for breakpoints

  • DVT-21465 AI Assistant: New snippet for outline of selected element or container

  • DVT-21479 AI Assistant: Trigger warning when saving a snippet with conflicting signature

  • DVT-21532 DVT Resource Filters: Ability to bring-up only compilation related resources independent of how the project was created

  • DVT-21541 AI Assistant: Ignore changes to session name when Escape is pressed

  • DVT-21543 AI Assistant: Improve AI Console theming

  • DVT-21545 Status Bar Notification: Improved look in dark themes

  • DVT-21546 Status Bar Notification: Do not display multiple notifications with the same information

  • DVT-21547 AI Assistant: Improve dark theme for code blocks generated in AI Assistant View

Bugfixes

  • DVT-13506 Trigger IMPORT_TYPE_WITHOUT_EXPORT warning when a field declaration references a not exported package type

  • DVT-20605 UVM Runtime Elaboration: Collapse multiple threads of the same kind into a single thread

  • DVT-20688 Semantic checks: Implicit signal not declared in `included module fragment even when a default nettype is defined

  • DVT-20727 Elaboration: Global scope constant elaborated in wrong library in a multiple libraries design

  • DVT-20794 False syntax error for local keyword in Verilog 2005

  • DVT-21005 Compile Order View: Missing ‘shallow’ label decoration for files included in shallow compiled modules

  • DVT-21059 Types View: Wrong number of types in specific scenarios after full build when content filters is active

  • DVT-21230 False SIGNAL_NEVER_USED warning for variable used in randomize with constraint block

  • DVT-21391 UVM Runtime Elaboration: Do not allow multiple runtime elaborations to run simultaneously

  • DVT-21403 Predefined Projects: Broken run configurations in “Revision Control Integration” predefined project caused by an incorrect relative path

  • DVT-21416 UVM Runtime Elaboration: UVM test name is missing in Config DB View label when stopped in breakpoint

  • DVT-21425 Report an Issue: Thread dump files having the same name and located in different projects are discarded when sending an Issue Report

  • DVT-21439 UVM Runtime Elaboration: UVM test name is missing in Factory Overrides View label when stopped in breakpoint

  • DVT-21440 UVM Runtime Elaboration: UVM test name is missing in Registers View label when stopped in breakpoint

  • DVT-21441 UVM Runtime Elaboration: Incorrect UVM test name in Verification Hierarchy View label when stopped in breakpoint

  • DVT-21442 Report an Issue: Collecting thread dumps for full build, elaboration or linting overwrites previously generated files

  • DVT-21447 AI Assistant: Remove duplicate autocomplete proposals for files compiled multiple times

  • DVT-21463 AI Assistant: Sessions with unavailable models are not restored

  • DVT-21464 AI Assistant: Wait for model initialization to complete

  • DVT-21513 Quick Fix: Applying “Implement Extern Method” results in wrong insertion location when the class and extern prototype are in different files

  • DVT-21525 AI Assistant: Snippets are not properly expanded if they are directly followed by a dot

  • DVT-21539 Project restore hangs at startup in specific scenarios

  • DVT-21540 AI Assistant: Sometimes the session name cannot be changed

  • DVT-21542 AI Assistant: Newly created snippets and blueprints files not visible in project explorer until refresh

  • DVT-21544 Status Bar Notification: Show Notification button should be disabled when there are no notifications to display

  • DVT-21569 UVM Runtime Elaboration: False error when $fopen file path contains environment variables

24.2.24 (14 October 2024)

Bugfixes

  • DVT-21428 AI Assistant: Fixed missing blueprint ‘Add comments for the selected code’

24.2.23 (11 October 2024)

HIGHLIGHTS

Features

Enhancements

  • DVT-20887 Trigger non-standard warning for loop statement initialization without initial assignment

  • DVT-21381 Trigger error when assigning an expression to ref method argument of class type

  • DVT-21395 New elaboration check: Trigger error for class constructor calls in constant functions

Bugfixes

  • DVT-10862 Flag illegal ‘automatic’ variable declaration lifetime in non-procedural contexts

  • DVT-21371 UVM Runtime Elaboration: Clear currently executed line highlight after resuming execution in a debug session

  • DVT-21393 Console View: Fixed accumulating memory usage observable after a very large number of successive builds

  • DVT-21413 UVM Runtime Elaboration: Ternary operand evaluation fails in specific scenarios