Open vschulz opened 2 years ago
@vschulz First, could you switch to MACS3 branch of codes since right now we are actively testing the codes under python3.8/3.9/3.10? If problem still exists in MACS3, perhaps regenerate a C file Prob.c
from Prob.pyx
using Cython under Python3.10?
Macs3 installs uneventfully using pip install under python3.10. It successfully ran and gave the same number of peaks as macs2 on one sample.
Describe the bug Python 3.10 has a change, I think in cython where use_tracing is now replaced by tracing. It causes failure to install at Prob.c, MACS2/IO/Parser.c and probably more. It can be overcome in one file like sed -i 's/tstate->use_tracing/tstate->tracing/g' Prob.c
To Reproduce To see the problem with python 3.10, you first need to overcome the python version test bug in setup.py eg replace if float(sys.version[:3])<3.6: with (terrible bad hack) if float(sys.version[:3])>3.6:
Expected behavior A clear and concise description of what you expected to happen.
Screenshots If applicable, add screenshots to help explain your problem.
System (please complete the following information):
Additional context x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.10/dist-packages/numpy/core/include -I/usr/include/python3.10 -c MACS2/Prob.c -o build/temp.linux-x86_64-3.10/MACS2/Prob.o -w -O3 -ffast-math -g0 MACS2/Prob.c: In function ‘__Pyx_call_return_trace_func’: MACS2/Prob.c:1412:15: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘use_tracing’; did you mean ‘tracing’?