Open charlieshanley opened 3 years ago
Works for me with 3.9 on master
.
...gs]$ nix-build -A python3Packages.pyroma --check
checking outputs of '/nix/store/p6lfp2xxq3g7w01p07kx033b7pn9jv1j-python3.9-pyroma-3.2.drv'...
[...]
================= 9 passed, 2 deselected, 2 warnings in 0.61s ==================
Finished executing pytestCheckPhase
pytestcachePhase
/nix/store/zf8m6v0lf8vinw6bfjx8dczxwd3xm906-python3.9-pyroma-3.2
3.7 fails indeed:
gs]$ nix-build -A python37Packages.pyroma
these derivations will be built:
/nix/store/a728y6cc68cllh37qkhwiaxzhja0d6c5-python3.7-pyroma-3.2.drv
[...]
Executing pytestCheckPhase
============================= test session starts ==============================
platform linux -- Python 3.7.11, pytest-6.2.4, py-1.10.0, pluggy-0.13.1
rootdir: /build/source
collecting ... Fatal Python error: Segmentation fault
Current thread 0x00007ffff786d340 (most recent call first):
File "/build/source/pyroma/tests.py", line 91 in __getattr__
File "/build/source/pyroma/tests.py", line 91 in __getattr__
[...]
File "/build/source/pyroma/tests.py", line 91 in __getattr__
...
/nix/store/n5dhgplgxawrh6bszhx8yflf1qb0wkrd-pytest-check-hook/nix-support/setup-hook: line 53: 183 Segmentation fault (core dumped) /nix/store/4z7d194syfyp4ghacl4fbd61q4a13kyn-python3-3.7.11/bin/python3.7 -m pytest -k "not PyPITest" pyroma/tests.py
builder for '/nix/store/a728y6cc68cllh37qkhwiaxzhja0d6c5-python3.7-pyroma-3.2.drv' failed with exit code 139
error: build of '/nix/store/a728y6cc68cllh37qkhwiaxzhja0d6c5-python3.7-pyroma-3.2.drv' failed
Disable the tests for Python < 3.8 would be one solution. Upstream claims that there is support for Python > 3.6.
Upstream report: https://github.com/regebro/pyroma/issues/65
FWIW, I bisected this to b86f54b571dc29bd491daeb23aafef18c3e60a94 (which, not surprisingly, was the first commit to enable the test suite for this package).
I believe the issue is https://nedbatchelder.com/blog/201010/surprising_getattr_recursion.html, and also https://bugs.python.org/issue41909. I opened https://github.com/regebro/pyroma/pull/66 which fixes it.
I enabled the tests but unfortunately I didn't test it with Python 3.7.
I marked this as stale due to inactivity. → More info
Describe the bug
A test for the python package
pyroma
produces a segmentation fault under Python 3.7.Steps To Reproduce
Use
--check
if somehow it is already in your nix store. By comparison, building succeeds if I change37
to38
or39
.Expected behavior
Successfully builds and tests, or problematic tests disabled.
Additional context
I encountered this because
pyroma
is a transitive dependency ofpython37.pkgs.google-api-python-client
, via this path:pyroma -> Pillow -> faker -> pytest-randomly -> httplib2 -> google-api-python-client
Notify maintainers
@fabaff -- not listed in maintainers but recently worked on
pyroma
s nixpkgs expression.Metadata
Maintainer information: