Open NINI1988 opened 1 year ago
The problem is that calling parse
twice will require parsing all the output (and the source filed for their source suppression comments) twice, which can get non-trivially expensive for large enough projects, unfortunately.
We could add a (spitballing the exact flag here...) --only-summary
option, however.
But you flag should be --no-summary
when html output is used? Because if you want only summary then don't use an export argument.
At the moment, in our CI pipeline parse is called 3 times, once for GITLAB as codeclimate, once as html to download for further inspections by a user and the third output is a textual representation to get a fast overview on the CI pipeline and get a return code if new errors has been detected.
- CodeChecker parse codechecker_build --export codeclimate --output codechecker.codeclimate || true
- CodeChecker parse codechecker_build --export html --output codechecker.html >> /dev/null || true # Hide html reports on console (>> /dev/null)
- CodeChecker cmd diff -b codechecker.baseline -n codechecker_build --new # Check if new errors have been found and print results
Maybe the arguments could be like
--export html,text,codeclimate -o results.html,result.codeclimate
or like
--export html -o results.html --export text --export codeclimate -o result.codeclimate
Then the user can decide if text output is required or not?
Describe the bug Export
codeclimate
orJSON
does only print the generated file output which is enough in my opinionBut export
html
prints debug outputs and the complete report which I don't require.I could use
>/dev/null
to hide outputs but then I don't get the last useful outputs of the export command.CodeChecker version
To Reproduce Steps to reproduce the behaviour:
CodeChecker parse codechecker_build --export html --output codechecker.html
Expected behaviour Parse export for all types should not print the report summary. If the report summary is required call
CodeChecker parse codechecker_build
without the export argument.Desktop (please complete the following information)