Closed videlec closed 2 years ago
@saraedum There is something fishy happening in the CI https://github.com/flatsurf/surface-dynamics/runs/4742660015?check_suite_focus=true : the setup.py
creates a segfault.
I'll try to reproduce this locally. Not that much has changed from the working setup to the broken one:
broken working
argon2-cffi 21.3.0 pyhd8ed1ab_0 | argon2-cffi 21.1.0 py39h3811e60_2
argon2-cffi-bindings 21.2.0 py39h3811e60_1 <
attrs 21.4.0 pyhd8ed1ab_0 | async_generator 1.10 py_0
> attrs 21.2.0 pyhd8ed1ab_0
binutils_linux-64 2.36 hf3e587d_4 | binutils_linux-64 2.36 hf3e587d_1
bzip2 1.0.8 h7f98852_4 <
cypari2 2.1.2 py39h2d52071_3 | cypari2 2.1.2 py39h2d52071_2
cysignals 1.11.2 py39hadcdca9_0 | cysignals 1.10.3 py39hadcdca9_2
cython 0.29.26 py39he80948d_0 | cython 0.29.24 py39he80948d_1
decorator 5.1.1 pyhd8ed1ab_0 | decorator 5.1.0 pyhd8ed1ab_0
entrypoints 0.3 pyhd8ed1ab_1003 | entrypoints 0.3 py39hde42818_1002
expat 2.4.2 h9c3ff4c_0 | expat 2.4.1 h9c3ff4c_0
flit-core 3.6.0 pyhd8ed1ab_0 <
fonttools 4.28.5 py39h3811e60_0 | fonttools 4.28.2 py39h3811e60_0
gcc 9.4.0 h192d537_4 | gcc 9.4.0 h192d537_1
gcc_linux-64 9.4.0 h391b98a_4 | gcc_linux-64 9.4.0 h391b98a_1
gmpy2 2.1.2 py39h78fa15d_0 | gmpy2 2.1.0rc1 py39h78fa15d_0
gxx 9.4.0 h192d537_4 | gxx 9.4.0 h192d537_1
gxx_linux-64 9.4.0 h0316aca_4 | gxx_linux-64 9.4.0 h0316aca_1
igraph 0.9.6 ha184e22_0 | igraph 0.9.5 ha184e22_0
importlib-metadata 4.10.0 py39hf3d152e_0 | importlib-metadata 4.8.2 py39hf3d152e_0
ipykernel 6.7.0 py39hef51801_0 | ipykernel 6.5.1 py39hef51801_0
ipython 7.31.0 py39hf3d152e_0 | ipython 7.30.0 py39hf3d152e_0
jsonschema 4.4.0 pyhd8ed1ab_0 | jsonschema 4.2.1 pyhd8ed1ab_0
libcurl 7.81.0 h494985f_0 | libcurl 7.80.0 h494985f_0
libnsl 2.0.0 h7f98852_0 <
matplotlib-base 3.5.1 py39h2fa2bec_0 | matplotlib-base 3.5.0 py39h2fa2bec_0
> more-itertools 8.12.0 pyhd8ed1ab_0
nbclient 0.5.10 pyhd8ed1ab_1 | nbclient 0.5.9 pyhd8ed1ab_0
nbconvert 6.4.0 py39hf3d152e_0 | nbconvert 6.3.0 py39hf3d152e_1
nest-asyncio 1.5.4 pyhd8ed1ab_0 | nest-asyncio 1.5.1 pyhd8ed1ab_0
notebook 6.4.7 pyha770c72_0 | notebook 6.4.6 pyha770c72_0
numpy 1.22.0 py39h91f2184_0 | numpy 1.21.4 py39hdbf815f_0
pandoc 2.17 h7f98852_0 | pandoc 2.16.2 h7f98852_0
pickleshare 0.7.5 py_1003 | pickleshare 0.7.5 py39hde42818_1002
pplpy 0.8.6 py39h68068d8_1 | pplpy 0.8.6 py39h68068d8_0
prompt-toolkit 3.0.24 pyha770c72_0 | prompt-toolkit 3.0.22 pyha770c72_0
psutil 5.9.0 py39h3811e60_0 | psutil 5.8.0 py39h3811e60_2
pygments 2.11.2 pyhd8ed1ab_0 | pygments 2.10.0 pyhd8ed1ab_0
pytest 6.2.5 py39hf3d152e_2 | pytest 6.2.5 py39hf3d152e_1
pytest-forked 1.4.0 pyhd8ed1ab_0 | pytest-forked 1.3.0 pyhd3deb0d_0
pytest-xdist 2.5.0 pyhd8ed1ab_0 | pytest-xdist 2.4.0 pyhd8ed1ab_0
python 3.9.9 h543edf9_0_cpython | python 3.9.7 hf930737_3_cpython
setuptools 60.5.0 py39hf3d152e_0 | setuptools 59.4.0 py39hf3d152e_0
tbb 2021.5.0 h4bd325d_0 | tbb 2021.4.0 h4bd325d_1
wheel 0.37.1 pyhd8ed1ab_0 | wheel 0.37.0 pyhd8ed1ab_1
zipp 3.7.0 pyhd8ed1ab_0 | zipp 3.6.0 pyhd8ed1ab_0
zstd 1.5.1 ha95c52a_0 | zstd 1.5.0 ha95c52a_0
This is maybe what was behind https://github.com/conda-forge/sagelib-feedstock/issues/115
With the exactly these packages, pip install
just hangs for me.
@isuruf when I try to pip install this package into the following environment, pip just hangs:
_libgcc_mutex=0.1=conda_forge _openmp_mutex=4.5=1_gnu arb=2.19.0=h7e34412_1 argon2-cffi=21.3.0=pyhd8ed1ab_0 argon2-cffi-bindings=21.2.0=py39h3811e60_1 arpack=3.7.0=hdefa2d7_2 attrs=21.4.0=pyhd8ed1ab_0 backcall=0.2.0=pyh9f0ad1d_0 backports=1.0=py_2 backports.functools_lru_cache=1.6.4=pyhd8ed1ab_0 bdw-gc=8.0.4=h0efe328_0 binutils=2.36.1=hdd6e379_2 binutils_impl_linux-64=2.36.1=h193b22a_2 binutils_linux-64=2.36=hf3e587d_4 bleach=4.1.0=pyhd8ed1ab_0 brotli=1.0.9=h7f98852_6 brotli-bin=1.0.9=h7f98852_6 bzip2=1.0.8=h7f98852_4 c-ares=1.18.1=h7f98852_0 c-compiler=1.3.0=h7f98852_0 ca-certificates=2021.10.8=ha878542_0 cddlib=1!0.94m=h9202a9a_0 certifi=2021.10.8=py39hf3d152e_1 cffi=1.15.0=py39h4bc2ebd_0 cliquer=1.22=h36c2ea0_0 cxx-compiler=1.3.0=h4bd325d_0 cycler=0.11.0=pyhd8ed1ab_0 cypari2=2.1.2=py39h2d52071_3 cysignals=1.11.2=py39hadcdca9_0 cython=0.29.26=py39he80948d_0 debugpy=1.5.1=py39he80948d_0 decorator=5.1.1=pyhd8ed1ab_0 defusedxml=0.7.1=pyhd8ed1ab_0 ecl=21.2.1=h368658b_1 eclib=20210503=h717840f_2 ecm=7.0.4=h9202a9a_1002 entrypoints=0.3=pyhd8ed1ab_1003 execnet=1.9.0=pyhd8ed1ab_0 expat=2.4.2=h9c3ff4c_0 fflas-ffpack=2.4.3=h912ac81_2 flit-core=3.6.0=pyhd8ed1ab_0 font-ttf-dejavu-sans-mono=2.37=hab24e00_0 font-ttf-inconsolata=3.000=h77eed37_0 font-ttf-source-code-pro=2.038=h77eed37_0 font-ttf-ubuntu=0.83=hab24e00_0 fontconfig=2.13.1=hba837de_1005 fonts-conda-ecosystem=1=0 fonts-conda-forge=1=0 fonttools=4.28.5=py39h3811e60_0 freetype=2.10.4=h0708190_1 future=0.18.2=py39hf3d152e_4 gap-core=4.11.1=h1725ef4_2 gap-defaults=4.11.1=ha770c72_2 gcc=9.4.0=h192d537_4 gcc_impl_linux-64=9.4.0=h03d3576_11 gcc_linux-64=9.4.0=h391b98a_4 gf2x=1.3.0=h75e9656_1 giac=1.6.0.47=h7829e96_3 giflib=5.2.1=h36c2ea0_2 givaro=4.1.1=h192cbe9_1 glpk=4.65=h9202a9a_1004 gmp=6.2.1=h58526e2_0 gmpy2=2.1.2=py39h78fa15d_0 gsl=2.7=he838d99_0 gxx=9.4.0=h192d537_4 gxx_impl_linux-64=9.4.0=h03d3576_11 gxx_linux-64=9.4.0=h0316aca_4 icu=69.1=h9c3ff4c_0 igraph=0.9.6=ha184e22_0 iml=1.0.5=hd75c201_1003 importlib-metadata=4.10.0=py39hf3d152e_0 importlib_resources=5.4.0=pyhd8ed1ab_0 iniconfig=1.1.1=pyh9f0ad1d_0 ipykernel=6.7.0=py39hef51801_0 ipython=7.31.0=py39hf3d152e_0 ipython_genutils=0.2.0=py_1 ipywidgets=7.6.5=pyhd8ed1ab_0 jbig=2.1=h7f98852_2003 jedi=0.18.1=py39hf3d152e_0 jinja2=3.0.3=pyhd8ed1ab_0 jpeg=9d=h36c2ea0_0 jsonschema=4.4.0=pyhd8ed1ab_0 jupyter_client=7.1.0=pyhd8ed1ab_0 jupyter_core=4.9.1=py39hf3d152e_1 jupyterlab_pygments=0.1.2=pyh9f0ad1d_0 jupyterlab_widgets=1.0.2=pyhd8ed1ab_0 kernel-headers_linux-64=2.6.32=he073ed8_15 kiwisolver=1.3.2=py39h1a9c180_1 krb5=1.19.2=h48eae69_3 lcalc=1.23=h8cd7e2e_1006 lcms2=2.12=hddcbb42_0 ld_impl_linux-64=2.36.1=hea4e1c9_2 lerc=3.0=h9c3ff4c_0 libblas=3.9.0=12_linux64_openblas libbraiding=1.1=h58526e2_0 libbrial=1.2.10=hb0536f6_0 libbrotlicommon=1.0.9=h7f98852_6 libbrotlidec=1.0.9=h7f98852_6 libbrotlienc=1.0.9=h7f98852_6 libcblas=3.9.0=12_linux64_openblas libcurl=7.81.0=h494985f_0 libdeflate=1.8=h7f98852_0 libedit=3.1.20191231=he28a2e2_2 libev=4.33=h516909a_1 libffi=3.4.2=h7f98852_5 libflint=2.7.1=hd3cd37b_ntl_102 libgcc-devel_linux-64=9.4.0=hd854feb_11 libgcc-ng=11.2.0=h1d223b6_11 libgd=2.3.3=h3cfcdeb_1 libgfortran-ng=11.2.0=h69a702a_11 libgfortran5=11.2.0=h5c6108e_11 libgomp=11.2.0=h1d223b6_11 libhomfly=1.02r6=h36c2ea0_0 libiconv=1.16=h516909a_0 liblapack=3.9.0=12_linux64_openblas liblapacke=3.9.0=12_linux64_openblas libnghttp2=1.43.0=ha19adfc_1 libnsl=2.0.0=h7f98852_0 libopenblas=0.3.18=pthreads_h8fe5266_0 libpng=1.6.37=h21135ba_2 libsanitizer=9.4.0=h79bfe98_11 libsodium=1.0.18=h36c2ea0_1 libssh2=1.10.0=ha35d2d1_2 libstdcxx-devel_linux-64=9.4.0=hd854feb_11 libstdcxx-ng=11.2.0=he4da1e4_11 libtiff=4.3.0=h6f004c6_2 libuuid=2.32.1=h7f98852_1000 libwebp=1.2.1=h3452ae3_0 libwebp-base=1.2.1=h7f98852_0 libxml2=2.9.12=h885dcf4_1 libzlib=1.2.11=h36c2ea0_1013 linbox=1.6.3=h120243f_5 lrcalc=1.2=h58526e2_1000 lz4-c=1.9.3=h9c3ff4c_1 m4ri=20140914=h7ca028e_1005 m4rie=20150908=h7ca028e_1001 markupsafe=2.0.1=py39h3811e60_1 matplotlib-base=3.5.1=py39h2fa2bec_0 matplotlib-inline=0.1.3=pyhd8ed1ab_0 metis=5.1.0=h58526e2_1006 mistune=0.8.4=py39h3811e60_1005 mpc=1.2.1=h9f54685_0 mpfi=1.5.4=h9f54685_1001 mpfr=4.1.0=h9202a9a_1 mpmath=1.2.1=pyhd8ed1ab_0 munkres=1.1.4=pyh9f0ad1d_0 nauty=2.7.2=h7f98852_0 nbclient=0.5.10=pyhd8ed1ab_1 nbconvert=6.4.0=py39hf3d152e_0 nbformat=5.1.3=pyhd8ed1ab_0 ncurses=6.2=h58526e2_4 nest-asyncio=1.5.4=pyhd8ed1ab_0 notebook=6.4.7=pyha770c72_0 ntl=11.4.3=hef3c4d3_1 numpy=1.22.0=py39h91f2184_0 olefile=0.46=pyh9f0ad1d_1 openjpeg=2.4.0=hb52868f_1 openssl=3.0.0=h7f98852_2 packaging=21.3=pyhd8ed1ab_0 pandoc=2.17=h7f98852_0 pandocfilters=1.5.0=pyhd8ed1ab_0 pari=2.13.2=he2feae2_1_pthread pari-galdata=0.0.20180411=0 pari-seadata-small=0.0.20090618=0 parso=0.8.3=pyhd8ed1ab_0 perl=5.32.1=1_h7f98852_perl5 pexpect=4.8.0=pyh9f0ad1d_2 pickleshare=0.7.5=py_1003 pillow=8.4.0=py39ha612740_0 pip=21.3.1=pyhd8ed1ab_0 planarity=3.0.0.5=h36c2ea0_1002 pluggy=1.0.0=py39hf3d152e_2 ppl=1.2=h8c76519_1004 pplpy=0.8.6=py39h68068d8_1 prometheus_client=0.12.0=pyhd8ed1ab_0 prompt-toolkit=3.0.24=pyha770c72_0 psutil=5.9.0=py39h3811e60_0 ptyprocess=0.7.0=pyhd3deb0d_0 py=1.11.0=pyh6c4a22f_0 pycparser=2.21=pyhd8ed1ab_0 pygments=2.11.2=pyhd8ed1ab_0 pynac=0.7.27=py39hdf45853_3 pyparsing=3.0.6=pyhd8ed1ab_0 pyrsistent=0.18.0=py39h3811e60_0 pytest=6.2.5=py39hf3d152e_2 pytest-forked=1.4.0=pyhd8ed1ab_0 pytest-xdist=2.5.0=pyhd8ed1ab_0 python=3.9.9=h543edf9_0_cpython python-dateutil=2.8.2=pyhd8ed1ab_0 python_abi=3.9=2_cp39 pyzmq=22.3.0=py39h37b5a0c_1 ratpoints=2.1.3=h445213a_1002 readline=8.1=h46c0cb4_0 rw=0.9=h7f98852_0 sagelib=9.3=py39hc901c0d_6 sagemath-db-conway-polynomials=0.5.0=ha878542_1 scipy=1.7.3=py39hee8e79c_0 send2trash=1.8.0=pyhd8ed1ab_0 setuptools=60.5.0=py39hf3d152e_0 singular=4.2.0.p3=h8b94468_1 six=1.16.0=pyh6c4a22f_0 sqlite=3.37.0=h9cd32fc_0 suitesparse=5.10.1=h9e50725_1 symmetrica=2.0=h58526e2_1007 sympy=1.9=py39hf3d152e_1 sysroot_linux-64=2.12=he073ed8_15 tbb=2021.5.0=h4bd325d_0 terminado=0.12.1=py39hf3d152e_1 testpath=0.5.0=pyhd8ed1ab_0 tk=8.6.11=h27826a3_1 toml=0.10.2=pyhd8ed1ab_0 tornado=6.1=py39h3811e60_2 traitlets=5.1.1=pyhd8ed1ab_0 tzdata=2021e=he74cb21_0 wcwidth=0.2.5=pyh9f0ad1d_2 webencodings=0.5.1=py_1 wheel=0.37.1=pyhd8ed1ab_0 widgetsnbextension=3.5.2=py39hf3d152e_1 xz=5.2.5=h516909a_1 zeromq=4.3.4=h9c3ff4c_1 zipp=3.7.0=pyhd8ed1ab_0 zlib=1.2.11=h36c2ea0_1013 zn_poly=0.9.2=h9202a9a_0 zstd=1.5.1=ha95c52a_0
However, when I downgrade cypari2 from 2.1.2=py39h2d52071_3
to 2.1.2=py39h2d52071_2
everything seems to work.
What has changed in that build of cypari2?
@videlec locally it does not hang anymore if I remove the import
of sage.all
from setup.py
.
I can import sage.all
without problem in a normal Python session in this environment but inside pip there seems to be a problem.
Now there is a doctest failing at least:
File "surface_dynamics/flat_surfaces/quadratic_strata.py", line 109, in surface_dynamics.flat_surfaces.quadratic_strata
Failed example:
for c in cc:
print(c)
print(c.permutation_representative())
Exception raised:
Traceback (most recent call last):
File "/usr/share/miniconda/envs/test/lib/python3.9/site-packages/sage/doctest/forker.py", line 714, in _run
self.compile_and_execute(example, compiler, test.globs)
File "/usr/share/miniconda/envs/test/lib/python3.9/site-packages/sage/doctest/forker.py", line 1133, in compile_and_execute
exec(compiled, globs)
File "<doctest surface_dynamics.flat_surfaces.quadratic_strata[17]>", line 3, in <module>
print(c.permutation_representative())
File "sage/structure/sage_object.pyx", line 194, in sage.structure.sage_object.SageObject.__repr__ (build/cythonized/sage/structure/sage_object.c:2473)
result = reprfunc()
File "/usr/share/miniconda/envs/test/lib/python3.9/site-packages/surface_dynamics/interval_exchanges/template.py", line 938, in _repr_
return str(f(*self._repr_options))
File "/usr/share/miniconda/envs/test/lib/python3.9/site-packages/surface_dynamics/interval_exchanges/template.py", line 1065, in str
return sep.join([' '.join(l0), ' '.join(l1)])
TypeError: sequence item 6: expected str instance, int found
Checklist
doc/news/