Exclude violation items in rules.json

TiCS also checks on rules that are reported to TiCS by tools, but not configured as part of a ruleset. On some occasions, it is possible that a coding rule or compiler warning is intentionally excluded from TiCS analysis. Potential reasons are because the rule is not applicable for the environment or because the rule reports a lot of false positives. To avoid reporting on unconfigured rules that have been intentionally excluded from analysis, we can use the EXCLUDEDITEMS property of file rules.json. Its contents are a list of implementation ID's (see documentation on IMPL.txt for more details) as shown below:

  {
    "EXCLUDEDITEMS" : [
      "ExcludedItem1",
      "ExcludedItem2",
      "ExcludedItem3",
    ]
  }
  

We place excluded items of a ruleset in the corresponding rules.json file of that ruleset. For example, below are the contents of a file rules.json of the <cfg_dir>/4.0/abstractinterpretation/COV_JAVA ruleset which will exclude items FB.AA_ASSERTION_OF_ARGUMENTS and FB.CT_CONSTRUCTOR_THROW from unconfigured rules reporting. These violation items are specific to JAVA language reported by the tool Coverity.

  {
    "EXCLUDEDITEMS" : [
      "FB.AA_ASSERTION_OF_ARGUMENTS",
      "FB.CT_CONSTRUCTOR_THROW",
    ]
  }