Resolve "CI: Simplify coverage scripts"
This MR simplifies coverage generation in the following ways:
- Replaces the old
scripts/ci/coverage.sh
script with a newscripts/dev/coverage.py
written in Python, making it more robust and simpler to modify if needed. - Adds specific CMake targets for generating coverage reports directly from CMake.
- Adds specialized CMake presets to make it simpler to configure the different builds required to generate coverage information.
- Replaces
gcovr
withlcov
+lcov_cobertura
, sincegcovr
exhibited some errors that were difficult to track down andlcov
worked out of the box. - Adds HTML documentation about the coverage generation in
docs/sphinx/devs/coverage.md
This MR also updates the v0.9.2
Docker images to update CMake
and include coverage-related packages. The coverage
image in
particular is no longer needed and has been removed.
Closes #252 (closed) #256 (closed) #257 (closed) #258 (closed)
Edited by Alberto Miranda