facebook/mariana-trench

Getting "KeyError: 'port'" when using sapp

90-MobileSafety opened this issue · 3 comments

sapp --tool=mariana-trench analyze .

error KeyError: 'port'

wrlu commented

Same issue.

/usr/local/lib/python3.9/dist-packages/sqlalchemy/orm/relationships.py:1994: SAWarning: Setting backref / back_populates on relationship Run.issue_instances to refer to viewonly relationship IssueInstance.run should include sync_backref=False set on the Run.issue_instances relationship.  (this warning may be suppressed after 10 occurrences)
  util.warn_limited(
/usr/local/lib/python3.9/dist-packages/sqlalchemy/orm/relationships.py:1994: SAWarning: Setting backref / back_populates on relationship IssueInstance.run to refer to viewonly relationship Run.issue_instances should include sync_backref=False set on the IssueInstance.run relationship.  (this warning may be suppressed after 10 occurrences)
  util.warn_limited(
2022-08-29 11:36:28,615 [INFO] Parsing analysis output...
Traceback (most recent call last):
  File "/usr/local/bin/sapp", line 8, in <module>
    sys.exit(cli())
  File "/usr/local/lib/python3.9/dist-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.9/dist-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.9/dist-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.9/dist-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.9/dist-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/usr/local/lib/python3.9/dist-packages/click/decorators.py", line 84, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
  File "/usr/local/lib/python3.9/dist-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/usr/local/lib/python3.9/dist-packages/sapp/cli_lib.py", line 206, in analyze
    pipeline.run(analysis_output, summary_blob)
  File "/usr/local/lib/python3.9/dist-packages/sapp/pipeline/__init__.py", line 365, in run
    next_input, summary = step.run(next_input, summary)
  File "/usr/local/lib/python3.9/dist-packages/sapp/pipeline/base_parser.py", line 235, in run
    self.analysis_output_to_dict_entries(
  File "/usr/local/lib/python3.9/dist-packages/sapp/pipeline/base_parser.py", line 187, in analysis_output_to_dict_entries
    for typ, key, e in self._analysis_output_to_parsed_tuples(inputfile):
  File "/usr/local/lib/python3.9/dist-packages/sapp/pipeline/base_parser.py", line 136, in _analysis_output_to_parsed_tuples
    for e in entries:
  File "/usr/local/lib/python3.9/dist-packages/sapp/pipeline/mariana_trench_parser_v2.py", line 468, in parse
    yield from self.parse_handle(handle)
  File "/usr/local/lib/python3.9/dist-packages/sapp/pipeline/mariana_trench_parser_v2.py", line 482, in parse_handle
    for precondition in self._parse_preconditions(model):
  File "/usr/local/lib/python3.9/dist-packages/sapp/pipeline/mariana_trench_parser_v2.py", line 764, in _parse_condition
    port=Port.from_json(leaf_model["port"], leaf_kind),
KeyError: 'port'

I downgraded the sapp version to 0.5.2 which solved the problem:

pip uninstall fb-sapp
pip install -Iv fb-sapp==0.5.2

Mariana Trench 1.0.3 is out which should generate correct JSON, and you should be unblocked here now!