mirror of
https://github.com/hohn/sarif-cli.git
synced 2025-12-16 17:23:03 +01:00
Add CLI support
enabled by -f flag with CLI value tested on sarif from CodeQL CLIs: 2.6.3, 2.9.4, 2.11.4 MUST contain versionControlProvenance property however
This commit is contained in:
@@ -179,13 +179,21 @@ def _destructure_dict(typegraph: Typegraph, node, tree):
|
||||
if specific_missing not in status_writer.input_sarif_missing["extra_info"]:
|
||||
status_writer.input_sarif_missing["extra_info"] += specific_missing
|
||||
status_writer.warning_set["input_sarif_missing"]+=1
|
||||
raise MissingFieldException(
|
||||
f"(Sub)tree is missing fields required by typedef.\n"
|
||||
f"Expected {type_fields}, found {tree_fields}.\n"
|
||||
f"Missing {set(type_fields) - set(tree_fields)}\n"
|
||||
f"Note: these fields are post-signature fill and may be more extensive than the orginal. \n"
|
||||
f"Check input file for the original signature."
|
||||
)
|
||||
|
||||
#special case of no longer trying other signatures
|
||||
#else exception here triggers a retry - mainly needed for Struct9699 or Struct4055
|
||||
difference = set(type_fields) - set(tree_fields)
|
||||
if "uriBaseId" in difference:
|
||||
tree["uriBaseId"] = "default"
|
||||
_destructure_dict_1(typegraph, node, tree)
|
||||
else:
|
||||
raise MissingFieldException(
|
||||
f"(Sub)tree is missing fields required by typedef.\n"
|
||||
f"Expected {type_fields}, found {tree_fields}.\n"
|
||||
f"Missing {set(type_fields) - set(tree_fields)}\n"
|
||||
f"Note: these fields are post-signature fill and may be more extensive than the orginal. \n"
|
||||
f"Check input file for the original signature."
|
||||
)
|
||||
|
||||
else:
|
||||
status_writer.unknown_sarif_parsing_shape["extra_info"] = "type fields {} do not match tree fields {}.".format(type_fields, tree_fields)
|
||||
|
||||
Reference in New Issue
Block a user