Closed daico007 closed 1 year ago
@daico007 I can replicate this, very weird, thanks for reporting, will investigate further
Might have to do with the stuck openssl=3
migration.
Here is another example, in this case mamba
solves differently than conda
with libmamba
:
(especially notice wrong cpu
instead of cuda
version is selected for pytorch
and torchvision
)
❯ mamba install pytorch==1.10.2 torchvision==0.11.3 cudatoolkit=11.3
Package Version Build Channel Size
─────────────────────────────────────────────────────────────────────────────────────
Install:
─────────────────────────────────────────────────────────────────────────────────────
+ cudatoolkit 11.3.1 h9edb442_10 conda-forge/linux-64 856MB
+ ffmpeg 4.3.2 h37c90e5_3 conda-forge/linux-64 10MB
+ future 0.18.2 py39hf3d152e_5 conda-forge/linux-64 Cached
+ gmp 6.2.1 h58526e2_0 conda-forge/linux-64 826kB
+ gnutls 3.6.13 h85f3911_1 conda-forge/linux-64 2MB
+ lame 3.100 h7f98852_1001 conda-forge/linux-64 508kB
+ libprotobuf 3.19.4 h780b84a_0 conda-forge/linux-64 3MB
+ llvm-openmp 14.0.4 he0ac6c6_0 conda-forge/linux-64 6MB
+ mkl 2022.1.0 h84fe81f_915 conda-forge/linux-64 209MB
+ nettle 3.6 he412f7d_0 conda-forge/linux-64 7MB
+ ninja 1.11.0 h924138e_0 conda-forge/linux-64 3MB
+ openh264 2.1.1 h780b84a_0 conda-forge/linux-64 2MB
+ pytorch 1.10.2 cpu_py39h5e9ed0b_1 conda-forge/linux-64 57MB
+ sleef 3.5.1 h9b69904_2 conda-forge/linux-64 2MB
+ tbb 2021.5.0 h924138e_2 conda-forge/linux-64 2MB
+ torchvision 0.11.3 cpu_py39hfc47f1b_2 conda-forge/linux-64 7MB
+ x264 1!161.3030 h7f98852_1 conda-forge/linux-64 3MB
+ zlib 1.2.12 h166bdaf_3 conda-forge/linux-64 94kB
Change:
─────────────────────────────────────────────────────────────────────────────────────
- _openmp_mutex 4.5 2_gnu conda-forge
+ _openmp_mutex 4.5 2_kmp_llvm conda-forge/linux-64 6kB
- libblas 3.9.0 16_linux64_openblas conda-forge
+ libblas 3.9.0 16_linux64_mkl conda-forge/linux-64 13kB
- libcblas 3.9.0 16_linux64_openblas conda-forge
+ libcblas 3.9.0 16_linux64_mkl conda-forge/linux-64 13kB
- liblapack 3.9.0 16_linux64_openblas conda-forge
+ liblapack 3.9.0 16_linux64_mkl conda-forge/linux-64 13kB
Downgrade:
─────────────────────────────────────────────────────────────────────────────────────
- setuptools 65.3.0 pyhd8ed1ab_1 conda-forge
+ setuptools 59.5.0 py39hf3d152e_0 conda-forge/linux-64 1MB
❯ conda install pytorch==1.10.2 torchvision==0.11.3 cudatoolkit=11.3 --experimental-solver=libmamba
The following NEW packages will be INSTALLED:
cudatoolkit conda-forge/linux-64::cudatoolkit-11.3.1-h9edb442_10
cudnn conda-forge/linux-64::cudnn-8.4.1.50-hed8a83a_0
ffmpeg conda-forge/linux-64::ffmpeg-4.3.2-h37c90e5_3
future conda-forge/linux-64::future-0.18.2-py39hf3d152e_5
gmp conda-forge/linux-64::gmp-6.2.1-h58526e2_0
gnutls conda-forge/linux-64::gnutls-3.6.13-h85f3911_1
lame conda-forge/linux-64::lame-3.100-h7f98852_1001
libprotobuf conda-forge/linux-64::libprotobuf-3.19.4-h780b84a_0
llvm-openmp conda-forge/linux-64::llvm-openmp-14.0.4-he0ac6c6_0
magma conda-forge/linux-64::magma-2.5.4-h6103c52_2
mkl conda-forge/linux-64::mkl-2022.1.0-h84fe81f_915
nccl conda-forge/linux-64::nccl-2.14.3.1-h0800d71_0
nettle conda-forge/linux-64::nettle-3.6-he412f7d_0
ninja conda-forge/linux-64::ninja-1.11.0-h924138e_0
openh264 conda-forge/linux-64::openh264-2.1.1-h780b84a_0
pytorch conda-forge/linux-64::pytorch-1.10.2-cuda112py39h4de5995_1
sleef conda-forge/linux-64::sleef-3.5.1-h9b69904_2
tbb conda-forge/linux-64::tbb-2021.5.0-h924138e_2
torchvision conda-forge/linux-64::torchvision-0.11.3-cuda112py39ha475c55_2
x264 conda-forge/linux-64::x264-1!161.3030-h7f98852_1
zlib conda-forge/linux-64::zlib-1.2.12-h166bdaf_3
The following packages will be SUPERSEDED by a higher-priority channel:
setuptools conda-forge/noarch::setuptools-65.3.0~ --> conda-forge/linux-64::setuptools-59.5.0-py39hf3d152e_0
The following packages will be DOWNGRADED:
_openmp_mutex 4.5-2_gnu --> 4.5-2_kmp_llvm
libblas 3.9.0-16_linux64_openblas --> 3.9.0-16_linux64_mkl
libcblas 3.9.0-16_linux64_openblas --> 3.9.0-16_linux64_mkl
liblapack 3.9.0-16_linux64_openblas --> 3.9.0-16_linux64_mkl
``` ❯ conda info active environment : base active env location : /home/ilyap/miniconda3 shell level : 1 user config file : /home/ilyap/.condarc populated config files : /home/ilyap/.condarc conda version : 4.14.0 conda-build version : not installed python version : 3.9.13.final.0 virtual packages : __cuda=11.4=0 __linux=5.15.0=0 __glibc=2.35=0 __unix=0=0 __archspec=1=x86_64 base environment : /home/ilyap/miniconda3 (writable) conda av data dir : /home/ilyap/miniconda3/etc/conda conda av metadata url : None channel URLs : https://conda.anaconda.org/conda-forge/linux-64 https://conda.anaconda.org/conda-forge/noarch https://repo.anaconda.com/pkgs/main/linux-64 https://repo.anaconda.com/pkgs/main/noarch https://repo.anaconda.com/pkgs/r/linux-64 https://repo.anaconda.com/pkgs/r/noarch package cache : /home/ilyap/miniconda3/pkgs /home/ilyap/.conda/pkgs envs directories : /home/ilyap/miniconda3/envs /home/ilyap/.conda/envs platform : linux-64 user-agent : conda/4.14.0 requests/2.28.1 CPython/3.9.13 Linux/5.15.0-48-generic ubuntu/22.04.1 glibc/2.35 UID:GID : 1001:1001 netrc file : None offline mode : False ```
``` ❯ /bin/cat ~/.condarc channels: - conda-forge - defaults channel_priority: strict ```
``` ❯ conda list # packages in environment at ~/miniconda3: # # Name Version Build Channel _libgcc_mutex 0.1 conda_forge conda-forge _openmp_mutex 4.5 2_gnu conda-forge anyio 3.6.1 pyhd8ed1ab_1 conda-forge argon2-cffi 21.3.0 pyhd8ed1ab_0 conda-forge argon2-cffi-bindings 21.2.0 py39hb9d737c_2 conda-forge asttokens 2.0.8 pyhd8ed1ab_0 conda-forge attrs 22.1.0 pyh71513ae_1 conda-forge babel 2.10.3 pyhd8ed1ab_0 conda-forge backcall 0.2.0 pyh9f0ad1d_0 conda-forge backports 1.0 py_2 conda-forge backports.functools_lru_cache 1.6.4 pyhd8ed1ab_0 conda-forge beautifulsoup4 4.11.1 pyha770c72_0 conda-forge bleach 5.0.1 pyhd8ed1ab_0 conda-forge brotli 1.0.9 h166bdaf_7 conda-forge brotli-bin 1.0.9 h166bdaf_7 conda-forge brotlipy 0.7.0 py39hb9d737c_1004 conda-forge bzip2 1.0.8 h7f98852_4 conda-forge c-ares 1.18.1 h7f98852_0 conda-forge ca-certificates 2022.6.15.1 ha878542_0 conda-forge certifi 2022.6.15.1 pyhd8ed1ab_0 conda-forge cffi 1.15.1 py39he91dace_0 conda-forge charset-normalizer 2.1.1 pyhd8ed1ab_0 conda-forge colorama 0.4.5 pyhd8ed1ab_0 conda-forge conda 4.14.0 py39hf3d152e_0 conda-forge conda-libmamba-solver 22.8.1 pyhd8ed1ab_0 conda-forge conda-package-handling 1.8.1 py39hb9d737c_1 conda-forge cryptography 37.0.4 py39hd97740a_0 conda-forge cycler 0.11.0 pyhd8ed1ab_0 conda-forge debugpy 1.6.3 py39h5a03fae_0 conda-forge decorator 5.1.1 pyhd8ed1ab_0 conda-forge defusedxml 0.7.1 pyhd8ed1ab_0 conda-forge entrypoints 0.4 pyhd8ed1ab_0 conda-forge executing 1.0.0 pyhd8ed1ab_0 conda-forge flit-core 3.7.1 pyhd8ed1ab_0 conda-forge fonttools 4.37.1 py39hb9d737c_0 conda-forge freetype 2.12.1 hca18f0e_0 conda-forge icu 70.1 h27087fc_0 conda-forge idna 3.3 pyhd8ed1ab_0 conda-forge importlib-metadata 4.11.4 py39hf3d152e_0 conda-forge importlib_metadata 4.11.4 hd8ed1ab_0 conda-forge importlib_resources 5.9.0 pyhd8ed1ab_0 conda-forge ipykernel 6.15.2 pyh210e3f2_0 conda-forge ipympl 0.9.2 pyhd8ed1ab_0 conda-forge ipython 8.5.0 pyh41d4057_1 conda-forge ipython_genutils 0.2.0 py_1 conda-forge ipywidgets 8.0.2 pyhd8ed1ab_1 conda-forge jedi 0.18.1 pyhd8ed1ab_2 conda-forge jinja2 3.1.2 pyhd8ed1ab_1 conda-forge jpeg 9e h166bdaf_2 conda-forge json5 0.9.5 pyh9f0ad1d_0 conda-forge jsonschema 4.16.0 pyhd8ed1ab_0 conda-forge jupyter-lsp 1.5.1 pyhd8ed1ab_0 conda-forge jupyter_client 7.3.5 pyhd8ed1ab_0 conda-forge jupyter_core 4.11.1 py39hf3d152e_0 conda-forge jupyter_server 1.18.1 pyhd8ed1ab_0 conda-forge jupyterlab 3.4.7 pyhd8ed1ab_0 conda-forge jupyterlab-lsp 3.10.2 pyhd8ed1ab_0 conda-forge jupyterlab_pygments 0.2.2 pyhd8ed1ab_0 conda-forge jupyterlab_server 2.15.1 pyhd8ed1ab_0 conda-forge jupyterlab_widgets 3.0.3 pyhd8ed1ab_0 conda-forge keyutils 1.6.1 h166bdaf_0 conda-forge kiwisolver 1.4.4 py39hf939315_0 conda-forge krb5 1.19.3 h3790be6_0 conda-forge lcms2 2.12 hddcbb42_0 conda-forge ld_impl_linux-64 2.36.1 hea4e1c9_2 conda-forge lerc 4.0.0 h27087fc_0 conda-forge libarchive 3.5.2 hb890918_3 conda-forge libblas 3.9.0 16_linux64_openblas conda-forge libbrotlicommon 1.0.9 h166bdaf_7 conda-forge libbrotlidec 1.0.9 h166bdaf_7 conda-forge libbrotlienc 1.0.9 h166bdaf_7 conda-forge libcblas 3.9.0 16_linux64_openblas conda-forge libcurl 7.83.1 h7bff187_0 conda-forge libdeflate 1.14 h166bdaf_0 conda-forge libedit 3.1.20191231 he28a2e2_2 conda-forge libev 4.33 h516909a_1 conda-forge libffi 3.4.2 h7f98852_5 conda-forge libgcc-ng 12.1.0 h8d9b700_16 conda-forge libgfortran-ng 12.1.0 h69a702a_16 conda-forge libgfortran5 12.1.0 hdcd56e2_16 conda-forge libgomp 12.1.0 h8d9b700_16 conda-forge libiconv 1.16 h516909a_0 conda-forge liblapack 3.9.0 16_linux64_openblas conda-forge libmamba 0.25.0 hd8a31e3_2 conda-forge libmambapy 0.25.0 py39hd55135b_2 conda-forge libnghttp2 1.47.0 hdcd2b5c_1 conda-forge libnsl 2.0.0 h7f98852_0 conda-forge libopenblas 0.3.21 pthreads_h78a6416_3 conda-forge libpng 1.6.37 h753d276_4 conda-forge libsodium 1.0.18 h36c2ea0_1 conda-forge libsolv 0.7.22 h6239696_0 conda-forge libsqlite 3.39.3 h753d276_0 conda-forge libssh2 1.10.0 haa6b8db_3 conda-forge libstdcxx-ng 12.1.0 ha89aaad_16 conda-forge libtiff 4.4.0 h55922b4_4 conda-forge libuuid 2.32.1 h7f98852_1000 conda-forge libwebp-base 1.2.4 h166bdaf_0 conda-forge libxcb 1.13 h7f98852_1004 conda-forge libxml2 2.9.14 h22db469_4 conda-forge libxslt 1.1.35 h8affb1d_0 conda-forge libzlib 1.2.12 h166bdaf_3 conda-forge lxml 4.9.1 py39hb9d737c_0 conda-forge lz4-c 1.9.3 h9c3ff4c_1 conda-forge lzo 2.10 h516909a_1000 conda-forge mamba 0.25.0 py39hfa8f2c8_2 conda-forge markupsafe 2.1.1 py39hb9d737c_1 conda-forge matplotlib-base 3.5.3 py39h19d6b11_2 conda-forge matplotlib-inline 0.1.6 pyhd8ed1ab_0 conda-forge mistune 2.0.4 pyhd8ed1ab_0 conda-forge munkres 1.1.4 pyh9f0ad1d_0 conda-forge nbclassic 0.4.3 pyhd8ed1ab_0 conda-forge nbclient 0.6.8 pyhd8ed1ab_0 conda-forge nbconvert 7.0.0 pyhd8ed1ab_0 conda-forge nbconvert-core 7.0.0 pyhd8ed1ab_0 conda-forge nbconvert-pandoc 7.0.0 pyhd8ed1ab_0 conda-forge nbformat 5.5.0 pyhd8ed1ab_0 conda-forge ncurses 6.3 h27087fc_1 conda-forge nest-asyncio 1.5.5 pyhd8ed1ab_0 conda-forge notebook 6.4.12 pyha770c72_0 conda-forge notebook-shim 0.1.0 pyhd8ed1ab_0 conda-forge numpy 1.23.3 py39hba7629e_0 conda-forge openjpeg 2.5.0 h7d73246_1 conda-forge openssl 1.1.1q h166bdaf_0 conda-forge packaging 21.3 pyhd8ed1ab_0 conda-forge pandoc 2.19.2 ha770c72_0 conda-forge pandocfilters 1.5.0 pyhd8ed1ab_0 conda-forge parso 0.8.3 pyhd8ed1ab_0 conda-forge pexpect 4.8.0 pyh9f0ad1d_2 conda-forge pickleshare 0.7.5 py_1003 conda-forge pillow 9.2.0 py39hd5dbb17_2 conda-forge pip 22.2.2 pyhd8ed1ab_0 conda-forge pkgutil-resolve-name 1.3.10 pyhd8ed1ab_0 conda-forge prometheus_client 0.14.1 pyhd8ed1ab_0 conda-forge prompt-toolkit 3.0.31 pyha770c72_0 conda-forge psutil 5.9.2 py39hb9d737c_0 conda-forge pthread-stubs 0.4 h36c2ea0_1001 conda-forge ptyprocess 0.7.0 pyhd3deb0d_0 conda-forge pure_eval 0.2.2 pyhd8ed1ab_0 conda-forge pybind11-abi 4 hd8ed1ab_3 conda-forge pycosat 0.6.3 py39hb9d737c_1010 conda-forge pycparser 2.21 pyhd8ed1ab_0 conda-forge pygments 2.13.0 pyhd8ed1ab_0 conda-forge pyopenssl 22.0.0 pyhd8ed1ab_0 conda-forge pyparsing 3.0.9 pyhd8ed1ab_0 conda-forge pyrsistent 0.18.1 py39hb9d737c_1 conda-forge pysocks 1.7.1 pyha2e5f31_6 conda-forge python 3.9.13 h9a8a25e_0_cpython conda-forge python-dateutil 2.8.2 pyhd8ed1ab_0 conda-forge python-fastjsonschema 2.16.1 pyhd8ed1ab_0 conda-forge python_abi 3.9 2_cp39 conda-forge pytz 2022.2.1 pyhd8ed1ab_0 conda-forge pyzmq 23.2.1 py39headdf64_0 conda-forge readline 8.1.2 h0f457ee_0 conda-forge reproc 14.2.3 h7f98852_0 conda-forge reproc-cpp 14.2.3 h9c3ff4c_0 conda-forge requests 2.28.1 pyhd8ed1ab_1 conda-forge ruamel_yaml 0.15.80 py39hb9d737c_1007 conda-forge send2trash 1.8.0 pyhd8ed1ab_0 conda-forge setuptools 65.3.0 pyhd8ed1ab_1 conda-forge six 1.16.0 pyh6c4a22f_0 conda-forge sniffio 1.3.0 pyhd8ed1ab_0 conda-forge soupsieve 2.3.2.post1 pyhd8ed1ab_0 conda-forge sqlite 3.39.3 h4ff8645_0 conda-forge stack_data 0.5.0 pyhd8ed1ab_0 conda-forge terminado 0.15.0 py39hf3d152e_0 conda-forge tinycss2 1.1.1 pyhd8ed1ab_0 conda-forge tk 8.6.12 h27826a3_0 conda-forge tomli 2.0.1 pyhd8ed1ab_0 conda-forge toolz 0.12.0 pyhd8ed1ab_0 conda-forge tornado 6.2 py39hb9d737c_0 conda-forge tqdm 4.64.1 pyhd8ed1ab_0 conda-forge traitlets 5.4.0 pyhd8ed1ab_0 conda-forge typing_extensions 4.3.0 pyha770c72_0 conda-forge tzdata 2022c h191b570_0 conda-forge unicodedata2 14.0.0 py39hb9d737c_1 conda-forge urllib3 1.26.11 pyhd8ed1ab_0 conda-forge wcwidth 0.2.5 pyh9f0ad1d_2 conda-forge webencodings 0.5.1 py_1 conda-forge websocket-client 1.4.1 pyhd8ed1ab_0 conda-forge wheel 0.37.1 pyhd8ed1ab_0 conda-forge widgetsnbextension 4.0.3 pyhd8ed1ab_0 conda-forge xorg-libxau 1.0.9 h7f98852_0 conda-forge xorg-libxdmcp 1.1.3 h7f98852_0 conda-forge xz 5.2.6 h166bdaf_0 conda-forge yaml 0.2.5 h7f98852_2 conda-forge yaml-cpp 0.7.0 h27087fc_1 conda-forge zeromq 4.3.4 h9c3ff4c_1 conda-forge zipp 3.8.1 pyhd8ed1ab_0 conda-forge zstd 1.5.2 h6239696_4 conda-forge ```
I experienced an issue that is somewhat related but not identical. If it is sufficiently different, I'll open a new issue.
In my case, I was installing the same PyTorch environment with classic
and libmamba
solvers:
$ conda env create -f pyg-minimal.yml --experimental-solver classic
$ conda env create -f pyg-minimal.yml --experimental-solver libmamba
The classic
solver correctly installed the CPU versions but the libmamba
solver incorrectly installed cudatoolkit
and the CUDA versions.
pyg-minimal.yml
:
name: pyg
channels:
- conda-forge
- pyg
- pytorch
dependencies:
- cpuonly
- pyg=2.1.0
- python=3.9
- pytorch::pytorch=1.12
@ipcoder - in which environment are you trying to install those packages? I am trying to reproduce but taking your base
gives unsolvable, so I am assuming it has to do with a different environment.
@jaimergp I believe its an empty python 3.9 environment which I populate with the commands above.
It was awhile ago, and I could forget, but I usually work in separate environment, not in the base.
@daico007 - I took your environment (no dev) from this PR (https://github.com/mosdef-hub/gmso/pull/689), reverted the pydantic dependency to < 1.9.0
, and ran it on a clean Docker image:
$ CONDA_SUBDIR=linux-64 conda env create -f daico007.yaml --solver=libmamba --dry-run
conda-forge/noarch Using cache
conda-forge/linux-64 29.6MB @ 2.3MB/s 21.0s
Collect all metadata (repodata.json): done
Solving environment: done
name: daico007
channels:
- conda-forge
dependencies:
- conda-forge/linux-64::_libgcc_mutex==0.1=conda_forge
- conda-forge/linux-64::ca-certificates==2022.12.7=ha878542_0
- conda-forge/linux-64::ld_impl_linux-64==2.40=h41732ed_0
- conda-forge/linux-64::libgfortran5==12.2.0=h337968e_19
- conda-forge/linux-64::libstdcxx-ng==12.2.0=h46fd767_19
- conda-forge/linux-64::python_abi==3.11=3_cp311
- conda-forge/noarch::tzdata==2022g=h191b570_0
- conda-forge/linux-64::libgfortran-ng==12.2.0=h69a702a_19
- conda-forge/linux-64::libgomp==12.2.0=h65d4601_19
- conda-forge/linux-64::_openmp_mutex==4.5=2_gnu
- conda-forge/linux-64::libgcc-ng==12.2.0=h65d4601_19
- conda-forge/linux-64::bzip2==1.0.8=h7f98852_4
- conda-forge/linux-64::cudatoolkit==11.8.0=h37601d7_11
- conda-forge/linux-64::gmp==6.2.1=h58526e2_0
- conda-forge/linux-64::icu==70.1=h27087fc_0
- conda-forge/linux-64::libffi==3.4.2=h7f98852_5
- conda-forge/linux-64::libiconv==1.17=h166bdaf_0
- conda-forge/linux-64::libnsl==2.0.0=h7f98852_0
- conda-forge/linux-64::libopenblas==0.3.21=pthreads_h78a6416_3
- conda-forge/linux-64::libuuid==2.32.1=h7f98852_1000
- conda-forge/linux-64::libzlib==1.2.13=h166bdaf_4
- conda-forge/linux-64::ncurses==6.3=h27087fc_1
- conda-forge/linux-64::ocl-icd==2.3.1=h7f98852_0
- conda-forge/linux-64::openssl==3.0.8=h0b41bf4_0
- conda-forge/linux-64::xz==5.2.6=h166bdaf_0
- conda-forge/linux-64::libblas==3.9.0=16_linux64_openblas
- conda-forge/linux-64::libprotobuf==3.21.12=h3eb15da_0
- conda-forge/linux-64::libsqlite==3.40.0=h753d276_0
- conda-forge/linux-64::libxml2==2.10.3=h7463322_0
- conda-forge/linux-64::mpfr==4.1.0=h9202a9a_1
- conda-forge/linux-64::ocl-icd-system==1.0.0=1
- conda-forge/linux-64::readline==8.1.2=h0f457ee_0
- conda-forge/linux-64::tk==8.6.12=h27826a3_0
- conda-forge/linux-64::libcblas==3.9.0=16_linux64_openblas
- conda-forge/linux-64::liblapack==3.9.0=16_linux64_openblas
- conda-forge/linux-64::libxslt==1.1.37=h873f0b0_0
- conda-forge/linux-64::mpc==1.3.1=hfe3b2da_0
- conda-forge/linux-64::python==3.11.0=he550d4f_1_cpython
- conda-forge/noarch::boltons==21.0.0=pyhd8ed1ab_0
- conda-forge/noarch::certifi==2022.12.7=pyhd8ed1ab_0
- conda-forge/noarch::charset-normalizer==2.1.1=pyhd8ed1ab_0
- conda-forge/noarch::dataclasses==0.8=pyhc8e2a94_3
- conda-forge/noarch::ele==0.2.0=pyhd8ed1ab_0
- conda-forge/linux-64::gmpy2==2.1.2=py311h6a5fa03_1
- conda-forge/noarch::idna==3.4=pyhd8ed1ab_0
- conda-forge/noarch::lark-parser==0.12.0=pyhd8ed1ab_0
- conda-forge/linux-64::lxml==4.9.2=py311h14a6109_0
- conda-forge/noarch::mpmath==1.2.1=pyhd8ed1ab_0
- conda-forge/noarch::networkx==3.0=pyhd8ed1ab_0
- conda-forge/linux-64::numpy==1.24.2=py311h8e6699e_0
- conda-forge/noarch::pycparser==2.21=pyhd8ed1ab_0
- conda-forge/noarch::pysocks==1.7.1=pyha2e5f31_6
- conda-forge/noarch::pytz==2022.7.1=pyhd8ed1ab_0
- conda-forge/noarch::setuptools==67.1.0=pyhd8ed1ab_0
- conda-forge/noarch::six==1.16.0=pyh6c4a22f_0
- conda-forge/noarch::wheel==0.38.4=pyhd8ed1ab_0
- conda-forge/linux-64::cffi==1.15.1=py311h409f033_3
- conda-forge/linux-64::openmm==8.0.0=py311h59c6c42_0
- conda-forge/noarch::pip==23.0=pyhd8ed1ab_0
- conda-forge/linux-64::protobuf==4.21.12=py311hcafe171_0
- conda-forge/noarch::pydantic==0.18.2=py_0
- conda-forge/noarch::python-dateutil==2.8.2=pyhd8ed1ab_0
- conda-forge/linux-64::sympy==1.11.1=py311h38be061_2
- conda-forge/linux-64::brotlipy==0.7.0=py311hd4cff14_1005
- conda-forge/linux-64::cryptography==39.0.1=py311h9b4c7bb_0
- conda-forge/linux-64::pandas==1.5.3=py311h2872171_0
- conda-forge/noarch::unyt==2.8.0=py_0
- conda-forge/noarch::gmso==0.9.0=pyhd8ed1ab_0
- conda-forge/linux-64::parmed==4.0.0=py311hcafe171_0
- conda-forge/noarch::pyopenssl==23.0.0=pyhd8ed1ab_0
- conda-forge/noarch::urllib3==1.26.14=pyhd8ed1ab_0
- conda-forge/noarch::requests==2.28.2=pyhd8ed1ab_0
- conda-forge/noarch::foyer==0.11.3=pyhd8ed1ab_0
- conda-forge/noarch::forcefield-utilities==0.2.1=pyhd8ed1ab_0
conda-forge/noarch::pydantic==0.18.2=py_0
is being chosen, which reproduces what you saw. classic does get 1.8.2. (note: updated this sentence to fix an oversight)
Hi @jaimergp, when I am constraining the pydantic<1.9
, I am expecting conda
to grab the latest version of pydantic
that satisfy the requirement (which would be v1.8.2, which I would get using mamba
, not v0.18.2), but please correct me if that's not the designed behavior. This discrepancy (between conda
and mamba
) also happened if I just install pydantic
alone, so I can't really blame it's on the inter-dependency in the environment.yml
.
@ipcoder - my results for the following input:
name: ipcoder
channels:
- conda-forge
- defaults
dependencies:
- python=3.9
- pytorch==1.10.2
- torchvision==0.11.3
- cudatoolkit=11.3
There are some differences in the MKL/openblas stack, but pytorch
itself is indeed CPU in both.
Hi jaimergp, when I am constraining the
pydantic<1.9
, I am expectingconda
to grab the latest version ofpydantic
that satisfy the requirement (which would be v1.8.2, which I would get usingmamba
, not v0.18.2), but please correct me if that's not the designed behavior. This discrepancy (betweenconda
andmamba
) also happened if I just installpydantic
alone, so I can't really blame it's on the inter-dependency in theenvironment.yml
.
Wow you are right @daico007. I saw 1-8-2
in both and then omitted the 0
. I updated my above comment, sorry! We'll look into it.
Hi @daico007, I have looked a bit further into your reproducer. I just realized you are not specifying any particular python
version, so libsolv
has to try all of them. In that backtracking process, it will try to select pydantic 1.8.2
for Python 3.11, which doesn't exist, and this will trigger a cascade of alternative searches that concludes that the pydantic 0.8.2 does work with Python 3.11 (because it's noarch and its repodata has an open-ended upper bound), before trying Python 3.10 and Pydantic 1.8.2.
IOW, libsolv
cannot anticipate that you'd prefer a more recent pydantic
over a more recent python
, so it prioritizes getting python 3.11
over getting pydantic 1.8.2
.
If you specify any Python version, you do get 1.8.2. This works even with python <3.11
.
More details:
Checklist
What happened?
One of our users bump into an issue when trying to install a package using conda, specifically conda is grabbing an incorrect version of a dependent package. He tried again with
mamba
and everything works fine. I was able to narrow down the issue to be with the version constraint in ourenvironment.yml
, specifically,conda
was trying to grab a very old version, whilemamba
the most recent one less the constraint. To reproduce the issue:Conda
Result
Mamba
Result
This might be relate to this https://github.com/conda/conda-libmamba-solver/issues/64, but since both are grabbing the same
openssl
make me unsure. Also, the way the two version differentiate (1.8.2 vs 0.18.2) make we think it may be a parsing issue?Conda Details
```shell active environment : general active env location : /Users/quachcd/mambaforge/envs/general shell level : 2 user config file : /Users/quachcd/.condarc populated config files : /Users/quachcd/mambaforge/.condarc /Users/quachcd/.condarc conda version : 4.12.0 conda-build version : not installed python version : 3.9.6.final.0 virtual packages : __osx=12.1=0 __unix=0=0 __archspec=1=x86_64 base environment : /Users/quachcd/mambaforge (writable) conda av data dir : /Users/quachcd/mambaforge/etc/conda conda av metadata url : None channel URLs : https://conda.anaconda.org/conda-forge/osx-64 https://conda.anaconda.org/conda-forge/noarch https://conda.anaconda.org/mosdef/osx-64 https://conda.anaconda.org/mosdef/noarch https://conda.anaconda.org/omnia/osx-64 https://conda.anaconda.org/omnia/noarch https://conda.anaconda.org/bioconda/osx-64 https://conda.anaconda.org/bioconda/noarch https://repo.anaconda.com/pkgs/main/osx-64 https://repo.anaconda.com/pkgs/main/noarch https://repo.anaconda.com/pkgs/r/osx-64 https://repo.anaconda.com/pkgs/r/noarch package cache : /Users/quachcd/mambaforge/pkgs /Users/quachcd/.conda/pkgs envs directories : /Users/quachcd/mambaforge/envs /Users/quachcd/.conda/envs platform : osx-64 user-agent : conda/4.12.0 requests/2.26.0 CPython/3.9.6 Darwin/21.2.0 OSX/12.1 UID:GID : 501:20 netrc file : None offline mode : False ```conda info
```shell ==> /Users/quachcd/mambaforge/.condarc <== channels: - conda-forge ==> /Users/quachcd/.condarc <== ssl_verify: True channels: - conda-forge - mosdef - omnia - bioconda - defaults ```conda config
```shell # packages in environment at /Users/quachcd/mambaforge: # # Name Version Build Channel ansi2html 1.7.0 py39h6e9494a_1 conda-forge appnope 0.1.3 pyhd8ed1ab_0 conda-forge asttokens 2.0.5 pyhd8ed1ab_0 conda-forge backcall 0.2.0 pyh9f0ad1d_0 conda-forge backports 1.0 py_2 conda-forge backports.functools_lru_cache 1.6.4 pyhd8ed1ab_0 conda-forge brotli-python 1.0.9 py39hfd1d529_7 conda-forge brotlipy 0.7.0 py39h89e85a6_1001 conda-forge bzip2 1.0.8 h0d85af4_4 conda-forge c-ares 1.17.2 h0d85af4_0 conda-forge ca-certificates 2022.5.18.1 h033912b_0 conda-forge certifi 2022.5.18.1 py39h6e9494a_0 conda-forge cffi 1.14.6 py39hb71fe58_0 conda-forge chardet 4.0.0 py39h6e9494a_1 conda-forge charset-normalizer 2.0.0 pyhd8ed1ab_0 conda-forge click 8.1.3 py39h6e9494a_0 conda-forge colorama 0.4.4 pyh9f0ad1d_0 conda-forge conda 4.12.0 py39h6e9494a_0 conda-forge conda-package-handling 1.7.3 py39h89e85a6_0 conda-forge cryptography 3.4.7 py39ha2c9959_0 conda-forge dash 2.4.1 pyhd8ed1ab_0 conda-forge debugpy 1.6.0 py39hfd1d529_0 conda-forge decorator 5.1.1 pyhd8ed1ab_0 conda-forge entrypoints 0.4 pyhd8ed1ab_0 conda-forge executing 0.8.3 pyhd8ed1ab_0 conda-forge flask 2.1.2 pyhd8ed1ab_1 conda-forge flask-compress 1.12 pyhd8ed1ab_0 conda-forge icu 68.1 h74dc148_0 conda-forge idna 3.1 pyhd3deb0d_0 conda-forge importlib-metadata 4.11.4 py39h6e9494a_0 conda-forge ipykernel 6.13.0 py39h71a6800_0 conda-forge ipython 8.3.0 py39h6e9494a_0 conda-forge itsdangerous 2.1.2 pyhd8ed1ab_0 conda-forge jedi 0.18.1 py39h6e9494a_1 conda-forge jinja2 3.1.2 pyhd8ed1ab_0 conda-forge jupyter-dash 0.4.2 pyhd8ed1ab_1 conda-forge jupyter_client 7.0.6 pyhd8ed1ab_0 conda-forge jupyter_core 4.10.0 py39h6e9494a_0 conda-forge krb5 1.19.2 hcfbf3a7_0 conda-forge libarchive 3.5.1 h2b60450_2 conda-forge libcurl 7.78.0 hf45b732_0 conda-forge libcxx 12.0.1 habf9029_0 conda-forge libedit 3.1.20191231 h0678c8f_2 conda-forge libev 4.33 haf1e3a3_1 conda-forge libffi 3.3 h046ec9c_2 conda-forge libiconv 1.16 haf1e3a3_0 conda-forge libnghttp2 1.43.0 h07e645a_0 conda-forge libsodium 1.0.18 hbcb3906_1 conda-forge libsolv 0.7.19 hcf210ce_5 conda-forge libssh2 1.9.0 h52ee1ee_6 conda-forge libxml2 2.9.12 h93ec3fd_0 conda-forge lz4-c 1.9.3 he49afe7_1 conda-forge lzo 2.10 haf1e3a3_1000 conda-forge mamba 0.15.3 py39hb671511_0 conda-forge markupsafe 2.1.1 py39h63b48b0_1 conda-forge matplotlib-inline 0.1.3 pyhd8ed1ab_0 conda-forge ncurses 6.2 h2e338ed_4 conda-forge nest-asyncio 1.5.5 pyhd8ed1ab_0 conda-forge openssl 1.1.1o hfe4f2af_0 conda-forge packaging 21.3 pyhd8ed1ab_0 conda-forge parso 0.8.3 pyhd8ed1ab_0 conda-forge pexpect 4.8.0 pyh9f0ad1d_2 conda-forge pickleshare 0.7.5 py_1003 conda-forge pip 21.2.4 pyhd8ed1ab_0 conda-forge plotly 5.8.0 pyhd8ed1ab_1 conda-forge prompt-toolkit 3.0.29 pyha770c72_0 conda-forge psutil 5.9.1 py39h701faf5_0 conda-forge ptyprocess 0.7.0 pyhd3deb0d_0 conda-forge pure_eval 0.2.2 pyhd8ed1ab_0 conda-forge pycosat 0.6.3 py39h89e85a6_1006 conda-forge pycparser 2.20 pyh9f0ad1d_2 conda-forge pygments 2.12.0 pyhd8ed1ab_0 conda-forge pyopenssl 20.0.1 pyhd8ed1ab_0 conda-forge pyparsing 3.0.9 pyhd8ed1ab_0 conda-forge pysocks 1.7.1 py39h6e9494a_3 conda-forge python 3.9.6 hd187cdc_1_cpython conda-forge python-dateutil 2.8.2 pyhd8ed1ab_0 conda-forge python_abi 3.9 2_cp39 conda-forge pyzmq 19.0.2 py39he75b00d_2 conda-forge readline 8.1 h05e3726_0 conda-forge reproc 14.2.1 hbcb3906_0 conda-forge reproc-cpp 14.2.1 h2e338ed_0 conda-forge requests 2.26.0 pyhd8ed1ab_0 conda-forge retrying 1.3.3 py_2 conda-forge ruamel_yaml 0.15.80 py39h89e85a6_1004 conda-forge setuptools 57.4.0 py39h6e9494a_0 conda-forge six 1.16.0 pyh6c4a22f_0 conda-forge sqlite 3.36.0 h23a322b_0 conda-forge stack_data 0.2.0 pyhd8ed1ab_0 conda-forge tenacity 8.0.1 pyhd8ed1ab_0 conda-forge tk 8.6.11 hd798d34_0 conda-forge tornado 6.1 py39h63b48b0_3 conda-forge tqdm 4.62.1 pyhd8ed1ab_0 conda-forge traitlets 5.2.1.post0 pyhd8ed1ab_0 conda-forge tzdata 2021a he74cb21_1 conda-forge urllib3 1.26.6 pyhd8ed1ab_0 conda-forge wcwidth 0.2.5 pyh9f0ad1d_2 conda-forge werkzeug 2.1.2 pyhd8ed1ab_1 conda-forge wheel 0.37.0 pyhd8ed1ab_1 conda-forge xz 5.2.5 haf1e3a3_1 conda-forge yaml 0.2.5 haf1e3a3_0 conda-forge zeromq 4.3.4 he49afe7_1 conda-forge zipp 3.8.0 pyhd8ed1ab_0 conda-forge zlib 1.2.11 h7795811_1010 conda-forge zstd 1.5.0 h582d3a0_0 conda-forge ```conda list