We are happy to announce the release of SQL Enlight with version 1.9.9.968.

Improvements in this update:

  • Added parser support to ALTER DATABASE SCOPED CONFIGURATION statement for the new options introduced in SQL Server 2019.
  • Added parser support for new in SQL Server 2019 option – OPTIMIZE_FOR_SEQUENTIAL_KEY
  • Added parser support TOP clause with floating-point number expression such as TOP 99.99

We are happy to announce the release of SQL Enlight with version 1.9.9.967.

Fixes and improvements in this update:

  • Fix issues with analyzing case-sensitive SQL Server instances and databases.
  • Fix syntax error when parsing IF/ELSE statements followed by a THROW statement or a WITH CTE clause.
  • Fix analysis rule SA0184 false positive related with TOP clause.
  • Enhanced analysis rule SA0020 with a rule parameter for ignoring temporary tables and table variables.
  • Fix some other minor issues.

We are excited to announce the release of SQL Enlight with version 1.9.9.964.

What’s new in this update:

  • New analysis rule SA0271. The rule checks T-SQL statements and reports usages of any of the configured as not recommended syntax for column aliases.
  • New analysis rule  SA0272. The rule checks for SELECT statements not having neither WHERE nor JOIN clauses.

Fixes and improvements in the standard analysis rules

  • Fixed a common analysis rule problem related to CROSS/OUTER APPLY operators not taken into consideration when selecting table sources
  • Fixed false positives in analysis rules SA0124, SA0126, SA0132 related to incorrect resolution of MIN/MAX aggregate functions return type
  • Fixed SA0060 – named parameters are not considered
  • Addressed overlapping problem with analysis rules – SA0150 and SA0166
  • Fixed analysis rule SA0266 false positive related to not considering the @@trancount check

Other fixes and improvements:

  • Fixed unhandled exception while analyzing document in Visual Studio
  • Fixed parser support for named unique index set in column definition using INDEX keyword syntax
  • Fixed problem with the command-line tool, where a comma is not accepted as a list separator when passing multiple file paths
  • Fixed parsing error related to OVERRIDE token not accepted by the parser as an identifier
  • Improved performance of the filtering of active or selected analysis rules

Today we released a hotfix update of SQL Enlight with version 1.9.9.960.

Issues fixed in this update:

  • Fixed a database metadata caching issue, which caused database changes not to be loaded until a restart of SSMS or Visual Studio.

We are delighted to announce the latest release of SQL Enlight with version 1.9.9.960.

What’s new in this update:

Issues fixed in this update:

  • Unhandled exception in SQL Enlight ErrorList on scroll
  • Team Settings UI setting to display validation errors on Team Settings enabled or disabled.
  • Issues in EX0018 and SA0131 related with sometimes pointing to wrong line and column
  • False positives in SA0145, SEM008, SA0172, SA0121 analysis rules
  • Formatting of multipart identifier data type in a variable declaration
  • Error when parsing a query that combines a large number of union-ed statements
  • Formatting of TOP clause
  • Other minor issues found in the previous version

We are pleased to present the latest release of SQL Enlight with version 1.9.9.953.

What’s new in this update:

  • Enhancement of rule SA0147. The rule now computes cognitive complexity.
  • Added a new metric rule SEM005 to compute cognitive complexity.
  • Enhancement of rule EX0025. The rule now does not require analysis context or connection and supports 1 and 2 part target column names.
  • Fix for the installer to set InstallLocation.
  • Fix for an issue in the upgrade of the analysis template.
  • Performance improvements of the TFS check-in policy.

The current update addresses some issues that were fixed in the previous release or were reported later.

What’s new in this update:

  • Addressed an issue related to the loading metadata of databases that have many SQL modules
  • Addressed an issue related to failing to extend the evaluation period
  • Addressed some other minor issues

After the previous release, we found some issues that could break in some cases the of SQL Enlight extension in VS and SSMS and we now release an update with a hotfix, which also includes some other issues that we fixed.

What’s new in this update:

  • Fixes and enhancements in the standard analysis rules
    • SA0266 – fixed false positives
  • Other fixes and enhancements:
    • Fix for an issue with index metadata loading issue with SQL Server 2016
    • Fix for an issue with upgrading settings and analysis template to the new version
    • Fix for an issue with cache settings – invalid or a not accessible cache path breaks the extension
    • Fixes of some other minor issues

We are delighted to announce the release of SQL Enlight version 1.9.9.945.

What’s new in this update:

  • Added 1 new analysis rules:
  • Fixes and enhancements in the standard analysis rules
    • SA0035 – enhanced the rule and fixed false positives when HACK, TODO or UNDONE is matched, but inside another word
    • S0048B – added a parameter to ignore temporary tables
    • SSA0049B – added a parameter to ignore temporary tables
    • SA0066B – enhanced rule message to include the schema of the parent table of the matched column
    • SA0075B – added a parameter to ignore temporary tables
    • SA0169 – added parameter, which to allow @@ROWCOWNT in  the first trigger statement
    • SA0184 – fixed matching and false positives
    • SA0225 – enhanced the rule to support target table names with three-part names
    • SA0254 – added support for direct dynamic SQL code and fix false positives when cursor used in try/catch blocks
    • SA0262 – fix some issues with the rule,  false positives and exclude analytic over clauses from aggregate
    • SA0263 – ignore temporary tables used in dynamic SQL code
    • SA0264 – added support for dynamic SQL code
    • SA0268 – enhanced the rule to consider cursor select statements
  • Other fixes and enhancements:
    • Enhancements and fixes in SQL comments formatting
    • Fixes of some other minor issues

We are excited to announce the release of SQL Enlight version 1.9.9.935.

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.