HiCExplorer icon indicating copy to clipboard operation
HiCExplorer copied to clipboard

Hicexplorer and py38 with conda

Open giuliospinozzi opened this issue 3 years ago • 11 comments

I installed in my debian workstation hicexplorer with conda and py37 without any issue. Today I would like to install hicexplorer in my macbook pro m1max with 64gb of RAM, but I cannot. For Apple silicon is available with conda only py38 and when I try to install hicexplorer I receive a general dependency error and the installation crash. Can you fix the compatibility with py38? Is the only way for apple silicon cpu.

The command in a clean installation of miniconda: conda install -n hic hicexplorer -c bioconda -c conda-forge

giuliospinozzi avatar Feb 01 '22 17:02 giuliospinozzi

Hi Giulio,

I used so far the x86 version via Rosetta2 on my M1. This worked quite well, but I need to check which Python version it is using. I was not aware there is finally a native version for Apple Silicon provided by conda. Can you please post the error message? And as a workaround: Try to use the x86 + Rosetta2.

Best,

Joachim

joachimwolff avatar Feb 01 '22 17:02 joachimwolff

The problem was the same on debian with py38, only with py37 I was able to install in x86 machine. ASAP I'll post the error in verbose mode, but I think that is related to py38 and not to the architecture.

giuliospinozzi avatar Feb 01 '22 17:02 giuliospinozzi

here is the command:

% conda install -n hic hicexplorer -c bioconda -c conda-forge -v Collecting package metadata (current_repodata.json): ...working... Unable to retrieve repodata (response: 404) for https://conda.anaconda.org/bioconda/osx-arm64/current_repodata.json

Unable to retrieve repodata (response: 404) for https://repo.anaconda.com/pkgs/r/osx-arm64/current_repodata.json

Unable to retrieve repodata (response: 404) for https://conda.anaconda.org/bioconda/osx-arm64/repodata.json

Unable to retrieve repodata (response: 404) for https://repo.anaconda.com/pkgs/r/osx-arm64/repodata.json

done Solving environment: ...working... failed with initial frozen solve. Retrying with flexible solve. Solving environment: ...working... failed with repodata from current_repodata.json, will retry with next repodata source. Collecting package metadata (repodata.json): ...working... Unable to retrieve repodata (response: 404) for https://conda.anaconda.org/bioconda/osx-arm64/repodata.json

Unable to retrieve repodata (response: 404) for https://repo.anaconda.com/pkgs/r/osx-arm64/repodata.json

done Solving environment: ...working... failed with initial frozen solve. Retrying with flexible solve. Solving environment: ...working... Found conflicts! Looking for incompatible packages. This can take several minutes. Press CTRL-C to abort. failed
Traceback (most recent call last): File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/cli/install.py", line 259, in install unlink_link_transaction = solver.solve_for_transaction( File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/core/solve.py", line 114, in solve_for_transaction unlink_precs, link_precs = self.solve_for_diff(update_modifier, deps_modifier, File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/core/solve.py", line 157, in solve_for_diff final_precs = self.solve_final_state(update_modifier, deps_modifier, prune, ignore_pinned, File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/core/solve.py", line 281, in solve_final_state ssc = self._run_sat(ssc) File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/common/io.py", line 88, in decorated return f(*args, **kwds) File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/core/solve.py", line 815, in _run_sat ssc.solution_precs = ssc.r.solve(tuple(final_environment_specs), File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/common/io.py", line 88, in decorated return f(*args, **kwds) File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/resolve.py", line 1320, in solve raise UnsatisfiableError({}) conda.exceptions.UnsatisfiableError: Did not find conflicting dependencies. If you would like to know which packages conflict ensure that you have enabled unsatisfiable hints.

conda config --set unsatisfiable_hints True

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/exceptions.py", line 1080, in call return func(*args, **kwargs) File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/cli/main.py", line 84, in _main exit_code = do_call(args, p) File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/cli/conda_argparse.py", line 83, in do_call return getattr(module, func_name)(args, parser) File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/cli/main_install.py", line 20, in execute install(args, parser, 'install') File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/cli/install.py", line 306, in install raise e File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/cli/install.py", line 293, in install unlink_link_transaction = solver.solve_for_transaction( File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/core/solve.py", line 114, in solve_for_transaction unlink_precs, link_precs = self.solve_for_diff(update_modifier, deps_modifier, File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/core/solve.py", line 157, in solve_for_diff final_precs = self.solve_final_state(update_modifier, deps_modifier, prune, ignore_pinned, File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/core/solve.py", line 281, in solve_final_state ssc = self._run_sat(ssc) File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/common/io.py", line 88, in decorated return f(*args, **kwds) File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/core/solve.py", line 815, in _run_sat ssc.solution_precs = ssc.r.solve(tuple(final_environment_specs), File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/common/io.py", line 88, in decorated return f(*args, **kwds) File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/resolve.py", line 1322, in solve self.find_conflicts(specs, specs_to_add, history_specs) File "/Users/gspinozzi/miniconda3/lib/python3.8/site-packages/conda/resolve.py", line 352, in find_conflicts raise UnsatisfiableError(bad_deps, strict=strict_channel_priority) conda.exceptions.UnsatisfiableError

giuliospinozzi avatar Feb 02 '22 06:02 giuliospinozzi

That looks to me that the conda dependency resolver is having once more troubles. Can you try mamba to install HiCExplorer? That’s an alternative conda installation and dependency resolver tool. Also: I can highly recommend to use conda environments to separate your software installations. Having already some dependencies of HiCExplorer installed, but maybe with a different version can also lead to this behavior you observe.

joachimwolff avatar Feb 02 '22 07:02 joachimwolff

You are right. I tried also with a fresh installation of Miniconda for M1, same problems. Also before to upgrade at the last version of conda. Same problem in x86 with this py38. I have to manage a huge dataset and I would like to improve performances with Apple Silicon architecture. I don't know mamba, but when it is possibile I'll try.

I hope that this problem can be solved soon.

giuliospinozzi avatar Feb 02 '22 07:02 giuliospinozzi

Just install „conda install mamba“ and use it like conda e.g. „mamba create -n hicexplorer hicexplorer -c conda-forge -c bioconda“ and activate the environment.

Joachim Wolff M.Sc. Computer Science Chair for Bioinformatics Department of Computer Science Albert-Ludwigs-University Freiburg Georges-Koehler-Allee 079 D-79110 Freiburg

http://www.bioinf.uni-freiburg.de

joachimwolff avatar Feb 02 '22 08:02 joachimwolff

PackagesNotFoundError: The following packages are not available from current channels:

  • mamba

Current channels:

  • https://repo.anaconda.com/pkgs/main/osx-arm64
  • https://repo.anaconda.com/pkgs/main/noarch
  • https://repo.anaconda.com/pkgs/r/osx-arm64
  • https://repo.anaconda.com/pkgs/r/noarch

Probably is not available for M1 chips (https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-arm64.sh)

giuliospinozzi avatar Feb 02 '22 09:02 giuliospinozzi

Conda-forge?

joachimwolff avatar Feb 02 '22 10:02 joachimwolff

yes

Eng. Giulio Spinozzi, PhD Vector Integration Core San Raffaele Telethon Institute for Gene Therapy (SR-Tiget)

Section of Hematology Department of Medicine University of Perugia

On 2 Feb 2022, at 11:55, Joachim Wolff @.***> wrote:

Conda-forge?

Giulio Spinozzi, PhD @.***> schrieb am Mi. 2. Feb. 2022 um 10:45:

PackagesNotFoundError: The following packages are not available from current channels:

  • mamba

Current channels:

  • https://repo.anaconda.com/pkgs/main/osx-arm64
  • https://repo.anaconda.com/pkgs/main/noarch
  • https://repo.anaconda.com/pkgs/r/osx-arm64
  • https://repo.anaconda.com/pkgs/r/noarch

Probably is not available for M1 chips

— Reply to this email directly, view it on GitHub https://github.com/deeptools/HiCExplorer/issues/776#issuecomment-1027755176, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADGQCAE4EUOORH3Q7XF6GWLUZD4NJANCNFSM5NJYH3FQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

-- Joachim Wolff M.Sc. Computer Science Chair for Bioinformatics Department of Computer Science Albert-Ludwigs-University Freiburg Georges-Koehler-Allee 079 D-79110 Freiburg

http://www.bioinf.uni-freiburg.de — Reply to this email directly, view it on GitHub https://github.com/deeptools/HiCExplorer/issues/776#issuecomment-1027814439, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACE7KW3QWCZTJRHPWS3QUK3UZEETXANCNFSM5NJYH3FQ. You are receiving this because you authored the thread.

giuliospinozzi avatar Feb 02 '22 10:02 giuliospinozzi

Ok, so I tested a bit on my M1 Mac. I think the problem is the selection of the native osx-arm64 packages. I am using the osx-64 (aka x86) packages and Rosetta2. With this setup, mamba and HiCExplorer can be installed and work fine, the Python version does not matter.

I think the explanation is that maybe some dependencies are not available for osx-arm64. I need to investigate this, but even when I figure out which packages are missing, I cannot do much. This is a problem that needs to be solved upstream by conda, conda-forge and or bioconda.

joachimwolff avatar Feb 02 '22 12:02 joachimwolff

I agree with you. Can we send this issue to the conda team? How can we report this? Can you do?

Best

Inviato da iPhone Giulio Spinozzi, Ph.D.

Il giorno 2 feb 2022, alle ore 13:57, Joachim Wolff @.***> ha scritto:

 Ok, so I tested a bit on my M1 Mac. I think the problem is the selection of the native osx-arm64 packages. I am using the osx-64 (aka x86) packages and Rosetta2. With this setup, mamba and HiCExplorer can be installed and work fine, the Python version does not matter.

I think the explanation is that maybe some dependencies are not available for osx-arm64. I need to investigate this, but even when I figure out which packages are missing, I cannot do much. This is a problem that needs to be solved upstream by conda, conda-forge and or bioconda.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.

giuliospinozzi avatar Feb 02 '22 13:02 giuliospinozzi