addons-cm/LINTERS_README.md
snt fe137dc265 build: configurar herramientas de verificación OCA
- Instalar pre-commit con 25 hooks configurados
- Configurar black 26.1.0 para formateo de código Python
- Configurar isort 7.0.0 para ordenación de imports
- Configurar flake8 7.3.0 con flake8-bugbear
- Configurar pylint 3.1.1 con pylint-odoo 9.1.2
- Añadir autoflake y pyupgrade para mejoras automáticas
- Configurar prettier para formateo de XML/JSON/YAML
- Crear .editorconfig para consistencia de editor
- Crear Makefile con comandos útiles
- Crear check_addon.sh para verificación rápida de addons
- Actualizar configuración de VS Code con extensiones recomendadas
- Añadir documentación completa de uso
- Aplicar formateo automático a archivos existentes
- Deshabilitar setuptools-odoo (no soporta Odoo 18.0 aún)
- Deshabilitar fix-encoding-pragma (obsoleto, usar pyupgrade)
2026-02-11 16:09:41 +01:00

2.2 KiB

Herramientas de Verificación OCA

Este repositorio está configurado con las herramientas de verificación estándar de OCA (Odoo Community Association).

Herramientas Instaladas

  • pre-commit: Gestor de hooks de git para ejecutar verificaciones automáticas
  • black: Formateador de código Python
  • isort: Ordenador de imports Python
  • flake8: Linter de estilo Python (con flake8-bugbear)
  • pylint: Analizador de código Python con pylint-odoo
  • autoflake: Elimina imports y variables no utilizadas
  • pyupgrade: Actualiza sintaxis de Python a versiones más modernas
  • prettier: Formateador para XML, YAML, JSON, etc.

Uso

Verificación Manual

Para ejecutar las verificaciones en todos los archivos:

pre-commit run --all-files

Para ejecutar en archivos específicos:

pre-commit run --files path/to/file.py

Verificación Automática

Los hooks de pre-commit están configurados para ejecutarse automáticamente en cada commit. Si hay errores, el commit será rechazado hasta que se corrijan.

Ejecutar Herramientas Individuales

# Black
black .

# isort
isort .

# flake8
flake8 .

# pylint (opcional)
pylint --rcfile=.pylintrc <addon_name>

# pylint (mandatorio)
pylint --rcfile=.pylintrc-mandatory <addon_name>

Configuración

Los archivos de configuración son:

  • .pre-commit-config.yaml: Configuración de pre-commit hooks
  • .pylintrc: Verificaciones opcionales y mandatorias de pylint
  • .pylintrc-mandatory: Solo verificaciones mandatorias
  • .flake8: Configuración de flake8
  • .isort.cfg: Configuración de isort
  • setup.cfg: Configuración adicional para flake8 e isort
  • pyproject.toml: Configuración de black e isort
  • .editorconfig: Configuración de editor para consistencia

Actualización de Hooks

Para actualizar los hooks a las últimas versiones:

pre-commit autoupdate

Desactivar Temporalmente

Si necesitas hacer un commit sin ejecutar las verificaciones (NO RECOMENDADO):

git commit --no-verify

Más Información