Use a Justification Catalog to Autocomplete Annotations in Polyspace as You Code plugins
After you run an analysis, you can suppress known or acceptable defects or coding rule deviations by adding code annotations to indicate that the issue has been reviewed and will not be fixed.
If your organization has a predefined set of comments that you use to justify known or acceptable defects and coding standard deviations, you can store these comments in a justification catalog where you associate one or more comment with each defect or coding rule deviation. You can then pass this catalog to the Polyspace® as You Code Visual Studio Code extension or Eclipse™ plugin and use the predefined comments to autocomplete code annotations comments when you annotate the code.
You pass the catalog to Polyspace as You Code by specifying the path of the catalog file in these settings:
Visual Studio® Code —
polyspace.justification.catalog
setting. See Configure Polyspace as You Code Extension in Visual Studio Code.Visual Studio — Justification catalog setting. See Configure Polyspace as You Code Extension in Visual Studio.
Eclipse — Justification catalog setting. See Configure Polyspace as You Code Plugin in Eclipse.
Create and Edit Justification Catalog
The justification catalog is a JSON file that uses the Polyspace code annotation syntax. For details of the syntax, see Annotation Syntax Details (Polyspace Bug Finder). To create a catalog, copy
justification_catalog.json
to a text editor and save it as a JSON file with UTF-8
encoding.
The JSON structure consists of a justifications
array which
contains a collection of objects with at least three key-value pairs each. An object
represents a result and the comments that you want to associate with that result.
{ "justifications":[ { "family": "familyValue", "acronym": "acronymValue", "comment":[ "autocomplete comment for family:acronym result", "some other autocomplete comment for the same result" ] } ] }
Specify a Polyspace results family value for the
family
key.Specify a Polyspace result name value for the
acronym
key.Specify a comment for
comment
key to associate that comment with the Polyspace results with the family and result name that you specified in the other key-value pairs.To associate additional comments with a result, add more comment key-value pairs in the object which represents that result.
For example, in the file justification_catalog.json
, the comments "This is my preset
justification"
and "Another justification for same defect"
are available for
autocomplete when you type an annotation for defect METHOD_NOT_CONST
. Because the comment
"Rule wildcard justification applies to all defects"
applies to all defects, this comment
is also available for autocomplete when you annotate METHOD_NOT_CONST
.
External Websites
- Annotate Code and Hide Known or Acceptable Results (Polyspace Bug Finder)