We are excited to announce the release of SQL Enlight version

What’s new in this update:

  • Adds 17 new analysis rules rules
    • EX0019 : Find references to non-existing objects and columns
    • EX0020 : Specified text found in comments
    • EX0021 : Check DROP TABLE statements in order to avoid unintentional data loss
    • SA0137 : BEGIN TRANSACTION statement is missing a following COMMIT statement
    • SA0138 : BEGIN TRANSACTION statement without ROLLBACK statement
    • SA0139 : The procedure argument type is not compatible with the procedure parameter type
    • SA0161 : Current database uses old SQL Server collation. To take full advantage of SQL Server features, for new development change the default installation settings to use Windows collations
    • SA0259 : The created object already exists
    • SA0260 : Parameter defined as nullable, but no default value provided
    • SA0261 : The number of characters per line should not exceed the configured value
    • SA0262 : Column is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause
    • SA0263 : Temporary table is used before it has any data inserted
    • SA0264 : Temporary table created but not used as a table source
    • SA0265 : COMMIT statement without corresponding BEGIN TRANSACTION statement
    • SA0266 : ROLLBACK statement without corresponding BEGIN TRANSACTION statement
    • SA0267 : Table variable is used before it has any data inserted
    • SA0268 : Table variable is not used as a table source
  • Adds 6 metric rules
    • SEM001 : Comment lines count
    • SEM002 : Code lines count
    • SEM003 : Statements count
    • SEM004 : Cyclomatic complexity
    • SEM005 : DML statement complexity
    • SEM006 : Count of SQL modules
  • Fixes and enhancements in the standard analysis rules
    • SA0192 – The rule now ignores global variable assignments
    • SA0168 – Other types of zero literals are now supported.
    • SA0172 – The rule now considers exit paths, which fixes some false positives.
    • SA0174 – Fix target statement scope and exclude not applicable statements from the rule checks.
    • SA0254 – The rule now considers exit paths, which fixes some false positives. Also, consider cursor declarations made inside dynamically executed SQL string.
    • SA0258 – The rule now considers union clauses inside fetch statement when counting the number of select columns.
  • Other fixes and enhancements:
    • Command Line Tool – Added support for a new custom property `IncludeTragetsWithoutIssues`,  which to control whether to report all targets or only ones having issues.
    • Team settings – Fixed behavior when updating SQL Enlight to a new version that adds new analysis rules. The previous behavior was merging the new rules with the rules in the configured team settings template. This way the new rules were included in the analysis, which is not usually intended. The current behavior only updates the existing standard analysis rules when a Team Settings are enabled, without adding the new ones.
    • Fixes of some other minor issues.
0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *