Un plugin para flake8 y Pylama que comprueba si las importaciones de Python están agrupadas y ordenadas según una guía de estilo seleccionada.
PyCQA/flake8-bugbear
Un plugin de Flake8 que señala posibles errores y patrones de diseño cuestionables que pyflakes y pycodestyle no detectan.
- Estrellas
- 1,124
- Forks
- 134
- Issues abiertos
- 40
- Último commit
- hace 22 horas
¿Qué es?
flake8-bugbear es un plugin para Flake8, el linter de Python, que añade comprobaciones para detectar posibles errores y problemas de diseño. Sus advertencias abarcan patrones como las cláusulas except sin especificar la excepción, los valores mutables como argumentos predeterminados, las llamadas a funciones en valores predeterminados de argumentos, las variables de bucle que sobrescriben el iterable recorrido y los cierres con enlace tardío dentro de bucles.
Las comprobaciones siguen criterios propios y quedan fuera de las reglas estándar de pyflakes y pycodestyle, por lo que el plugin las mantiene separadas. Cada advertencia tiene un código con el prefijo B, y un conjunto de comprobaciones B9xx basadas en criterios propios está desactivado de forma predeterminada y debe habilitarse explícitamente mediante extend-select. El comportamiento se puede ajustar con opciones como extend-immutable-calls y classmethod-decorators.
La instalación se realiza con un único comando pip install; después, Flake8 detecta el plugin automáticamente.
Funciones clave
- 01Detecta cláusulas except sin especificar la excepción y sugiere capturar excepciones más concretas.
- 02Señala valores mutables como argumentos predeterminados y llamadas a funciones en valores predeterminados.
- 03Advierte sobre variables de bucle que no se usan o que ocultan el iterable recorrido.
- 04Detecta errores comunes, como assert False, expresiones inútiles y llamadas a getattr con un nombre de atributo constante.
- 05Ofrece comprobaciones B9xx basadas en criterios propios, desactivadas de forma predeterminada y habilitables mediante la configuración.
Casos de uso
- Añadir comprobaciones de linting centradas en errores a un proyecto de Python que ya ejecuta Flake8 en CI.
- Detectar durante la revisión de código los argumentos predeterminados mutables y los errores de cierres con enlace tardío.
- Aplicar reglas más estrictas para el manejo de excepciones en el código de un equipo.
Inicio rápido
- 1
Instala el plugin desde PyPI con pip
pip install flake8-bugbear - 2
Comprueba que flake8 haya detectado el plugin
flake8 --version
Antes de usarlo
- Solo funciona como plugin de flake8, así que necesitas tener flake8 instalado.
- Algunas de sus comprobaciones se basan en criterios propios y no siguen ningún PEP ni estándar.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es flake8-bugbear?
- Un plugin de Flake8 que señala posibles errores y patrones de diseño cuestionables que pyflakes y pycodestyle no detectan. flake8-bugbear es un plugin para Flake8, el linter de Python, que añade comprobaciones para detectar posibles errores y problemas de diseño. Sus advertencias abarcan patrones como las cláusulas except sin especificar la excepción, los valores mutables como argumentos predeterminados, las llamadas a funciones en valores predeterminados de argumentos, las variables de bucle que sobrescriben el iterable recorrido y los cierres con enlace tardío dentro de bucles.
- ¿flake8-bugbear es gratuito? ¿Qué licencia tiene?
- flake8-bugbear es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿flake8-bugbear sigue mantenido?
- Mantenimiento activo. El último commit de flake8-bugbear fue el 6 nov 2026.
- ¿Para qué puedo usar flake8-bugbear?
- Añadir comprobaciones de linting centradas en errores a un proyecto de Python que ya ejecuta Flake8 en CI. Detectar durante la revisión de código los argumentos predeterminados mutables y los errores de cierres con enlace tardío. Aplicar reglas más estrictas para el manejo de excepciones en el código de un equipo.
- ¿Cómo se instala flake8-bugbear?
- Instala el plugin desde PyPI con pip: pip install flake8-bugbear Comprueba que flake8 haya detectado el plugin: flake8 --version
- ¿Dónde consigo flake8-bugbear?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/PyCQA/flake8-bugbear
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Un analizador de Python en un solo archivo que comprueba el código según las convenciones de estilo de PEP 8 y solo usa la biblioteca estándar.
Un linter de Python que reúne PyFlakes, pycodestyle y McCabe en un solo comando y admite plugins de terceros.
Un plugin estricto y con criterios definidos para flake8 que aplica un estilo de Python coherente y sencillo, y señala patrones de código complejos.
Herramienta de Python que calcula la complejidad ciclomática de McCabe de las funciones y funciona como plugin de flake8 para señalar código demasiado complejo.
Plugin de flake8 que detecta patrones inseguros y malas prácticas de Python, como el uso de exec o la deserialización insegura.