25.1.12 (30 June 2025)

Bugfixes

  • DVT-23240 Fixed StackOverflowError in XVM51

25.1.11 (18 June 2025)

Performance

  • DVT-23116 Speed-up rule XVM.4.28

CLEANUP

  • DVT-22376 Move the location of rule generated heap histograms to .dvt/.profiling/verissimo

Features

  • DVT-22737 New rule: R.1397 Do not assign a variable multiple times in design elements

  • DVT-22883 New Rule: R.1399 Functions should have a single return statement

Enhancements

  • DVT-21341 Memory Monitor: Change heap histograms and logs location to .dvt/.profiling/memory_monitor/

  • DVT-22297 Verissimo API: Add support for SystemVerilog parameters

  • DVT-23061 Add parameter to R.1369 to skip specified variables

  • DVT-23063 Add parameter to R.1381 to skip specified types

  • DVT-23095 Add parameter to R.1164 and R.1198 to skip failures in inactive generate blocks

  • DVT-23096 Add parameter to R.1164 and R.1198 to not flag selects done with other variables

Bugfixes

  • DVT-23050 R.1387 should fail for sized and unsized literals

  • DVT-23062 R.1381 should fail for sized and unsized literals

  • DVT-23073 Fixed NullPointerException thrown when launching Verissimo in DVT IDE for Eclipse and the active editor file is an HTML report

  • DVT-23090 XVM51 False failures for multiple method calls with ref arguments

  • DVT-23091 R.1164 & R.1198 False failures for guarded select with literal values

  • DVT-23117 Fixed IndexOutOfBoundsException thrown when opening a Verissimo HTML Report with links to build config files

  • DVT-23149 Fixed NullPointerException in R.1224 for certain dynamic arrays, queues and associative arrays

25.1.10 (28 May 2025)

REMOVED

  • DVT-23023 Remove -disable_print_not_applied and -ignore_lint_not_applied verissimo.sh arguments

Features

  • DVT-22642 New Rule: R.1392 Do not use unnecessarily package qualified names

  • DVT-22817 New Rule: R.1034 Do not wait for variable that is assigned in parallel thread

  • DVT-22829 New Rule: R.1398 Do not assign X or Z literal values

  • DVT-22851 New Rule: R.1068 Do not use ‘.’ and ‘..’ in include statements

Enhancements

  • DVT-17015 Ability to specify ‘apply-on’ attribute for <paths> tag in Verissimo waivers XML file

  • DVT-22956 “Failure Message” text box from DVT IDE for Eclipse waivers editor should be resizable

Bugfixes

  • DVT-22442 R.1080-R.1107 Failures disappear after incremental build and reapply

  • DVT-22916 R.1381 should fail when left hand side variable has smaller width

  • DVT-22917 R.1378 should fail for literal without any width specified

  • DVT-22952 SVTB.7.12.3.1 Auto-correct is not correctly performed when there is a space between the module name and #

  • DVT-22975 R.1381 should fail for return statements

  • DVT-22981 BadLocationException is thrown after build

25.1.9 (13 May 2025)

Features

  • DVT-22641 New Rule: R.1386 Specify type and direction for all module and interface ports

  • DVT-22648 New Rule: R.1396 Do not leave DUT input ports unconnected

  • DVT-22780 New Rule: R.1395 Macro arguments in arithmetical expression should be enclosed in parentheses

Enhancements

  • DVT-22055 Linting markers are not updated correctly when an entire line is deleted in DVT IDE for Eclipse

  • DVT-22789 Disable the Add Code Waiver option for hits on line 0

  • DVT-22790 Automatically save the modified file after adding an inline lint waiver

Bugfixes

  • DVT-22673 XVM.2.1.1.1 False failures for virtual classes

  • DVT-22853 SVTB.7.14.0 Auto-correct should fix external implementations located in different files than declarations

  • DVT-22912 Fixed BadLocationException in SVTB.7.1.4.4 auto-correct

25.1.8 (2 May 2025)

Performance

  • DVT-22738 Speed-up exclude-path pre-waivers

Features

  • DVT-11038 & DVT-13383 New Rule: R.1394 Do not use files irrelevant for design elaboration

  • DVT-22218 Add auto-correct for R.1197

  • DVT-22248 Add auto-correct for SVTB.12.11

  • DVT-22287 New Rule: R.1388 Do not use non-integer variables as loop indices

  • DVT-22288 New Rule: R.1389 Use the same variable for initialization, step and condition

  • DVT-22289 New Rule: R.1387 Do not use case item expressions of different width than the case condition

  • DVT-22668 New Rule: R.1391 Do not call functions inside loop statements

  • DVT-22746 New Rule: R.1393 Do not use type imports

Enhancements

  • DVT-22541 Add original message and match indication in the waivers editor

  • DVT-22622 Add predefined custom template for rule performance statistics

  • DVT-22636 License: Log idle wakeup triggers

  • DVT-22739 Add support for environment variables in exclude-path pre-waivers

  • DVT-22784 Add parameter to R.1375 to specify checked operators

Bugfixes

  • DVT-20432 SVTB.31.3.0 should fail for empty ‘always’ and ‘begin ... end’ blocks in generate blocks

  • DVT-22691 R.1318 False failures for range selects on method calls

  • DVT-22776 Improve description of R.1378

  • DVT-22815 Fixed NullPointerException in SVTB.1.1.10

25.1.7 (9 April 2025)

Performance

  • DVT-22728 Improve performance of rule SVTB.27.10.1

Features

  • DVT-22251 New Rule: R.1379 Do not assign negative values to unsigned variables

  • DVT-22252 New Rule: R.1377 Do not make multi-bit connections to primitive gates

  • DVT-22260 New Rule: R.1385 Do not assign an integer to an element of different width

  • DVT-22274 New Rule: R.1380 Do not use selects on time or integer variables

  • DVT-22275 New Rule: R.1383 Do not use ‘|’ or ‘||’ instead of ‘or’ in sensitivity list

  • DVT-22285 New Rule: R.1381 Do not assign to a variable of the same width as the operands of an addition or subtraction

  • DVT-22543 Ability to import existing ruleset in the ruleset editor

  • DVT-22599 New Rule: R.1382 Object printing should be guarded with a verbosity check

  • DVT-22655 New Rule: R.1384 Signal has multiple drivers for custom nettypes

Enhancements

  • DVT-22417 Add parameter to R.1067 to skip checking specified methods

  • DVT-22565 Size of tag annotations in DVT Eclipse report should be adjusted dynamically

  • DVT-22621 Add parameter to SVTB.10.24 to skip comparisons to bit selections over enum

  • DVT-22663 Improve auto-correct sanity checks error handling in batch mode

  • DVT-22687 Add parameter to SVTB.2.14 to allow using relative paths

Bugfixes

  • DVT-22514 Do not print the compilation output after auto-correcting in batch mode when using the -log argument

  • DVT-22556 SVTB.5.13 False failures for enum.name() used as function arguments

  • DVT-22615 R.1318 False failures caused by packed types used as value for type parameters

  • DVT-22633 Wrong severity reported for compilation rules when generating ruleset documentation

  • DVT-22658 R.1353 False failures when the coverpoint covers a function call

  • DVT-22660 R.1355 False failures for wildcard bins

  • DVT-22710 R.1067 should fail for plusargs calls outside expressions

  • DVT-22720 R.1358 & R.1373 False failures for always_ff blocks

25.1.6 (26 March 2025)

Performance

  • DVT-22558 Improve performance of XVM.4.21 and SVTB.5.11.2.1

Features

  • DVT-22253 New Rule: R.1375 Do not use bit-wise logical operators with different widths operands

  • DVT-22261 New Rule: R.1376 Default case item must be the last case item

  • DVT-22283 New Rule: R.1374 Inout ports should always be connected

  • DVT-22286 New Rule: R.1378 Do not use zero width based literal numbers

  • DVT-22434 New Rule: R.1373 Do not use event controls in always_comb/always @(-) blocks

Enhancements

  • DVT-22217 Add parameter to SVTB.2.1 and SVTB.2.6 to allow module declarations in the same file with the design hierarchy parent module

  • DVT-22373 Verissimo API: Add support for method call arguments

25.1.4 (12 March 2025)

Performance

  • DVT-20279 Speed-up incremental compilation triggered after auto-correcting multiple files in batch mode

Features

  • DVT-22247 New Rule: R.1369 Do not use comparison operators with real operands

  • DVT-22271 New Rule: R.1370 All ports should be connected when instantiating a module

  • DVT-22284 New Rule: R.1371 Do not assign to a supply net

  • DVT-22478 New Rule: R.1372 Do not use equality when comparing variables to `wrealXState and `wrealZState

Enhancements

  • DVT-22259 Add parameter to SVTB.27.10.1 to flag action blocks with the same label

  • DVT-22416 Add support for rule tag annotations to custom report API

  • DVT-22438 Add parameter to R.1176 to specify additional banned methods

  • DVT-22484 SVTB.31.2.0 autocorrect should remove newline after macro definition

  • DVT-22493 Add verissimo.sh flag to perform auto-correct for all the rules that support it in a ruleset

  • DVT-22509 Add parameter to SVTB.27.10.1 to flag elements with the same name as a macro

  • DVT-22544 Tag annotation field is too large in DVT IDE for Eclipse report

Bugfixes

  • DVT-21780 R.1318 False failures for parameterized fields

  • DVT-22317 SVTB.1.1.26 False failures for multiline if blocks

  • DVT-22318 SVTB.1.1.26 False failures for multiline macro calls

  • DVT-22528 Fixed NullPointerException in R.1164

  • DVT-22540 Verissimo waivers include order is changed after adding new waiver in DVT

  • DVT-22555 Fixed NullPointerException in SVTB.32.1.0

  • DVT-22568 R.1318 False failures for genvar variables

25.1.3 (26 February 2025)

Performance

  • DVT-22324 Improve performance of rule XVM.5.2.1.2

Features

  • DVT-22249 New Rule R.1368 Module file must include a timescale or a timeunit and timeprecision

Enhancements

  • DVT-21785 Add parameter to SVTB.31.2.0 to skip nested macro definitions whose name is a macro argument

  • DVT-22147 Add parameter to R.1356 to skip checking for types with a width greater than specified value

  • DVT-22216 R.1168 namePattern parameter should support module name placeholder

  • DVT-22230 Show tag annotation value in the rule description in DVT IDE

  • DVT-22250 Add parameter to R.1159 to skip comments

  • DVT-22345 Add parameter to XVM51 to allow instantiation through a variable

  • DVT-22351 Add parameter to XVM51 to allow instantiation through reference argument

  • DVT-22366 Add parameter to SVTB.7.33 to skip the overrides of empty constraints

Bugfixes

  • DVT-21933 SVTB.19.5 False failures for XMR used as macro call arguments

  • DVT-22079 SVTB.31.3.0 False failures on action blocks containing include statements after changing file content and reapply

  • DVT-22090 R.1139 False failures on statements not ending with semicolon

  • DVT-22135 R.1344 False failures for predefined methods

  • DVT-22231 Rule tags are not displayed in HTML report when the configuration tag is in an included ruleset

  • DVT-22348 R.1066 False failures for $value$plusargs with format specified

  • DVT-22350 R.1345 False failures for unsized literals

  • DVT-22386 R.1365 should fail for non-unique IDs in the same class

  • DVT-22454 Incremental Linting should run the Basic ruleset if no ruleset file is specified

  • DVT-22475 R.1066 should fail for plusargs calls outside expressions

25.1.2 (13 February 2025)

Features

  • DVT-22098 New Rule: R.1366 uvm_reg.update() must be called after uvm_reg_field.set()

  • DVT-22099 New Rule: R.1367 Do not call uvm_reg_field.write/poke after uvm_reg_field.set() without an update call in between

Enhancements

  • DVT-22134 Add parameter to R.1340 to specify allowed operators

  • DVT-22136 Add parameter to SVTB.5.13 to skip failures inside specified macros

  • DVT-22148 Add parameter to R.1235 to flag event controls used in sequences not wrapped with fork-join_none.

  • DVT-22181 Add parameter to SVTB.10.24 to check enum items used in concatenation operators

Bugfixes

  • DVT-21902 SVTB.7.38, XVM.2.8.5 should check method implementations of child classes

  • DVT-21924 Baseline report failures have a wrong source code path in compare reports

  • DVT-21950 Incremental linting is not applying all the rules after the project is built in VS Code

  • DVT-22077 Factory instantiation checks: False failures because create call is not recognized as valid instantiation when passed as argument of push method

  • DVT-22080 Factory instantiation checks: False failures when push_back method is called indirectly from the build phase

  • DVT-22178 Fixing a linting failure after opening an HTML report will attempt to fix all failures of the check

  • DVT-22223 SVTB.1.0 Tab width from preferences file parameter is ignored when running from DVT IDE for Eclipse

  • DVT-22232 Wrong exit code for verissimo.sh when there are custom report related errors

  • DVT-22360 SVTB.5.2.1.1 & SVTB.5.2.9 False failures for genvars

  • DVT-22375 Filtering rules from the ruleset XML generation UI should not clear parameter values

25.1.1 (21 January 2025)

HIGHLIGHTS

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

  • Speed-up report generation and filtering in DVT IDE for Eclipse

  • Speed-up linting startup sequence

  • 62 new rules

  • Added auto-correct for 3 rules

  • Incremental Verissimo linting

  • New UI for ruleset XML generation

  • Ability to generate modified files instead of altering the compiled source code when running auto-correct in batch mode

  • Ability to generate Compare and Changes report in DVT IDE for Eclipse and DVT IDE for VS Code

  • Ability to filter linting failures based on UVMF custom pragmas

  • Improved auto-correct sanity checks

  • Improved importing an HTML report in the DVT IDE for Eclipse and DVT IDE for VS Code:

    • Remap failures to source code

    • Compile the project lazily at the first Reapply action

CLEANUP

  • DVT-13621 Deprecated dvt_sv_lint_gui.sh script

  • DVT-16006 Deprecated the XVM component suffix ruleset configuration

Features

  • DVT-7597 New UI for ruleset XML generation

  • DVT-18831 & DVT-19051 Ability to use verissimo.sh to start Verissimo in VS Code

  • DVT-21996 License: Add app info inside display field sent to the license server

Enhancements

  • DVT-21601 Change the default implementation of XVM51b to top-down

  • DVT-21982 SVTB.1.0 should accept VSCode formatting settings

  • DVT-22059 Custom rules API: Ability to get predefined methods

  • DVT-22115 Add parameter to R.1012 to skip checking coverpoints

  • DVT-22116 Add parameter to R.1012 to allow at_least option explicitly set with a value of 1

Bugfixes

  • DVT-21962 Linting waivers editor doesn’t properly populate the paths regex type

  • DVT-21984 SVTB.10.20 False failures for calls as macro parameters inside a macro when skipMacroPatterns is set