Pip не требует установки пользователя root, но требует пользователя root для обновления.Python

Программы на Python
Anonymous
Pip не требует установки пользователя root, но требует пользователя root для обновления.

Сообщение Anonymous »

Меня смущает предполагаемое использование пунктов. Pip поставляется вместе с Python, и это здорово, но при выходе новых версий я получаю следующие предупреждения:

Код: Выделить всё

WARNING: You are using pip version 21.1.1; however, version 21.1.3 is available.
You should consider upgrading via the '/usr/local/opt/python@3.8/bin/python3.8 -m pip install --upgrade pip' command.
Я следую инструкциям по установке, используя указанную ими команду. Но затем он удаляет мой существующий пакет и не может установить новую версию.

Код: Выделить всё

Installing collected packages: pip
Attempting uninstall: pip
Found existing installation: pip 21.1.1
Uninstalling pip-21.1.1:
ERROR: Could not install packages due to an OSError: Cannot move the non-empty directory '/usr/local/lib/python3.8/site-packages/pip-21.1.1.dist-info/': Lacking write permission to '/usr/local/lib/python3.8/site-packages/pip-21.1.1.dist-info/'.
Команда pip теперь не распознается, и официальная документация по обновлению pip предлагает запустить:

Код: Выделить всё

python -m pip install -U pip
что выдает ту же ошибку разрешения.
Я погуглил эту ошибку и обнаружил, что сообщество настоятельно рекомендует не отвечать на sudo при ответе на эти вопросы (это и это). Они также посоветовали pip3 install --upgrade pip --user, что также выдало ту же ошибку. По общему мнению, пакеты pip следует устанавливать только внутри виртуальных сред, но я не решаюсь полностью удалять pip.
Итак, мне нужно установить pip с помощью sudo, но неясно, повлиял ли я случайно (или повлияю ли на будущие) на общесистемные установки или как их проверить.
Я не понимаю, зачем устанавливать pip внутри /usr/local/ требует sudo, и следует ли мне использовать pip исключительно внутри виртуальных сред и никогда за их пределами

Подробнее здесь: https://stackoverflow.com/questions/684 ... to-upgrade

Вернуться в «Python»