Skip to content

Releases: conda/conda-libmamba-solver

24.11.1

04 Dec 11:49
e09df12
Compare
Choose a tag to compare

Bug fixes

  • Ensure PackageRecord URLs are percent-decoded before passing them back to conda. (#583)

Contributors

24.11.0

27 Nov 15:26
93ac81a
Compare
Choose a tag to compare

🚀 This release ships compatibility for libmamba 2.x. It's a major rewrite! Make sure to check the changelog entry for 24.11.0rc for more details.

Bug fixes

  • Load SOLV repodata cache in offline mode too. (#570)

Contributors

24.11.0rc

04 Nov 10:49
dbecb34
Compare
Choose a tag to compare
24.11.0rc Pre-release
Pre-release

Enhancements

  • Require libmambapy v2. This is a big refactor in libmamba internals, which also allowed us to remove a lot of code in conda-libmamba-solver. (#457)

Deprecations

  • CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED has no effect anymore. Channels coming from installed packages are no longer added to the channel list. (#411 via #457)
  • Removed conda_libmamba_solver.state.BaseIndexHelper. The base class is now conda_libmamba_solver.index.IndexHelper. (#457)
  • Verbose logging in libsolv has a big overhead in libmamba v2, so we have disabled it by default (even if the user adds -vvv flags to the CLI). To opt-in, please set CONDA_LIBMAMBA_SOLVER_DEBUG_LIBSOLV to a truthy value. (#457)
  • Python 3.8 is no longer supported. The minimum version is now 3.9. (#457)

Contributors

24.9.0

25 Sep 16:23
bbaab52
Compare
Choose a tag to compare

Bug fixes

  • Use Solver instance configuration to initialize the libmamba context without implicitly relying on the conda context settings. (#525)
  • Fix conda-build compatibility regression where arch-specific outputs can't be found in the test phase if a noarch output was built first. (#531)

Docs

  • Add installation workarounds FAQ with conda-standalone. (#505 via #511)
  • Update user guide to reflect conda-libmamba-solver being the default solver in conda. (#516 via #517)
  • Include mamba-org/mamba as a required cloned repository for setting up a dev environment. (#528)

Contributors

24.7.0

17 Jul 16:52
ec765a8
Compare
Choose a tag to compare

Bug fixes

  • Allow wildcards in package names for conda remove (e.g. conda remove "python-*"). (#434 via #435)
  • Avoid duplicate channel listing when using channel-pinned specs like channel::package. (#449)
  • Fix a performance regression where .solv repodata cache files were not being loaded when available. (#481 via #482)
  • Do not ignore virtual packages as input specs. (#480 via #485)
  • Pin libmambapy <2 to defend against upcoming API changes. (#492)

Docs

  • Document development workflows with devcontainers. (#451)

Other

  • Add DevContainer configurations for local development workflows. (#451)

Contributors

Full Changelog: 24.1.0...24.7.0

24.1.0

29 Jan 16:58
2fe2bb5
Compare
Choose a tag to compare

Enhancements

  • Prioritize explicitly requested specs with stricter constraints over implicit ones or name-only specs (e.g. a CLI-specified name=version=build will be sent to the solver before CLI-specified name=version and name). This happens to fix #391. (#381)
  • Load pkgs_dirs records when called in offline mode. (#396 via #423)

Bug fixes

  • Fix a regression introduced in #378, where certain solves would hard crash due to the given specs input order. (#391 via #381)
  • Properly propagate customized local channels (conda-build workspaces). Requires libmamba 1.5.6 or above. (#398 via #401)
  • Do not raise an error if an unsupported MatchSpec field can be safely dropped instead. Currently ignoring url, md5 and sha256. (#418 via #421, #427 via #429).
  • Do not crash if a stateless repodata cache is accessed with --offline or --use-index-cache. (#396 via #423).

Other

  • Remove old SolverOutputState.specs preparation logic from state.py, which was no longer in use since 23.9.0. Instead, enumerate all known specs in a certain order (see Enhancements for details). This list is then consumed by Solver._specs_to_tasks() as usual. (#381)

Contributors

23.12.0

12 Dec 17:10
4986dca
Compare
Choose a tag to compare

Enhancements

  • Add some boundary checks to CONDA_LIBMAMBA_SOLVER_MAX_ATTEMPTS. (#394, #403)

Bug fixes

  • Instantiate IndexHelper in offline mode for compatibility with conda-build. Otherwise
    the index can get out of sync during long build processes. (#386 via #395)

Docs

  • Use new conda-sphinx-theme for documentation site. (#367 via #370)
  • Reorganize the layout of the documentation site. (#370)

Contributors

23.11.1

16 Nov 15:19
3c861ac
Compare
Choose a tag to compare

23.11.1 (2023-11-16)

Enhancements

  • Raise a friendlier InvalidSpec error instead of RuntimeError when libmamba detects a problem in the configured solver jobs. (#352 via #357)
  • Ensure specs, SolverInputState.installed and SolverInputState.virtual containers are consistently sorted. (#378)

Bug fixes

  • Configure pinned specs just once to avoid solver bugs related with their persistence (i.e. inability to downgrade environments if pinned specs are present and a transient dependency needs to be removed). (#354 via #355)
  • Detect whether a channel is part of a multichannel so the latter is used in the PackageRecord entries for conda-build. Fixes an issue with conda-build and custom multichannels. (#363 via #365)
  • Allow authenticated URLs in default_channels and other multichannels. (#364 via #366)
  • Preserve authentication while reloading local channels. (#366)

Contributors

23.11.0

02 Nov 21:03
082a163
Compare
Choose a tag to compare

Bug fixes

  • Do not use libmamba's default signal handler so users can Ctrl-C from conda. (#337 via #340)
  • Defer conda-build-specific exception definition and import until it is needed by the solver. (#342)
  • Interpret "excluded by strict priority" solver errors as proper satisfiability conflicts and avoid printing related yet uninformative warnings. (#343)
  • Ensure that historic specs are kept in the environment, even if that means raising a conflict. (#341 via #345)

Docs

  • Document environment variables used for advanced configuration. (#349)

Other

  • Require libmambapy >=1.5.3 for improved signal handling and MatchSpec syntax compliance. (#347)

Contributors

23.9.3

24 Oct 15:43
52b84ac
Compare
Choose a tag to compare

Bug fixes

  • Massage bracket-containing specs (e.g. ca-certificates[version='>=2023']) so they are understood by libmambapy.Query, fixing a bug where conda would erroneously complain about no package records matching the configured pinned specs. (#327 via #328)

Contributors

Full Changelog: 23.9.2...23.9.3