Releases: conda/conda-libmamba-solver
Releases · conda/conda-libmamba-solver
24.9.0
Bug fixes
- Use
Solver
instance configuration to initialize thelibmamba
context without implicitly relying on theconda
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
- @jaimergp
- @jjhelmus made their first contribution in #528
- @justmarkham made their first contribution in #510
24.7.0
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
- @jaimergp
- @tl-hbk made their first contribution in #449
- @zklaus made their first contribution in #476
Full Changelog: 24.1.0...24.7.0
24.1.0
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-specifiedname=version
andname
). 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 ignoringurl
,md5
andsha256
. (#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 fromstate.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 bySolver._specs_to_tasks()
as usual. (#381)
Contributors
23.12.0
Enhancements
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
- @dholth
- @jaimergp
- @jezdez
- @travishathaway made their first contribution in #370
23.11.1
23.11.1 (2023-11-16)
Enhancements
- Raise a friendlier
InvalidSpec
error instead ofRuntimeError
when libmamba detects a problem in the configured solver jobs. (#352 via #357) - Ensure specs,
SolverInputState.installed
andSolverInputState.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
Bug fixes
- Do not use
libmamba
's default signal handler so users canCtrl-C
fromconda
. (#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 andMatchSpec
syntax compliance. (#347)
Contributors
23.9.3
Bug fixes
- Massage bracket-containing specs (e.g.
ca-certificates[version='>=2023']
) so they are understood bylibmambapy.Query
, fixing a bug whereconda
would erroneously complain about no package records matching the configured pinned specs. (#327 via #328)
Contributors
Full Changelog: 23.9.2...23.9.3
23.9.2
23.9.1
23.9.0
Enhancements
- Expose libmamba's
repoquery
search features as a conda subcommand plugin. (#258) - Rewrite how we create tasks for
libsolv
, making use oflibmamba
'sadd_pin
features. Requireslibmambapy >=1.5.1
. (#270, #288) - Name-only pins will lock the corresponding package if installed. (conda#13031 via #289)
- Use the
.solv
cache for repodata if available and recent. (#295)
Bug fixes
- Handle commands with no channels passed gracefully. (#256)
- Workaround for missing
noarch
field in returnedPackageRecord
payload. (#257) - Port logic from conda/conda#9614, which fixes
a bug where the--prune
flag was not working correctly inconda env update
commands.
(#270) - Ensure environments are not aggressively updated to higher priority channels under some conditions. (#240 via #270, #285)
- Do not inject those channels from installed packages that do not exist or are unavailable. (#262 via #274)
- Correctly print all configured channels in
PackagesNotFoundError
exceptions. (#284) - Do not crash if a
MatchSpec
with a build string is specified in the CLI and there's a pinned spec for the same package name. (#286 via #289) - Only apply
defaults::pkg
workarounds for the default valuedefault_channels
. (#292)
Deprecations
- Users won't be able to override pinned specs with incompatible CLI specs anymore. Instead they must modify their pinned specs explicitly. (conda#9016 via #289, #294)
Docs
- Document intentional deviations from conda's
classic
solver behavior. (#289)