• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Qiskit / qiskit-addon-sqd-hpc / 35271485144
75%

Build:
DEFAULT BRANCH: main
Ran 17 Sep 2026 08:34PM UTC
Jobs 1
Files 13
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

17 Sep 2026 08:33PM UTC coverage: 81.26% (+23.7%) from 57.604%
35271485144

push

github

web-flow
Fix coverage percentage by excluding compiler-generated throw branches (#23)

* Revert "Normalize occupancies prior to configuration recovery (#21)"

This reverts commit 8ede7ac58.

* Version checks

* Reapply "Normalize occupancies prior to configuration recovery (#21)"

This reverts commit 2b9aac9c5.

* Fix

* Exclude compiler-generated throw branches from coverage

The reported coverage percentage dropped from 93.99% to 52.69% on
2025-10-03 with no corresponding change to the code.  The cause was
gcovr 8.4, released 2025-09-27 and picked up by the workflow's unpinned
`pip install gcovr`.  Two changes landed in that release:

- gcovr began emitting a `branches` array in its coveralls report, and
  coveralls folds branches into the headline percentage as
  (covered_lines + covered_branches) / (lines + branches).
- gcovr 8.4 also miscounted lines in headers and templates, inflating
  relevant lines from 342 to 694.  This was fixed in 8.5.

Line coverage never regressed; it has been near 93% throughout.  Only
the denominator changed.

Branch coverage in a header-only template library is dominated by
branches that cannot be covered by any test:

- Exception landing pads.  GCC emits a branch to the unwinder for any
  operation that may throw, so `return {a, b};` and `v.emplace_back(x)`
  each report an uncovered branch despite containing no conditional.
  gcov labels these "(throw)", and they disappear under
  -fno-exceptions.
- assert() failure edges, reachable only by aborting the process.
- doctest's CHECK() internals.  A single passing assertion reports 14 of
  24 branches uncovered, because a passing assertion never takes the
  failure-message, exception, or debugger-break paths.

Each of these is multiplied by the number of template instantiations,
since gcov reports a source line's branches once per instantiation.  A
single CHECK() inside a two-type TEST_CASE_TEMPLATE contributes about
... (continued)

606 of 813 branches covered (74.54%)

Branch coverage included in aggregate %.

426 of 457 relevant lines covered (93.22%)

99.43 hits per line

Jobs
ID Job ID Ran Files Coverage
1 35271485144.1 17 Sep 2026 08:34PM UTC 13
81.26
GitHub Action Run
Source Files on build 35271485144
  • Tree
  • List 13
  • Changed 12
  • Source Changed 0
  • Coverage Changed 12
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #35271485144
  • 89c8bd9d on github
  • Prev Build on main (#35167891298)
  • Next Build on main (#35272030931)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc