combi
combi copied to clipboard
Four tests fail with python >= 3.8
When packaging this package (version 1.1.2 from the PyPI tarball) for openSUSE (and trying to remove dependency on nose from it, BTW, if you can rewrite that test_extensive
construct into normal pytest/parametrized test, then I have a bottle of drink of your own choice to send you!), anyway when running the test suite with Python >= 3.8 I got these four tests to error (not even fail):
[ 31s] + export PYTHONPATH=/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.6/site-packages
[ 31s] + PYTHONPATH=/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.6/site-packages
[ 31s] + python3.6 /home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.6/site-packages/test_combi/scripts/_test_combi.py
[ 120s] ..................................
[ 120s] ----------------------------------------------------------------------
[ 120s] Ran 34 tests in 87.666s
[ 120s]
[ 120s] OK
[ 121s] ++ '[' -f _current_flavor ']'
[ 121s] ++ cat _current_flavor
[ 121s] + last_flavor=python36
[ 121s] + '[' -z python36 ']'
[ 121s] + '[' python36 '!=' python39 ']'
[ 121s] + '[' -d build ']'
[ 121s] + '[' -d _build.python39 ']'
[ 121s] + echo python39
[ 121s] + python_flavor=python39
[ 121s] + export PYTHONPATH=/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages
[ 121s] + PYTHONPATH=/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages
[ 121s] + python3.9 /home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/test_combi/scripts/_test_combi.py
[ 180s] ......E...E..EE...................
[ 180s] ======================================================================
[ 180s] ERROR: test_combi.test_extensive.test_1
[ 180s] ----------------------------------------------------------------------
[ 180s] Traceback (most recent call last):
[ 180s] File "/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/combi/perming/perm_space.py", line 686, in <genexpr>
[ 180s] next(free_values_perm_iterator))
[ 180s] StopIteration
[ 180s]
[ 180s] The above exception was the direct cause of the following exception:
[ 180s]
[ 180s] Traceback (most recent call last):
[ 180s] File "/usr/lib/python3.9/site-packages/nose/case.py", line 197, in runTest
[ 180s] self.test(*self.arg)
[ 180s] File "<string>", line 1, in test_1
[ 180s] File "<string>", line 1, in <lambda>
[ 180s] File "/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/test_combi/test_extensive.py", line 223, in _check_variation_selection
[ 180s] assert perm_space.index(perm_space[-1]) == perm_space.length - 1
[ 180s] File "/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/combi/perming/perm_space.py", line 683, in __getitem__
[ 180s] tuple(
[ 180s] RuntimeError: generator raised StopIteration
[ 180s]
[ 180s] ======================================================================
[ 180s] ERROR: test_combi.test_extensive.test_2
[ 180s] ----------------------------------------------------------------------
[ 180s] Traceback (most recent call last):
[ 180s] File "/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/combi/perming/perm_space.py", line 686, in <genexpr>
[ 180s] next(free_values_perm_iterator))
[ 180s] StopIteration
[ 180s]
[ 180s] The above exception was the direct cause of the following exception:
[ 180s]
[ 180s] Traceback (most recent call last):
[ 180s] File "/usr/lib/python3.9/site-packages/nose/case.py", line 197, in runTest
[ 180s] self.test(*self.arg)
[ 180s] File "<string>", line 1, in test_2
[ 180s] File "<string>", line 1, in <lambda>
[ 180s] File "/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/test_combi/test_extensive.py", line 223, in _check_variation_selection
[ 180s] assert perm_space.index(perm_space[-1]) == perm_space.length - 1
[ 180s] File "/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/combi/perming/perm_space.py", line 556, in __getitem__
[ 180s] return self.perm_type(self.undapplied[i], perm_space=self)
[ 180s] File "/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/combi/perming/perm_space.py", line 683, in __getitem__
[ 180s] tuple(
[ 180s] RuntimeError: generator raised StopIteration
[ 180s]
[ 180s] ======================================================================
[ 180s] ERROR: test_combi.test_extensive.test_5
[ 180s] ----------------------------------------------------------------------
[ 180s] Traceback (most recent call last):
[ 180s] File "/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/combi/perming/perm_space.py", line 686, in <genexpr>
[ 180s] next(free_values_perm_iterator))
[ 180s] StopIteration
[ 180s]
[ 180s] The above exception was the direct cause of the following exception:
[ 180s]
[ 180s] Traceback (most recent call last):
[ 180s] File "/usr/lib/python3.9/site-packages/nose/case.py", line 197, in runTest
[ 180s] self.test(*self.arg)
[ 180s] File "<string>", line 1, in test_5
[ 180s] File "<string>", line 1, in <lambda>
[ 180s] File "/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/test_combi/test_extensive.py", line 223, in _check_variation_selection
[ 180s] assert perm_space.index(perm_space[-1]) == perm_space.length - 1
[ 180s] File "/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/combi/perming/perm_space.py", line 683, in __getitem__
[ 180s] tuple(
[ 180s] RuntimeError: generator raised StopIteration
[ 180s]
[ 180s] ======================================================================
[ 180s] ERROR: test_combi.test_extensive.test_6
[ 180s] ----------------------------------------------------------------------
[ 180s] Traceback (most recent call last):
[ 180s] File "/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/combi/perming/perm_space.py", line 686, in <genexpr>
[ 180s] next(free_values_perm_iterator))
[ 180s] StopIteration
[ 180s]
[ 180s] The above exception was the direct cause of the following exception:
[ 180s]
[ 180s] Traceback (most recent call last):
[ 180s] File "/usr/lib/python3.9/site-packages/nose/case.py", line 197, in runTest
[ 180s] self.test(*self.arg)
[ 180s] File "<string>", line 1, in test_6
[ 180s] File "<string>", line 1, in <lambda>
[ 180s] File "/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/test_combi/test_extensive.py", line 223, in _check_variation_selection
[ 180s] assert perm_space.index(perm_space[-1]) == perm_space.length - 1
[ 180s] File "/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/combi/perming/perm_space.py", line 554, in __getitem__
[ 180s] return self.unsliced[i + self.canonical_slice.start]
[ 180s] File "/home/abuild/rpmbuild/BUILDROOT/python-combi-1.1.2-0.x86_64/usr/lib/python3.9/site-packages/combi/perming/perm_space.py", line 683, in __getitem__
[ 180s] tuple(
[ 180s] RuntimeError: generator raised StopIteration
[ 180s]
[ 180s] ----------------------------------------------------------------------
[ 180s] Ran 34 tests in 57.982s
[ 180s]
[ 180s] FAILED (errors=4)
This is the complete build log with all versions of packages used and steps taken.
I'll check it out, thanks for reporting. Out of curiosity, what are you using Combi for? It never really got popular like I hoped it would get.
Can you try removing Combi, installing python_toolbox
and running the tests on it? It includes Combi, you can just from python_toolbox import combi
Also, with python_toolbox
you can run the tests using Pytest instead of nose.
Out of curiosity, what are you using Combi for? It never really got popular like I hoped it would get.
It is part of openSUSE Linux distribution, https://build.opensuse.org/package/show/openSUSE:Factory/python-combi
Can you try removing Combi, installing
python_toolbox
and running the tests on it?
I would rather not. Is Combi project still alive or did you kill in favour of python_toolbox
? Also, distributions (Linux or otherwise) usually quite prefer to use individual components, the sentence “The Python Toolbox contains 100+ useful little tools.” sounds like a disaster to me.
Interesting, I didn't know it's in openSUSE. I wonder who has been using it, because in all these years, I spoke to maybe 1-2 people who used it. This issue is number 5 in the repo.
Unfortunately I killed it today: https://github.com/cool-RR/combi/commit/0142389599a394298299bed7e95c689b3790a457
the sentence “The Python Toolbox contains 100+ useful little tools.” sounds like a disaster to me.
I agree, it's a big problem and probably not fit to be shipped with a Linux distro. It's just not in my priorities to maintain combi
and fix bugs. It's probably best if it gets removed.
OK, so just because I did the work:
- denose-clear-trailing-space.patch just NOOP patch removing trailing whitespace
- denose.patch actually removing the need of nose
We will probably eventually remove the package from openSUSE.
Thanks, pushed to master. Do you also need a release?
I don't need to (we can happily live with those patches in our package), but it would be nice for others.
Released version 1.1.4 with your fixes. Thanks for your report.