-
Notifications
You must be signed in to change notification settings - Fork 19
Closed
Description
The current interface has a bunch of problems:
- Cannot run provision-with-micromamba twice in some scenarios #102
- Use temporary directory for temporary condarc #97
- Deduplicate keys in temporary condarc #96
- condarc-file keys are overwritten #94
channelsoverridden even if empty #112- Behavior of
channelsandchannel-priorityis very confusing:- They will be added to
~/.condarc. condarc-options: channelshas precedence.- It is very hard to implement a
channelfallback toconda-forge. - We default to
channel-priority: strict(also automatically add that to~/.condarc)
- They will be added to
Some of the problems with channels have been inherited from setup-miniconda but I don't think it's worth staying compatible (we're not compatible in other ways anyways).
I don't think we should be using channels in the first place, with one exception. We should be specifying channels in the environment.yml and in a .condarc. You want to be able to install from environment.yml outside of CI anyways. I'm not sure why we set channel_priority: strict but I think this one should also not be CI specific, so set in .condarc. The exception for a valid use case for channels being if you don't have an environment.yml.
My suggestion is as follows:
- Remove the
channelsoption. - Don't set the
channel_priorityoption and remove thechannel-priorityoption. - For the special case of
environmnent-file: falseusechannels: [conda-forge]. Other channels are not supported in that case (must create anenvironment.ymlfile or use acondarc-fileinstead). - Stop writing to
~/.condarc. (Maybe keep thecondarc-file->~/.condarccopying.) - Remove the
condarc-optionsoption? We could also keep it but make it mutually exclusive withcondarc-file.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels