Releases: conda/conda-libmamba-solver
Releases · conda/conda-libmamba-solver
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)
Other
23.7.0
Enhancements
- Add basic integrations for local channels in conda-build. (#194)
Bug fixes
- Add backwards-compatible support for the new namespaced settings in
libmamba.Context
. (#192 via #193) - Fixes an error where a user-supplied package in the CLI would get dropped if the argument happened to match a larger string in the argument list. (#221 via #222)
- Fix authentication in package downloads. (#216 via #226)
- Fix unhandled channels coming from injected virtual packages in
conda-lock
. (#230 via #234) - Handle URL-encoded channels correctly with recent
libmamba
versions. (#247 via #248)
Docs
- Added notes about development workflows with libmamba from source. (#191)
Other
- Adding libmamba/libmambapy as development dependencies within docker images. (#191)
Contributors
23.5.0
Enhancements
- Provide a
CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED
environment variable to prevent
channels from being injected from installed packages. This is useful for air-gapped environments
where outside channels are not available. (#108 via #184) - Simplify
libmambapy.Context
initialization so we only set the bits that we use. (#209) - Use the new
RepoInterface
and remove theSubdirData
subclass workarounds, which requiresconda 23.5.0
.
(#210)
Bug fixes
- Fix an issue where running
conda update <package>
would result in the package being downgraded if no newer versions were available. (#71 via #158) - Ensure unauthenticated channels are not re-injected in the channel lists from installed packages
if an authenticated equivalent is already present. (#108 via #184) - Honor
context.repodata_threads
. (#200) - Do not set
quiet
manually whencontext.json
is true. (#187)
Deprecations
- Remove unneeded user-agent tests. (#183)
Docs
- Document known solver behavior differences. (#115, #131 via #197)
- Update development docs to reflect changes in build system and other inaccuracies. (#208)
Other
- Add tests reproducing the known solver differences. (#115, #131 via #197)
- Skip tests on libmamba 1.4.2 temporarily to workaround some test failures. Tracked by #186. (#187)
Contributors
- @jakirkham made their first contribution in #189
- @costrouc
- @jaimergp
- @jezdez
- @kenodegard
- @conda-bot
- @pre-commit-ci[bot]
23.3.0
Enhancements
- Simplify exception parsing and enable new (experimental) conflict reports in
libmamba
. (#102 via #103, #160) - Use
conda
'sSubdirData
for all repodata fetching and caching. (#59, #68 via #65, #171)
Bug fixes
- Disable lockfiles within libmambapy to conform with conda's behavior of not using them. (#120)
- Fix JSON serialization errors in some exceptions. (#140 via #142)
- Fix API breakage upstream:
SubdirData.cache_path_json
property changed fromstr
toPrefixPath
. Depend directly onboltons.setutils.IndexedSet
. (#151) - Updated bundled conda recipe and corresponding CI workflow. (#166)
- Bumped minimum conda version from 22.11.1 -> 23.3.0 due to change in boltons IndexedSet. (#170)
- Add workaround for
defaults::<pkg_name>
specs. (#173 via #172)
Deprecations
- Python 3.7 is no longer supported. The minimum version is now 3.8. (#174)
Other
- Change the build-system to
hatchling
+hatch-cvs
for asetuptools-scm
-like versioning setup. (#128 via #127) - Add conda-forge based CI environments. (#133)
- Fix cache directory in flaky test. (#157)
- CI: Pin
minio
to2023-03-13T19-46-17Z
to avoid breaking changes. (#159) - Require
libmamba 1.4.1
or greater and remove unused code paths. (#165)
Contributors
- @AlbertDeFusco made their first contribution in #142
- @costrouc
- @jaimergp
- @jezdez
- @conda-bot
- @pre-commit-ci[bot]
Full Changelog: 23.1.0...23.3.0