Repository navigation
Migrate coverage pipeline to score_coverage 0.1.0 - #584
Conversation
The LLVM source-based coverage pipeline moved out of score_tooling into its own qualified module, score_coverage (eclipse-score/coverage_tool, released as 0.1.0 in the S-CORE Bazel registry). Point the merger, reporter macros, death-test feature and the report workflow at the new module. score_coverage 0.1.0 fixes #558: headers vendored from an external repository behind strip_include_prefix (//score/flatbuffers:flatbufferscpp) were dropped from the report. They are now reported under their _virtual_includes/ path, each exactly once. No extra_deps attribute is needed; the scope aspect handles every workspace target. Validated on //score/flatbuffers/... before (score_tooling 2.2.1) and after this change: all 413 previously reported source records are identical line by line (DA/BRDA/LF/LH/BRF/BRH); the after run adds the 15 flatbuffers headers plus 2 static_reflection visitor headers that were missing, and total line coverage goes from 466/18240 to 1344/19420. rules_rust 0.68.1-score -> 0.68.2-score follows the version required by score_coverage; MODULE.bazel.lock refreshed accordingly. Signed-off-by: Dan Calavrezo <195309321+dcalavrezo-qorix@users.noreply.github.com>
|
Documentation preview for this pull request is available at: |
|
This time I checked the coverage artifact produced by the pipeline downloadable via https://github.com/eclipse-score/baselibs/actions/runs/34610832452/artifacts/10268069488. 'external/openssl+/*' is now showing too, I missed that previously. A patch proposal: score_coverage_vendored_files.patch |
The source code coverage tooling got its own repo. Move to that to follow its updates. Applied similar changes as eclipse-score/baselibs#584
|
Apart from |
4og
left a comment
There was a problem hiding this comment.
Looks good apart from the eclipse-score/coverage_tool#5 that needs to be fixed.
What
Replaces
@score_tooling//coveragewithscore_coverage0.1.0, the LLVMsource-based coverage pipeline that moved into its own qualified module
(https://github.com/eclipse-score/coverage_tool, released in the S-CORE Bazel
registry). Only the labels change;
tools/coverage/scope, reporter wrapper andjustification file are untouched.
Fixes #558. Supersedes the
extra_depsapproach of #577: the scope aspect inscore_coveragelists the post-processing identity of every workspace target'spublic headers, so headers vendored from an external repository behind
strip_include_prefix(//score/flatbuffers:flatbufferscpp) are reported undertheir
_virtual_includes/path, each exactly once. No new attribute on thescope target is needed.
Also bumps
rules_rust0.68.1-score -> 0.68.2-score (required byscore_coverage) and refreshesMODULE.bazel.lock.Verification
bazel coverage --config=llvm_cov --build_tests_only -- //score/flatbuffers/...run twice on the same tree, before (
score_tooling2.2.1,main) and after thischange, then every LCOV
SF:record compared field by field (DA,BRDA,LF,LH,BRF,BRH).score/flatbuffers/_virtual_includes/flatbufferscpp/flatbuffers/*.hfrom #558 plusvisitor/_virtual_includes/visitor/.../visit.handvisit_as_struct.hgenerate_coverage_htmlgate / archiveThe totals move only because the previously dropped headers now count; no
existing file changed its numbers.
Documentation of the tool: https://eclipse-score.github.io/coverage_tool/main/