Repolode
openstack

openstack/hacking

Conjunto de plugins de flake8 que comprueban que el código Python siga la guía de estilo de OpenStack.

Estrellas
243
Forks
67
Issues abiertos
0
Último commit
hace 2 meses

¿Qué es?

Hacking es una colección de plugins de flake8 que hacen cumplir la guía de estilo de Python de OpenStack. Automatiza comprobaciones que, de otro modo, se harían manualmente durante la revisión del código, como el orden de las importaciones, las reglas para docstrings y los patrones que la comunidad de OpenStack considera arriesgados, como ocultar nombres integrados.

Las comprobaciones tienen nombres con el prefijo H y se instalan desde PyPI junto con los plugins flake8, pep8, mccabe y pyflakes de los que depende. Las dependencias están fijadas, por lo que una nueva versión upstream no añadirá reglas silenciosamente que puedan romper los trabajos de validación existentes. El versionado sigue el formato major.minor.maintenance: las versiones de mantenimiento nunca añaden comprobaciones nuevas, así que los proyectos pueden fijar una versión minor con seguridad.

Algunas comprobaciones están desactivadas de forma predeterminada, como las relacionadas con el estilo de las aserciones y las importaciones de eventlet, y se pueden activar en la sección flake8 de tox.ini. Los proyectos también pueden definir comprobaciones locales en tox.ini e implementarlas con el decorador de extensiones de flake8.

Funciones clave

  • 01Hace cumplir la guía de estilo de Python de OpenStack mediante plugins de flake8.
  • 02Se instala desde PyPI con dependencias fijadas para mantener estables las validaciones de CI.
  • 03Las versiones de mantenimiento nunca añaden comprobaciones nuevas, por lo que es seguro fijar una versión minor.
  • 04Algunas comprobaciones están desactivadas de forma predeterminada y se pueden activar en tox.ini.
  • 05Admite comprobaciones locales específicas del proyecto, registradas en tox.ini.

Casos de uso

  • Usarlo como condición de aprobación en las revisiones de código de proyectos de OpenStack para detectar automáticamente detalles de estilo.
  • Mantener un estilo de Python coherente en una base de código grande escrita por muchas personas.
  • Añadir reglas de lint específicas del proyecto junto con las comprobaciones estándar de OpenStack.

Inicio rápido

  1. 1

    Instala hacking desde PyPI

    pip install hacking

Antes de usarlo

  • Hacking fija las versiones de sus dependencias, por lo que puede entrar en conflicto con versiones más recientes de flake8 o de los plugins de tu entorno.
  • Muchas comprobaciones son específicas de OpenStack y están desactivadas de forma predeterminada para otros proyectos.

En colecciones

Temas

Preguntas frecuentes

¿Qué es hacking?
Conjunto de plugins de flake8 que comprueban que el código Python siga la guía de estilo de OpenStack. Hacking es una colección de plugins de flake8 que hacen cumplir la guía de estilo de Python de OpenStack. Automatiza comprobaciones que, de otro modo, se harían manualmente durante la revisión del código, como el orden de las importaciones, las reglas para docstrings y los patrones que la comunidad de OpenStack considera arriesgados, como ocultar nombres integrados.
¿hacking es gratuito? ¿Qué licencia tiene?
hacking es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿hacking sigue mantenido?
Actualizado en los últimos 6 meses. El último commit de hacking fue el 14 sept 2026.
¿Para qué puedo usar hacking?
Usarlo como condición de aprobación en las revisiones de código de proyectos de OpenStack para detectar automáticamente detalles de estilo. Mantener un estilo de Python coherente en una base de código grande escrita por muchas personas. Añadir reglas de lint específicas del proyecto junto con las comprobaciones estándar de OpenStack.
¿Cómo se instala hacking?
Instala hacking desde PyPI: pip install hacking
¿Dónde consigo hacking?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/openstack/hacking

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados