-
Notifications
You must be signed in to change notification settings - Fork 22
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
Refactor for libmamba v2 (WIP) #457
base: main
Are you sure you want to change the base?
Conversation
pre-commit.ci autofix |
for more information, see https://pre-commit.ci
…el for CLI names, fix subdir URL, readd ChannelInfo dataclass
We were debating whether to also add libmamba v1 compatibility in this PR, which would include copying the current code in Sylvain also mentions that there's no need as long as conda allows old conda-libmamba-versions. Worst case, if we needed to release a bugfix, we could do That latter option seems simpler than the |
Funny, now that we patched conda-libmamba-solver to prevent libmambapy 2, we can't install it in CI :D This is going to require some hacks or rewriting parts of the CI... Edit: Built a special conda-libmamba-solver build (off |
…bmamba-solver-for-libmamba-v2
…lver into try-libmamba-2a3
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
Since the canary workflow has a token issue for the uploads, I built it locally.
|
Review build status
Once it's done, use this command to try it out in a new conda environment:
|
Description
Adds compatibility for libmamba v2, which enables a few refactors (see below). Supersedes #414.
Progress:
Checklist - did you ...
news
directory (using the template) for the next release's release notes?Summary of changes
CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED
. No longer needed with v2. Closes CLS injects channels from installed packages #411time_recorder
decorator for metadata collection and solving loopstate.BaseIndexHelper
. We just have ourindex.IndexHelper
nowpool
(collection ofrepos
, where arepo
represents a loadedrepodata.json
) is now adatabase
ofRepoInfo
objects.current_repodata.json
if explicitly set in CLICONDA_LIBMAMBA_SOLVER_DEBUG_LIBSOLV
is required.allow_uninstall
was previously set tofalse
(onlytrue
forconda remove
), and we set it up for individual solver jobs involving updates or conflicts. With v2, we have individual control over what to "Keep" instead of drop. This required marking important updates as keepers instead. Otherwise they would be uninstalled.