macs3-project/MACS

Bug: MACS3 can't installed by pip

dengyang111 opened this issue · 2 comments

Describe the bug
A clear and concise description of what the bug is.
(atac3) [dengy@mu01 Signal]$ pip install cython==0.29.33
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting cython==0.29.33
Using cached https://pypi.tuna.tsinghua.edu.cn/packages/1f/a7/0e28ae6605a3b79724eb0df6e48fd3a654e2bf059e5aacb5074b92258948/Cython-0.29.33-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl (1.9 MB)
Installing collected packages: cython
Attempting uninstall: cython
Found existing installation: Cython 3.0.0
Uninstalling Cython-3.0.0:
Successfully uninstalled Cython-3.0.0
Successfully installed cython-0.29.33
(atac3) [dengy@mu01 Signal]$ pip install macs3
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting macs3
Using cached https://pypi.tuna.tsinghua.edu.cn/packages/2a/3f/600ae5656310e4ba6861bfe53b985c424e0e0855a27c0962bb03b0df9970/MACS3-3.0.0b2.tar.gz (641 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... error
error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> [140 lines of output]
Compiling MACS3/Signal/HMMR_EM.pyx because it changed.
Compiling MACS3/Signal/HMMR_Signal_Processing.pyx because it changed.
Compiling MACS3/Signal/HMMR_HMM.pyx because it changed.
Compiling MACS3/Signal/Prob.pyx because it changed.
Compiling MACS3/Signal/Region.pyx because it changed.
Compiling MACS3/Signal/Pileup.pyx because it changed.
Compiling MACS3/Signal/PileupV2.pyx because it changed.
Compiling MACS3/Signal/PeakModel.pyx because it changed.
Compiling MACS3/Signal/PeakDetect.pyx because it changed.
Compiling MACS3/Signal/SignalProcessing.pyx because it changed.
Compiling MACS3/Signal/FixWidthTrack.pyx because it changed.
Compiling MACS3/Signal/PairedEndTrack.pyx because it changed.
Compiling MACS3/Signal/BedGraph.pyx because it changed.
Compiling MACS3/Signal/ScoreTrack.pyx because it changed.
Compiling MACS3/Signal/CallPeakUnit.pyx because it changed.
Compiling MACS3/Signal/VariantStat.pyx because it changed.
Compiling MACS3/Signal/ReadAlignment.pyx because it changed.
Compiling MACS3/Signal/RACollection.pyx because it changed.
Compiling MACS3/Signal/UnitigRACollection.pyx because it changed.
Compiling MACS3/Signal/PosReadsInfo.pyx because it changed.
Compiling MACS3/Signal/PeakVariants.pyx because it changed.
Compiling MACS3/IO/Parser.pyx because it changed.
Compiling MACS3/IO/PeakIO.pyx because it changed.
Compiling MACS3/IO/BedGraphIO.pyx because it changed.
Compiling MACS3/IO/BAM.pyx because it changed.
[ 1/25] Cythonizing MACS3/IO/BAM.pyx
[ 2/25] Cythonizing MACS3/IO/BedGraphIO.pyx
[ 3/25] Cythonizing MACS3/IO/Parser.pyx
[ 4/25] Cythonizing MACS3/IO/PeakIO.pyx
[ 5/25] Cythonizing MACS3/Signal/BedGraph.pyx
[ 6/25] Cythonizing MACS3/Signal/CallPeakUnit.pyx
[ 7/25] Cythonizing MACS3/Signal/FixWidthTrack.pyx
[ 8/25] Cythonizing MACS3/Signal/HMMR_EM.pyx
[ 9/25] Cythonizing MACS3/Signal/HMMR_HMM.pyx
[10/25] Cythonizing MACS3/Signal/HMMR_Signal_Processing.pyx
[11/25] Cythonizing MACS3/Signal/PairedEndTrack.pyx
[12/25] Cythonizing MACS3/Signal/PeakDetect.pyx
[13/25] Cythonizing MACS3/Signal/PeakModel.pyx
[14/25] Cythonizing MACS3/Signal/PeakVariants.pyx
Traceback (most recent call last):
File "/home/dengy/miniconda3/envs/atac3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in
main()
File "/home/dengy/miniconda3/envs/atac3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/dengy/miniconda3/envs/atac3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
return hook(config_settings)
^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 341, in get_requires_for_build_wheel
return self._get_build_requires(config_settings, requirements=['wheel'])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 323, in _get_build_requires
self.run_setup()
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 488, in run_setup
self).run_setup(setup_script=setup_script)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 338, in run_setup
exec(code, locals())
File "", line 156, in
File "", line 152, in main
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Build/Dependencies.py", line 1134, in cythonize
cythonize_one(*args)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Build/Dependencies.py", line 1280, in cythonize_one
result = compile_single(pyx_file, options, full_module_name=full_module_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Main.py", line 615, in compile_single
return run_pipeline(source, options, full_module_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Main.py", line 539, in run_pipeline
err, enddata = Pipeline.run_pipeline(pipeline, source)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Pipeline.py", line 398, in run_pipeline
data = run(phase, data)
^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Pipeline.py", line 375, in run
return phase(data)
^^^^^^^^^^^
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Pipeline.py", line 52, in generate_pyx_code_stage
module_node.process_implementation(options, result)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/ModuleNode.py", line 222, in process_implementation
self.generate_c_code(env, options, result)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/ModuleNode.py", line 516, in generate_c_code
self.body.generate_function_definitions(env, code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 404, in generate_function_definitions
stat.generate_function_definitions(env, code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 5497, in generate_function_definitions
self.body.generate_function_definitions(self.scope, code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 404, in generate_function_definitions
stat.generate_function_definitions(env, code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 404, in generate_function_definitions
stat.generate_function_definitions(env, code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 2197, in generate_function_definitions
self.generate_function_body(env, code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 1953, in generate_function_body
self.body.generate_execution_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 410, in generate_execution_code
stat.generate_execution_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 410, in generate_execution_code
stat.generate_execution_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 7528, in generate_execution_code
self.body.generate_execution_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 410, in generate_execution_code
stat.generate_execution_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 7109, in generate_execution_code
if_clause.generate_execution_code(code, end_label, is_last=i == last)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 7156, in generate_execution_code
self.body.generate_execution_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 410, in generate_execution_code
stat.generate_execution_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 7109, in generate_execution_code
if_clause.generate_execution_code(code, end_label, is_last=i == last)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 7156, in generate_execution_code
self.body.generate_execution_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 410, in generate_execution_code
stat.generate_execution_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 7109, in generate_execution_code
if_clause.generate_execution_code(code, end_label, is_last=i == last)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 7156, in generate_execution_code
self.body.generate_execution_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 410, in generate_execution_code
stat.generate_execution_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 5998, in generate_execution_code
self.generate_rhs_evaluation_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/Nodes.py", line 6297, in generate_rhs_evaluation_code
self.rhs.generate_evaluation_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/ExprNodes.py", line 11840, in generate_evaluation_code
super(NumBinopNode, self).generate_evaluation_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/ExprNodes.py", line 831, in generate_evaluation_code
self.generate_subexpr_evaluation_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/ExprNodes.py", line 846, in generate_subexpr_evaluation_code
node.generate_evaluation_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/ExprNodes.py", line 831, in generate_evaluation_code
self.generate_subexpr_evaluation_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/ExprNodes.py", line 846, in generate_subexpr_evaluation_code
node.generate_evaluation_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/ExprNodes.py", line 837, in generate_evaluation_code
self.generate_result_code(code)
File "/tmp/pip-build-env-eafvjtoy/overlay/lib/python3.11/site-packages/Cython/Compiler/ExprNodes.py", line 4498, in generate_result_code
assert False, "unexpected type %s and base type %s for indexing (%s)" % (
AssertionError: unexpected type Py_UCS4 and base type Python object for indexing ((FileSourceDescriptor:/tmp/pip-install-wurule1s/macs3_ffea73acdef3455e9ecd582c056e5553/MACS3/Signal/PeakVariants.pyx, 326, 79))
[end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.

To Reproduce
Steps to reproduce the behavior. If possible, could you share the data with us?

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):

  • OS: Linux
  • Python version 3.11.0
  • Numpy version 1.24.2
  • MACS Version [e.g. 2.2.4]

Additional context
Add any other context about the problem here.

Hi @dengyang111 This looks like it is related to #568 , #569 , and #572 . We're working on releasing an updated MACS3 version to address this. Thank you!

taoliu commented

Fixed in release v3.0.0b3