Skip to content

Adiciona mypy ao pre-commit - #13

Merged
ThomasTDS merged 1 commit into
masterfrom
chore/mypy-pre-commit
Sep 20, 2026
Merged

ThomasTDS merged 1 commit into
masterfrom
chore/mypy-pre-commit

Conversation

@ThomasTDS

Copy link
Copy Markdown
Owner

O que mudou

  • Novo hook local no .pre-commit-config.yaml, rodando mypy . (projeto inteiro, modo strict) antes de cada commit — hoje o mypy só rodava no CI, então um erro de tipo só era descoberto depois do push.
  • Usei um hook local (não o mirrors-mypy oficial) pra reaproveitar o mesmo mypy já instalado via pip install -e .[dev], com a mesma versão e config do CI, em vez de duplicar as dependências de tipo (pydantic, types-requests etc.) num ambiente isolado à parte que o mirrors-mypy cria — isso evita os dois ambientes saírem de sincronia com o tempo.
  • Achado ao testar localmente: o executável mypy.exe falha silenciosamente (exit 1, sem nenhuma mensagem) quando o caminho do repositório tem acentuação (o meu tem "Programação" no caminho). Troquei o entry point pra python -m mypy ., que funciona normalmente — mais robusto, e não é um problema específico só do meu ambiente.
  • README atualizado descrevendo o novo hook.

Plano de teste

  • pre-commit run --all-files: os três hooks (ruff, ruff-format, mypy) passando
  • pytest -m smoke: passou
  • CI verde no PR

Hook local (não o mirrors-mypy oficial), pra reusar o mesmo mypy já
instalado via pip install -e .[dev] em vez de duplicar as
dependências de tipo num ambiente isolado à parte. Roda mypy . no
projeto inteiro a cada commit, não só nos arquivos staged, porque o
modo strict depende de contexto entre módulos.

Usa "python -m mypy" em vez do executável mypy.exe direto: descobri
rodando localmente que o mypy.exe falha silenciosamente (exit 1,
sem nenhuma saída) quando o caminho do repositório tem acento
("Programação"), enquanto "python -m mypy" funciona normalmente.
@codecov

codecov Bot commented Sep 20, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@ThomasTDS
ThomasTDS merged commit 466df3d into master Sep 20, 2026
5 checks passed
@ThomasTDS
ThomasTDS deleted the chore/mypy-pre-commit branch October 2, 2026 19:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant