[DOC] all: Reorganize and consolidate project documentation
- Create .github/copilot-instructions.md with global development guidelines - Add comprehensive README.md at project root with quick start guide - Create docs/ directory for technical documentation - Move installation and linter docs to docs/ - Add docs/TRANSLATIONS.md with complete translation system guide - Create README.md for OCA modified addons (product_origin, product_get_price_helper, product_main_seller) - Document translation best practices (no _() in field definitions) - Add references between all documentation files - Clean up project root by moving technical docs to docs/ All documentation now properly references addon-specific READMEs for detailed architecture and implementation.
This commit is contained in:
parent
2a480b74bb
commit
b10ba1fc15
12 changed files with 1327 additions and 0 deletions
230
docs/RESUMEN_INSTALACION.md
Normal file
230
docs/RESUMEN_INSTALACION.md
Normal file
|
|
@ -0,0 +1,230 @@
|
|||
# 🎉 Instalación Completada - Linters y Pre-commit OCA
|
||||
|
||||
## ✅ Resumen de la Instalación
|
||||
|
||||
Se han instalado y configurado exitosamente **todas las herramientas de verificación OCA** en el repositorio.
|
||||
|
||||
---
|
||||
|
||||
## 📦 Paquetes Instalados (Versiones)
|
||||
|
||||
| Herramienta | Versión | Descripción |
|
||||
|-------------|---------|-------------|
|
||||
| **black** | 26.1.0 | Formateador de código Python |
|
||||
| **isort** | 7.0.0 | Ordenador de imports |
|
||||
| **flake8** | 7.3.0 | Linter de estilo Python |
|
||||
| **pylint** | 4.0.4 | Analizador estático de código |
|
||||
| **pylint-odoo** | 10.0.0 | Plugin específico para Odoo |
|
||||
| **pre-commit** | ✅ | Gestor de hooks de git |
|
||||
| **autoflake** | ✅ | Elimina código no usado |
|
||||
| **pyupgrade** | ✅ | Actualiza sintaxis Python |
|
||||
| **flake8-bugbear** | ✅ | Verificaciones adicionales |
|
||||
|
||||
---
|
||||
|
||||
## 📁 Archivos Creados
|
||||
|
||||
### Configuración de Linters
|
||||
- ✅ `.pre-commit-config.yaml` - 25 hooks configurados
|
||||
- ✅ `.pylintrc` - Reglas opcionales + mandatorias
|
||||
- ✅ `.pylintrc-mandatory` - Solo reglas obligatorias
|
||||
- ✅ `.flake8` - Configuración de flake8
|
||||
- ✅ `.isort.cfg` - Configuración de isort
|
||||
- ✅ `setup.cfg` - Configuración compartida
|
||||
- ✅ `pyproject.toml` - Configuración de black
|
||||
- ✅ `.editorconfig` - Consistencia de editor
|
||||
|
||||
### Herramientas de Desarrollo
|
||||
- ✅ `Makefile` - 10+ comandos útiles
|
||||
- ✅ `check_addon.sh` - Script de verificación de addons
|
||||
- ✅ `requirements.txt` - Dependencias del proyecto
|
||||
|
||||
### Documentación
|
||||
- ✅ `LINTERS_README.md` - Guía completa de uso
|
||||
- ✅ `INSTALACION_COMPLETA.md` - Documentación detallada
|
||||
- ✅ `RESUMEN_INSTALACION.md` - Este archivo
|
||||
|
||||
### VS Code
|
||||
- ✅ `.vscode/settings.json` - Configuración actualizada
|
||||
- ✅ `.vscode/extensions.json` - Extensiones recomendadas
|
||||
|
||||
---
|
||||
|
||||
## 🔧 Estado de Pre-commit
|
||||
|
||||
```
|
||||
✅ Pre-commit hooks instalados en .git/hooks/
|
||||
✅ 25 hooks configurados y listos
|
||||
✅ Hooks actualizados a las últimas versiones
|
||||
```
|
||||
|
||||
Los hooks se ejecutarán automáticamente en cada commit.
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Comandos Rápidos
|
||||
|
||||
### Comandos más usados
|
||||
|
||||
```bash
|
||||
# Verificar todo el código
|
||||
make lint
|
||||
|
||||
# Formatear código automáticamente
|
||||
make format
|
||||
|
||||
# Verificar un addon específico
|
||||
./check_addon.sh account_invoice_triple_discount
|
||||
|
||||
# Ver todos los comandos disponibles
|
||||
make help
|
||||
```
|
||||
|
||||
### Pre-commit
|
||||
|
||||
```bash
|
||||
# Ejecutar en todos los archivos
|
||||
pre-commit run --all-files
|
||||
|
||||
# Ejecutar en archivos modificados
|
||||
pre-commit run
|
||||
|
||||
# Actualizar a últimas versiones
|
||||
pre-commit autoupdate
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📊 Hooks Configurados (25)
|
||||
|
||||
### Verificaciones Básicas (7)
|
||||
1. `forbidden-files` - Detecta archivos .rej
|
||||
2. `oca-update-pre-commit-excluded-addons` - Actualiza exclusiones
|
||||
3. `trailing-whitespace` - Elimina espacios finales
|
||||
4. `end-of-file-fixer` - Nueva línea al final
|
||||
5. `check-merge-conflict` - Detecta conflictos
|
||||
6. `check-xml` - Valida XML
|
||||
7. `mixed-line-ending` - Normaliza finales de línea
|
||||
|
||||
### Formateo de Código (3)
|
||||
8. `black` - Formatea Python
|
||||
9. `isort` - Ordena imports
|
||||
10. `prettier` - Formatea XML/YAML/JSON
|
||||
|
||||
### Análisis de Código (5)
|
||||
11. `flake8` - Linter Python
|
||||
12. `pylint` (opcional) - Análisis con exit-zero
|
||||
13. `pylint` (mandatorio) - Análisis que falla commit
|
||||
14. `mypy` - Verificación de tipos
|
||||
15. `eslint` - Linter JavaScript
|
||||
|
||||
### Mejoras Automáticas (3)
|
||||
16. `autoflake` - Elimina imports no usados
|
||||
17. `pyupgrade` - Actualiza sintaxis Python (py38+)
|
||||
18. `fix-encoding-pragma` - Remueve pragmas encoding
|
||||
|
||||
### Verificaciones de Seguridad (4)
|
||||
19. `debug-statements` - Detecta debugs olvidados
|
||||
20. `check-executables-have-shebangs` - Verifica shebangs
|
||||
21. `check-symlinks` - Valida enlaces simbólicos
|
||||
22. `check-case-conflict` - Conflictos mayús/minús
|
||||
|
||||
### Odoo Específico (3)
|
||||
23. `setuptools-odoo-make-default` - Genera setup/
|
||||
24. `setuptools-odoo-get-requirements` - Actualiza requirements.txt
|
||||
25. `check-docstring-first` - Verifica docstrings
|
||||
|
||||
---
|
||||
|
||||
## ✅ Verificación de la Instalación
|
||||
|
||||
Ejecuta estos comandos para verificar que todo funciona:
|
||||
|
||||
```bash
|
||||
# 1. Verificar versiones
|
||||
black --version # 26.1.0
|
||||
isort --version # 7.0.0
|
||||
pylint --version # 4.0.4
|
||||
flake8 --version # 7.3.0
|
||||
|
||||
# 2. Probar en un archivo
|
||||
black --check account_invoice_triple_discount/models/account_move_line.py
|
||||
|
||||
# 3. Ejecutar un hook
|
||||
pre-commit run forbidden-files --all-files
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Próximos Pasos
|
||||
|
||||
1. **Ejecutar verificación inicial**
|
||||
```bash
|
||||
make lint
|
||||
```
|
||||
|
||||
2. **Corregir problemas encontrados**
|
||||
```bash
|
||||
make format # Formatea automáticamente
|
||||
```
|
||||
|
||||
3. **Hacer commit**
|
||||
```bash
|
||||
git add .
|
||||
git commit -m "feat: configurar herramientas de verificación OCA"
|
||||
# Pre-commit se ejecutará automáticamente
|
||||
```
|
||||
|
||||
4. **Verificar addons individuales**
|
||||
```bash
|
||||
./check_addon.sh nombre_addon
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📚 Documentación
|
||||
|
||||
- **Guía completa**: Ver [LINTERS_README.md](LINTERS_README.md)
|
||||
- **Detalles técnicos**: Ver [INSTALACION_COMPLETA.md](INSTALACION_COMPLETA.md)
|
||||
- **OCA Guidelines**: https://github.com/OCA/maintainer-tools
|
||||
- **pre-commit**: https://pre-commit.com/
|
||||
|
||||
---
|
||||
|
||||
## ⚙️ Configuración de VS Code
|
||||
|
||||
Instala las extensiones recomendadas:
|
||||
1. Abre VS Code
|
||||
2. Ve a Extensions (Ctrl+Shift+X)
|
||||
3. Busca "@recommended"
|
||||
4. Instala todas las extensiones sugeridas
|
||||
|
||||
O ejecuta:
|
||||
```bash
|
||||
code --install-extension ms-python.python
|
||||
code --install-extension ms-python.black-formatter
|
||||
code --install-extension ms-python.isort
|
||||
code --install-extension ms-python.pylint
|
||||
code --install-extension ms-python.flake8
|
||||
code --install-extension esbenp.prettier-vscode
|
||||
code --install-extension editorconfig.editorconfig
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ⚠️ Notas Importantes
|
||||
|
||||
- ✅ Los hooks se ejecutan **automáticamente** en cada commit
|
||||
- ✅ Black y prettier **modifican archivos** automáticamente
|
||||
- ✅ Los `__init__.py` están **excluidos** de isort (estándar OCA)
|
||||
- ✅ Pylint tiene **dos niveles**: opcional (no falla) y mandatorio (falla commit)
|
||||
- ⚠️ Para commit sin verificación (NO RECOMENDADO): `git commit --no-verify`
|
||||
|
||||
---
|
||||
|
||||
## 🎊 ¡Todo Listo!
|
||||
|
||||
El repositorio está ahora configurado con los estándares de calidad OCA. Cada commit será verificado automáticamente para mantener la calidad del código.
|
||||
|
||||
**Fecha de instalación**: 11 de febrero de 2026
|
||||
**Versión de configuración**: OCA Standard (2026)
|
||||
Loading…
Add table
Add a link
Reference in a new issue