24.1.22 (1 October 2024)
------------------------


**Performance**

-  DVT-20660 Speed-up report generation in DVT IDE for Eclipse
-  DVT-20997 Speed-up report filters in DVT IDE for Eclipse

**Features**

-  DVT-13857 New Rule: R.1346 Method declaration formatting
-  DVT-21253 New Rule: R.1349 Do not declare variables with the same name as virtual methods from parent classes
-  DVT-21254 New Rule: R.1350 Do not call tasks from always blocks
-  DVT-21261 New Rule: R.1351 Do not cross real coverpoints
-  DVT-21270 Memory Monitor: New "proactive" memory handling strategy with lower memory thresholds to ensure optimal performance
-  DVT-21271 New Rule: R.1348 Do not use %v format specifier with multi-bit variable

**Enhancements**

-  DVT-21216 R.1318 should fail for function calls in comparisons
-  DVT-21245 Ability to specify path pattern for uvmf_generated_code waiver tag
-  DVT-21284 Add parameter to XVM.2.1.1.4 to skip checking classes in specified packages
-  DVT-21329 Report ruleset and waivers XML errors when Incremental Linting

**Bugfixes**

-  DVT-21198 R.1337 should not fail when register is reassigned inside the loop 
-  DVT-21218 XVM.2.1.1.3 False failures for fields whose data type is a type alias
-  DVT-21247 SVTB.9.12 should fail for array assignments
-  DVT-21268 Memory Monitor: +dvt_set_memory_starvation_handling_parameters taken into account only for the build operation
-  DVT-21319 Invalid compare report generated when specifying a baseline report and running rules with maxHitsPerFile parameter

24.1.21 (18 September 2024)
---------------------------


**Features**

-  DVT-20451 New Rule: R.1341 Duplicate assignments
-  DVT-21144 New Rule: R.1344 Do not call functions in wait or event control statements
-  DVT-21193 New Rule: R.1347 Set the per_instance option of each covergroup

**Enhancements**

-  DVT-20403 Add parameter to SVTB.10.13.1 and SVTB.10.13.2 to except full method names

**Bugfixes**

-  DVT-21227 License: Disable checkout optimizations to avoid FlexLM server bugs causing 'Failed to get licenses from trusted storage (-220,..)' errors

24.1.20 (4 September 2024)
--------------------------


**Features**

-  DVT-21045 New Rule: R.1343 Do not use case equality with real operands
-  DVT-21154 New Rule: R.1345 Do not use more digits than the specified size in based numbers

**Enhancements**

-  DVT-20862 Ability to waive lint failures from Problems View
-  DVT-21103 Ability to jump to the current lint configuration file in DVT IDE for VS Code
-  DVT-21181 Add parameter to R.1327 to skip unary operators

**Bugfixes**

-  DVT-20138 Generating a ruleset XML from DVT IDE for Eclipse does not open it as a project resource
-  DVT-20860 Dark theme is not applied properly on ruleset documentation when opened in the DVT IDE for Eclipse
-  DVT-21131 R.1004 should fail for unelaborated bound instances
-  DVT-21171 Summary and description should be read-only in the DVT IDE for Eclipse report
-  DVT-21173 SVTB.27.13 Auto-correct should replace the end label when using a custom pattern

24.1.19 (22 August 2024)
------------------------


**Features**

-  DVT-19483 New Rule: R.1336 Print the topology at the end of elaboration phase in tests
-  DVT-20461 New Rule: R.1342 Do not use parameters or ports of types that are not SV-VHDL compatible
-  DVT-21025 New Rule: R.1334 Ranges used with 'inside' operators must be [low:high]
-  DVT-21047 New Rule: R.1338 Do not declare rand real variables
-  DVT-21048 New Rule: R.1339 Do not use negative delay
-  DVT-21049 New Rule: R.1337 Do not use backdoor register access repeatedly to read configuration information
-  DVT-21050 New Rule: R.1335 Do not call a method unconditionally then check within the method whether to do anything

**Enhancements**

-  DVT-20278 Add parameter to SVTB.32.3 to allow infinite loops in fork join_any/none blocks
-  DVT-20878 Add parameter to SVTB.9.10 to skip assignments in mutually exclusive generate blocks
-  DVT-21022 Ability to include source code in the HTML report generated from Eclipse
-  DVT-21107 Add parameter to SVTB.7.14.0 to not flag missing base class

**Bugfixes**

-  DVT-19518 Ruleset pre-waivers should not remove rule configuration failures
-  DVT-21060 NullPointerException in SVTB.27.13
-  DVT-21072 SVTB.27.13 Autofix should fix mismatching block and label name
-  DVT-21096 XVM23a False failures for classes inherited from pre-waived base classes
-  DVT-21129 Wrong parse time reported for projects with multiple invocations

24.1.18 (7 August 2024)
-----------------------


**Features**

-  DVT-20400 New Rule: R.1332 Signal driving should only be done in drivers
-  DVT-20526 New Rule: R.1327 Do not use operators as conditions of ternary operators in constraints
-  DVT-21007 New Rule: R.1333 Do not define bins out of the possible range of the covered variable

**Enhancements**

-  DVT-20471 Add parameter to SVTB.10.15 to allow multiple operation expressions separated by parenthesis
-  DVT-20590 Add support for -baseline report and -prewaive_unchanged to verissimo.sh -gui
-  DVT-20881 Add parameter to SVTB.1.1.12 to allow no space between packed dimension and type

**Bugfixes**

-  DVT-20880 SVTB.31.1.0 False failures for struct member used in assignment pattern
-  DVT-20914 Memory Monitor: The error dialog should use an error icon

24.1.16 (25 July 2024)
----------------------


**Features**

-  DVT-19300 New Rule R.1331: Use one agent per interface
-  DVT-19465 New Rule: R.1330 Every Bus UVC should provide translators between GP and specific bus function
-  DVT-19531 New Rule R.1329: All registers and memories that are accessed using the backdoor must provide a HDL path
-  DVT-19539 New Rule: R.1328 Do not set register sequencer for the default register map of a non-top register block regmodel

**Enhancements**

-  DVT-20552 Add parameter to SVTB.12.2.7 to ignore all system functions 
-  DVT-20555 Add parameter to SVTB.12.2.7 to ignore specific functions by name
-  DVT-20722 Add parameter to ARSAa, XVM.2.5.2, XVM11 and SQSD checks to allow virtual sequencers as sequencers with default parameters
-  DVT-20877 R.1164 & R.1198 should also take generate block into account
-  DVT-20879 Add parameter to SVTB.19.1 to allow implicit named port connections
-  DVT-20913 Add parameter to SVTB.27.16 to specify name pattern
-  DVT-21000 SVTB.1.1.25 Auto-correct should fix generate for loops

**Bugfixes**

-  DVT-20435 R.1164 & R.1198 should evaluate expressions as selects
-  DVT-20753 Parameter values missing from ruleset XML file generated with -rulepool_xml_include complete_rule_info/parameters_info
-  DVT-20987 SVTB.4.1.4.1.1 False failures inside inactive code with macro calls

24.1.14 (9 July 2024)
---------------------


**Enhancements**

-  DVT-20465 Ability to filter linting failures based on UVMF custom pragmas

**Bugfixes**

-  DVT-20655 The HTML report generated after waiving a failure still contains waived failures
-  DVT-20884 IllegalStateException in SVTB.5.1.1 when signal is used for a multiple port connections
-  DVT-20885 ArithmeticException in R.1191 caused by mishandling of division operation

24.1.13 (26 June 2024)
----------------------


**Features**

-  DVT-20617 Ability to generate Compare and Changes report in VS Code

**Enhancements**

-  DVT-20398 Ability to generate histogram dumps when running Verissimo rules
-  DVT-20668 Add parameter to SVTB.27.13 to check inactive code

**Bugfixes**

-  DVT-20716 R.1318 False failures for int parameters when ignoreIntTypeVariables  is true

24.1.12 (11 June 2024)
----------------------


**Performance**

-  DVT-20468 Improve performance of rule SVTB.5.1.1 when allowModuleWireConnections is true
-  DVT-20715 Speed-up linting startup sequence

**Features**

-  DVT-19327 New Rule: R.1262 Assertions and coverage collection must be done in interfaces
-  DVT-19464 New Rule: R.1326 Extend the generic payload to create variant of GP sequencer item

**Enhancements**

-  DVT-20527 SVTB.12.2.8 Add parameter to skip virtual methods
-  DVT-20637 Ability to see check description when running Verissimo incrementally in DVT IDE for Eclipse

**Bugfixes**

-  DVT-20077 Scripts should validate all of the supported license variables, not only the DVT_LICENSE_FILE
-  DVT-20535 R.1211 false failures on nested generate blocks
-  DVT-20636 SVTB.1.4.1 should fail for event control statements on the same line with other statements
-  DVT-20653 Radio buttons used in the linting report are not rendered correctly in the DVT IDE with Eclipse >= 4.22
-  DVT-20654 Compare reports don't have the 'New Failures' filter selected by default when opened in DVT Eclipse 
-  DVT-20669 Auto-correct for SVTB.31.3.0 should not remove if branch for imbricated if blocks
-  DVT-20673 Incremental linting should not run custom rules after an incremental build
-  DVT-20681 ExportDesignHierarchy rule prints a 'null' path when dumping relative design paths
-  DVT-20714 Linting cannot be canceled during the startup sequnce while running in the DVT IDE

24.1.11 (29 May 2024)
---------------------


**CLEANUP**

-  DVT-20624 Change site URL from dvteclipse.com to eda.amiq.com

**Features**

-  DVT-19330 New Rule: R.1323 Sequences must not have any phase statements in them
-  DVT-19528 New Rule: R.1324 Register sequences should only access initialized regmodels
-  DVT-19532 New Rule: R.1320 Do not perform backdoor access right after register access via front door
-  DVT-19979 New Rule: R.1318 Do not compare different width elements
-  DVT-20566 New Rule: R.1325 Do not use NOT operators with enum

**Enhancements**

-  DVT-20221 Ability to clear problems generated by incremental linting
-  DVT-20487 Add parameter to SVTB.1.4.1 to flag macros on the same line
-  DVT-20490 Escape ampersand characters in HTML report failure messages 

**Bugfixes**

-  DVT-19245 Disable Memory Monitor when using custom settings affecting the JVM garbage collection
-  DVT-20306 SVTB.1.1.25 should fail when the keyword is part of a token but not a prefix
-  DVT-20511 SVTB.10.6.1 false failures for single bit packed arrays
-  DVT-20544 Fixed NullPointerException in SVTB.12.2.8 when function has no implementation
-  DVT-20620 Fixed NullPointerException in SVTB.31.3.0 auto-correct for empty statements in global scope
-  DVT-20621 Fixed NullPointerException in code styling rules

24.1.10 (14 May 2024)
---------------------


**Features**

-  DVT-19350 New Rule: R.1322 Event tracking mechanism should be implemented in the sequence item and triggered by the driver
-  DVT-19534 New Rule: R.1319 Coverage collector classes should be instantiated in conditional blocks
-  DVT-20409 New Rule: R.1321 Do not use comparison operators with enum elements

**Enhancements**

-  DVT-19610 Applying auto-correct after importing an HTML report in VS Code should ask to automatically reapply check before performing the operation
-  DVT-20003 When importing an HTML report, compile the project lazily at the first Reapply action
-  DVT-20118 Ability to generate modified files instead of altering the compiled source code when running auto-correct in batch mode
-  DVT-20469 Add parameter to SVTB.1.1.11 to allow comma without spaces as first character on line

**Bugfixes**

-  DVT-20355 Memory Monitor: Problems wrongly reported in specific scenarios when the JVM -Xmx and -Xms argument values are different
-  DVT-20437 SVTB.1.1.25 should not fail for inactive macros when checkInactiveCode parameter is true
-  DVT-20448 R.1069 False failures for index of typedef int
-  DVT-20452 Fixed NullPointerException in XVM.9.2.9
-  DVT-20491 Do not log OperationCanceledExceptions when running SVTB.5.1.1
-  DVT-20512 Wrong exit code for build configuration errors reported after the build is done
-  DVT-20513 Incremental linting does not work after canceling a full project linting
-  DVT-20517 Pre-waivers should not filter failures from children classes outside pre-waived range

24.1.8 (24 April 2024)
----------------------


**Features**

-  DVT-18375 Add auto-correct for SVTB.7.1.4.4
-  DVT-20324 Add auto-correct for SVTB.31.3.0

**Enhancements**

-  DVT-19978 R.1164 & R.1198 should fail for accesses of parameterized size dimensions
-  DVT-20164 Add parameter to SVTB.10.7.2 to check only specified types
-  DVT-20399 Add parameter to SVTB.31.3.0 to analyze inactive code
-  DVT-20424 Add pre-waiver support to XVM.4.28

**Bugfixes**

-  DVT-20277 SVTB.32.3 False failures for loops with return statements or predefined methods that terminate simulation
-  DVT-20339 XVM.2.3.8.1 False failures for interface method calls
-  DVT-20364 Verissimo: "Reapply Failed" incorrectly updates the report after manually adding a waiver
-  DVT-20365 Add missing UVM Compliance rules to Verissimo rulepool and predefined All Rules ruleset
-  DVT-20436 SVTB.1.1.11 False failures for macros in inactive code starting from the beginning of the file

24.1.7 (9 April 2024)
---------------------


**Features**

-  DVT-15385 & DVT-1411 & DVT-3233 Incremental Verissimo linting in DVT
-  DVT-19461 New Rule: R.1301 Connect the analysis port of the agent to a subscriber or scoreboard
-  DVT-19493 New Rule: R.1295 A UVM environment that uses a register model and instantiates an agent should instantiate and connect a register adapter and a register predictor

**Enhancements**

-  DVT-19870 Add parameter to R.1189 to allow setting the virtual interface in any method of the agent
-  DVT-20165 Add parameter to XVM.4.28 to only flag root cause failures
-  DVT-20192 Ability to see formatting preferences values when running SVTB.1.0
-  DVT-20217 SVTB.1.4.1 Add support for wait as allowedKeyword to be on the same line with the corresponding statement
-  DVT-20254 Add parameter to SVTB.1.1.11 to skip checking inactive macros

**Bugfixes**

-  DVT-19523 SVTB.1.1.26 False failure for multiline literal string
-  DVT-19524 SVTB.1.1.26 Wrong auto-correct for begin-end block of multiline if condition
-  DVT-19705 SVTB.1.1.26 False failures for code inside conditional compiler directives outside action blocks
-  DVT-20190 SVTB.1.4.1 should fail for delay statements on the same line with other statements
-  DVT-20193 SVTB.1.0 should give configuration error for invalid formatting script parameters
-  DVT-20235 SVTB.2.12.1 False failures for guard name starting with "_"
-  DVT-20236 SVTB.2.12.1 False failures for literal string containing regex
-  DVT-20302 Print parsing time in the build log/console
-  DVT-20304 Print information related to the skipped -y / -v libraries in the build log/console
-  DVT-20323 NullPointerException is thrown when using +dvt_db_location directive in batch mode
-  DVT-20325 SVTB.1.0 OVM library files should not be formatted
-  DVT-20345 SVTB.2.12 should fail for multiple \`ifndef guards in the same file
-  DVT-20346 SVTB.2.12.1 should fail for code outside \`ifndef guards
-  DVT-20356 SVTB.33.4.0 may report inconsistent number of errors between GUI and batch

24.1.6 (27 March 2024)
----------------------


**Features**

-  DVT-20181 Add auto-correct for SVTB.27.13

**Enhancements**

-  DVT-20179 Add parameter to SVTB.1.1.25 to analyze inside inactive code
-  DVT-20180 Add parameter to SVTB.4.1.4.1.1 to analyze inactive code
-  DVT-20256 License: Improved license management when encountering connectivity issues

**Bugfixes**

-  DVT-20187 SVTB.1.1.25 should fail for generate block conditions
-  DVT-20232 SVTB.12.2.8 False failures when assigning to the function result implicit variable inside predefined methods

24.1.5 (13 March 2024)
----------------------


**Enhancements**

-  DVT-20075 Verissimo GUI report score should depend on the selected checks filters
-  DVT-20110 Add parameter to SVTB.1.1.11 to skip checking commas in macro definitions

**Bugfixes**

-  DVT-20166 verissimo.sh does not flag invalid arguments

24.1.4 (28 February 2024)
-------------------------


**CLEANUP**

-  DVT-20073 License: Replaced the license events database with a capped human readable log

**Features**

-  DVT-19839 New Rule: R.1316 Virtual sequencer base class
-  DVT-20065 New Rule: R.1317 Use maximum one relational operation in a conditional expression
-  DVT-18648 Ability to lint project and use a baseline report to generate a compare report and changes report

**Enhancements**

-  DVT-18949 Add ruleset and waivers information in build console when running Verissimo in VS Code
-  DVT-19971 R.1273 should also check the variable name and the UVM instance name of the sub register block in the top register block
-  DVT-20122 Add parameter to R.1309 to specify which variables types should be checked

**Bugfixes**

-  DVT-19286 Wrong auto-correct for SVTB.31.2.0
-  DVT-20085 SVTB.14.10.18 False failures for loop index used in disable condition

24.1.3 (13 February 2024)
-------------------------


**Features**

-  DVT-19377 New Rule: R.1299 Analysis ports of subscribers must be connected and must have the corresponding write method implemented
-  DVT-19842 New Rule: R.1314 Connect agents to checkers, scoreboards and coverage collectors using analysis ports and exports
-  DVT-19869 New Rule: R.1310 Virtual sequencers must set subsequencers in the connect_phase method of the environment
-  DVT-20048 New Rule: R.1315 Do not call super.new with fields initialized upon declaration

**Enhancements**

-  DVT-19841 Add parameter to XVM7 to skip sequences based on class name pattern
-  DVT-19938 R.1265 should fail for UVM_DEFAULT_PATH enum item
-  DVT-19964 Add parameter to XVM.2.1.4.1 and XVM64 to allow coverage instantiations
-  DVT-19965 R.1309 should only fail for variables declared directly in modules or interfaces
-  DVT-19970 R.1263 should also check that the virtual sequence is started
-  DVT-20029 Add parameters to styling rules to skip checking code enclosed by //@formatter:off/on pragmas

**Bugfixes**

-  DVT-19872 XVM.2.8.3 Should fail when multiple classes extend from xvm_test
-  DVT-19969 R.1251 Should not fail if parent test classes set the configuration object
-  DVT-19972 R.1247 should not fail when cloning the sequence item by assigning it
-  DVT-20004 Importing HTML reports does not take into account user defined rule titles
-  DVT-20010 R.1137 Should fail for randomize with calls from XVM macros
-  DVT-20014 Compile waivers: When located directly under the compilation root, waivers are not applied in batch mode
-  DVT-20044 R.1096 should fail for width mismatch of implicit signals
-  DVT-20054 License: In specific scenarios, connectivity issues are not detected immediatly
-  DVT-20071 NullPointerException when importing reports with configuration failures

24.1.2 (1 February 2024)
------------------------


**Features**

-  DVT-19328 New Rule: R.1254 Declare one sequence item for each agent
-  DVT-19338 New Rule: R.1296 Use sequences imported in the sequence package
-  DVT-19374 New Rule: R.1289 When multiple analysis implementations are needed in a scoreboard, use \`xvm_analysis_imp_decl(_SFX) to declare them
-  DVT-19376 New Rule: R.1292 Define the write method to receive the transaction through an analysis port
-  DVT-19459 New Rule: R.1298 Use analysis ports and exports when making one-to-many connections
-  DVT-19660 New Rule: R.1312 Do not use hierarchical identifiers in net alias statements

**Enhancements**

-  DVT-19843 Add parameter to XVM.2.6.3 to allow fields of specified type
-  DVT-19861 Add indication for Verissimo imported HTML report when it's out of sync with the compiled files
-  DVT-19874 Add parameter to R.1244 to skip checking virtual sequences
-  DVT-19875 Add parameter to R.1244 to skip checking covergroups
-  DVT-19877 Add parameter to SVTB.2.2 to check only files included in specified scopes
-  DVT-19920 Changed default filters to show only failures when opening the reports
-  DVT-19928 Add parameter to SVTB.1.1.24 to skip class parameters
-  DVT-19932 Remap failures to source code when importing a Verissimo HTML report

**Bugfixes**

-  DVT-19962 SVTB.14.10.18 False failures for assertions in a loop preceded by another loop
-  DVT-19983 R.1173 False failures when using forever statements

24.1.1 (18 January 2024)
------------------------


Starting with the 24.1.1 major release our products are no longer compatible with old FlexLM license servers (<11.19).

**HIGHLIGHTS**


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

-  Speed-up several rules
-  Speed-up comparison report computation
-  120 new rules
-  Added auto-correct for 3 rules
-  Ability to waive failures based on module, package, interface or design top
-  Ability to :ref:`Open HTML report` in the DVT IDE for Eclipse and DVT IDE for VS Code
-  Improved integration with DVT IDE for VSCode:

    -  Added support for :ref:`auto-correct<In DVT IDE for VS Code>`
    -  Ability to :ref:`lint current file<VSCode Lint Current File>`
    -  Ability to :ref:`Import a Linting Session`

**REMOVED**

-  DVT-19867 License: Removed support for FlexLM tools and dvtlmd daemon versions <11.19

**Features**

-  DVT-19213 Ability to clear problem markers / diagnostics generated when linting a single file in the IDE
-  DVT-19484 New Rule: R.1300 Do not use factory overrides outside of tests
-  DVT-19491 New Rule: R.1303 Any UVM environment that has a register model should set the register model variable of any child component
-  DVT-19529 New Rule: R.1302 Before starting a sequence that reads or writes registers set the regmodel variable of the sequence
-  DVT-19648 New Rule: R.1306 Do not use edge event control
-  DVT-19650 New Rule R.1308 : $assertcontrol method should not be called with more than two arguments
-  DVT-19657 New Rule: R.1307 Do not use assignments in conditional expressions
-  DVT-19788 New Rule: R.1309 Do not initialize module and interface variables upon declaration
-  DVT-19871 New Rule: R.1311 Banned typedefs

**Enhancements**

-  DVT-18908 ExportDesignHierarchy: Ability to export VHDL instances
-  DVT-19812 SVTB.1.4.1 auto-correct should move statements inside macros to the next line
-  DVT-19813 SVTB.27.3.1, SVTB.27.5.1, SVTB.27.6.1, SVTB.27.8.1, SVTB.27.9.1 & XVM.2.2.1 should not perform refactoring in potential matches
-  DVT-19815 Print reports generation time to verissimo.sh and dvt_build.sh output
-  DVT-19823 Add parameters to SVTB.7.1.4 and SVTB.15.3.1 to skip counting empty lines and lines with comments
-  DVT-19824 Add parameter to SVTB.7.1.4 and SVTB.15.3.1 to skip specified base classes
-  DVT-19834 Add parameter to XVM.3.9 to allow do_kill implementation in parent classes
-  DVT-19844 SVTB.27.3.1 parameter skipElementNames should accept name patterns
-  DVT-19878 Add parameter to R.1253 to check literal delays

**Bugfixes**

-  DVT-19360 Preserve order of existing waivers when adding a new waiver to an imported Verissimo GUI report
-  DVT-19522 SVTB.1.1.24 autocorrect shouldn't align blocks of variables indented with tabs
-  DVT-19750 R.1198 should fail for accesses of fixed size dimensions
-  DVT-19805 SVTB.1.1.24 should fail for multiple variables on the same line separated by comma
-  DVT-19837 XVM.3.9 manually fixed failures do not dissapear after re-applying
-  DVT-19840 R.1138 should fail when setting the default_sequence using the uvm_config_db::set method
-  DVT-19868 R.1255 should fail for xvm_analysis_exports and xvm_analysis_imp
-  DVT-19873 R.1243 should not fail for missing virtual sequence start in base test class
-  DVT-19876 R.1250, R.1252, R.1258 should consider the module that calls run_test() as top
-  DVT-19879 R.1238 should fail if there are multiple agent instances of the same type in an environment
-  DVT-19893 R.1173 False failures for assertions without spaces

