bug#42553: python-gevent is broken on i686-linux (tests fail)
Hi Jakub, Jakub Kądziołka writes: > On Thu Jul 14, 2022 at 4:40 AM CEST, Maxim Cournoyer wrote: >> Finally disabled the test in 692c2ad327. >> >> Closing. > > Are we sure this is the appropriate course of action? It sounds like the > test is exposing a bug in our packaging that might affect users of > python-gevent. It might be better to have the package build than not, of > course, but still we might want to investigate why the test fails. The issue was reported and closed upstream many versions ago. I'm positive python-gevent works fine in Guix. It's just the test_unlink test that fails for unknown reasons on i686. I wouldn't loose sleep on it. Thanks, Maxim
bug#42553: python-gevent is broken on i686-linux (tests fail)
On Thu Jul 14, 2022 at 4:40 AM CEST, Maxim Cournoyer wrote: > Finally disabled the test in 692c2ad327. > > Closing. Are we sure this is the appropriate course of action? It sounds like the test is exposing a bug in our packaging that might affect users of python-gevent. It might be better to have the package build than not, of course, but still we might want to investigate why the test fails. Regards, Kuba
bug#42553: python-gevent is broken on i686-linux (tests fail)
Hi, Maxim Cournoyer writes: > Hello, > > Jakub Kądziołka writes: > >> The package python-gevent doesn't build on i686-linux, the following >> test failure occurs: >> >> == >> FAIL: test_unlink (gevent.tests.test__core_stat.TestCoreStat) >> -- >> Traceback (most recent call last): >> File >> "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/testing/errorhandler.py", >> line 47, in wrapper >> return method(self, *args, **kwargs) >> File >> "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/testing/errorhandler.py", >> line 34, in wrapper >> return method(self, *args, **kwargs) >> File >> "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/testing/testcase.py", >> line 182, in wrapper >> return method(self, *args, **kwargs) >> File >> "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/tests/test__core_stat.py", >> line 114, in test_unlink >> self._check_attr('attr', True) >> File >> "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/tests/test__core_stat.py", >> line 66, in _check_attr >> self.assertIsNone(x, name) >> AssertionError: os.stat_result(st_mode=997, st_ino=0, >> st_dev=74395714104328192, st_nlink=3, st_uid=0, st_gid=0, >> st_size=6851593278123409408, st_atime=1595260873, st_mtime=0, st_ctime=-2) >> is not None : attr >> >> -- >> Ran 48 tests in 1.238s >> > > Just a follow-up to mention that this still occurs when building with > --system=i686-linux, even with the recent python-gevent update to > 20.9.0. Finally disabled the test in 692c2ad327. Closing. Thanks for the report! Maxim
bug#42553: python-gevent is broken on i686-linux (tests fail)
Hello, Jakub Kądziołka writes: > The package python-gevent doesn't build on i686-linux, the following > test failure occurs: > > == > FAIL: test_unlink (gevent.tests.test__core_stat.TestCoreStat) > -- > Traceback (most recent call last): > File > "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/testing/errorhandler.py", > line 47, in wrapper > return method(self, *args, **kwargs) > File > "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/testing/errorhandler.py", > line 34, in wrapper > return method(self, *args, **kwargs) > File > "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/testing/testcase.py", > line 182, in wrapper > return method(self, *args, **kwargs) > File > "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/tests/test__core_stat.py", > line 114, in test_unlink > self._check_attr('attr', True) > File > "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/tests/test__core_stat.py", > line 66, in _check_attr > self.assertIsNone(x, name) > AssertionError: os.stat_result(st_mode=997, st_ino=0, > st_dev=74395714104328192, st_nlink=3, st_uid=0, st_gid=0, > st_size=6851593278123409408, st_atime=1595260873, st_mtime=0, st_ctime=-2) is > not None : attr > > -- > Ran 48 tests in 1.238s > Just a follow-up to mention that this still occurs when building with --system=i686-linux, even with the recent python-gevent update to 20.9.0. Maxim
bug#42553: python-gevent is broken on i686-linux (tests fail)
The package python-gevent doesn't build on i686-linux, the following test failure occurs: == FAIL: test_unlink (gevent.tests.test__core_stat.TestCoreStat) -- Traceback (most recent call last): File "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/testing/errorhandler.py", line 47, in wrapper return method(self, *args, **kwargs) File "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/testing/errorhandler.py", line 34, in wrapper return method(self, *args, **kwargs) File "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/testing/testcase.py", line 182, in wrapper return method(self, *args, **kwargs) File "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/tests/test__core_stat.py", line 114, in test_unlink self._check_attr('attr', True) File "/tmp/guix-build-python-gevent-20.6.2.drv-0/gevent-20.6.2/build/lib.linux-i686-3.8/gevent/tests/test__core_stat.py", line 66, in _check_attr self.assertIsNone(x, name) AssertionError: os.stat_result(st_mode=997, st_ino=0, st_dev=74395714104328192, st_nlink=3, st_uid=0, st_gid=0, st_size=6851593278123409408, st_atime=1595260873, st_mtime=0, st_ctime=-2) is not None : attr -- Ran 48 tests in 1.238s I have created a simple standalone script based on this test case: import os, tempfile, gevent fd, path = tempfile.mkstemp('.test') os.close(fd) hub = gevent.get_hub() watcher = hub.loop.stat(path, interval=-1) hub.loop.update_now() gevent.spawn_later(0.5, os.unlink, path) hub.wait(watcher) print(watcher.attr) print(watcher.prev) After adding a (delete 'check) to python-gevent's arguments, we observe the following: % ./pre-inst-env guix environment --ad-hoc python python-gevent -- python3 ~/tmp/gevent-test.py None os.stat_result(st_mode=33152, st_ino=44162375, st_dev=2052, st_nlink=1, st_uid=1000, st_gid=1000, st_size=0, st_atime=1595787602, st_mtime=1595787602, st_ctime=1595787602) % ./pre-inst-env guix environment --system=i686-linux --ad-hoc python python-gevent -- python3 ~/tmp/gevent-test.py os.stat_result(st_mode=1000, st_ino=0, st_dev=189675956338688000, st_nlink=1000, st_uid=0, st_gid=0, st_size=6853855360088801280, st_atime=1595787555, st_mtime=0, st_ctime=-2) os.stat_result(st_mode=33152, st_ino=2052, st_dev=2052, st_nlink=1, st_uid=1000, st_gid=1000, st_size=17592186044416, st_atime=1595787555, st_mtime=1595787555, st_ctime=0) Namely, the i686 variant returns entirely bogus values. I have tried reproducing this in a Guix-less environment in a Docker container based on the i386/debian:bullseye image, but I haven't had any luck. Regards, Jakub Kądziołka signature.asc Description: PGP signature