Managed Violation Suppressions

Issues such as coding standard violations, compiler warnings, and security violations found by checkers and other tools can sometimes be false positives or can be ignored for some other reason. In those cases you might want to suppress those violations so that they do not affect the TQI score negatively, or make your quality gates fail.

There are several ways in which you can suppress violations:

Suppressed violations are still stored in the database. They will not be visible by default, but you can make them visible by using the 'Suppressions' filter in the annotated source, or by using the Suppressed Violation Count metrics on the dashboard. When using a tool-specific suppression mechanism, it depends on our tool integration whether suppressions are stored in the database.

For more details on the inline suppression method, see the client usage documentation. The remainder of this section is about managed suppressions.

A managed suppression can only be made by an authorized user having the "Manage Suppressions" permission. The "QA Manager" role has this permission by default, but you can assign the permission to other roles. In order to suppress a violation, select the violation in the Annotated Source and click the Suppress button. The dialog asks you to classify the violation and provide a justification or reason for the suppression. Classifications include "false positive" when it is a problem with the tool, or "intentional" when the violation is a true positive, but cannot be avoided in this case. After confirming, the violation will be marked as 'Suppressed in next run' to indicate that the metric values (TQI, violation counts, etc.) will change during the next run. Violations can be unsuppressed in a similar manner.

Suppressing an individual violation in a file might sometimes result in suppressing other similar violations in the same file. This is a limitation of the way that we currently track violations. If more than one violation will be suppressed, this will be indicated in the Suppression dialog with a warning.

Remarks and limitations: