Created attachment 221705 [details] py-scikit-sparse_python3.9.patch The port fails to build with Python 3.9: sksparse/cholmod.c:19722:40: error: no member named 'tp_print' in 'struct _typeobject' __pyx_type_8sksparse_7cholmod_Common.tp_print = 0; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ sksparse/cholmod.c:19731:40: error: no member named 'tp_print' in 'struct _typeobject' __pyx_type_8sksparse_7cholmod_Factor.tp_print = 0; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ sksparse/cholmod.c:19751:58: error: no member named 'tp_print' in 'struct _typeobject' __pyx_type_8sksparse_7cholmod__CholmodSparseDestructor.tp_print = 0; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ sksparse/cholmod.c:19762:57: error: no member named 'tp_print' in 'struct _typeobject' __pyx_type_8sksparse_7cholmod__CholmodDenseDestructor.tp_print = 0; This is filed upstream as caused by C file pregenerated with an old version of Cython (https://github.com/scikit-sparse/scikit-sparse/issues/62). Since this port already has USE_PYTHON=cython, removing the C file forces the build to regenerate it with current Cython and fixes the build.
Maciej, Thanks for the patch. The comment in https://github.com/scikit-sparse/scikit-sparse/issues/62 says that the problem was fixed in 0.4.6. The port is at 0.4.6. Yuri