Meio Ambiente
Descrição
Na configuração do pip , --global
significa configuração de todo o sistema e --site
significa configuração do ambiente .
--global
Use apenas o arquivo de configuração de todo o
--site
Use apenas o arquivo de configuração do ambiente atual
Mas no Guia do usuário - arquivo de configuração , todo o site significa configuração do sistema , como C:\ProgramData\pip\pip.ini
no Windows.
Comportamento esperado
Esses 2 documentos devem ter descrições consistentes.
Além disso, seria bom adicionar alguns exemplos na configuração do pip para indicar como especificar corretamente name
("seção e chave separadas por ponto", de acordo com a mensagem de erro), como
pip config set --site global.timeout 60
Acho que essa lógica é adaptada de appdirs, mas é confusa no GNU / Linux também:
$ pip debug
global:
/etc/xdg/pip/pip.conf, exists: False
/etc/pip.conf, exists: False
site:
/usr/pip.conf, exists: False
user:
/home/cnx/.pip/pip.conf, exists: False
/home/cnx/.config/pip/pip.conf, exists: True
Quero dizer, quem coloca os arquivos de configuração em /usr
(acho que deveria ser /usr/share/pip/pip.conf
)?
Lendo a implementação, parece que global significa todo o sistema, site significa todo o intérprete e usuário significa por usuário.
Portanto, o guia do usuário provavelmente precisa ser corrigido.
Oi! Vou tentar trabalhar neste problema hoje no EuroPython Sprints :)
Dei uma olhada no GH-6268 (e seu problema vinculado), mas não parece que o site seja para configuração de todo o intérprete. sys.prefix não aponta para o diretório específico do intérprete, mas {sys.prefix}/*/pythonX.Y
. Talvez onde o arquivo de configuração específico do interpretador possa ser armazenado em {sys.prefix}/share/pythonX.Y
, ou em que possamos descontinuar isso totalmente e converter configurações obscuras para empregar PIP_CONFIG_FILE.
Eu entendo que isso não está exatamente dentro do escopo deste problema, portanto, apresentarei um novo tíquete para isso, se necessário.
Comentários muito úteis
Oi! Vou tentar trabalhar neste problema hoje no EuroPython Sprints :)