Open travishathaway opened 1 year ago
@jezdez
I have the same issue on a fully patched Ubuntu 20.04 Intel 64 bit system. Solver ran for over 2 hours before exiting saying it couldn't install.
I have the same issue on macOS Big Sur with a fresh install of Miniconda using Homebrew. conda install -n base conda-libmamba-solver
will exit with an error output very similar to the one from @travishathaway.
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: \
Found conflicts! Looking for incompatible packages.
This can take several minutes. Press CTRL-C to abort.
\ failed
CondaError: KeyboardInterrupt
I didn't wait for the complete output.
@capac,
Would you mind sharing the output of conda list --name base
?
The problem I'm having is related to the Anaconda distribution in particular and all the packages that come pre-bundled with it. This is what causes my dependency resolving to never complete. There is some sort of package incapability hiding in there.
But, in your case, a fresh Miniconda install should have very few dependencies in the base environment, enabling it to successfully resolve all dependencies and install conda-libmamba-solver
. So, I'm just curious to see what is in your base environment, as that might be the cause of your problems.
Here it is, as of today. I've only installed packages for data science analysis (from conda install pandas scikit-learn statsmodels seaborn numpy scipy matplotlib tensorflow xgboost catboost pytorch
) and their dependencies.
# packages in environment at /usr/local/Caskroom/miniconda/base:
#
# Name Version Build Channel
_py-xgboost-mutex 2.0 cpu_0 defaults
_tflow_select 2.2.0 eigen defaults
abseil-cpp 20211102.0 he9d5cce_0 defaults
absl-py 1.3.0 py310hecd8cb5_0 defaults
aiohttp 3.8.3 py310h6c40b1e_0 defaults
aiosignal 1.2.0 pyhd3eb1b0_0 defaults
astunparse 1.6.3 py_0 defaults
async-timeout 4.0.2 py310hecd8cb5_0 defaults
attrs 22.1.0 py310hecd8cb5_0 defaults
blas 1.0 mkl defaults
blinker 1.4 py310hecd8cb5_0 defaults
bottleneck 1.3.5 py310h4e76f89_0 defaults
brotli 1.0.9 hca72f7f_7 defaults
brotli-bin 1.0.9 hca72f7f_7 defaults
brotlipy 0.7.0 py310hca72f7f_1002 defaults
bzip2 1.0.8 h1de35cc_0 defaults
c-ares 1.18.1 hca72f7f_0 defaults
ca-certificates 2023.01.10 hecd8cb5_0 defaults
cachetools 4.2.2 pyhd3eb1b0_0 defaults
cairo 1.16.0 h3ce6f7e_3 defaults
catboost 1.0.6 py310hecd8cb5_1 defaults
certifi 2022.12.7 py310hecd8cb5_0 defaults
cffi 1.15.1 py310h6c40b1e_3 defaults
charset-normalizer 2.0.4 pyhd3eb1b0_0 defaults
click 8.0.4 py310hecd8cb5_0 defaults
conda 23.1.0 py310hecd8cb5_0 defaults
conda-content-trust 0.1.3 py310hecd8cb5_0 defaults
conda-package-handling 2.0.2 py310hecd8cb5_0 defaults
conda-package-streaming 0.7.0 py310hecd8cb5_0 defaults
contourpy 1.0.5 py310haf03e11_0 defaults
cryptography 38.0.4 py310hf6deb26_0 defaults
cycler 0.11.0 pyhd3eb1b0_0 defaults
expat 2.4.9 he9d5cce_0 defaults
fftw 3.3.9 h9ed2024_1 defaults
flatbuffers 2.0.0 h23ab428_0 defaults
flit-core 3.6.0 pyhd3eb1b0_0 defaults
font-ttf-dejavu-sans-mono 2.37 hd3eb1b0_0 defaults
font-ttf-inconsolata 2.001 hcb22688_0 defaults
font-ttf-source-code-pro 2.030 hd3eb1b0_0 defaults
font-ttf-ubuntu 0.83 h8b1ccd4_0 defaults
fontconfig 2.14.1 hedf32ac_1 defaults
fonts-anaconda 1 h8fa9717_0 defaults
fonts-conda-ecosystem 1 hd3eb1b0_0 defaults
fonttools 4.25.0 pyhd3eb1b0_0 defaults
freetype 2.12.1 hd8bbffd_0 defaults
fribidi 1.0.10 haf1e3a3_0 defaults
frozenlist 1.3.3 py310h6c40b1e_0 defaults
future 0.18.2 py310hecd8cb5_1 defaults
gast 0.4.0 pyhd3eb1b0_0 defaults
gdk-pixbuf 2.42.8 h90ff1d3_1 defaults
gettext 0.21.0 h7535e17_0 defaults
giflib 5.2.1 h6c40b1e_1 defaults
glib 2.69.1 hfff2838_2 defaults
google-auth 2.6.0 pyhd3eb1b0_0 defaults
google-auth-oauthlib 0.4.4 pyhd3eb1b0_0 defaults
google-pasta 0.2.0 pyhd3eb1b0_0 defaults
graphite2 1.3.14 he9d5cce_1 defaults
graphviz 2.50.0 h196fa6a_0 defaults
grpc-cpp 1.46.1 h067a048_0 defaults
grpcio 1.42.0 py310ha29bfda_0 defaults
gts 0.7.6 h6759243_3 defaults
h5py 3.7.0 py310h6c517f8_0 defaults
harfbuzz 4.3.0 h3f129a2_0 defaults
hdf5 1.10.6 h10fe05b_1 defaults
icu 58.2 h0a44026_3 defaults
idna 3.4 py310hecd8cb5_0 defaults
intel-openmp 2021.4.0 hecd8cb5_3538 defaults
joblib 1.1.1 py310hecd8cb5_0 defaults
jpeg 9e hca72f7f_0 defaults
keras 2.10.0 py310hecd8cb5_0 defaults
keras-preprocessing 1.1.2 pyhd3eb1b0_0 defaults
kiwisolver 1.4.4 py310hcec6c5f_0 defaults
krb5 1.19.4 hdba6334_0 defaults
lcms2 2.12 hf1fd2bf_0 defaults
lerc 3.0 he9d5cce_0 defaults
libbrotlicommon 1.0.9 hca72f7f_7 defaults
libbrotlidec 1.0.9 hca72f7f_7 defaults
libbrotlienc 1.0.9 hca72f7f_7 defaults
libcurl 7.87.0 ha585b31_0 defaults
libcxx 14.0.6 h9765a3e_0 defaults
libdeflate 1.8 h9ed2024_5 defaults
libedit 3.1.20221030 h6c40b1e_0 defaults
libev 4.33 h9ed2024_1 defaults
libffi 3.4.2 hecd8cb5_6 defaults
libgd 2.3.3 he7e2580_1 defaults
libgfortran 5.0.0 11_3_0_hecd8cb5_28 defaults
libgfortran5 11.3.0 h9dfd629_28 defaults
libiconv 1.16 hca72f7f_2 defaults
libnghttp2 1.46.0 ha29bfda_0 defaults
libpng 1.6.37 ha441bb4_0 defaults
libprotobuf 3.20.1 h8346a28_0 defaults
librsvg 2.54.4 h52d90eb_0 defaults
libssh2 1.10.0 h0a4fc7d_0 defaults
libtiff 4.5.0 h2cd0358_0 defaults
libtool 2.4.6 hcec6c5f_1009 defaults
libwebp 1.2.4 h56c3ce4_0 defaults
libwebp-base 1.2.4 hca72f7f_0 defaults
libxgboost 1.5.0 he9d5cce_2 defaults
libxml2 2.9.14 hbf8cd5e_0 defaults
llvm-openmp 14.0.6 h0dcd299_0 defaults
lz4-c 1.9.4 hcec6c5f_0 defaults
markdown 3.4.1 py310hecd8cb5_0 defaults
markupsafe 2.1.1 py310hca72f7f_0 defaults
matplotlib 3.6.2 py310hecd8cb5_0 defaults
matplotlib-base 3.6.2 py310h220de94_0 defaults
mkl 2021.4.0 hecd8cb5_637 defaults
mkl-service 2.4.0 py310hca72f7f_0 defaults
mkl_fft 1.3.1 py310hf879493_0 defaults
mkl_random 1.2.2 py310hc081a56_0 defaults
multidict 6.0.2 py310hca72f7f_0 defaults
munkres 1.1.4 py_0 defaults
ncurses 6.4 hcec6c5f_0 defaults
ninja 1.10.2 hecd8cb5_5 defaults
ninja-base 1.10.2 haf03e11_5 defaults
numexpr 2.8.4 py310h9638375_0 defaults
numpy 1.23.5 py310h9638375_0 defaults
numpy-base 1.23.5 py310ha98c3c9_0 defaults
oauthlib 3.2.1 py310hecd8cb5_0 defaults
openssl 1.1.1s hca72f7f_0 defaults
opt_einsum 3.3.0 pyhd3eb1b0_1 defaults
packaging 22.0 py310hecd8cb5_0 defaults
pandas 1.5.2 py310h3ea8b11_0 defaults
pango 1.50.7 h80fe9ab_0 defaults
patsy 0.5.3 py310hecd8cb5_0 defaults
pcre 8.45 h23ab428_0 defaults
pillow 9.3.0 py310h81888ad_1 defaults
pip 22.3.1 py310hecd8cb5_0 defaults
pixman 0.40.0 h9ed2024_1 defaults
plotly 5.9.0 py310hecd8cb5_0 defaults
pluggy 1.0.0 py310hecd8cb5_1 defaults
protobuf 3.20.1 py310he9d5cce_0 defaults
py-xgboost 1.5.0 py310hecd8cb5_2 defaults
pyasn1 0.4.8 pyhd3eb1b0_0 defaults
pyasn1-modules 0.2.8 py_0 defaults
pycosat 0.6.4 py310hca72f7f_0 defaults
pycparser 2.21 pyhd3eb1b0_0 defaults
pyjwt 2.4.0 py310hecd8cb5_0 defaults
pyopenssl 22.0.0 pyhd3eb1b0_0 defaults
pyparsing 3.0.9 py310hecd8cb5_0 defaults
pysocks 1.7.1 py310hecd8cb5_0 defaults
python 3.10.9 h218abb5_0 defaults
python-dateutil 2.8.2 pyhd3eb1b0_0 defaults
python-flatbuffers 2.0 pyhd3eb1b0_0 defaults
python-graphviz 0.20.1 py310hecd8cb5_0 defaults
python.app 3 py310hca72f7f_0 defaults
pytorch 1.12.1 cpu_py310ha26b6ec_0 defaults
pytz 2022.7 py310hecd8cb5_0 defaults
pyyaml 6.0 py310h6c40b1e_1 defaults
re2 2022.04.01 he9d5cce_0 defaults
readline 8.2 hca72f7f_0 defaults
requests 2.28.1 py310hecd8cb5_0 defaults
requests-oauthlib 1.3.0 py_0 defaults
rsa 4.7.2 pyhd3eb1b0_1 defaults
ruamel.yaml 0.17.21 py310hca72f7f_0 defaults
ruamel.yaml.clib 0.2.6 py310hca72f7f_1 defaults
scikit-learn 1.2.0 py310hcec6c5f_0 defaults
scipy 1.9.3 py310h09290a1_0 defaults
seaborn 0.12.2 py310hecd8cb5_0 defaults
setuptools 65.6.3 py310hecd8cb5_0 defaults
six 1.16.0 pyhd3eb1b0_1 defaults
snappy 1.1.9 he9d5cce_0 defaults
sqlite 3.40.1 h880c91c_0 defaults
statsmodels 0.13.5 py310h7b7cdfe_0 defaults
tenacity 8.0.1 py310hecd8cb5_1 defaults
tensorboard 2.10.0 py310hecd8cb5_0 defaults
tensorboard-data-server 0.6.1 py310h7242b5c_0 defaults
tensorboard-plugin-wit 1.6.0 py_0 defaults
tensorflow 2.10.0 eigen_py310haa97f9e_0 defaults
tensorflow-base 2.10.0 eigen_py310h61e1807_0 defaults
tensorflow-estimator 2.10.0 py310hecd8cb5_0 defaults
termcolor 2.1.0 py310hecd8cb5_0 defaults
threadpoolctl 2.2.0 pyh0d69192_0 defaults
tk 8.6.12 h5d9f67b_0 defaults
toolz 0.12.0 py310hecd8cb5_0 defaults
tornado 6.2 py310hca72f7f_0 defaults
tqdm 4.64.1 py310hecd8cb5_0 defaults
typing-extensions 4.4.0 py310hecd8cb5_0 defaults
typing_extensions 4.4.0 py310hecd8cb5_0 defaults
tzdata 2022g h04d1e81_0 defaults
urllib3 1.26.14 py310hecd8cb5_0 defaults
werkzeug 2.2.2 py310hecd8cb5_0 defaults
wheel 0.35.1 pyhd3eb1b0_0 defaults
wrapt 1.14.1 py310hca72f7f_0 defaults
xgboost 1.5.0 py310hecd8cb5_2 defaults
xz 5.2.10 h6c40b1e_1 defaults
yaml 0.2.5 haf1e3a3_0 defaults
yarl 1.8.1 py310hca72f7f_0 defaults
zlib 1.2.13 h4dc903c_0 defaults
zstandard 0.18.0 py310hca72f7f_0 defaults
zstd 1.5.2 hcb37349_0 defaults
The .condarc
settings in my home directory is the following:
channels:
- defaults
channel_priority: strict
show_channel_urls: True
pip_interop_enabled: True
Hi @capac,
I have some practical advice to give regarding environments, it's always better to keep you base clear of most things (i.e. just conda itself plus things like conda-libmamba-solver
that extend it) and to use named environments for actual work things.
I wouldn't be surprised if even with that humble list of dependencies in your base environments things already to start to slow down regarding dependency solving.
If you'd like to revert your base environment to a "clean" state, the easiest way to do that is by using the revisions feature. Here's an example of how to revert your base environment:
conda install --rev 0 --name base
I know that might not be the exact answer your are looking for, but I hope it makes your use of conda a little easier.
Thanks for the advice. I've decided to keep the base
environment free of packages except for the conda-libmamba-solver
, which now installs without issue. I've kept conda
to version 22.11.1. Updating to the latest version: 23.1.0 by running conda install conda=23.1.0
creates the same dependencies error messages that I listed above.
Thanks for the advice. I've decided to keep the
base
environment free of packages except for theconda-libmamba-solver
, which now installs without issue. I've keptconda
to version 22.11.1. Updating to the latest version: 23.1.0 by runningconda install conda=23.1.0
creates the same dependencies error messages that I listed above.
After a clean Miniconda installation (Miniconda3-py310_22.11.1-1-Linux-x86_64
) and running the command
conda update -n base conda
I would face conflicts when installing conda-libmamba-solver
.
Downgrading conda
from 23.1.0
to 22.11.1
solved for me.
Hi all,
Just a quick update. The Anaconda folks are aware of this and are currently preparing a fix. I will update once this goes out.
Thanks for the advice. I've decided to keep the
base
environment free of packages except for theconda-libmamba-solver
, which now installs without issue. I've keptconda
to version 22.11.1. Updating to the latest version: 23.1.0 by runningconda install conda=23.1.0
creates the same dependencies error messages that I listed above.After a clean Miniconda installation (
Miniconda3-py310_22.11.1-1-Linux-x86_64
) and running the commandconda update -n base conda
I would face conflicts when installing
conda-libmamba-solver
.Downgrading
conda
from23.1.0
to22.11.1
solved for me.
Just an update, I was able to install conda-libmamba-solver
after installing Miniconda3-py310_23.1.0-1-Linux-x86_64.sh
with conda=23.1.0
.
Thanks for the advice. I've decided to keep the
base
environment free of packages except for theconda-libmamba-solver
, which now installs without issue. I've keptconda
to version 22.11.1. Updating to the latest version: 23.1.0 by runningconda install conda=23.1.0
creates the same dependencies error messages that I listed above.
I've updated conda to 23.1.0 and libmamba to 1.3.1, and I don't have dependency conflicts when I update my conda environment. Fingers crossed 🤞🏻
I have the same problem with a clean Anaconda product and Conda version 23.1.0
and 22.11.1
.
>>> conda install -n base conda-libmamba-solver
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: /
Found conflicts! Looking for incompatible packages.
This can take several minutes. Press CTRL-C to abort.
I also tried the suggestion from @travishathaway
>>> conda install --rev 0 --name base
## Package Plan ##
environment location: D:\Anaconda3
added / updated specs:
- _ipyw_jlab_nb_ext_conf
- anaconda-navigator
- anaconda==2022.10=py39_0
- conda
- conda-build
- conda-env
- conda-verify
- console_shortcut
- menuinst
- navigator-updater
- powershell_shortcut
- python=3.9
The following packages will be REMOVED:
conda-package-streaming-0.7.0-py39haa95532_0
ruamel.yaml-0.17.21-py39h2bbff1b_0
ruamel.yaml.clib-0.2.6-py39h2bbff1b_1
zstandard-0.19.0-py39h2bbff1b_0
The following packages will be DOWNGRADED:
conda 23.1.0-py39haa95532_0 --> 22.9.0-py39haa95532_0
conda-package-han~ 2.0.2-py39haa95532_0 --> 1.9.0-py39h8cc25b3_0
conda-repo-cli 1.0.27-py39haa95532_0 --> 1.0.20-py39haa95532_0
Proceed ([y]/n)?
Downloading and Extracting Packages
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
I installed Anaconda version 2022.05
with conda version 4.12.0
and it works. But if I try to install an environment an error appears:
Traceback (most recent call last):
File "D:\Anaconda3\lib\site-packages\conda_libmamba_solver\solver.py", line 223, in solve_final_state
api_ctx = init_api_context(verbosity=max(2, context.verbosity))
File "D:\Anaconda3\lib\site-packages\conda_libmamba_solver\mamba_utils.py", line 177, in init_api_context
api_ctx = api.Context()
AttributeError: module 'libmambapy' has no attribute 'Context'
# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<
Traceback (most recent call last):
File "D:\Anaconda3\lib\site-packages\conda_libmamba_solver\solver.py", line 223, in solve_final_state
api_ctx = init_api_context(verbosity=max(2, context.verbosity))
File "D:\Anaconda3\lib\site-packages\conda_libmamba_solver\mamba_utils.py", line 177, in init_api_context
api_ctx = api.Context()
AttributeError: module 'libmambapy' has no attribute 'Context'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "D:\Anaconda3\lib\site-packages\conda\exceptions.py", line 1082, in __call__
return func(*args, **kwargs)
File "D:\Anaconda3\lib\site-packages\conda_env\cli\main.py", line 80, in do_call
exit_code = getattr(module, func_name)(args, parser)
File "D:\Anaconda3\lib\site-packages\conda_env\cli\main_create.py", line 142, in execute
result[installer_type] = installer.install(prefix, pkg_specs, args, env)
File "D:\Anaconda3\lib\site-packages\conda_env\installers\conda.py", line 50, in install
unlink_link_transaction = solver.solve_for_transaction(
File "D:\Anaconda3\lib\site-packages\conda\core\solve.py", line 152, in solve_for_transaction
unlink_precs, link_precs = self.solve_for_diff(update_modifier, deps_modifier,
File "D:\Anaconda3\lib\site-packages\conda\core\solve.py", line 195, in solve_for_diff
final_precs = self.solve_final_state(update_modifier, deps_modifier, prune, ignore_pinned,
File "D:\Anaconda3\lib\site-packages\conda_libmamba_solver\solver.py", line 224, in solve_final_state
index = LibMambaIndexHelper(
File "D:\Anaconda3\lib\site-packages\conda_libmamba_solver\utils.py", line 86, in __exit__
raise exc_type(exc_value)
AttributeError: module 'libmambapy' has no attribute 'Context'
I've decided to keep the
base
environment free of packages
How do you do that? I tried to remove all packages from base with
>>> pip freeze | grep -v conda > requirements.txt
>>> pip uninstall -r requirements.txt -y
But then conda
is not working anymore. Actually, which dependencies has conda
? I would like to remove all packages, which are not a dependency of conda
and anaconda
. I looked at the repository but could not find any requirement.txt
. In the setup.py
are the install_requires
only:
install_requires = [
"pluggy >=1.0.0",
"pycosat >=0.6.3",
"requests >=2.20.1",
"ruamel.yaml >=0.11.14",
"menuinst ; platform_system=='Windows'",
"tqdm >=4",
]
I've decided to keep the
base
environment free of packagesHow do you do that? I tried to remove all packages from base with
>>> pip freeze | grep -v conda > requirements.txt >>> pip uninstall -r requirements.txt -y
But then
conda
is not working anymore. Actually, which dependencies hasconda
? I would like to remove all packages, which are not a dependency ofconda
andanaconda
. I looked at the repository but could not find anyrequirement.txt
. In thesetup.py
are theinstall_requires
only:install_requires = [ "pluggy >=1.0.0", "pycosat >=0.6.3", "requests >=2.20.1", "ruamel.yaml >=0.11.14", "menuinst ; platform_system=='Windows'", "tqdm >=4", ]
I started from a fresh base
installation of conda and I only installed in addition conda-libmamba-solver
. From there I created another environment that I use as a working environment. This has been working fine for me for some time now without issue.
I am facing the same problem. On a clean Anaconda 23.1.0 installation, installing the libmamba solver with conda install -n base conda-libmamba-solver
does not work. Any updates on this? I am running conda on a remote server with Ubuntu 18.04, and I am not able to install any packages at this point, as the solver runs for hours before exiting without installing anything.
EDIT: I encountered no problems with miniconda, so I guess there may be unresolved conflicts with packages installed by Anaconda?
I hadn't come here before reporting the same issue to conda-libmamaba-resolver
, and good news that their latest release has fixed it (at least for latest Anaconda), see: https://github.com/conda/conda-libmamba-solver/issues/169#issuecomment-1497094876
But be cautious conda would remove existing packages on installing the package, I found a workaround https://github.com/conda/conda/issues/12560#issuecomment-1497076549
I just ran into the same issue with a fresh installation of the Anaconda Distribution. No updates yet I guess. Have you heard something @travishathaway?
Turns out there is the following workaround:
conda install --only-deps anaconda
- this ensures that the next command won't try to uninstall curl.conda install -n base conda-libmamba-solver=23.3.0
with the major/minor version matching the installed conda version (which is 23.3.1 for Anaconda 2023.03-1).I hope this gets fixed soon, it's a probably simple issue that's hard to track down and find a workaround for as a user, and conda without libmamba is unusably slow.
@jaimergp Any ideas what could be cause for this?
It smells like https://github.com/conda/conda/issues/9469#issuecomment-1503302008 (current_repodata.json
not containing the required packages for a recent solve).
you may need to unpin the anaconda metapackage first. conda install anaconda=custom
you may need to unpin the anaconda metapackage first. conda install anaconda=custom
Ah, do you think conda install anaconda --no-pin
might also work?
It smells like conda/conda#9469 (comment) (
current_repodata.json
not containing the required packages for a recent solve).
So in that case, the workaround is conda update -n base -c defaults conda --repodata-fn=repodata.json
? :-/
you may need to unpin the anaconda metapackage first. conda install anaconda=custom
Ah, do you think
conda install anaconda --no-pin
might also work?
That surely works, but - just as with anaconda=custom - at that time you're not on an official Anaconda release so other stuff might break during updates.
Checklist
Impacted product
What happened?
I am currently unable to install the
conda-libmamba-solver
in my base environment on a fresh installation of Anaconda Distribution (M1 Mac).Trying to install this package resulted in the following output:
☝️ I did not wait for the command to finish running.
Expected behavior or outcome
This package should be able to install without any dependency resolution errors.
Conda info
Conda config
Conda list
Additional information
Steps to reproduce
conda update conda
conda install conda-libmamba-solver