Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

installing libzlib in base results in libmamba updates #240

Closed
2 tasks done
analog-cbarber opened this issue Jul 19, 2023 · 2 comments · Fixed by #270
Closed
2 tasks done

installing libzlib in base results in libmamba updates #240

analog-cbarber opened this issue Jul 19, 2023 · 2 comments · Fixed by #270
Labels
locked [bot] locked due to inactivity type::bug describes erroneous operation, use severity::* to classify the type

Comments

@analog-cbarber
Copy link

Checklist

  • I added a descriptive title
  • I searched open reports and couldn't find a duplicate

What happened?

In a docker based CI job, we start out by setting up the libmamba solver and installing some other tools.
We were surprised to find out that libmamba was getting upgraded despite the fact that we did not install
any packages that depend on libmamba directly or indirectly. This ONLY happens if libmamba is configured
as the current solver.

This adds significant extra cost to the install. In the example below, using libmamba results in a build time of 2 minutes and 40 seconds vs. just 40 seconds using libmamba, and the extra time does seem directly related to upgrading libmamba.

On top of the extra time, the other concern is that this essentially forces you to use the latest version of libmamba whether you want to or not.

I also find this behavior surprising since it appears that libmamba already indirectly depends on libzlib

One minimal example is to just install libzlib, although any package that depends on libzlib indirectly will also trigger this behavior.

These are all based on the continumio:miniconda3 docker image.

Pulling docker image continuumio/miniconda3:latest ...
Using docker image sha256:a101d1f[8](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400722#L8)cd1cbfc6b0e91e4f1ce03e48a6bdca7987168647044a497e57411c56 for continuumio/miniconda3:latest with digest continuumio/miniconda3@sha256:42cd2ca0ece04579b6127e1a1a0f83c25a079145d408eb65e39206ac05069a77 ...
...
$ . /opt/conda/etc/profile.d/conda.sh
$ conda activate base
$ conda config --set auto_update_conda false
$ conda install conda-libmamba-solver
Collecting package metadata (current_repodata.json): ...working... done
Solving environment: ...working... done
# All requested packages already installed.
$ conda config --set solver libmamba
$ conda install -c conda-forge libzlib
Channels:
 - conda-forge
 - defaults
Platform: linux-64
Collecting package metadata (repodata.json): ...working... done
Solving environment: ...working... done
## Package Plan ##
  environment location: /opt/conda
  added / updated specs:
    - libzlib
The following packages will be downloaded:
    package                    |            build
    ---------------------------|-----------------
    _libgcc_mutex-0.1          |      conda_forge           3 KB  conda-forge
    _openmp_mutex-4.5          |            2_gnu          [23](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L23) KB  conda-forge
    boltons-23.0.0             |     pyhd8ed1ab_0         296 KB  conda-forge
    brotli-python-1.0.9        |  py311ha362b79_9         319 KB  conda-forge
    brotlipy-0.7.0             |py311hd4cff14_1005         345 KB  conda-forge
    bzip2-1.0.8                |       h7f98852_4         484 KB  conda-forge
    c-ares-1.19.1              |       hd590300_0         111 KB  conda-forge
    certifi-2023.5.7           |     pyhd8ed1ab_0         149 KB  conda-forge
    cffi-1.15.1                |  py311h409f033_3         289 KB  conda-forge
    charset-normalizer-3.2.0   |     pyhd8ed1ab_0          45 KB  conda-forge
    colorama-0.4.6             |     pyhd8ed1ab_0          25 KB  conda-forge
    conda-23.5.2               |  py311h38be061_0         1.3 MB  conda-forge
    conda-content-trust-0.1.1  |     pyhd3eb1b0_0          56 KB
    conda-libmamba-solver-23.5.0|     pyhd8ed1ab_0          40 KB  conda-forge
    conda-package-streaming-0.8.0|     pyhd8ed1ab_0          18 KB  conda-forge
    cryptography-41.0.2        |  py311h63ff55d_0         1.9 MB  conda-forge
    fmt-9.1.0                  |       h9[24](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L24)138e_0         185 KB  conda-forge
    icu-72.1                   |       hcb278e6_0        11.4 MB  conda-forge
    idna-3.4                   |     pyhd8ed1ab_0          55 KB  conda-forge
    jsonpatch-1.32             |     pyhd8ed1ab_0          14 KB  conda-forge
    keyutils-1.6.1             |       h166bdaf_0         115 KB  conda-forge
    krb5-1.21.1                |       h659d440_0         1.3 MB  conda-forge
    ld_impl_linux-64-2.40      |       h41732ed_0         688 KB  conda-forge
    libarchive-3.6.2           |       h039dbb9_1         824 KB  conda-forge
    libcurl-8.2.0              |       hca28451_0         364 KB  conda-forge
    libev-4.33                 |       h516909a_1         104 KB  conda-forge
    libexpat-2.5.0             |       hcb278e6_1          76 KB  conda-forge
    libgcc-ng-13.1.0           |       he5830b7_0         758 KB  conda-forge
    libgomp-13.1.0             |       he5830b7_0         409 KB  conda-forge
    libiconv-1.17              |       h166bdaf_0         1.4 MB  conda-forge
    libmamba-1.4.9             |       h658169a_0         1.5 MB  conda-forge
    libmambapy-1.4.9           |  py311h527f279_0         282 KB  conda-forge
    libnghttp2-1.52.0          |       h61bc06f_0         608 KB  conda-forge
    libnsl-2.0.0               |       h7f98852_0          31 KB  conda-forge
    libsolv-0.7.24             |       hfc55[25](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L25)1_1         456 KB  conda-forge
    libsqlite-3.42.0           |       h2797004_0         809 KB  conda-forge
    libssh2-1.11.0             |       h0841786_0         [26](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L26)5 KB  conda-forge
    libstdcxx-ng-13.1.0        |       hfd8a6a1_0         3.7 MB  conda-forge
    libuuid-2.38.1             |       h0b41bf4_0          33 KB  conda-forge
    libxml2-2.11.4             |       h0d562d8_0         688 KB  conda-forge
    libzlib-1.2.13             |       hd590300_5          60 KB  conda-forge
    lz4-c-1.9.4                |       hcb[27](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L27)8e6_0         140 KB  conda-forge
    lzo-2.10                   |    h516909a_1000         314 KB  conda-forge
    ncurses-6.4                |       hcb278e6_0         860 KB  conda-forge
    openssl-3.1.1              |       hd590300_1         2.5 MB  conda-forge
    packaging-23.1             |     pyhd8ed1ab_0          45 KB  conda-forge
    pcre2-10.40                |       hc3806b6_0         2.3 MB  conda-forge
    pip-23.2                   |     pyhd8ed1ab_0         1.3 MB  conda-forge
    pluggy-1.2.0               |     pyhd8ed1ab_0          21 KB  conda-forge
    pybind11-abi-4             |       hd8ed1ab_3          10 KB  conda-forge
    pycosat-0.6.4              |  py311hd4cff14_1         111 KB  conda-forge
    pycparser-2.21             |     pyhd8ed1ab_0         100 KB  conda-forge
    pyopenssl-23.2.0           |     pyhd8ed1ab_1         126 KB  conda-forge
    pysocks-1.7.1              |     pyha2e5f31_6          19 KB  conda-forge
    python-3.11.4              |hab00c5b_0_cpython        29.3 MB  conda-forge
    python_abi-3.11            |          3_cp311           6 KB  conda-forge
    readline-8.2               |       h82[28](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L28)510_1         275 KB  conda-forge
    reproc-14.2.4              |       h0b41bf4_0          30 KB  conda-forge
    reproc-cpp-14.2.4          |       hcb278e6_0          21 KB  conda-forge
    requests-2.31.0            |     pyhd8ed1ab_0          55 KB  conda-forge
    ruamel.yaml-0.17.32        |  py311h459d7ec_0         274 KB  conda-forge
    ruamel.yaml.clib-0.2.7     |  py311h2582759_1         131 KB  conda-forge
    setuptools-68.0.0          |     pyhd8ed1ab_0         453 KB  conda-forge
    six-1.16.0                 |     pyh6c4a22f_0          14 KB  conda-forge
    sqlite-3.42.0              |       h2c6b66d_0         799 KB  conda-forge
    tk-8.6.12                  |       h27826a3_0         3.3 MB  conda-forge
    toolz-0.12.0               |     pyhd8ed1ab_0          48 KB  conda-forge
    tqdm-4.65.0                |     pyhd8ed1ab_1          86 KB  conda-forge
    tzdata-2023c               |       h71feb2d_0         115 KB  conda-forge
    urllib3-2.0.4              |     pyhd8ed1ab_0          96 KB  conda-forge
    wheel-0.40.0               |     pyhd8ed1ab_1          56 KB  conda-forge
    yaml-cpp-0.7.0             |       h27087fc_2         215 KB  conda-forge
    zlib-1.2.13                |       hd590300_5          91 KB  conda-forge
    zstandard-0.19.0           |  py311haa97af0_2         397 KB  conda-forge
    zstd-1.5.2                 |       hfc55251_7         421 KB  conda-forge
    ------------------------------------------------------------
                                           Total:        75.2 MB
The following NEW packages will be INSTALLED:
  brotli-python      conda-forge/linux-64::brotli-python-1.0.9-py311ha362b79_9 
  colorama           conda-forge/noarch::colorama-0.4.6-pyhd8ed1ab_0 
  keyutils           conda-forge/linux-64::keyutils-1.6.1-h166bdaf_0 
  libexpat           conda-forge/linux-64::libexpat-2.5.0-hcb278e6_1 
  libiconv           conda-forge/linux-64::libiconv-1.17-h166bdaf_0 
  libnsl             conda-forge/linux-64::libnsl-2.0.0-h7f98852_0 
  libsqlite          conda-forge/linux-64::libsqlite-3.42.0-h2797004_0 
  libzlib            conda-forge/linux-64::libzlib-1.2.13-hd590300_5 
  lzo                conda-forge/linux-64::lzo-2.10-h516909a_1000 
  python_abi         conda-forge/linux-64::python_abi-3.11-3_cp311 
  ruamel.yaml.clib   conda-forge/linux-64::ruamel.yaml.clib-0.2.7-py311h2582759_1 
The following packages will be UPDATED:
  brotlipy           pkgs/main::brotlipy-0.7.0-py311h5eee1~ --> conda-forge::brotlipy-0.7.0-py311hd4cff14_1005 
  bzip2                   pkgs/main::bzip2-1.0.8-h7b6447c_0 --> conda-forge::bzip2-1.0.8-h7f98852_4 
  c-ares                pkgs/main::c-ares-1.19.0-h5eee18b_0 --> conda-forge::c-ares-1.19.1-hd590300_0 
  charset-normalizer pkgs/main::charset-normalizer-2.0.4-p~ --> conda-forge::charset-normalizer-3.2.0-pyhd8ed1ab_0 
  cryptography       pkgs/main::cryptography-39.0.1-py311h~ --> conda-forge::cryptography-41.0.2-py311h63ff55d_0 
  icu                        pkgs/main::icu-58.2-he6710b0_3 --> conda-forge::icu-72.1-hcb278e6_0 
  krb5                    pkgs/main::krb5-1.20.1-h143b758_1 --> conda-forge::krb5-1.21.1-h659d440_0 
  ld_impl_linux-64   pkgs/main::ld_impl_linux-64-2.38-h118~ --> conda-forge::ld_impl_linux-64-2.40-h41732ed_0 
  libcurl               pkgs/main::libcurl-8.1.1-h251f7ec_1 --> conda-forge::libcurl-8.2.0-hca28451_0 
  libgcc-ng          pkgs/main::libgcc-ng-11.2.0-h1234567_1 --> conda-forge::libgcc-ng-13.1.0-he5830b7_0 
  libgomp              pkgs/main::libgomp-11.2.0-h1234567_1 --> conda-forge::libgomp-13.1.0-he5830b7_0 
  libmamba             pkgs/main::libmamba-1.4.1-h2dafd23_1 --> conda-forge::libmamba-1.4.9-h658169a_0 
  libmambapy         pkgs/main::libmambapy-1.4.1-py311h2da~ --> conda-forge::libmambapy-1.4.9-py311h527f279_0 
  libsolv              pkgs/main::libsolv-0.7.22-he621ea3_0 --> conda-forge::libsolv-0.7.24-hfc55251_1 
  libssh2              pkgs/main::libssh2-1.10.0-hdbd6064_2 --> conda-forge::libssh2-1.11.0-h0841786_0 
  libstdcxx-ng       pkgs/main::libstdcxx-ng-11.2.0-h12345~ --> conda-forge::libstdcxx-ng-13.1.0-hfd8a6a1_0 
  libuuid              pkgs/main::libuuid-1.41.5-h5eee18b_0 --> conda-forge::libuuid-2.38.1-h0b41bf4_0 
  libxml2              pkgs/main::libxml2-2.10.3-hcbfbd50_0 --> conda-forge::libxml2-2.11.4-h0d562d8_0 
  openssl               pkgs/main::openssl-3.0.9-h7f8727e_0 --> conda-forge::openssl-3.1.1-hd590300_1 
  packaging          pkgs/main/linux-64::packaging-23.0-py~ --> conda-forge/noarch::packaging-23.1-pyhd8ed1ab_0 
  pcre2                   pkgs/main::pcre2-10.37-he7ceb23_1 --> conda-forge::pcre2-10.40-hc3806b6_0 
  pip                pkgs/main/linux-64::pip-23.1.2-py311h~ --> conda-forge/noarch::pip-23.2-pyhd8ed1ab_0 
  pluggy             pkgs/main/linux-64::pluggy-1.0.0-py31~ --> conda-forge/noarch::pluggy-1.2.0-pyhd8ed1ab_0 
  pybind11-abi         pkgs/main::pybind11-abi-4-hd3eb1b0_1 --> conda-forge::pybind11-abi-4-hd8ed1ab_3 
  pycosat            pkgs/main::pycosat-0.6.4-py311h5eee18~ --> conda-forge::pycosat-0.6.4-py311hd4cff14_1 
  pyopenssl          pkgs/main/linux-64::pyopenssl-23.0.0-~ --> conda-forge/noarch::pyopenssl-23.2.0-pyhd8ed1ab_1 
  pysocks            pkgs/main/linux-64::pysocks-1.7.1-py3~ --> conda-forge/noarch::pysocks-1.7.1-pyha2e5f31_6 
  readline               pkgs/main::readline-8.2-h5eee18b_0 --> conda-forge::readline-8.2-h8228510_1 
  requests           pkgs/main/linux-64::requests-2.[29](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L29).0-p~ --> conda-forge/noarch::requests-2.31.0-pyhd8ed1ab_0 
  ruamel.yaml        pkgs/main::ruamel.yaml-0.17.21-py311h~ --> conda-forge::ruamel.yaml-0.17.32-py311h459d7ec_0 
  setuptools         pkgs/main/linux-64::setuptools-67.8.0~ --> conda-forge/noarch::setuptools-68.0.0-pyhd8ed1ab_0 
  sqlite                pkgs/main::sqlite-3.41.2-h5eee18b_0 --> conda-forge::sqlite-3.42.0-h2c6b66d_0 
  tqdm               pkgs/main/linux-64::tqdm-4.65.0-py311~ --> conda-forge/noarch::tqdm-4.65.0-pyhd8ed1ab_1 
  urllib3            pkgs/main/linux-64::urllib3-1.26.16-p~ --> conda-forge/noarch::urllib3-2.0.4-pyhd8ed1ab_0 
  wheel              pkgs/main/linux-64::wheel-0.38.4-py31~ --> conda-forge/noarch::wheel-0.40.0-pyhd8ed1ab_1 
  yaml-cpp             pkgs/main::yaml-cpp-0.7.0-h295c915_1 --> conda-forge::yaml-cpp-0.7.0-h27087fc_2 
  zlib                    pkgs/main::zlib-1.2.13-h5eee18b_0 --> conda-forge::zlib-1.2.13-hd590[30](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L30)0_5 
  zstandard          pkgs/main::zstandard-0.19.0-py[31](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L31)1h5ee~ --> conda-forge::zstandard-0.19.0-py311haa97af0_2 
The following packages will be SUPERSEDED by a higher-priority channel:
  _libgcc_mutex           pkgs/main::_libgcc_mutex-0.1-main --> conda-forge::_libgcc_mutex-0.1-conda_forge 
  _openmp_mutex          pkgs/main::_openmp_mutex-5.1-1_gnu --> conda-forge::_openmp_mutex-4.5-2_gnu 
  boltons            pkgs/main/linux-64::boltons-23.0.0-py~ --> conda-forge/noarch::boltons-23.0.0-pyhd8ed1ab_0 
  certifi            pkgs/main/linux-64::certifi-2023.5.7-~ --> conda-forge/noarch::certifi-2023.5.7-pyhd8ed1ab_0 
  cffi               pkgs/main::cffi-1.15.1-py311h5eee18b_3 --> conda-forge::cffi-1.15.1-py311h409f033_3 
  conda              pkgs/main::conda-23.5.2-py311h06a4308~ --> conda-forge::conda-23.5.2-py311h38be061_0 
  conda-content-tru~ pkgs/main/linux-64::conda-content-tru~ --> pkgs/main/noarch::conda-content-trust-0.1.1-pyhd3eb1b0_0 
  conda-libmamba-so~ pkgs/main/linux-64::conda-libmamba-so~ --> conda-forge/noarch::conda-libmamba-solver-23.5.0-pyhd8ed1ab_0 
  conda-package-str~ pkgs/main/linux-64::conda-package-str~ --> conda-forge/noarch::conda-package-streaming-0.8.0-pyhd8ed1ab_0 
  fmt                       pkgs/main::fmt-9.1.0-hdb19cb5_0 --> conda-forge::fmt-9.1.0-h924138e_0 
  idna               pkgs/main/linux-64::idna-3.4-py311h06~ --> conda-forge/noarch::idna-3.4-pyhd8ed1ab_0 
  jsonpatch          pkgs/main::jsonpatch-1.[32](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L32)-pyhd3eb1b0_0 --> conda-forge::jsonpatch-1.32-pyhd8ed1ab_0 
  libarchive         pkgs/main::libarchive-3.6.2-h6ac8c49_2 --> conda-forge::libarchive-3.6.2-h039dbb9_1 
  libev                    pkgs/main::libev-4.[33](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L33)-h7f8727e_1 --> conda-forge::libev-4.33-h516909a_1 
  libnghttp2         pkgs/main::libnghttp2-1.52.0-h2d74bed~ --> conda-forge::libnghttp2-1.52.0-h61bc06f_0 
  lz4-c                   pkgs/main::lz4-c-1.9.4-h6a678d5_0 --> conda-forge::lz4-c-1.9.4-hcb278e6_0 
  ncurses                 pkgs/main::ncurses-6.4-h6a678d5_0 --> conda-forge::ncurses-6.4-hcb278e6_0 
  pycparser          pkgs/main::pycparser-2.21-pyhd3eb1b0_0 --> conda-forge::pycparser-2.21-pyhd8ed1ab_0 
  python                pkgs/main::python-3.11.4-h955ad1f_0 --> conda-forge::python-3.11.4-hab00c5b_0_cpython 
  reproc                pkgs/main::reproc-14.2.4-h295c915_1 --> conda-forge::reproc-14.2.4-h0b41bf4_0 
  reproc-cpp         pkgs/main::reproc-cpp-14.2.4-h295c915~ --> conda-forge::reproc-cpp-14.2.4-hcb278e6_0 
  six                    pkgs/main::six-1.16.0-pyhd3eb1b0_1 --> conda-forge::six-1.16.0-pyh6c4a22f_0 
  tk                        pkgs/main::tk-8.6.12-h1ccaba5_0 --> conda-forge::tk-8.6.12-h27826a3_0 
  toolz              pkgs/main/linux-64::toolz-0.12.0-py31~ --> conda-forge/noarch::toolz-0.12.0-pyhd8ed1ab_0 
  tzdata                 pkgs/main::tzdata-2023c-h04d1e81_0 --> conda-forge::tzdata-2023c-h71feb2d_0 
  zstd                     pkgs/main::zstd-1.5.5-hc292b87_0 --> conda-forge::zstd-1.5.2-hfc55251_7 
Proceed ([y]/n)? 
Downloading and Extracting Packages
sqlite-3.42.0        | 799 KB    |            |   0% 
libgcc-ng-13.1.0     | 758 KB    |            |   0% 
python-3.11.4        | 29.3 MB   |            |   0% 
libiconv-1.17        | 1.4 MB    |            |   0% 
charset-normalizer-3 | 45 KB     |            |   0% 
packaging-23.1       | 45 KB     |            |   0% 
cryptography-41.0.2  | 1.9 MB    |            |   0% 
tzdata-2023c         | 115 KB    |            |   0% 
conda-content-trust- | 56 KB     |            |   0% 
conda-package-stream | 18 KB     |            |   0% 
reproc-cpp-14.2.4    | 21 KB     |            |   0% 
libev-4.33           | 104 KB    |            |   0% 
setuptools-68.0.0    | 453 KB    |            |   0% 
wheel-0.40.0         | 56 KB     |            |   0% 
tqdm-4.65.0          | 86 KB     |            |   0% 
krb5-1.21.1          | 1.3 MB    |            |   0% 
reproc-14.2.4        | 30 KB     |            |   0% 
idna-3.4             | 55 KB     |            |   0% 
readline-8.2         | 275 KB    |            |   0% 
sqlite-3.42.0        | 799 KB    | 2          |   2% 
charset-normalizer-3 | 45 KB     | ###5       |  [36](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L36)% 
libiconv-1.17        | 1.4 MB    | 1          |   1% 
libgcc-ng-13.1.0     | 758 KB    | 2          |   2% 
python-3.11.4        | 29.3 MB   |            |   0% 
packaging-23.1       | 45 KB     | ###5       |  36% 
sqlite-3.42.0        | 799 KB    | ########## | 100% 
tzdata-2023c         | 115 KB    | #3         |  14% 
charset-normalizer-3 | 45 KB     | ########## | 100% 
conda-package-stream | 18 KB     | ########7  |  87% 
reproc-cpp-14.2.4    | 21 KB     | #######5   |  76% 
python-3.11.4        | 29.3 MB   | 7          |   7% 
packaging-23.1       | 45 KB     | ########## | 100% 
libev-4.33           | 104 KB    | #5         |  15% 
wheel-0.40.0         | 56 KB     | ##8        |  29% 
setuptools-68.0.0    | 453 KB    | 3          |   4% 
conda-content-trust- | 56 KB     | ##8        |  29% 
tqdm-4.65.0          | 86 KB     | #8         |  19% 
krb5-1.21.1          | 1.3 MB    | 1          |   1% 
reproc-14.2.4        | 30 KB     | #####4     |  54% 
libgcc-ng-13.1.0     | 758 KB    | ########## | 100% 
libgcc-ng-13.1.0     | 758 KB    | ########## | 100% 
idna-3.4             | 55 KB     | ##8        |  29% 
readline-8.2         | 275 KB    | 5          |   6% 
python-3.11.4        | 29.3 MB   | #6         |  17% 
conda-package-stream | 18 KB     | ########## | 100% 
 ... (more hidden) ...
reproc-cpp-14.2.4    | 21 KB     | ########## | 100% 
reproc-cpp-14.2.4    | 21 KB     | ########## | 100% 
python-3.11.4        | 29.3 MB   | ##8        |  28% 
python-3.11.4        | 29.3 MB   | ###8       |  39% 
python-3.11.4        | 29.3 MB   | ####8      |  49% 
libiconv-1.17        | 1.4 MB    | ########## | 100% 
libiconv-1.17        | 1.4 MB    | ########## | 100% 
libev-4.33           | 104 KB    | ########## | 100% 
libev-4.33           | 104 KB    | ########## | 100% 
python-3.11.4        | 29.3 MB   | #####8     |  59% 
wheel-0.40.0         | 56 KB     | ########## | 100% 
wheel-0.40.0         | 56 KB     | ########## | 100% 
python-3.11.4        | 29.3 MB   | ######7    |  68% 
python-3.11.4        | 29.3 MB   | #######6   |  77% 
python-3.11.4        | 29.3 MB   | ########5  |  86% 
tzdata-2023c         | 115 KB    | ########## | 100% 
tzdata-2023c         | 115 KB    | ########## | 100% 
python-3.11.4        | 29.3 MB   | #########5 |  96% 
conda-content-trust- | 56 KB     | ########## | 100% 
conda-content-trust- | 56 KB     | ########## | 100% 
cryptography-41.0.2  | 1.9 MB    | ########## | 100% 
cryptography-41.0.2  | 1.9 MB    | ########## | 100% 
reproc-14.2.4        | 30 KB     | ########## | 100% 
reproc-14.2.4        | 30 KB     | ########## | 100% 
setuptools-68.0.0    | 453 KB    | ########## | 100% 
setuptools-68.0.0    | 453 KB    | ########## | 100% 
tqdm-4.65.0          | 86 KB     | ########## | 100% 
tqdm-4.65.0          | 86 KB     | ########## | 100% 
idna-3.4             | 55 KB     | ########## | 100% 
idna-3.4             | 55 KB     | ########## | 100% 
readline-8.2         | 275 KB    | ########## | 100% 
readline-8.2         | 275 KB    | ########## | 100% 
 ... (more hidden) ...
 ... (more hidden) ...
krb5-1.21.1          | 1.3 MB    | ########## | 100% 
krb5-1.21.1          | 1.3 MB    | ########## | 100% 
python-3.11.4        | 29.3 MB   | ########## | 100%                            
Preparing transaction: ...working... done
Verifying transaction: ...working... done
Executing transaction: ...working... done
$ conda list
# packages in environment at /opt/conda:
#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       2_gnu    conda-forge
boltons                   23.0.0             pyhd8ed1ab_0    conda-forge
brotli-python             1.0.9           py311ha362b79_9    conda-forge
brotlipy                  0.7.0           py311hd4cff14_1005    conda-forge
bzip2                     1.0.8                h7f98852_4    conda-forge
c-ares                    1.19.1               hd590300_0    conda-forge
ca-certificates           2023.05.30           h06a4308_0  
certifi                   2023.5.7           pyhd8ed1ab_0    conda-forge
cffi                      1.15.1          py311h409f033_3    conda-forge
charset-normalizer        3.2.0              pyhd8ed1ab_0    conda-forge
colorama                  0.4.6              pyhd8ed1ab_0    conda-forge
conda                     23.5.2          py311h[38](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L38)be061_0    conda-forge
conda-content-trust       0.1.1              pyhd3eb1b0_0  
conda-libmamba-solver     23.5.0             pyhd8ed1ab_0    conda-forge
conda-package-handling    2.1.0           py311h06a4308_0  
conda-package-streaming   0.8.0              pyhd8ed1ab_0    conda-forge
cryptography              41.0.2          py311h63ff55d_0    conda-forge
fmt                       9.1.0                h924138e_0    conda-forge
icu                       72.1                 hcb278e6_0    conda-forge
idna                      3.4                pyhd8ed1ab_0    conda-forge
jsonpatch                 1.32               pyhd8ed1ab_0    conda-forge
jsonpointer               2.1                pyhd3eb1b0_0  
keyutils                  1.6.1                h166bdaf_0    conda-forge
krb5                      1.21.1               h659d440_0    conda-forge
ld_impl_linux-64          2.40                 h41732ed_0    conda-forge
libarchive                3.6.2                h0[39](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L39)dbb9_1    conda-forge
libcurl                   8.2.0                hca28451_0    conda-forge
libedit                   3.1.20221030         h5eee18b_0  
libev                     4.33                 h516909a_1    conda-forge
libexpat                  2.5.0                hcb278e6_1    conda-forge
libffi                    3.4.4                h6a678d5_0  
libgcc-ng                 13.1.0               he5830b7_0    conda-forge
libgomp                   13.1.0               he5830b7_0    conda-forge
libiconv                  1.17                 h166bdaf_0    conda-forge
libmamba                  1.4.9                h658169a_0    conda-forge
libmambapy                1.4.9           py311h527f279_0    conda-forge
libnghttp2                1.52.0               h61bc06f_0    conda-forge
libnsl                    2.0.0                h7f98852_0    conda-forge
libsolv                   0.7.24               hfc55251_1    conda-forge
libsqlite                 3.42.0               h2797004_0    conda-forge
libssh2                   1.11.0               h0841786_0    conda-forge
libstdcxx-ng              13.1.0               hfd8a6a1_0    conda-forge
libuuid                   2.38.1               h0b41bf4_0    conda-forge
libxml2                   2.11.4               h0d562d8_0    conda-forge
libzlib                   1.2.13               hd590300_5    conda-forge
lz4-c                     1.9.4                hcb278e6_0    conda-forge
lzo                       2.10              h516909a_1000    conda-forge
ncurses                   6.4                  hcb278e6_0    conda-forge
openssl                   3.1.1                hd590300_1    conda-forge
packaging                 23.1               pyhd8ed1ab_0    conda-forge
pcre2                     10.[40](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L40)                hc3806b6_0    conda-forge
pip                       23.2               pyhd8ed1ab_0    conda-forge
pluggy                    1.2.0              pyhd8ed1ab_0    conda-forge
pybind11-abi              4                    hd8ed1ab_3    conda-forge
pycosat                   0.6.4           py311hd4cff14_1    conda-forge
pycparser                 2.21               pyhd8ed1ab_0    conda-forge
pyopenssl                 23.2.0             pyhd8ed1ab_1    conda-forge
pysocks                   1.7.1              pyha2e5f31_6    conda-forge
python                    3.11.4          hab00c5b_0_cpython    conda-forge
python_abi                3.11                    3_cp311    conda-forge
readline                  8.2                  h8228510_1    conda-forge
reproc                    14.2.4               h0b[41](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L41)bf4_0    conda-forge
reproc-cpp                14.2.4               hcb278e6_0    conda-forge
requests                  2.31.0             pyhd8ed1ab_0    conda-forge
ruamel.yaml               0.17.32         py311h459d7ec_0    conda-forge
ruamel.yaml.clib          0.2.7           py311h2582759_1    conda-forge
setuptools                68.0.0             pyhd8ed1ab_0    conda-forge
six                       1.16.0             pyh6c4a22f_0    conda-forge
sqlite                    3.[42](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L42).0               h2c6b66d_0    conda-forge
tk                        8.6.12               h27826a3_0    conda-forge
toolz                     0.12.0             pyhd8ed1ab_0    conda-forge
tqdm                      4.65.0             pyhd8ed1ab_1    conda-forge
tzdata                    2023c                h71feb2d_0    conda-forge
urllib3                   2.0.4              pyhd8ed1ab_0    conda-forge
wheel                     0.40.0             pyhd8ed1ab_1    conda-forge
xz                        5.4.2                h5eee18b_0  
yaml-cpp                  0.7.0                h27087fc_2    conda-forge
zlib                      1.2.13               hd590300_5    conda-forge
zstandard                 0.19.0          py311haa97af0_2    conda-forge
zstd                      1.5.2                hfc552[51](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400721#L51)_7    conda-forge

This is what it looks like without libmamba enabled:

$ . /opt/conda/etc/profile.d/conda.sh
$ conda activate base
$ conda config --set auto_update_conda false
$ conda install conda-libmamba-solver
Collecting package metadata (current_repodata.json): ...working... done
Solving environment: ...working... done
# All requested packages already installed.
$ conda install -c conda-forge libzlib
Collecting package metadata (current_repodata.json): ...working... done
Solving environment: ...working... done
## Package Plan ##
  environment location: /opt/conda
  added / updated specs:
    - libzlib
The following packages will be downloaded:
    package                    |            build
    ---------------------------|-----------------
    _libgcc_mutex-0.1          |      conda_forge           3 KB  conda-forge
    _openmp_mutex-4.5          |       2_kmp_llvm           6 KB  conda-forge
    ca-certificates-20[23](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400722#L23).5.7   |       hbcca054_0         145 KB  conda-forge
    certifi-2023.5.7           |     pyhd8ed1ab_0         149 KB  conda-forge
    libgcc-ng-13.1.0           |       he5830b7_0         758 KB  conda-forge
    libzlib-1.2.13             |       hd590300_5          60 KB  conda-forge
    llvm-openmp-16.0.6         |       h4dfa4b3_0        39.9 MB  conda-forge
    openssl-3.1.1              |       hd590300_1         2.5 MB  conda-forge
    zlib-1.2.13                |       hd590300_5          91 KB  conda-forge
    ------------------------------------------------------------
                                           Total:        43.6 MB
The following NEW packages will be INSTALLED:
  libzlib            conda-forge/linux-64::libzlib-1.2.13-hd590300_5 
  llvm-openmp        conda-forge/linux-64::llvm-openmp-16.0.6-h4dfa4b3_0 
The following packages will be REMOVED:
  libgomp-11.2.0-h1234567_1
The following packages will be UPDATED:
  libgcc-ng          pkgs/main::libgcc-ng-11.2.0-h1234567_1 --> conda-forge::libgcc-ng-13.1.0-he5830b7_0 
  openssl               pkgs/main::openssl-3.0.9-h7f8727e_0 --> conda-forge::openssl-3.1.1-hd590300_1 
  zlib                    pkgs/main::zlib-1.2.13-h5eee18b_0 --> conda-forge::zlib-1.2.13-hd590300_5 
The following packages will be SUPERSEDED by a higher-priority channel:
  _libgcc_mutex           pkgs/main::_libgcc_mutex-0.1-main --> conda-forge::_libgcc_mutex-0.1-conda_forge 
  _openmp_mutex          pkgs/main::_openmp_mutex-5.1-1_gnu --> conda-forge::_openmp_mutex-4.5-2_kmp_llvm 
  ca-certificates    pkgs/main::ca-certificates-2023.05.30~ --> conda-forge::ca-certificates-2023.5.7-hbcca054_0 
  certifi            pkgs/main/linux-64::certifi-2023.5.7-~ --> conda-forge/noarch::certifi-2023.5.7-pyhd8ed1ab_0 
Proceed ([y]/n)? 
Downloading and Extracting Packages
certifi-2023.5.7     | 149 KB    |            |   0% 
llvm-openmp-16.0.6   | 39.9 MB   |            |   0% 
libzlib-1.2.13       | 60 KB     |            |   0% 
openssl-3.1.1        | 2.5 MB    |            |   0% 
libgcc-ng-13.1.0     | 758 KB    |            |   0% 
_openmp_mutex-4.5    | 6 KB      |            |   0% 
_libgcc_mutex-0.1    | 3 KB      |            |   0% 
zlib-1.2.13          | 91 KB     |            |   0% 
ca-certificates-2023 | 145 KB    |            |   0% 
openssl-3.1.1        | 2.5 MB    |            |   1% 
libzlib-1.2.13       | 60 KB     | ##6        |  27% 
certifi-2023.5.7     | 149 KB    | #          |  11% 
llvm-openmp-16.0.6   | 39.9 MB   |            |   0% 
_openmp_mutex-4.5    | 6 KB      | ########## | 100% 
_libgcc_mutex-0.1    | 3 KB      | ########## | 100% 
libzlib-1.2.13       | 60 KB     | ########## | 100% 
zlib-1.2.13          | 91 KB     | #7         |  18% 
certifi-2023.5.7     | 149 KB    | ########## | 100% 
_libgcc_mutex-0.1    | 3 KB      | ########## | 100% 
ca-certificates-2023 | 145 KB    | #1         |  11% 
openssl-3.1.1        | 2.5 MB    | #######2   |  73% 
llvm-openmp-16.0.6   | 39.9 MB   | 2          |   3% 
ca-certificates-2023 | 145 KB    | ########## | 100% 
zlib-1.2.13          | 91 KB     | ########## | 100% 
libgcc-ng-13.1.0     | 758 KB    | ########## | 100% 
libgcc-ng-13.1.0     | 758 KB    | ########## | 100% 
llvm-openmp-16.0.6   | 39.9 MB   | 7          |   8% 
openssl-3.1.1        | 2.5 MB    | ########## | 100% 
llvm-openmp-16.0.6   | 39.9 MB   | #5         |  15% 
llvm-openmp-16.0.6   | 39.9 MB   | ##4        |  [24](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400722#L24)% 
llvm-openmp-16.0.6   | 39.9 MB   | ###5       |  36% 
llvm-openmp-16.0.6   | 39.9 MB   | #####2     |  52% 
llvm-openmp-16.0.6   | 39.9 MB   | #######    |  71% 
llvm-openmp-16.0.6   | 39.9 MB   | #########5 |  95% 
Preparing transaction: ...working... done
Verifying transaction: ...working... done
Executing transaction: ...working... done
$ conda list
# packages in environment at /opt/conda:
#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                  2_kmp_llvm    conda-forge
boltons                   23.0.0          py311h06a4308_0  
brotlipy                  0.7.0           py311h5eee18b_1002  
bzip2                     1.0.8                h7b6447c_0  
c-ares                    1.19.0               h5eee18b_0  
ca-certificates           2023.5.7             hbcca054_0    conda-forge
certifi                   2023.5.7           pyhd8ed1ab_0    conda-forge
cffi                      1.15.1          py311h5eee18b_3  
charset-normalizer        2.0.4              pyhd3eb1b0_0  
conda                     23.5.2          py311h06a4308_0  
conda-content-trust       0.1.3           py311h06a4308_0  
conda-libmamba-solver     23.5.0          py311h06a4308_0  
conda-package-handling    2.1.0           py311h06a4308_0  
conda-package-streaming   0.8.0           py311h06a4308_0  
cryptography              39.0.1          py311h9ce1e76_2  
fmt                       9.1.0                hdb19cb5_0  
icu                       58.2                 he6710b0_3  
idna                      3.4             py311h06a4308_0  
jsonpatch                 1.32               pyhd3eb1b0_0  
jsonpointer               2.1                pyhd3eb1b0_0  
krb5                      1.20.1               h143b758_1  
ld_impl_linux-64          2.38                 h1181459_1  
libarchive                3.6.2                h6ac8c49_2  
libcurl                   8.1.1                h[25](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400722#L25)1f7ec_1  
libedit                   3.1.20221030         h5eee18b_0  
libev                     4.33                 h7f8727e_1  
libffi                    3.4.4                h6a678d5_0  
libgcc-ng                 13.1.0               he5830b7_0    conda-forge
libmamba                  1.4.1                h2dafd23_1  
libmambapy                1.4.1           py311h2dafd23_1  
libnghttp2                1.52.0               h2d74bed_1  
libsolv                   0.7.22               he621ea3_0  
libssh2                   1.10.0               hdbd6064_2  
libstdcxx-ng              11.2.0               h1234567_1  
libuuid                   1.41.5               h5eee18b_0  
libxml2                   2.10.3               hcbfbd50_0  
libzlib                   1.2.13               hd590300_5    conda-forge
llvm-openmp               16.0.6               h4dfa4b3_0    conda-forge
lz4-c                     1.9.4                h6a678d5_0  
ncurses                   6.4                  h6a678d5_0  
openssl                   3.1.1                hd590300_1    conda-forge
packaging                 23.0            py311h06a4308_0  
pcre2                     10.37                he7ceb23_1  
pip                       23.1.2          py311h06a4308_0  
pluggy                    1.0.0           py311h06a4308_1  
pybind11-abi              4                    hd3eb1b0_1  
pycosat                   0.6.4           py311h5eee18b_0  
pycparser                 2.21               pyhd3eb1b0_0  
pyopenssl                 23.0.0          py311h06a4308_0  
pysocks                   1.7.1           py311h06a4308_0  
python                    3.11.4               h955ad1f_0  
readline                  8.2                  h5eee18b_0  
reproc                    14.2.4               h295c915_1  
reproc-cpp                14.2.4               h295c915_1  
requests                  2.29.0          py311h06a4308_0  
ruamel.yaml               0.17.21         py311h5eee18b_0  
setuptools                67.8.0          py311h06a4308_0  
six                       1.16.0             pyhd3eb1b0_1  
sqlite                    3.41.2               h5eee18b_0  
tk                        8.6.12               h1ccaba5_0  
toolz                     0.12.0          py311h06a4308_0  
tqdm                      4.65.0          py311h92b7b1e_0  
tzdata                    2023c                h04d1e81_0  
urllib3                   1.[26](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400722#L26).16         py311h06a4308_0  
wheel                     0.38.4          py311h06a4308_0  
xz                        5.4.2                h5eee18b_0  
yaml-cpp                  0.7.0                h[29](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400722#L29)5c915_1  
zlib                      1.2.13               hd590[30](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400722#L30)0_5    conda-forge
zstandard                 0.19.0          py[31](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400722#L31)1h5eee18b_0  
zstd                      1.5.5                hc292b[87](https://gitlab.analog.com/CBarber/libmamba-issues/-/jobs/400722#L87)_0  

If you do this wi

Conda Info

No response

Conda Config

No response

Conda list

No response

Additional Context

No response

@analog-cbarber analog-cbarber added the type::bug describes erroneous operation, use severity::* to classify the type label Jul 19, 2023
@jaimergp
Copy link
Contributor

This is because you are adding conda-forge to the list of available channels for that command, with higher priority than defaults, which enables new updates in the eyes of the libmamba solver.

Instead, with conda-forge::pkg, you also add the channel, but with less priority:

$ conda install conda-forge::libzlib
Channels:
 - defaults
 - conda-forge
Platform: linux-64
Collecting package metadata (repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /opt/conda

  added / updated specs:
    - conda-forge::libzlib


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    _libgcc_mutex-0.1          |      conda_forge           3 KB  conda-forge
    _openmp_mutex-4.5          |            2_gnu          23 KB  conda-forge
    libgcc-ng-13.1.0           |       he5830b7_0         758 KB  conda-forge
    libgomp-13.1.0             |       he5830b7_0         409 KB  conda-forge
    libzlib-1.2.13             |       hd590300_5          60 KB  conda-forge
    zlib-1.2.13                |       hd590300_5          91 KB  conda-forge
    ------------------------------------------------------------
                                           Total:         1.3 MB

The following NEW packages will be INSTALLED:

  libzlib            conda-forge/linux-64::libzlib-1.2.13-hd590300_5 

The following packages will be UPDATED:

  libgcc-ng          pkgs/main::libgcc-ng-11.2.0-h1234567_1 --> conda-forge::libgcc-ng-13.1.0-he5830b7_0 
  libgomp              pkgs/main::libgomp-11.2.0-h1234567_1 --> conda-forge::libgomp-13.1.0-he5830b7_0 
  zlib                    pkgs/main::zlib-1.2.13-h5eee18b_0 --> conda-forge::zlib-1.2.13-hd590300_5 

The following packages will be SUPERSEDED by a higher-priority channel:

  _libgcc_mutex           pkgs/main::_libgcc_mutex-0.1-main --> conda-forge::_libgcc_mutex-0.1-conda_forge 
  _openmp_mutex          pkgs/main::_openmp_mutex-5.1-1_gnu --> conda-forge::_openmp_mutex-4.5-2_gnu 

, which is closer to what you'd expect.

That said, I do agree that the behaviour is totally different, and I can't observe this in micromamba, so we'll take a look and see if we can tame it down a bit ;) --freeze-installed is not working as I'd expect either.

@analog-cbarber
Copy link
Author

Regardless of the channel order, I don't understand why I am getting updates when I didn't ask for updates. I just was installing one package. Why should changing the order implicitly enable updates?

@github-actions github-actions bot added the locked [bot] locked due to inactivity label Aug 28, 2024
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 28, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
locked [bot] locked due to inactivity type::bug describes erroneous operation, use severity::* to classify the type
Projects
Archived in project
2 participants