CQM-ViolationCounts

Violation counts of metrics and stylechecks

Counts and reports the number of violations for each rule listed in counted_rules as system metrics. The values of this metric are not stored in the RFG and violations cannot be suppressed/justified.

Note: The Option Results.Dashboard.advanced.import_only_first_style_violation_per_line can affect the results of this metric, since the violations already counted by this metric could be removed before being imported into the database and subsequently the dashboard and plugins.

Possible Messages

This rule has no predefined messages.

Options

append_error_number_to_metric_name

append_error_number_to_metric_name : bool = True

Whether the error number of this metric should be appended to the metric name.
 

append_rule_names_to_metric_name

append_rule_names_to_metric_name : bool = True

Sets whether the rule names from option counted_rules (if present at the rule) should be appended to the metric name.
 

count_suppressed_issues

count_suppressed_issues : bool = False

Whether suppressed issues should be counted.
 

counted_rules

counted_rules

Type: set[bauhaus.analysis.config.GlobPattern]

Default: {'CQM-ClassIncest', 'CQM-Classlet', 'CQM-ConstantsRain', 'CQM-DataCapsuleBreakUp', 'CQM-DeadFields', 'CQM-DeadImplementation', 'CQM-DeadRoutines', 'CQM-GeneralParameter', 'CQM-GenerationalConflict', 'CQM-GodClassMember', 'CQM-GodClassRoutine', 'CQM-GodFile', 'CQM-GodNamespace', 'CQM-GodRoutine', 'CQM-HalfHeartedOperation', 'CQM-IdentitySplit', 'CQM-IncludeChaos', 'CQM-IncludeLie', 'CQM-IncompleteInheritanceField', 'CQM-IncompleteInheritanceRoutine', 'CQM-IncorrectNameLength', 'CQM-IncorrectNameLengthFile', 'CQM-InformalDocumentation', 'CQM-LabyrinthRoutine', 'CQM-LateAbstraction', 'CQM-LongParameterList', 'CQM-MaskingFile', 'CQM-MemberHiding', 'CQM-NamespaceHierarchyBreakUp', 'CQM-Namespacelet', 'CQM-ObjectPlaceboMember', 'CQM-ObjectPlaceboRoutine', 'CQM-OverbookedFile', 'CQM-PolymorphismPlacebo', 'CQM-PotentialPrivacyMember', 'CQM-PotentialPrivacyRoutine', 'CQM-RejectedInheritanceImplementation', 'CQM-RejectedInheritanceInterface', 'CQM-RiskyCode', 'CQM-SecretRelation', 'CQM-SignatureLikeClasses', 'CQM-SimulatedPolymorphism'}

Set with the rule names (error numbers) or glob patterns of the rules whose violations are to be counted.
 

display_name

display_name : str | None = 'Number of violations of rule: '

Description of the metric shown in the dashboard. With the rule name matched with option counted_rules (if present at the rule) appended to it, if sum_up_violations is false. If unset, metric_name is used.
 

max_value

max_value : int = 0

Maximum allowed value.
 

metric_name

metric_name : str = 'Metric'

Name of the metric shown in the dashboard. With the name of this rule and the name from the rule from option counted_rules (if present at the rule) added at the end.
 

min_value

min_value : int = 0

Minimum allowed value.
 

sum_up_violations

sum_up_violations : bool = False

Whether to sum up violations of all counted rules and report them as a single metric, or for each rule individually. If false, the rule name gets appended to the display_name.