E aí, devs! Tudo beleza? 👋

Se você já passou pela agonia de tentar rodar um projeto Python e descobrir que metade das bibliotecas não funciona porque seu colega esqueceu de avisar que usou versões diferentes… você precisa de um requirements.txt na sua vida!

Hoje eu vou te explicar o que é, como criar e por que esse arquivo é essencial para qualquer projeto Python. Vamos nessa? 🚀


🤔 O que é o requirements.txt?

É um arquivo de texto simples que lista todas as dependências do seu projeto Python, com as versões exatas que você está usando. Assim:

django==3.2.18
requests==2.28.1
pandas==1.5.3

Por que isso é importante?

  • Evita o clássico “funciona na minha máquina” 💻🔥
  • Garante que todo mundo no time (e até você no futuro) use as mesmas versões.
  • Facilita a instalação automática de tudo com um único comando.

🛠 Como Criar um requirements.txt? (2 Minutos e Você Resolve)

1. Se você já tem um projeto com bibliotecas instaladas:

No terminal, dentro do seu ambiente virtual (venv), rode:

pip freeze > requirements.txt

Pronto! Um arquivo requirements.txt será criado com todas as bibliotecas + versões.

2. Se você quer criar manualmente:

Abra um arquivo requirements.txt e liste as dependências no formato:

nome-da-biblioteca==versão

Exemplo:

flask==2.2.3
sqlalchemy==1.4.45

⚡ Como Instalar Tudo de Uma Vez?

Quando alguém baixar seu projeto, basta rodar:

pip install -r requirements.txt

BOOM! Todas as bibliotecas serão instaladas na versão correta. 🎉


💡 Dicas Pro-Level

📌 Não use pip freeze se seu venv tem lixo

Se você instalou muitas bibliotecas só para testes, o pip freeze vai pegar TUDO. Melhor editar manualmente e deixar só o essencial.

📌 Versões flexíveis? Pode!

Se você não quer travar em uma versão exata, pode usar:

django>=3.2  # Versão 3.2 ou superior
flask~=2.0.0  # Versões 2.0.x (atualizações seguras)

📌 requirements-dev.txt para dependências de desenvolvimento

Separe bibliotecas de produção (requirements.txt) e de testes/dev (requirements-dev.txt), como:

# requirements-dev.txt
pytest==7.3.1
black==23.3.0

🎯 Conclusão

Se você trabalha com Python e não usa requirements.txt, está basicamente brincando de roleta russa com suas dependências 😅.

Resumo rápido do que fazer:

  1. Sempre use venv (se não sabe o que é, leia este post).
  2. Gere o requirements.txt com pip freeze > requirements.txt.
  3. Compartilhe com o time e evite o caos.

E aí, já usou requirements.txt em algum projeto? Conta aí nos comentários (mentira, de novo, mas finja que pode responder 👀).

Até a próxima, e happy coding! 🐍💻


0 comentário

Deixe um comentário

Espaço reservado para avatar

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *