فهرست منبع

Limit tool: added support for filtering by region type.

avkonst 10 سال پیش
والد
کامیت
324d970f45
33فایلهای تغییر یافته به همراه117 افزوده شده و 59 حذف شده
  1. 42 11
      mainline/ext/std/tools/limit.py
  2. 34 13
      mainline/mpp/api.py
  3. 10 4
      mainline/tests/general/test_basic/test_help_limit_default_stdout.gold.txt
  4. 1 1
      mainline/tests/general/test_basic/test_workflow_limit_default_stderr.gold.txt
  5. 1 1
      mainline/tests/general/test_basic/test_workflow_limit_default_stdout.gold.txt
  6. 1 1
      mainline/tests/general/test_basic/test_workflow_limit_second_stderr.gold.txt
  7. 1 1
      mainline/tests/general/test_basic/test_workflow_limit_second_stdout.gold.txt
  8. 1 1
      mainline/tests/general/test_basic/test_workflow_limit_second_warn_all_stderr.gold.txt
  9. 1 1
      mainline/tests/general/test_basic/test_workflow_limit_second_warn_all_stdout.gold.txt
  10. 1 1
      mainline/tests/general/test_basic/test_workflow_limit_second_warn_new_stderr.gold.txt
  11. 1 1
      mainline/tests/general/test_basic/test_workflow_limit_second_warn_new_stdout.gold.txt
  12. 1 1
      mainline/tests/general/test_basic/test_workflow_limit_second_warn_touched_stderr.gold.txt
  13. 1 1
      mainline/tests/general/test_basic/test_workflow_limit_second_warn_touched_stdout.gold.txt
  14. 1 1
      mainline/tests/general/test_basic/test_workflow_limit_second_warn_trend_stderr.gold.txt
  15. 1 1
      mainline/tests/general/test_basic/test_workflow_limit_second_warn_trend_stdout.gold.txt
  16. 1 1
      mainline/tests/general/test_std_code_cpp/test_parser_limit_default_stdout.gold.txt
  17. 1 1
      mainline/tests/general/test_std_code_cs/test_parser_limit_default_stdout.gold.txt
  18. 1 1
      mainline/tests/general/test_std_code_java/test_parser_limit_default_stdout.gold.txt
  19. 1 1
      mainline/tests/general/test_std_suppress/test_basic_limit_1_stdout.gold.txt
  20. 1 1
      mainline/tests/general/test_std_suppress/test_basic_limit_2_stdout.gold.txt
  21. 1 1
      mainline/tests/general/test_std_suppress/test_basic_limit_3_stdout.gold.txt
  22. 1 1
      mainline/tests/general/test_std_suppress/test_basic_limit_4_stdout.gold.txt
  23. 2 2
      mainline/tests/general/test_std_suppress/test_basic_limit_5_stdout.gold.txt
  24. 1 1
      mainline/tests/general/test_std_suppress/test_basic_limit_size_nosup_stdout.gold.txt
  25. 1 1
      mainline/tests/general/test_std_suppress/test_basic_limit_size_stdout.gold.txt
  26. 1 1
      mainline/tests/system/test_boost_parts/test_workflow_limit_default_stderr.gold.txt
  27. 1 1
      mainline/tests/system/test_boost_parts/test_workflow_limit_default_stdout.gold.txt
  28. 1 1
      mainline/tests/system/test_boost_parts/test_workflow_limit_second_new_stderr.gold.txt
  29. 1 1
      mainline/tests/system/test_boost_parts/test_workflow_limit_second_new_stdout.gold.txt
  30. 1 1
      mainline/tests/system/test_boost_parts/test_workflow_limit_second_touched_stderr.gold.txt
  31. 1 1
      mainline/tests/system/test_boost_parts/test_workflow_limit_second_touched_stdout.gold.txt
  32. 1 1
      mainline/tests/system/test_boost_parts/test_workflow_limit_second_trend_stderr.gold.txt
  33. 1 1
      mainline/tests/system/test_boost_parts/test_workflow_limit_second_trend_stdout.gold.txt

+ 42 - 11
mainline/ext/std/tools/limit.py

@@ -50,14 +50,16 @@ class Plugin(mpp.api.Plugin, mpp.api.IConfigurable, mpp.api.IRunable):
                           help="A threshold per 'namespace:field' metric in order to select regions, "
                           "which have got metric value less than the specified limit. "
                           "This option can be specified multiple times, if it is necessary to apply several limits. "
-                          "Should be in the format: <namespace>:<field>:<limit-value>, for example: "
-                          "'std.code.lines:comments:1'.")
+                          "Should be in the format: <namespace>:<field>:<limit-value>[:region_type[,region_type]], for example: "
+                          "'std.code.lines:comments:1', or 'std.code.lines:comments:1:function,class'. "
+                          "Region types is optional specifier, and if not defined the limit is applied to regions of all types.")
         parser.add_option("--max-limit", "--max", action="multiopt",
                           help="A threshold per 'namespace:field' metric in order to select regions, "
                           "which have got metric value more than the specified limit. "
                           "This option can be specified multiple times, if it is necessary to apply several limits. "
-                          "Should be in the format: <namespace>:<field>:<limit-value>, for example: "
-                          "'std.code.complexity:cyclomatic:7'.")
+                          "Should be in the format: <namespace>:<field>:<limit-value>[:region_type[,region_type]], for example: "
+                          "'std.code.complexity:cyclomatic:7', or 'std.code.complexity:maxdepth:5:function'. "
+                          "Region types is optional specifier, and if not defined the limit is applied to regions of all types.")
     
     def configure(self, options):
         self.hotspots = options.__dict__['hotspots']
@@ -76,32 +78,59 @@ class Plugin(mpp.api.Plugin, mpp.api.IConfigurable, mpp.api.IRunable):
             self.parser.error("option --warn-mode: The mode '" + options.__dict__['warn_mode'] + "' requires '--db-file-prev' option set")
 
         class Limit(object):
-            def __init__(self, limit_type, limit, namespace, field, db_filter, original):
+            def __init__(self, limit_type, limit, namespace, field, db_filter, region_types, original):
                 self.type = limit_type
                 self.limit = limit
                 self.namespace = namespace
                 self.field = field
                 self.filter = db_filter
+                self.region_types = region_types
                 self.original = original
                 
             def __repr__(self):
-                return "'{0}:{1}' {2} {3}".format(self.namespace, self.field, self.filter[1], self.limit)
+                return "'{0}:{1}' {2} {3} [applied to '{4}' region type(s)]".format(
+                        self.namespace, self.field, self.filter[1], self.limit,
+                        mpp.api.Region.T().to_str(self.region_types))
         
         self.limits = []
-        pattern = re.compile(r'''([^:]+)[:]([^:]+)[:]([-+]?[0-9]+(?:[.][0-9]+)?)''')
+        pattern = re.compile(r'''([^:]+)[:]([^:]+)[:]([-+]?[0-9]+(?:[.][0-9]+)?)(?:[:](.+))?''')
         if options.__dict__['max_limit'] != None:
             for each in options.__dict__['max_limit']:
                 match = re.match(pattern, each)
                 if match == None:
                     self.parser.error("option --max-limit: Invalid format: " + each)
-                limit = Limit("max", float(match.group(3)), match.group(1), match.group(2), (match.group(2), '>', float(match.group(3))), each)
+                region_types = 0x00
+                if match.group(4) != None:
+                    for region_type in match.group(4).split(','):
+                        region_type = region_type.strip()
+                        group_id = mpp.api.Region.T().from_str(region_type)
+                        if group_id == None:
+                            self.parser.error(
+                                    "option --max-limit: uknown region type (allowed: global, class, struct, namespace, function, interface, any): " + region_type)
+                        region_types |= group_id
+                else:
+                    region_types = mpp.api.Region.T().ANY
+                limit = Limit("max", float(match.group(3)), match.group(1), match.group(2),
+                        (match.group(2), '>', float(match.group(3))), region_types, each)
                 self.limits.append(limit)
         if options.__dict__['min_limit'] != None:
             for each in options.__dict__['min_limit']:  
                 match = re.match(pattern, each)
                 if match == None:
                     self.parser.error("option --min-limit: Invalid format: " + each)
-                limit = Limit("min", float(match.group(3)), match.group(1), match.group(2), (match.group(2), '<', float(match.group(3))), each)
+                region_types = 0x00
+                if match.group(4) != None:
+                    for region_type in match.group(4).split(','):
+                        region_type = region_type.strip()
+                        group_id = mpp.api.Region.T().from_str(region_type)
+                        if group_id == None:
+                            self.parser.error(
+                                    "option --max-limit: uknown region type (allowed: global, class, struct, namespace, function, interface, any): " + region_type)
+                        region_types |= group_id
+                else:
+                    region_types = mpp.api.Region.T().ANY
+                limit = Limit("min", float(match.group(3)), match.group(1), match.group(2),
+                        (match.group(2), '<', float(match.group(3))), region_types, each)
                 self.limits.append(limit)
 
     def initialize(self):
@@ -234,13 +263,15 @@ def main(plugin, args):
                 if is_sup == True and plugin.no_suppress == False:
                     continue    
                 
-                warns_count += 1
-                exit_code += 1
                 region_cursor = 0
                 region_name = None
                 if select_data.get_region() != None:
+                    if select_data.get_region().get_type() & limit.region_types == 0:
+                        continue
                     region_cursor = select_data.get_region().cursor
                     region_name = select_data.get_region().name
+                warns_count += 1
+                exit_code += 1
                 report_limit_exceeded(select_data.get_path(),
                                   region_cursor,
                                   limit.namespace,

+ 34 - 13
mainline/mpp/api.py

@@ -208,20 +208,41 @@ class Region(LoadableData):
         def to_str(self, group):
             if group == self.NONE:
                 return "none"
-            elif group == self.GLOBAL:
-                return "global"
-            elif group == self.CLASS:
-                return "class"
-            elif group == self.STRUCT:
-                return "struct"
-            elif group == self.NAMESPACE:
-                return "namespace"
-            elif group == self.FUNCTION:
-                return "function"
-            elif group == self.INTERFACE:
-                return "interface"
+            if group == self.ANY:
+                return "any"
+            result = []
+            if group & self.GLOBAL != 0:
+                result.append("global")
+            if group & self.CLASS != 0:
+                result.append("class")
+            if group & self.STRUCT != 0:
+                result.append("struct")
+            if group & self.NAMESPACE != 0:
+                result.append("namespace")
+            if group & self.FUNCTION != 0:
+                result.append("function")
+            if group & self.INTERFACE != 0:
+                result.append("interface")
+            assert(len(result) != 0)
+            return ', '.join(result)
+
+        def from_str(self, group):
+            if group == "global":
+                return self.GLOBAL
+            elif group == "class":
+                return self.CLASS
+            elif group == "struct":
+                return self.STRUCT
+            elif group == "namespace":
+                return self.NAMESPACE
+            elif group == "function":
+                return self.FUNCTION
+            elif group == "interface":
+                return self.INTERFACE
+            elif group == "any":
+                return self.ANY
             else:
-                assert(False)
+                return None
 
     def __init__(self, loader, file_id, region_id, region_name, offset_begin, offset_end, line_begin, line_end, cursor_line, group, checksum):
         LoadableData.__init__(self, loader, file_id, region_id)

+ 10 - 4
mainline/tests/general/test_basic/test_help_limit_default_stdout.gold.txt

@@ -36,13 +36,19 @@ Options:
                         the specified limit. This option can be specified
                         multiple times, if it is necessary to apply several
                         limits. Should be in the format: <namespace>:<field
-                        >:<limit-value>, for example:
-                        'std.code.lines:comments:1'.
+                        >:<limit-value>[:region_type[,region_type]], for
+                        example: 'std.code.lines:comments:1', or
+                        'std.code.lines:comments:1:function,class'. Region
+                        types is optional specifier, and if not defined the
+                        limit is applied to regions of all types.
   --max-limit=MAX_LIMIT, --max=MAX_LIMIT
                         A threshold per 'namespace:field' metric in order to
                         select regions, which have got metric value more than
                         the specified limit. This option can be specified
                         multiple times, if it is necessary to apply several
                         limits. Should be in the format: <namespace>:<field
-                        >:<limit-value>, for example:
-                        'std.code.complexity:cyclomatic:7'.
+                        >:<limit-value>[:region_type[,region_type]], for
+                        example: 'std.code.complexity:cyclomatic:7', or
+                        'std.code.complexity:maxdepth:5:function'. Region
+                        types is optional specifier, and if not defined the
+                        limit is applied to regions of all types.

+ 1 - 1
mainline/tests/general/test_basic/test_workflow_limit_default_stderr.gold.txt

@@ -1,4 +1,4 @@
 [LOG]: WARNING:	Logging enabled with INFO level
 [LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 [LOG]: WARNING:	Done (1 seconds). Exit code: 8

+ 1 - 1
mainline/tests/general/test_basic/test_workflow_limit_default_stdout.gold.txt

@@ -70,5 +70,5 @@
 	Limit          : 0.0
 	Suppressed     : False
 
-./:: info: 8 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0
+./:: info: 8 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/general/test_basic/test_workflow_limit_second_stderr.gold.txt

@@ -1,4 +1,4 @@
 [LOG]: WARNING:	Logging enabled with INFO level
 [LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 [LOG]: WARNING:	Done (1 seconds). Exit code: 6

+ 1 - 1
mainline/tests/general/test_basic/test_workflow_limit_second_stdout.gold.txt

@@ -52,5 +52,5 @@
 	Limit          : 0.0
 	Suppressed     : False
 
-./:: info: 6 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0
+./:: info: 6 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/general/test_basic/test_workflow_limit_second_warn_all_stderr.gold.txt

@@ -1,4 +1,4 @@
 [LOG]: WARNING:	Logging enabled with INFO level
 [LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 [LOG]: WARNING:	Done (1 seconds). Exit code: 6

+ 1 - 1
mainline/tests/general/test_basic/test_workflow_limit_second_warn_all_stdout.gold.txt

@@ -52,5 +52,5 @@
 	Limit          : 0.0
 	Suppressed     : False
 
-./:: info: 6 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0
+./:: info: 6 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/general/test_basic/test_workflow_limit_second_warn_new_stderr.gold.txt

@@ -1,5 +1,5 @@
 [LOG]: WARNING:	Logging enabled with INFO level
 [LOG]: INFO:	Identifying changed files...
 [LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 [LOG]: WARNING:	Done (1 seconds). Exit code: 2

+ 1 - 1
mainline/tests/general/test_basic/test_workflow_limit_second_warn_new_stdout.gold.txt

@@ -16,5 +16,5 @@
 	Limit          : 0.0
 	Suppressed     : False
 
-./:: info: 2 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0
+./:: info: 2 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/general/test_basic/test_workflow_limit_second_warn_touched_stderr.gold.txt

@@ -1,5 +1,5 @@
 [LOG]: WARNING:	Logging enabled with INFO level
 [LOG]: INFO:	Identifying changed files...
 [LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 [LOG]: WARNING:	Done (1 seconds). Exit code: 4

+ 1 - 1
mainline/tests/general/test_basic/test_workflow_limit_second_warn_touched_stdout.gold.txt

@@ -34,5 +34,5 @@
 	Limit          : 0.0
 	Suppressed     : False
 
-./:: info: 4 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0
+./:: info: 4 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/general/test_basic/test_workflow_limit_second_warn_trend_stderr.gold.txt

@@ -1,5 +1,5 @@
 [LOG]: WARNING:	Logging enabled with INFO level
 [LOG]: INFO:	Identifying changed files...
 [LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 [LOG]: WARNING:	Done (1 seconds). Exit code: 3

+ 1 - 1
mainline/tests/general/test_basic/test_workflow_limit_second_warn_trend_stdout.gold.txt

@@ -25,5 +25,5 @@
 	Limit          : 0.0
 	Suppressed     : False
 
-./:: info: 3 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0
+./:: info: 3 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/general/test_std_code_cpp/test_parser_limit_default_stdout.gold.txt

@@ -106,5 +106,5 @@
 	Limit          : 0.0
 	Suppressed     : False
 
-./:: info: 12 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0
+./:: info: 12 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/general/test_std_code_cs/test_parser_limit_default_stdout.gold.txt

@@ -142,5 +142,5 @@
 	Limit          : 0.0
 	Suppressed     : False
 
-./:: info: 16 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0
+./:: info: 16 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/general/test_std_code_java/test_parser_limit_default_stdout.gold.txt

@@ -52,5 +52,5 @@
 	Limit          : 5.0
 	Suppressed     : False
 
-./:: info: 6 regions exceeded the limit 'std.code.complexity:cyclomatic' > 5.0
+./:: info: 6 regions exceeded the limit 'std.code.complexity:cyclomatic' > 5.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/general/test_std_suppress/test_basic_limit_1_stdout.gold.txt

@@ -7,5 +7,5 @@
 	Limit          : 0.0
 	Suppressed     : False
 
-./:: info: 1 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0
+./:: info: 1 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/general/test_std_suppress/test_basic_limit_2_stdout.gold.txt

@@ -70,5 +70,5 @@
 	Limit          : 0.0
 	Suppressed     : True
 
-./:: info: 8 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0
+./:: info: 8 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/general/test_std_suppress/test_basic_limit_3_stdout.gold.txt

@@ -61,5 +61,5 @@
 	Limit          : 0.0
 	Suppressed     : False
 
-./:: info: 7 regions exceeded the limit 'std.code.length:total' > 0.0
+./:: info: 7 regions exceeded the limit 'std.code.length:total' > 0.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/general/test_std_suppress/test_basic_limit_4_stdout.gold.txt

@@ -232,5 +232,5 @@
 	Limit          : 0.0
 	Suppressed     : True
 
-./:: info: 26 regions exceeded the limit 'std.code.length:total' > 0.0
+./:: info: 26 regions exceeded the limit 'std.code.length:total' > 0.0 [applied to 'any' region type(s)]
 

+ 2 - 2
mainline/tests/general/test_std_suppress/test_basic_limit_5_stdout.gold.txt

@@ -7,7 +7,7 @@
 	Limit          : 0.0
 	Suppressed     : False
 
-./:: info: 1 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0
+./:: info: 1 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
 
 ./test.c:56: warning: Metric 'std.code.length:total' for region 'no_suppress_cl' exceeds the limit.
 	Metric name    : std.code.length:total
@@ -72,5 +72,5 @@
 	Limit          : 0.0
 	Suppressed     : False
 
-./:: info: 7 regions exceeded the limit 'std.code.length:total' > 0.0
+./:: info: 7 regions exceeded the limit 'std.code.length:total' > 0.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/general/test_std_suppress/test_basic_limit_size_nosup_stdout.gold.txt

@@ -7,5 +7,5 @@
 	Limit          : 0.0
 	Suppressed     : True
 
-./:: info: 1 regions exceeded the limit 'std.general:size' > 0.0
+./:: info: 1 regions exceeded the limit 'std.general:size' > 0.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/general/test_std_suppress/test_basic_limit_size_stdout.gold.txt

@@ -1,2 +1,2 @@
-./:: info: 0 regions exceeded the limit 'std.general:size' > 0.0
+./:: info: 0 regions exceeded the limit 'std.general:size' > 0.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/system/test_boost_parts/test_workflow_limit_default_stderr.gold.txt

@@ -1,4 +1,4 @@
 [LOG]: WARNING:	Logging enabled with INFO level
 [LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 15.0
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 15.0 [applied to 'any' region type(s)]
 [LOG]: WARNING:	Done (1 seconds). Exit code: 3

+ 1 - 1
mainline/tests/system/test_boost_parts/test_workflow_limit_default_stdout.gold.txt

@@ -25,5 +25,5 @@
 	Limit          : 15.0
 	Suppressed     : False
 
-./:: info: 3 regions exceeded the limit 'std.code.complexity:cyclomatic' > 15.0
+./:: info: 3 regions exceeded the limit 'std.code.complexity:cyclomatic' > 15.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/system/test_boost_parts/test_workflow_limit_second_new_stderr.gold.txt

@@ -1,5 +1,5 @@
 [LOG]: WARNING:	Logging enabled with INFO level
 [LOG]: INFO:	Identifying changed files...
 [LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 15.0
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 15.0 [applied to 'any' region type(s)]
 [LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 1 - 1
mainline/tests/system/test_boost_parts/test_workflow_limit_second_new_stdout.gold.txt

@@ -1,2 +1,2 @@
-./:: info: 0 regions exceeded the limit 'std.code.complexity:cyclomatic' > 15.0
+./:: info: 0 regions exceeded the limit 'std.code.complexity:cyclomatic' > 15.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/system/test_boost_parts/test_workflow_limit_second_touched_stderr.gold.txt

@@ -1,5 +1,5 @@
 [LOG]: WARNING:	Logging enabled with INFO level
 [LOG]: INFO:	Identifying changed files...
 [LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 15.0
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 15.0 [applied to 'any' region type(s)]
 [LOG]: WARNING:	Done (1 seconds). Exit code: 6

+ 1 - 1
mainline/tests/system/test_boost_parts/test_workflow_limit_second_touched_stdout.gold.txt

@@ -52,5 +52,5 @@
 	Limit          : 15.0
 	Suppressed     : False
 
-./:: info: 6 regions exceeded the limit 'std.code.complexity:cyclomatic' > 15.0
+./:: info: 6 regions exceeded the limit 'std.code.complexity:cyclomatic' > 15.0 [applied to 'any' region type(s)]
 

+ 1 - 1
mainline/tests/system/test_boost_parts/test_workflow_limit_second_trend_stderr.gold.txt

@@ -1,5 +1,5 @@
 [LOG]: WARNING:	Logging enabled with INFO level
 [LOG]: INFO:	Identifying changed files...
 [LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 15.0
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 15.0 [applied to 'any' region type(s)]
 [LOG]: WARNING:	Done (1 seconds). Exit code: 2

+ 1 - 1
mainline/tests/system/test_boost_parts/test_workflow_limit_second_trend_stdout.gold.txt

@@ -16,5 +16,5 @@
 	Limit          : 15.0
 	Suppressed     : False
 
-./:: info: 2 regions exceeded the limit 'std.code.complexity:cyclomatic' > 15.0
+./:: info: 2 regions exceeded the limit 'std.code.complexity:cyclomatic' > 15.0 [applied to 'any' region type(s)]