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
Collapse conda_env
into conda
#11633
Comments
For completeness, this issue seems relevant: #11092 As in, yes please, combine it! |
So a bit confused about this logic. Not sure how removing the To me the issue was different behavior between similar commands. i.e. One advantage about the To me what To be really heretical (or logical) an alternate proposal could be that Disclaimer, to some extent I'm bike shedding. I care more about having a single consistent way to do things that these particulars. |
This is also what we've identified, the difference in behavior stems from actual different, not-well aligned code bases and different opinions of what an environment is and how the user experience should be. It's related to the CLI being tightly coupled with a lot of backend UX focused features. I think the integration between the two were basically not fully done.
I intend to focus conda's user experience on using environments explicitly as much as possible, so the core commands need to have a good understanding of how environments work. Something that to me is best served by rolling the conda-env functionality into the core commands. This is even more important given that the plugins API, currently in development, will allow additional higher-level functionality to be added as subcommands.
Yeah, we considered that as well, but that would not match with the long-term goal to reduce and possibly even phasing out the base environments outright and having a strong core functionality that understands environments. That users currently need to understand the difference between an activated and explicitly provided environment and how they relate to the core subcommands and the conda-env subcommands seems more of a historical artifact than a good user experience.
I fully agree that there should one way to refer to environments. And that because of UX issues with other core features of conda (e.g., env activation), it's required to having a strong understanding of environments in the core subcommands instead of separating it into an own subcommand namespace. Generally speaking, it's in the interest of users to improve the affordances of the CLI, or in cases like this, remove the negative affordances that create confusion and mistrust with the tool – especially for a fundamental feature like environments. |
I would strongly support ☝🏽 |
Another example of |
this may be obsolete once conda fixes the weird differences of `conda env` and `conda` conda/conda#11633
A feature of If it worked out that "collapsing" the way |
Description
conda_env
was previously a standalone project and was integrated into the mainconda
codebase ~6 years ago (#2950). No plans were made at the time for the overall code structure or what to do with the subcommand. It's high time to clean this up and finish collapsingconda_env
into theconda
codebase.Goals of collapsing
conda_env
intoconda
:conda env
should be moved over intoconda
conda env config
conda config
conda env create
conda create
conda env export
conda export
?conda env list
conda info --envs
,conda envs
conda env remove
conda remove
already supports thisconda env update
conda update
conda env vars
conda
, as we've learned again and again, a large bulk of install/dependency issues arise from users installing everything into their base env, collapsingconda env
commands intoconda
will help simplify the CLI and should help with educating usersTo not break everything for everyone, the
conda env
subcommands should become aliases to theconda
subcommands, and we can decide later whether there's any value in fully deprecating the env subcommand (I'm assuming probably not,conda env
will just remain in a frozen/alias state).Tasks
conda_env
intoconda
#11873Write CEP outlining CLI changes(if we aren't fully deprecating/deletingconda env
subcommands, this isn't necessary)conda.cli
#13172conda env create
withconda create
and make the former an alias #13015conda env create --name test
#3859conda env create --name <env_name> <python_version>
without requirement of environment.yml file #12479conda env create
#10498conda create
from yaml will not read env name from file #13676conda export
and aliasconda env export
Moveconda env export
toconda export
#13577conda env list
an alias ofconda info --envs
conda env remove
withconda remove
and make the former an aliasconda env remove
does not run unlink transactions (pre_unlink, remove_menus, etc) #11092conda env update
withconda update
and make the former an aliasconda env vars
is still in use and whether to deprecate or updateThe text was updated successfully, but these errors were encountered: