I built 6440 packages build-depending on dh-python in one way or
another. 1483 failed, and 1124 of them say "NO TESTS RAN" in the logs.
My guess is that most of these 1124 have no tests at all, rather than
having a misconfigured setup. A unittest is the pybuild default test framework, unittest is used and fails to find any tests, hence all of
these failures.
4. We could make this failure opt-in in dh-python. Maybe via an explicit
--test-unittest option that selects the unittest runner. If you don't
explicitly select this runner, you'd get an attempt to run tests by
with unittest, and no failure if no tests are found.
I like option 4 for the above reason. But implementing this would
mean that all of the packages that currently *do* use unittest (intentionally, but without having to code it explicitly as it's the
default) would suddenly not have any tests running until they
proactively add --test-unittest or set PYBUILD_TEST_UNITTEST = 1 or
similar. This seems like an unfortunate consequence.
From my personal experience, the most common cause of missing testsis because d/watch follow pypi where the tarball is incomplete
and the typical fix is to switch to github tarball.
Could this "1139 NO TESTS RAN" correlated with d/watch ?
Thanks. I think some variation of #4 is the right answer. Causing a thousand packages to FTBFS isn't great. I would find it easier to have an environment variable (similar to what you suggested for #3) instead of adding an override, but that's moreof an implementation detail.
Scott K
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 350 |
Nodes: | 16 (2 / 14) |
Uptime: | 09:44:19 |
Calls: | 7,625 |
Files: | 12,793 |
Messages: | 5,686,483 |