phac-nml / mob-suite

MOB-suite: Software tools for clustering, reconstruction and typing of plasmids from draft assemblies
Apache License 2.0
124 stars 33 forks source link

Import Error #172

Closed KeCo26 closed 1 month ago

KeCo26 commented 1 month ago

Hi there,

I have made multiple attempts to use mob-suite and keep running into the same error (stated below). It seems the programme does not call Bio.SeqUtils correctly and therefore can't load the gc_fraction module. I have tried installing via conda, pip and using the install via python setup.py method and all have resulted in this same error. Is there any solution for this? I'd really like to use this software. Thanks!

Traceback (most recent call last): File "/X/anaconda3/envs/mob-suite/bin/mob_cluster", line 33, in sys.exit(load_entry_point('mob-suite==3.1.9', 'console_scripts', 'mob_cluster')()) File "/X/anaconda3/envs/mob-suite/lib/python3.7/site-packages/pkg_resources/init.py", line 479, in load_entry_point return get_distribution(dist).load_entry_point(group, name) File "/X/anaconda3/envs/mob-suite/lib/python3.7/site-packages/pkg_resources/init.py", line 2861, in load_entry_point return ep.load() File "/X/anaconda3/envs/mob-suite/lib/python3.7/site-packages/pkg_resources/init.py", line 2465, in load return self.resolve() File "/X/anaconda3/envs/mob-suite/lib/python3.7/site-packages/pkg_resources/init.py", line 2471, in resolve module = import(self.module_name, fromlist=['name'], level=0) File "/X/anaconda3/envs/mob-suite/lib/python3.7/site-packages/mob_suite-3.1.9-py3.7.egg/mob_suite/mob_cluster.py", line 10, in from mob_suite.utils import \ File "/X/anaconda3/envs/mob-suite/lib/python3.7/site-packages/mob_suite-3.1.9-py3.7.egg/mob_suite/utils.py", line 2, in from Bio.SeqUtils import gc_fraction ImportError: cannot import name 'gc_fraction' from 'Bio.SeqUtils' (/X/anaconda3/envs/mob-suite/lib/python3.7/site-packages/Bio/SeqUtils/init.py)

kbessonov1984 commented 1 month ago

Hello, I just replied to your email. I think your issue is linked to Biopython package older version that did not have the gc_fraction module. I would suggest to make sure your BioPython version is >= 1.80. The most recent version is 1.84 available at https://anaconda.org/conda-forge/biopython. Also I would suggest to update your python environment to version 3.10 and above which might prevent installation of the most recent Biopython library. Please send me your conda environment details by running conda list.

According to the conda recipe in conda-forge the new Biopython 1.84 needs Python 3.9 and above but you have 3.7 https://github.com/conda-forge/biopython-feedstock/blob/main/recipe/meta.yaml

I guess will need to request Python 3.9 and above to make this tool compatible with the recent Biopython and ete3 versions