pip
não é redefinido quando você cria um novo ambiente virtual. Quando você cria um novo ambiente virtual, venv
executa uma nova instalação de pip
e setuptools
nesse ambiente. De onde vem a versão pip
? Quando você executa python -m venv
, a instalação de pip
é de responsabilidade do módulo ensurepip
que inicializa uma nova instalação pip
. Você pode verificar o que o pip
version é empacotado com o Python 3.7:
$ python3 -c "import ensurepip; print(ensurepip.version())"
10.0.1
Isso não é nada que você possa atualizar ou modificar sozinho; o módulo faz parte da biblioteca padrão. Quando o Python 3.7 foi lançado, o último pip
foi da versão 10.0.1, então foi incluído ( problema relacionado ). A versão 18 foi lançada mais tarde. Da próxima vez, provavelmente será atualizado na próxima versão do Python (3.7.1).
Alternativa: usando virtualenv
Se você quiser que o último pip
seja instalado em um ambiente virtual novo, poderá alternar para virtualenv
:
$ pip install --user virtualenv
ou instale todo o sistema usando pacman
:
$ pacman -S python-virtualenv
virtualenv
é atualizado com mais frequência do que o Python, portanto, a versão mais recente instala os pacotes mais recentes. Exemplo de uso:
$ virtualenv myenv --python=python3 --quiet
$ source myenv/bin/activate
(myenv) $ pip --version
pip 18.0 from /Users/hoefling/.virtualenvs/myenv/lib/python3.7/site-packages/pip (python 3.7)