diff --git a/OpenProjects.html b/OpenProjects.html --- a/OpenProjects.html +++ b/OpenProjects.html @@ -45,6 +45,13 @@
  • Optimizing MLIR’s Presburger library
  • +
  • + Code Coverage + +
  • + @@ -912,7 +919,7 @@

    Confirmed Mentors: Prabhu Rajasekaran - Peter Hosek + Petr Hosek

    Discourse: URL @@ -1092,6 +1099,49 @@

    + +
    + Support a hierarchical directory structure in generated coverage html reports +
    + +
    +

    Description of the project:
    + Clang supports source-based coverage that shows which lines of code are covered by the executed tests + [1]. + It uses llvm-profdata [2] and + llvm-cov [3] tools to generate coverage reports. + llvm-cov currently generates a single top-level index HTML file. + For example, a single top-level directory code coverage report + [4] + for LLVM repo is published on a coverage bot. + Top-level indexing causes rendering scalability issues in large projects, + such as Fuchsia [5]. + The goal of this project is to generate a hierarchical directory structure in generated coverage html reports + to match the directory structure and solve scalability issues. + Chromium uses its own post-processing tools to show a per-directory hierarchical structure for coverage results + [6]. + Similarly, Lcov, which is a graphical front-end Gcov[7], + provides a one-level directory structure to display coverage results [8].
    + [1] Source-based code coverage
    + [2] llvm-profdata
    + [3] llvm-cov
    + [4] LLVM coverage reports
    + [5] Fuchsia
    + [6] Coverage summary for Chromium
    + [7] Gcov
    + [8] Lcov coverage reports
    + [9] Issue #54711: Support per-directory index files for HTML coverage report

    +

    +

    Expected result: Implement a support in hierarchical directory structure in generated coverage html reports and show the usage of this feature in LLVM repo code coverage reports.

    +

    Project size: Medium or Large

    +

    Difficulty: Medium

    +

    Confirmed Mentors: + Gulfem Savrun Yeniceri + Petr Hosek +

    +

    Discourse: URL +

    +
    Google Summer of Code 2022