Plugin do flake8 que executa o black em modo de verificação e reporta diferenças de formatação como violações BLK do flake8.
openstack/hacking
Conjunto de plugins do flake8 que verifica se o código Python segue o guia de estilo do OpenStack.
- Estrelas
- 243
- Forks
- 67
- Issues abertas
- 0
- Último commit
- há 2 meses
O que é?
Hacking é uma coleção de plugins do flake8 que aplica o guia de estilo Python do OpenStack. Ela automatiza verificações que, de outra forma, seriam feitas manualmente durante a revisão de código, como a ordenação de imports, regras para docstrings e padrões que a comunidade OpenStack considera arriscados, como sobrescrever nomes internos do Python.
As verificações têm nomes iniciados por H e são instaladas pelo PyPI junto com os plugins flake8, pep8, mccabe e pyflakes, dos quais dependem. As dependências têm versões fixadas, evitando que uma nova versão upstream adicione silenciosamente regras que quebrem jobs existentes de gate. O versionamento segue o formato major.minor.maintenance, em que versões de manutenção nunca adicionam novas verificações, permitindo que os projetos fixem uma versão minor com segurança.
Algumas verificações vêm desativadas por padrão, como as de estilo de assertions e imports do eventlet, e podem ser ativadas na seção flake8 do tox.ini. Os projetos também podem definir verificações locais no tox.ini e implementá-las usando o decorator de extensão do flake8.
Recursos principais
- 01Aplica o guia de estilo Python do OpenStack por meio de plugins do flake8.
- 02É instalado pelo PyPI com dependências de versões fixadas para manter estáveis os gates de CI.
- 03Versões de manutenção nunca adicionam novas verificações, então é seguro fixar uma versão minor.
- 04Algumas verificações vêm desativadas por padrão e podem ser ativadas no tox.ini.
- 05Permite registrar verificações locais específicas do projeto no tox.ini.
Casos de uso
- Executar gates nas revisões de código de projetos OpenStack para detectar automaticamente implicâncias com estilo.
- Manter um estilo Python consistente em uma base de código grande, escrita por muitos autores.
- Adicionar regras de lint específicas do projeto junto às verificações padrão do OpenStack.
Início rápido
- 1
Instale hacking do PyPI
pip install hacking
Antes de usar
- O Hacking fixa as versões das dependências, então pode entrar em conflito com versões mais recentes do flake8 ou de plugins no seu ambiente.
- Muitas verificações são específicas do OpenStack e ficam desativadas por padrão para outros projetos.
Em coleções
Tópicos
Perguntas frequentes
- O que é hacking?
- Conjunto de plugins do flake8 que verifica se o código Python segue o guia de estilo do OpenStack. Hacking é uma coleção de plugins do flake8 que aplica o guia de estilo Python do OpenStack. Ela automatiza verificações que, de outra forma, seriam feitas manualmente durante a revisão de código, como a ordenação de imports, regras para docstrings e padrões que a comunidade OpenStack considera arriscados, como sobrescrever nomes internos do Python.
- hacking é gratuito? Qual é a licença?
- hacking é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- hacking ainda é mantido?
- Atualizado nos últimos 6 meses. O último commit de hacking foi em 14 de set. de 2026.
- Para que posso usar hacking?
- Executar gates nas revisões de código de projetos OpenStack para detectar automaticamente implicâncias com estilo. Manter um estilo Python consistente em uma base de código grande, escrita por muitos autores. Adicionar regras de lint específicas do projeto junto às verificações padrão do OpenStack.
- Como instalar hacking?
- Instale hacking do PyPI: pip install hacking
- Onde consigo hacking?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/openstack/hacking
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Linter para Python que reúne PyFlakes, pycodestyle e McCabe em um único comando e oferece suporte a plugins de terceiros.
Ferramenta de linha de comando e plugin do flake8 que aplica configurações compartilhadas entre vários projetos e corrige arquivos de configuração automaticamente.
Plugin para flake8 e Pylama que verifica se os imports em Python estão agrupados e ordenados conforme um guia de estilo escolhido.
Ferramenta de linha de comando para Python que reformata docstrings automaticamente de acordo com as convenções da PEP 257.
Plugin que adiciona mais de 300 regras extras ao ESLint para JavaScript e TypeScript, além de algumas regras para CSS, HTML, JSON, Markdown e YAML.