Closed francicco closed 5 years ago
Hi @francicco
Thanks for raising the issue! The problem was caused by a new release of pandas 4 days ago (0.25.0rc0
) that deprecates Python 2. I have pinned the previous pandas version to fix the problem. Please use hic2cool==0.7.3
to get this change -- it's in the master branch, if you are using an editable install.
One more note: hic2cool will be ending support for Python 2.7 upon its official end of life. See here for more info.
Best, Carl
Hi @carlvitzthum,
Thanks for the reply. I have to use Python2 because HiCAssembler needs it. So, this is what I'm doing:
virtualenv HiCAssembler
source HiCAssembler/bin/activate
pip install git+https://github.com/4dn-dcic/hic2cool.git
But I get the error anyway
Collecting git+https://github.com/4dn-dcic/hic2cool.git
Cloning https://github.com/4dn-dcic/hic2cool.git to /tmp/pip-cy808A-build
Complete output from command python setup.py egg_info:
/usr/lib64/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'long_description_content_type'
warnings.warn(msg)
warning: no files found matching 'CHANGES.md'
no previously-included directories found matching 'docs/_build'
no previously-included directories found matching 'docs/_static'
no previously-included directories found matching 'docs/_templates'
warning: no previously-included files matching '__pycache__/*' found anywhere in distribution
warning: no previously-included files matching '*.so' found anywhere in distribution
warning: no previously-included files matching '*.pyd' found anywhere in distribution
warning: no previously-included files matching '*.pyc' found anywhere in distribution
warning: no previously-included files matching '.git*' found anywhere in distribution
warning: no previously-included files matching '.deps/*' found anywhere in distribution
warning: no previously-included files matching '.DS_Store' found anywhere in distribution
warning: build_py: byte-compiling is disabled, skipping.
warning: install_lib: byte-compiling is disabled, skipping.
warning: easy_install: byte-compiling is disabled, skipping.
Installed /tmp/pip-cy808A-build/.eggs/cooler-0.8.5-py2.7.egg
Searching for pandas<=0.24.2
Reading https://pypi.python.org/simple/pandas/
Downloading https://files.pythonhosted.org/packages/b2/4c/b6f966ac91c5670ba4ef0b0b5613b5379e3c7abdfad4e7b89a87d73bae13/pandas-0.24.2.tar.gz#sha256=4f919f409c433577a501e023943e582c57355d50a724c589e78bc1d551a535a2
Best match: pandas 0.24.2
Processing pandas-0.24.2.tar.gz
Writing /tmp/easy_install-YFBOOD/pandas-0.24.2/setup.cfg
Running pandas-0.24.2/setup.py -q bdist_egg --dist-dir /tmp/easy_install-YFBOOD/pandas-0.24.2/egg-dist-tmp-mO0Txh
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-cy808A-build/setup.py", line 60, in <module>
"Topic :: Scientific/Engineering :: Bio-Informatics"
File "/usr/lib64/python2.7/distutils/core.py", line 112, in setup
_setup_distribution = dist = klass(attrs)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/dist.py", line 315, in __init__
self.fetch_build_eggs(attrs['setup_requires'])
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/dist.py", line 361, in fetch_build_eggs
replace_conflicting=True,
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/pkg_resources/__init__.py", line 850, in resolve
dist = best[req.key] = env.best_match(req, ws, installer)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/pkg_resources/__init__.py", line 1122, in best_match
return self.obtain(req, installer)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/pkg_resources/__init__.py", line 1134, in obtain
return installer(requirement)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/dist.py", line 429, in fetch_build_egg
return cmd.easy_install(req)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 665, in easy_install
return self.install_item(spec, dist.location, tmpdir, deps)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 695, in install_item
dists = self.install_eggs(spec, download, tmpdir)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 876, in install_eggs
return self.build_and_install(setup_script, setup_base)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1115, in build_and_install
self.run_setup(setup_script, setup_base, args)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1101, in run_setup
run_setup(setup_script, args)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 251, in run_setup
raise
File "/usr/lib64/python2.7/contextlib.py", line 35, in __exit__
self.gen.throw(type, value, traceback)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 198, in setup_context
yield
File "/usr/lib64/python2.7/contextlib.py", line 35, in __exit__
self.gen.throw(type, value, traceback)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 169, in save_modules
saved_exc.resume()
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 144, in resume
six.reraise(type, exc, self._tb)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 157, in save_modules
yield saved
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 198, in setup_context
yield
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 248, in run_setup
DirectorySandbox(setup_dir).run(runner)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 278, in run
return func()
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 246, in runner
_execfile(setup_script, ns)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 47, in _execfile
exec(code, globals, locals)
File "/tmp/easy_install-YFBOOD/pandas-0.24.2/setup.py", line 746, in <module>
File "/usr/lib64/python2.7/distutils/core.py", line 112, in setup
_setup_distribution = dist = klass(attrs)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/dist.py", line 315, in __init__
self.fetch_build_eggs(attrs['setup_requires'])
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/dist.py", line 361, in fetch_build_eggs
replace_conflicting=True,
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/pkg_resources/__init__.py", line 850, in resolve
dist = best[req.key] = env.best_match(req, ws, installer)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/pkg_resources/__init__.py", line 1122, in best_match
return self.obtain(req, installer)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/pkg_resources/__init__.py", line 1134, in obtain
return installer(requirement)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/dist.py", line 429, in fetch_build_egg
return cmd.easy_install(req)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 665, in easy_install
return self.install_item(spec, dist.location, tmpdir, deps)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 695, in install_item
dists = self.install_eggs(spec, download, tmpdir)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 876, in install_eggs
return self.build_and_install(setup_script, setup_base)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1115, in build_and_install
self.run_setup(setup_script, setup_base, args)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1101, in run_setup
run_setup(setup_script, args)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 251, in run_setup
raise
File "/usr/lib64/python2.7/contextlib.py", line 35, in __exit__
self.gen.throw(type, value, traceback)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 198, in setup_context
yield
File "/usr/lib64/python2.7/contextlib.py", line 35, in __exit__
self.gen.throw(type, value, traceback)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 169, in save_modules
saved_exc.resume()
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 144, in resume
six.reraise(type, exc, self._tb)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 157, in save_modules
yield saved
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 198, in setup_context
yield
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 248, in run_setup
DirectorySandbox(setup_dir).run(runner)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 278, in run
return func()
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 246, in runner
_execfile(setup_script, ns)
File "/home/fc464/software/HiCAssembler/lib/python2.7/site-packages/setuptools/sandbox.py", line 47, in _execfile
exec(code, globals, locals)
File "/tmp/easy_install-YFBOOD/pandas-0.24.2/temp/easy_install-WGCjoH/numpy-1.17.0rc1/setup.py", line 31, in <module>
version = this_version,
RuntimeError: Python version >= 3.5 required.
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-cy808A-build/
You are using pip version 9.0.1, however version 19.1.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
If I install it with Python3 I get these errors when I install HiCAssembler
ERROR: hicmatrix 7 has requirement cooler==0.8.2, but you'll have cooler 0.8.5 which is incompatible.
ERROR: hicexplorer 2.2.1.1 has requirement cooler==0.8.2, but you'll have cooler 0.8.5 which is incompatible.
If I remove cooler==0.8.5
and install cooler==0.8.2
then hic2cool complains:
ERROR: hic2cool 0.7.3 has requirement cooler>=0.8.5, but you'll have cooler 0.8.2 which is incompatible.
What to do? F
Hi @francicco
Both of the following work for me in clean Python 2.7 virtual environments:
pip install hic2cool==0.7.3
pip install git+https://github.com/4dn-dcic/hic2cool.git
As such, it installs correctly in an isolated and the problem is not from the hic2cool side. I took a quick look at the HiCAssembler requirements file and the way they have set up their package, it will automatically attempt to use the newest versions of packages when installing. This may be the cause of the original issue; it was what I fixed in hic2cool version 0.7.3 (my comment above).
I quickly looked into your problem and here's some feedback that may be helpful:
pip install HiCAssembler==1.1.1
with pip 19.1.1 gave me the same conflict warnings you got. With this version of pip, the installation does not fail but just complains. You can check your version of pip with pip --version
I will not downgrade the cooler version for hic2cool, since it requires features in 0.8.5. I hope this is helpful.
Best, Carl
It's a mess. I manually installed (via pip install -e .
) all dependencies using python 2.7 with the exception of matplotlib
. HiCExplorer now complains because it wants matplotlib==3.0.*
, but matplotlib
now wants Python3.
F
Hi,
I'm having a hard time installing hic2cool. Pip fails:
I need it for HiCAssembler which ueses python 2.7. Any conflict here?
Thanks F