Gerenciando eficaz de dependências com requirements.txt

Uma forma fácil de gerenciar suas dependências no Python é usando o requirements.txt.
Temos também o poetry mas vou falar sobre ele em outro tópico.

Instalando o modulo

Para instalar o módulo requests , execute:

pip install requests

Listando dependencias instaladas

Para visualizar as dependências e suas versões instaladas:

pip freeze

Salvando Dependências em requirements.txt

Armazene todas as dependências instaladas:

pip freeze > requirements.txt

Entendendo as dependências

Após salvar no requirements.txt, veja que apareceu outras dependências. Isso ocorre porque algumas bibliotecas, como a requests, têm suas próprias dependências (ex.: certifi, idna, urllib3, charset-normalizer).

Você até pode deixa-las no requirements.txt, mas eu particularmente prefiro manter apenas as dependências principais, então simplesmente apago as outras. As dependências secundárias serão instaladas automaticamente, então não tem problema manter apenas as principais.

Utilizando o requirements.txt?

Bom, vamos supor que você publicou seu código no Git ou pretende executar ele de outro computador.

Se você fizer o pip install manualmente de todas as dependências do seu projeto, sem mencionar a versão especifica, você pode gerar conflito de versões e ter muitos problemas para conseguir rodar novamente o seu projeto.

Porém, seguindo os passos desse tópico e sempre armazenando a dependência e versão usada, você garante a consistência e evita conflitos de versão.

Veja como instalar todas as dependências salvas no requirements.txt:

pip install -r requirements.txt

O -r faz o pip install de forma recursiva, para todas as bibliotecas existentes no arquivo.

1 curtida