Contribuindo
Contribuições são bem-vindas! Veja como configurar o projeto para desenvolvimento.
Configuração do Ambiente de Desenvolvimento
-
Clone o repositório:
-
Crie um ambiente virtual e instale as dependências:
-
Instale os hooks do pre-commit:
Executando Testes
O projeto usa pytest para testes. Você também precisará do qpdf instalado para testes de comparação de PDF:
# Instalar qpdf (Ubuntu/Debian)
sudo apt-get install qpdf
# Executar todos os testes
pytest
# Executar com cobertura
pytest --cov=./brazilfiscalreport --cov-branch
# Executar testes para um tipo específico de documento
pytest tests/test_danfe.py
Estilo de Código
O projeto usa Ruff para linting e formatação. Os hooks do pre-commit verificarão automaticamente seu código antes de cada commit.
Regenerando PDFs de Referência
Ao fazer alterações na saída PDF, você pode regenerar os PDFs de referência usados nos testes:
Warning
Só regenere PDFs de referência quando você intencionalmente alterou a saída PDF. Sempre revise a diferença visual antes de fazer o commit.
Enviando Alterações
- Faça um fork do repositório
- Crie uma branch para sua feature (
git checkout -b minha-feature) - Faça commit das suas alterações
- Faça push para seu fork e abra um Pull Request
Certifique-se de que todos os testes passam e os hooks do pre-commit estão limpos antes de enviar.