Assegure a qualidade do seu código Python - Dodgy

Ferramentas de qualidade de código parece um tópico com conteúdo infinito quando o assunto é Python. Hoje a dica é rápida e rasteira, de uma ferramenta extremamente simples, mas que pode ser muito útil para dar aquele "up" no quesito segurança do seu projeto. Apresento-lhe o Dodgy!

Talk is cheap...

Tudo começa com o nosso queridíssimo comando pip install:

$ pip install dodgy

E na sequência, com a execução do utilitário via terminal:

$ cd ~/hello-world-em-django/
$ dodgy
{
    "warnings": [
        {
        "path": "hello_world/settings.py",
        "line": 23,
        "code": "secret",
        "message": "Possible hardcoded secret key"
        }
    ]
}

O Dodgy é uma ferramenta de código aberto, que tem por objetivo utilizar expressões regulares para inspecionar o seu código e identificar problemas como diffs esquecidos nos arquivos, senhas expostas, e secrets (como o exemplo acima) sendo "commitados". A biblioteca é extremamente simples, e caso você não goste do "barulho" que o Bandit faz, pode ser uma alternativa.

Trinity em The Matrix
Desvia disso! (vulturehound.co.uk)

E claro, podemos utilizá-la com o pre-commit. Adicione o seguinte snippet ao .pre-commit-config.yaml do seu projeto:

repos:
- repo: https://github.com/kplaube/pre-commit-dodgy
    rev: "0.0.1"
    hooks:
    - id: dodgy

Podemos utilizá-la nos editores também. Ganhamos o utilitário "de graça" com o uso do Prospector.

Considerações finais

Para quem está dando os primeiros passos em direção a um controle mais apurado de um projeto, o Dodgy pode ser uma boa pedida. Mas na realidade, se você está querendo de fato maior segurança, vá para o Bandit, sem medo de ser feliz.

Ou utilize o Prospector e tenha os dois à disposição ¯\_(ツ)_/¯

Até a próxima.