Skip to content

coverage: score_coverage 0.4.2, baseline notes of untested files unoptimised - #804

Merged
NicolasFussberger merged 2 commits into
mainfrom
dcalavrezo_cc_binary_baseline_check
Oct 19, 2026
Merged

NicolasFussberger merged 2 commits into
mainfrom
dcalavrezo_cc_binary_baseline_check

Conversation

@dcalavrezo-qorix

@dcalavrezo-qorix dcalavrezo-qorix commented Oct 16, 2026 •

Copy link
Copy Markdown
Contributor

Bumps score_coverage to 0.4.2 (release notes), the release that fixes eclipse-score/coverage_tool#40: the own sources of a cc_binary, here launch_manager's main.cpp, are listed in the report at 0 % instead of under no-data in unmapped_files.txt, and baseline-only files are rendered in their own HTML run so an executable's main cannot pick up a test binary's counts. The temporary git_override used for validation is gone.

Also adds coverage:gcov --host_cxxopt=-O0: the scope's baseline .gcno notes of untested files are built in the exec configuration with the host options; without it GCC optimises them and their line tables differ from the -O0 test builds (user manual step 4b).

Validation with the override, Linux coverage run 38912573302: main.cpp at 0 of 3 lines in the HTML index and the LCOV, totals include it, effective line coverage 81.88 %. Expect the effective figure to be slightly below the previous report, since the untested binary source now counts.

@dcalavrezo-qorix

Copy link
Copy Markdown
Contributor Author

Result of the Linux coverage job (run 38887734269): score/launch_manager/src/daemon/src/main.cpp is now in the report at 0 % (3 lines) and no longer listed in unmapped_files.txt (no-data 31 → 30). That is the behaviour coverage_tool#44 adds; this PR stays a draft until 0.4.2 is released, then the git_override goes and the version bump plus the --host_cxxopt=-O0 line remain.

@NicolasFussberger

Copy link
Copy Markdown
Contributor

@dcalavrezo-qorix thanks for investigating the issue.

I checked the resulting coverage report from the pipeline and the main.cpp file is removed from unmapped_files.txt and now part of the coverage report.
However, it is shown with 100% coverage which is unexpected since we do not have a test for this file.
grafik

@dcalavrezo-qorix
dcalavrezo-qorix marked this pull request as ready for review October 19, 2026 10:00
@dcalavrezo-qorix dcalavrezo-qorix changed the title coverage: validate coverage_tool#44 (cc_binary sources at 0 %), do not merge coverage: score_coverage 0.4.2, baseline notes of untested files unoptimised Oct 19, 2026
0.4.2 lists the own sources of a cc_binary (launch_manager's main.cpp) at
0 % instead of under no-data in unmapped_files.txt, and renders
baseline-only files in their own HTML run so an executable's main cannot
pick up a test binary's counts (coverage_tool#40).

The gcov config gets --host_cxxopt=-O0: the scope's baseline .gcno notes of
untested files are built in the exec configuration with the host options;
without it GCC optimises them and their line tables differ from the -O0
test builds (user manual step 4b).

Signed-off-by: Dan Calavrezo <195309321+dcalavrezo-qorix@users.noreply.github.com>
@dcalavrezo-qorix
dcalavrezo-qorix force-pushed the dcalavrezo_cc_binary_baseline_check branch from 74e415c to fe7d23a Compare October 19, 2026 10:11
@github-actions

Copy link
Copy Markdown
Contributor

Documentation preview for this pull request is available at:
pr-804: https://eclipse-score.github.io/lifecycle/pr-804/

@NicolasFussberger
NicolasFussberger added this pull request to the merge queue Oct 19, 2026
Merged via the queue into main with commit 13cbc9d Oct 19, 2026
20 checks passed
@NicolasFussberger
NicolasFussberger deleted the dcalavrezo_cc_binary_baseline_check branch October 19, 2026 12:24
@github-project-automation github-project-automation Bot moved this from Backlog to Done in LCM - Lifecycle & Health FT Oct 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

main function missing in coverage report

2 participants