Quando foi a última vez que você atualizou os pacotes Python instalados via Pip? A maioria dos usuários tende a esquecer que esses pacotes também precisam ser atualizados, pois apenas atualizar o repositório do sistema não funcionará aqui.
Então, vamos tomar um momento e ver como atualizar pacotes Python antigos com Pip.
Como usar o pip para atualizar pacotes Python
Pip (Pip Install Packages) é um utilitário de linha de comando para gerenciar pacotes Python. Você pode pensar nisso como usamos o apt para gerenciar pacotes no Ubuntu e no Debian.
Então, vamos nos aprofundar em como você pode usar esse utilitário para gerenciar tudo relacionado a pacotes Python.
1. Listando0 pacotes desatualizados
Listar os pacotes desatualizados é a melhor ideia para planejar como você deseja atualizar os pacotes, pois muitos não querem atualizar toda a sua biblioteca de pacotes de uma só vez e querem ser seletivos.
Para listar pacotes desatualizados do Python, basta rodar o comando pip
com a opção list
e o sinalizador --outdated
como mostrado:
pip list --outdated
2. Atualizando um pacote específico
Depois de obter a lista dos pacotes que precisam ser atualizados, você pode ser seletivo, como mencionado anteriormente, e para atualizar um pacote específico, você precisará seguir a sintaxe de comando fornecida:
pip install nome_do_pacote -U
Por exemplo, desejando atualizar o pacote chamado autopep8
para a versão mais recente, usamos o comando:
pip install autopep8 -U
3. Atualizando um pacote para uma versão específica
Não é necessário usar apenas a versão mais recente do software e se você estiver precisando usar pacotes para uma versão específica que pode ou não ser o software mais recente, pode ser feito usando a sintaxe de comando dada:
pip install --upgrade pacote==versão
Então, se quisermos atualizar o pacote chamado chardet
para a versão 5.0.0, então o comando seria:
pip install --upgrade chardet==5.0.0
4. Atualizando todos os pacotes usando o Pip
NOTA: Não recomendamos atualizar todos os pacotes de uma só vez, pois na maioria das vezes, as dependências são muito complexas para serem tratadas.
Para atualizar cada pacote Python, você precisaria seguir o comando fornecido:
pip3 list --outdated | grep -v '^-e' | cut -d = -f 1 | xargs -n1 pip3 install -U
O comando acima utiliza xargs. Primeiro, ele pegará os pacotes que precisam ser atualizados e, em seguida, executará pip3 install -U
sobre cada pacote.
Usamos pip3 aqui no exemplo em vez de pip. No Ubuntu 22.04 e posterior, os comandos pip e pip3 estão disponíveis.
Conclusão
Atualizar tudo de uma vez nunca foi uma boa ideia no caso do pip. Certifique-se de saber o que você terá.
E se você tiver alguma dúvida, sinta-se à vontade para perguntar nos comentários.