Inconsistencies of the conda configuration system #12355
Labels
epic
a highlevel collection of smaller related issues
plugins::config
pertains to conda-config
source::contributor
created by a frequent contributor
source::partner
created by or for an Anaconda, Inc. partner company
Checklist
Summary
There are a number of inconsistencies and/or surprising behavior in the conda configuration system. Part of it comes from the homemade
Configuration
object, plus the singleton pattern, plus the kitchen-sink approach to store many convenience variables and state in theconda.base.context.context
object.There are also many sources of the configuration values:
.condarc
/condarc.d/*
files, at the system, user and environment levelCONDA_*
environment variables (but no warning if they are mispelled)On top of this we have:
conda config
implementation with way too many flags but a simplistic implementation with some undefined behaviours.conda
will ignore it, or silently delete it or who knows what.The cherry on top is that at some point this will have to be made extensible to accommodate the plugin system in some sane way...
Linked Issues & PRs
Environment specific configuration
conda install/update --name env
does not load environment-specific.condarc
file #10637pinned
file vs global 'pinned' file - precedence and usage #10041changeps1=false
policy still changes PS1 #9265Channels
nodefaults
channel should always be taken into account #12010conda config --append
injects the default value too (e.g.--append channels conda-forge
results inchannels: [conda-forge, defaults]
#12356$CONDARC
and.condarc
search pathsCONDA_NO_CONFIG_SEARCH_PATH
#11838Other bugs
CONDA_EXTRACT_THREADS
(multithreaded package extraction) is not configurable #12286#! final
directive in configuration files can be bypassed with environment variables #12122Other feature requests
--name/-n
option toconda config
#12137pydantic
Documentation
The conda configuration documentation is particularly intricate. There are three pages, each with overlapping but different content. In particular, the "reference" (as per the Diátaxis framework) should be better separated.
Conda configuration
(below)conda config
More issues / PRs:
#!final
flag for condarc options #11377The text was updated successfully, but these errors were encountered: