Skip to content

Fix CI#116

Open
mmore500 wants to merge 1 commit intoemilydolson:mainfrom
mmore500:claude/fix-test-coverage-5tkK5
Open

Fix CI#116
mmore500 wants to merge 1 commit intoemilydolson:mainfrom
mmore500:claude/fix-test-coverage-5tkK5

Conversation

@mmore500
Copy link
Copy Markdown
Collaborator

@mmore500 mmore500 commented May 3, 2026

from @claude

The coverage job installs lcov from Ubuntu's apt repo. When that package upgraded to lcov 2.0, one of its headline changes was "improved error checking and error management" — including promoting line-number mismatches to fatal errors. Under lcov 1.x these were silent or warnings, so identical source/CI configs that passed for months suddenly hard-fail. The mismatch report itself even points at the new flag: "use geninfo --ignore-errors mismatch ... to bypass this error."

In our case geninfo flags PyInit_systematics at systematics_bindings.cpp:180 (declared end line 180, observed end line 841). That gap is just pybind11's PYBIND11_MODULE macro expanding into a much larger function body — nothing in the bindings is actually wrong. The fix is to pass --ignore-errors mismatch to the lcov --capture step. Background discussion: linux-test-project/lcov#209 and #341.

geninfo errors out on pybind11 macro-expanded functions where the
detected end line (e.g. PyInit_systematics at 180 vs 841) differs from
the source line. Bypass with --ignore-errors mismatch so the coverage
job completes.
@mmore500 mmore500 requested a review from emilydolson May 3, 2026 14:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants