23.1.22 (22 September 2023)

Features

  • DVT-19296 New Rule: R.1236 Add blank lines between class elements

  • DVT-19302 New Rule: R.1243 Use virtual sequences to coordinate the stimulus generation activities

  • DVT-19325 New Rule: R.1244 Do not use explicit delays outside of drivers and monitors

  • DVT-19331 New Rule: R.1248 In a sequence use the built-in transaction variables req and rsp

  • DVT-19333 New Rule: R.1239 Use the `uvm_declare_p_sequencer macro to declare the p_sequencer variable inside sequences

Enhancements

  • DVT-19287 Add parameter to SVTB.16.11 to allow zero values for coverpoint option.weight

  • DVT-19317 Add parameter to SVTB.5.2.7 to allow conditional ternary operators

  • DVT-19370 Add parameter to R.1192 to specify checked base classes

  • DVT-19388 Add parameter to R.1234 to allow numerical literals as method call arguments

Bugfixes

  • DVT-19384 Eclipse Problems View is not taking into account maxHitsPerFile parameters

  • DVT-19389 R.1234 False failures for float numerical literals

  • DVT-19418 Project full build is not performed after auto-correcting more than 50 files

  • DVT-19426 Inconsistent behavior when resolving relative paths with parent directory segments crossing a directory symlink during build config parsing and file parsing

23.1.20 (6 September 2023)

Features

  • DVT-19198 New Rule: R.1231 Do not set verbosity level in tests

  • DVT-19266 New Rule: R.1235 Do not use event controls on signals without a timeout

  • DVT-19276 New Rule: R.1234 Do not use big numerical literals

Enhancements

  • DVT-19273 Add parameter to SVTB.4.1.4.1.2 to allow variable usages

  • DVT-19297 Add parameter to SVTB.27.3.1 to skip specified element names

Bugfixes

  • DVT-18131 Do not print carriage return after reporting problems in the Console View on Linux distros

  • DVT-19206 Sometimes the HTML report failures table can’t be scrolled until the end, hiding the last few failures

  • DVT-19311 Wrong filtering of .html.report files in the file picker when importing an HTML report in VS Code + Remote SSH

  • DVT-19343 Verissimo waivers file included with paths containing “/../” are not included in their declaration order

23.1.19 (25 August 2023)

Features

  • DVT-19201 New Rule: R.1233 Do not use time literals as methods or properties arguments

  • DVT-19211 New Rule: R.1232 Do not assign time literals to variables

Enhancements

  • DVT-19173 Memory Monitor: “Display Memory Warning” preference should only affect the warning pop-up

  • DVT-19174 Memory Monitor: Close the warning pop-up when reaching an error state

  • DVT-19212 Defining a pre-waiver, saving and applying it should remove failures from the waived files

  • DVT-19234 Add parameter to R.1137 to skip checking variables in conditions of conditional expressions

Bugfixes

  • DVT-19202 R.1206 False failures for foreach and else statements

  • DVT-19203 Canceling auto-correct of failures prevents them from being added to the HTML report

  • DVT-19204 Disabling failures removes them from the Verissimo GUI report until reapply

  • DVT-19205 Specifying a module that is not instantiated under the -top design hierarchy as a waiver top element waives the -top module

  • DVT-19233 R.1137 Should fail for variables that cannot be randomized even if the expression contains other randomizable variables

  • DVT-19236 R.1226 False failures for passing a time or realtime variable to a property

  • DVT-19242 SVTB.5.2.7 False failures for string implicit variables

  • DVT-19248 SVTB.2.12 Auto-correct input is not taken into account in DVT when there’s a value specified in the ruleset file

  • DVT-19250 SVTB.15.4.1.1 Wrong error message when specifying input values for auto-correct from DVT

23.1.18 (2 August 2023)

Features

  • DVT-15360 New rule: R.1108 Do not use uvm_config_db::set/get outside build_phase/constructor for components/objects

  • DVT-18654 New Rule: R.1214 Multiline macro definition formatting

Enhancements

  • DVT-19166 Add parameter to R.1206 to skip associative array accesses from constraints

  • DVT-19167 Add parameter to R.1206 to skip checking accesses of specified literal values

  • DVT-19171 Fix duplicate error messages for Java custom API example project

  • DVT-19172 Add parameter to SVTB.1.1.9 to skip flagging whitespaces after escaped identifiers

Bugfixes

  • DVT-19161 SVTB.1.1.9 False failures for hierarchical access of escaped identifiers

  • DVT-19165 R.1206 should not fail for queues

  • DVT-19169 SVTB.5.2.7 False failures for implicit values used in expressions

  • DVT-19183 R.1230 False failures for extern methods and constraints

  • DVT-19186 Verissimo: Lint current file fails in VS Code when the lint configuration contains a pre-waiver for an element

23.1.16 (18 July 2023)

Features

  • DVT-18525 New Rule: R.1207 Case item formatting

  • DVT-18591 New Rule: R.1209 Do not use var for port declarations

  • DVT-19068 New Rule: R.1228 Do not declare method argument types as time or realtime

  • DVT-19070 New Rule: R.1227 Do not declare properties with arguments of type time and realtime

  • DVT-19129 New Rule: R.1229 Do not instantiate properties with variables of type time and realtime

  • DVT-19141 New Rule: R.1230 File must always take the name of the single top entity

Enhancements

  • DVT-19096 Memory Monitor: Extended memory starvation handling to include linting report generation

  • DVT-19109 Add parameter to SVTB.2.3 to skip classes declared inside packages

  • DVT-19127 Add parameter to XVM.2.1.15.1, XVM.2.1.4.2.7, XVM.3.1.9.1, XVM.3.3.11.1 and XVM.5.4.4 to specify array pattern

Bugfixes

  • DVT-15948 SVTB.5.2.7 Should fail when assignment right hand side is an expression

  • DVT-19102 SVTB.1.4.5 Auto-correct should not delete comments

  • DVT-19115 SVTB.31.4 False failures for array select assignments

  • DVT-19138 XVM.2.1.4.1, XVM.3.1.4.1, R.1036 & XVM64 False failures for classes extending their type parameter

  • DVT-19144 Verissimo: Blank page displayed when clicking the logo from the HTML report in VS Code

23.1.15 (7 July 2023)

Features

  • DVT-18830 Verissimo: Ability to Lint Current File in VS Code

  • DVT-19064 Add auto-correct for SVTB.1.5.3

  • DVT-19069 New Rule: R.1226 Do not pass variables of type time or realtime as method call arguments

Enhancements

  • DVT-18964 Verissimo: Add Verissimo status bar indicator in VS Code

  • DVT-19006 Add parameter to R.1160 to include XMR details

  • DVT-19066 Add ‘class’ to supported scopes for SVTB.14.11

  • DVT-19067 Add parameter to SVTB.14.11 to specify assertion kind

Bugfixes

  • DVT-19071 SVTB.1.1.26 False failures inside constraints

  • DVT-19074 R.1139 False failures for else if blocks

  • DVT-19104 NullPointerException in rule SVTB.7.14.0

  • DVT-19114 HTML report file filters don’t work for Windows paths

  • DVT-19119 SVTB.4.2 Should fail when comparing expressions to literal values

23.1.14 (22 June 2023)

Features

  • DVT-18148 New Rule: R.1225 Do not use multi-bit signals in a boolean context.

  • DVT-19095 Memory starvation handling mechanism in VS Code

Enhancements

  • DVT-19039 Add parameter to SVTB.8.4.10 and SVTB.8.4.11 to allow variable declarations at the beginning of the protective fork

  • DVT-19065 Add parameter to SVTB.27.1.0 to skip checking fields of specified types

Bugfixes

  • DVT-19024 SVTB.1.5 False failures for begin end blocks inside macros

23.1.13 (7 June 2023)

Features

  • DVT-18282 New Rule: R.1224 Do not use conditions that always yield ‘true’ or ‘false’

  • DVT-18804 Ability to import HTML reports in VS Code

  • DVT-19003 New Rule: R.1223 Super call of the parent method implementation should match the current method name

Enhancements

  • DVT-18903 Ability to generate documentation for predefined rulesets in VS Code without running a Verissimo lint session

  • DVT-18941 Ability to generate predefined ruleset files in VS Code without running a Verissimo lint session

  • DVT-18957 Add TLM ports, TLM exports and virtual interfaces to supported elementsDeclarationOrder of SVTB.7.1.1

  • DVT-19019 Add function, task to supported elementKind for SVTB.27.1.0

Bugfixes

  • DVT-18999 VS Code generated HTML report cannot be opened in Eclipse

  • DVT-19012 Windows file paths from waivers are not escaped correctly when using the ‘Waive Error’ VS Code quick fix

23.1.12 (23 May 2023)

CLEANUP

  • DVT-18947 Verissimo: Revised VS Code lint configuration syntax

Features

  • DVT-18893 New Rule: R.1220 Use 4-state types for synthesizable enum types

  • DVT-18899 New Rule: R.1221 Do not declare tasks

  • DVT-18930 New Rule: R.1222 Declare module port type as logic

  • DVT-18959 New Rule: R.1217 Do not directly call type or instance override methods from the uvm_factory class

  • DVT-18966 New Rule: R.1218 Use %0 in format specifiers whenever applicable

  • DVT-18972 New Rule: R.1219 Use the name m_config as the instance name of configuration object in the class it’s been instantiated in

Enhancements

  • DVT-18897 Add parameter to SVTB.12.1.2 to allow only automatic methods

  • DVT-18936 Verissimo: Ability to use relative paths inside a VS Code lint configuration

  • DVT-18940 Verissimo: Ability to use environment variables inside a VS Code lint configuration

  • DVT-18958 Add parameter to SVTB.7.14.0 to skip classes that inherit directly from base classes declared in specified packages

  • DVT-18975 ExportDesignHierarchy: Add parameter to print all paths to a module

Bugfixes

  • DVT-18967 SVTB.5.2.7 False failures for else statements

  • DVT-18968 IllegalArgumentException in R.1157

23.1.11 (9 May 2023)

Features

  • DVT-18793 New Rule: R.1211 Do not allow multiple non-blocking assignments to the same bit

  • DVT-18898 New Rule: R.1215 Do not use conditional compilation directives in string literals

  • DVT-18918 Add Editor Notification for out of sync markers in DVT Eclipse

  • DVT-18942 New Rule: R.1216 Use field macros on all fields from a class

Enhancements

  • DVT-18857 SVTB.7.14.0 Auto-correct should insert super.method_name() after inline function comment

  • DVT-18885 Toggled filter buttons in DVT Eclipse report are not visible on Eclipse >=4.22

  • DVT-18900 SVTB.1.0 should accept VS Code formatting preferences

  • DVT-18923 Add parameter to SVTB.27.9.3 to allow name exceptions only if there is a single virtual interface in the class/module

Bugfixes

  • DVT-18858 SVTB.10.20 should fail for formatting methods called as `uvm_info macro arguments

  • DVT-18886 Inline waivers are inserted after the macro definitions

  • DVT-18932 False METHOD_CALLS_ARGUMENTS error after incremental compilation

  • DVT-18939 SVTB.27.1.0 false failures for typedefs when elementKind is interface

23.1.10 (25 April 2023)

Enhancements

  • DVT-18769 Ability to see rule details in the DVT Eclipse Inspect View when selecting a linting failure

Bugfixes

  • DVT-18533 Waive quick fix in DVT Eclipse creates a compile waiver instead of a lint waiver

  • DVT-18839 DVT Eclipse lint report main tab buttons have the wrong height on MacOS

  • DVT-18842 Verissimo failures are not displayed in VS Code if there are no compilation problems

  • DVT-18871 XVM.2.1.17 False failures for multiple module accesses

  • DVT-18889 SVTB.19.5 should fail for XMRs with selects

  • DVT-18917 Auto-correct rerun is not performed after autocorrecting SVTB.1.4.2

23.1.9 (12 April 2023)

Features

  • DVT-18507 New Rule: R.1208 Else should be on the new line after end label

  • DVT-18652 New Rule: R.1212 Do not place space between method call and open parenthesis

  • DVT-18653 New Rule: R.1213 Do not place space between macro call and open parenthesis

  • DVT-18774 New Rule: R.1203 Check index value before access

  • DVT-18790 New Rule: R.1210 Duplicate import statements

Enhancements

  • DVT-18422 Ability to waive based on module, package, interface or design top

  • DVT-18767 Memory Monitor: Avoid false warnings in small projects

  • DVT-18864 Add parameter to SVTB.32.2.0 to skip XVM inherited method arguments

  • DVT-18879 SVTB.33.1.0, SVTB.33.2.0 and SVTB.33.3.0 should not take inactive code into account

Bugfixes

  • DVT-18835 R.1200 Should fail in inactive branches

  • DVT-18862 Fixed NullPointerException in SVTB.32.3

  • DVT-18882 Memory Monitor: Disable directive not working

23.1.8 (29 March 2023)

Features

  • DVT-18421 New Rule: R.1201 A sequence randomize call must be placed before the sequence start method

  • DVT-18434 New Rule: R.1202 Module declaration format

  • DVT-18792 New Rule: R.1204 Overridden component phases must call super

  • DVT-18794 New Rule: R.1205 Do not use literal X

  • DVT-18808 New Rule: R.1206 Check index value before access for associative arrays

Enhancements

  • DVT-18791 Add interface class to supported elementKind for SVTB.27.1.0

  • DVT-18811 Verissimo: Display error message when lint configurations are out of sync

Bugfixes

  • DVT-18752 XVM.2.1.1.6 No failures reported after reapply

  • DVT-18755 XVM64 No failures reported after reapply

  • DVT-18762 Verissimo: Running lint configuration with predefined ruleset and invalid ruleset file should not trigger an error

  • DVT-18798 XVM.7.2 Less failures reported when a reapply operation is preceded by a rebuild in VS Code

  • DVT-18805 Verissimo: Rerunning checks after changing the current build configuration file results in a lint hang in VS Code

23.1.7 (15 March 2023)

Features

  • DVT-18420 New Rule: R.1191 Do not use unsized literal expressions exceeding 32-bit integer range

  • DVT-18655 New Rule: R.1199 Ternary expressions nested in other ternary conditions should be enclosed by parentheses

  • DVT-18656 New Rule: R.1200 Conditional compilation compiler directives alignment

Enhancements

  • DVT-18486 Add parameter to R.1170 to allow comments on empty lines

  • DVT-18597 Report error when trying to autocorrect failures of checks that don’t support autocorrect

  • DVT-18623 Improved VS Code Command Palette menu

  • DVT-18624 Ability to generate rulepool documentation in VS Code

  • DVT-18625 Improve UX when working with saved lint configurations in VS Code

  • DVT-18628 Ability to specify the location of HTML report in VS Code

  • DVT-18629 Ability to choose a baseline report when starting a new Verissimo session in VS Code

  • DVT-18630 Ability to auto-export the HTML report after linting in VS Code

  • DVT-18631 Ability to include the source code in the generated HTML report in VS Code

  • DVT-18746 Ability to see unfixable hits when autocorrecting in batch mode

Bugfixes

  • DVT-18523 SVTB.7.20 should fail for static arrays

  • DVT-18524 SVTB.6.10.1 False failures for arrays used as input method arguments

  • DVT-18598 XVM.2.1.8 False hits for predefined list methods

  • DVT-18615 Rule configuration errors caused by invalid parameter values are reported as Internal Error in VS Code

  • DVT-18626 Existing waivers file are not suggested when starting a new Verissimo session in VS Code

  • DVT-18680 Exception thrown when selecting a failure without path from the DVT Eclipse Problems View

  • DVT-18704 Wrong number of checks displayed inside Verissimo Rule pool and Ruleset HTML documentation

  • DVT-18725 Verissimo: Linting from menu shortcut may silently fail when changing workspace

23.1.6 (1 March 2023)

Features

  • DVT-18619 New Rule: R.1198 Out of bounds range of index variable in array select

Enhancements

  • DVT-18508 Add parameter to SVTB.1.4.4.1 to skip checking blocks with end label

  • DVT-18663 Ability to lint either the entire project or just the current file based on selection

  • DVT-18712 Do not generate Verissimo GUI report when linting just a file

Bugfixes

  • DVT-18676 SVTB.5.11.2.3 False failures for multiple $cast calls in if condition when allowOnlyIfChecking is set to true

23.1.5 (21 February 2023)

Enhancements

  • DVT-18090 & DVT-18182 Ability to set a timeout when running Verissimo in batch or UI

  • DVT-18515 Add parameter to SVTB.1.1.26 and R.1159 to skip preprocessor directives

  • DVT-18564 Add auto-correct input to SVTB.15.4.1.1 to specify id and message of inserted `uvm_error macro

  • DVT-18612 Ability to see the Verissimo auto-correct parameters in the rulepool and ruleset documentation

  • DVT-18614 SVTB.31.3.3 Auto-correct should be performed when for loop has iterator declaration assignment

Bugfixes

  • DVT-18584 XVM.7.7 Wrong messages for using undocumented types or inheriting from undocumented classes

  • DVT-18590 XVM.7.7 False failures for uvm_resource_types, UVM_FILE, uvm_apprepend

  • DVT-18633 SVTB.27.7.1 False failures for `ifndef / `ifdef compiler directives

23.1.4 (8 February 2023)

DEPRECATED - DVT-18604 License: Support for FlexLM tools and dvtlmd daemon <11.19 is deprecated and will be removed in future versions

Features

  • DVT-18539 New Rule: R.1196 Element description must be in element comment or in file header comment

  • DVT-18540 New Rule: R.1197 Method argument indentation

  • DVT-18605 License: New client implementation based on FlexLM 11.19 (disabled by default)

Enhancements

  • DVT-18500 Add parameter to XVM.4.28 to check only calls in loops

  • DVT-18534 Add argument to verissimo.sh to specify rules for which to perform auto-correct

Bugfixes

  • DVT-18240 License: In some cases the license client leaks a large number of CLOSE_WAIT sockets due to a FlexLM bug

  • DVT-18586 SVTB.1.5 False failure for empty wait statements inside macros

  • DVT-18603 License: In some cases when multiple license sources are set and no license is available, the license client is repeatedly queuing and dequeuing for a license

23.1.3 (31 January 2023)

Features

  • DVT-18541 New Rule: R.1195 Declare package for specified children of base classes

Bugfixes

  • DVT-18583 False LINT FAILED message after auto-correcting all failures in batch mode

23.1.2 (25 January 2023)

Features

  • DVT-18536 New Rule: R.1193 Do not have include statements guarded by `ifdef/`ifndef

  • DVT-18537 New Rule: R.1194 Do not use $test$plusargs and $value$plusargs with strings containing uvm

Enhancements

  • DVT-18447 Add parameter to SVTB.27.5.6 to skip typedefs over enum/struct/union

Bugfixes

  • DVT-18551 CHSC False failures after performing auto-correct in batch mode

23.1.1 (19 January 2023)

HIGHLIGHTS

Note: Some of the highlights below were rolled-out in 22.1.# hotfix releases for early adopters.

  • Improved performance for several rules

  • 61 new rules

  • Added auto-correct for 4 rules

  • Ability to lint only changed files based on baseline HTML report

  • Ability to lint only the selected file

  • Ability to define pre-waivers based on the design top

  • Multiple UI enhancements

Features

  • DVT-18400 New Rule: R.1192 Do not override reset_phase, configure_phase, main_phase, shutdown_phase in drivers, monitors, subscribers, or scoreboards

  • DVT-18402 New Rule: R.1189 An agent should check that its virtual interface has been set

  • DVT-18448 New Rule: R.1190 Signal naming pattern

Enhancements

  • DVT-18419 Add parameter to XVM.4.22 to check multiple UVM register layer API calls from if/else or case blocks

  • DVT-18455 Add parameter to SVTB.2.1, SVTB.2.3 and SVTB.2.6 to allow children classes

  • DVT-18456 Add parameter to SVTB.1.1.16 and R.1170 to enforce a space before and after the instance name

  • DVT-18550 Choosing “Browse File System” when selecting the ruleset or waivers file should open the .dvt directory by default in VS Code

Bugfixes

  • DVT-18512 IndexOutOfBounds exception when comparing HTML report with pre-waived files