Open
Description
Hypothesis requires our self-test suite to maintain 100% branch coverage of Hypothesis, after various exclude-patterns are applied, specifically from the coverage
tox task which runs most of our tests under CPython 3.10 and has historically been separated out for performance reasons.
The excluded branches are a combination of version-specific code, integration with optional dependencies, cpython/pypy differences, and occasionally tricky code that just isn't worth the trouble to cover. But... we could combine coverage across CI tasks now, and from Python 3.12 onwards the sys.monitoring
functionality allows for very low-overhead coverage collection.
So what if we took advantage of that?
- enable
coverage
in all tasks that are (a) running in CI, and (b) havesys.monitoring
for performance - add the aggregation job, and delete our current coverage job.
- make whatever reductions to our nocover pragmas this enables