claude-git-hooks
Version:
Git hooks con Claude CLI para análisis de código y generación automática de mensajes de commit
97 lines (77 loc) • 4.59 kB
Markdown
# Changelog
Todos los cambios notables en este proyecto se documentarán en este archivo.
El formato está basado en [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [1.2.1] - 2024-07-24
### Fixed
- 🐛 Corregido problema de bloqueo del spinner durante verificación de autenticación Claude
- 🎨 Arreglado sistema de entretenimiento para mostrar correctamente spinner, chistes y countdown
- 🔧 Solucionado problema de líneas duplicadas en consola después del segundo chiste
- 🧹 Mejorada limpieza de pantalla para evitar superposición de texto al finalizar spinner
- ⏱️ Aumentado timeout de verificación de autenticación a 2 minutos
### Changed
- 🔄 Reemplazado `execSync` por `spawn` en verificación de autenticación para evitar bloqueos
- 📍 Mejorado sistema de posicionamiento del cursor para renderizado consistente
- 🎯 Optimizada lógica de actualización del spinner para evitar race conditions
### Technical
- 🏗️ Uso de `spawn` con `stdio: 'ignore'` para mantener compatibilidad con comportamiento original
- 🎮 Sistema de reserva de espacio (3 líneas) para evitar problemas de renderizado
- 🧮 Contador de chistes cada 10 segundos real (sin drift de tiempo)
- 🔍 Limpieza precisa línea por línea al finalizar para evitar artefactos visuales
## [1.2.0] - 2024-07-24
### Added
- ✨ Sistema de entretenimiento con spinner animado y chistes durante operaciones largas
- 🔐 Lectura segura y no-persistente de contraseña sudo para instalación automática
- 🛠️ Verificación completa de dependencias del sistema (jq, curl, herramientas Unix)
- 🚀 Instalación automática de dependencias faltantes con contraseña sudo
- ⚙️ Configuración automática de Git (line endings para WSL/Windows)
- 🎭 Chistes rotativos cada 10 segundos durante verificación de autenticación Claude
### Enhanced
- 📦 Función `install` ahora incluye verificación e instalación completa de dependencias
- 🔍 Verificación de autenticación Claude con entretenimiento visual
- 💻 Detección inteligente de plataforma (Linux/macOS) para instalación de paquetes
### Removed
- 🗑️ Eliminados archivos `setup-wsl.sh` y `setup-wsl.js` (redundantes)
- 🧹 Simplificación de la arquitectura eliminando duplicación de código
### Technical
- 🔧 Añadido módulo `https` para obtener chistes de API externa
- 🎨 Clase `Entertainment` para manejo de spinner y chistes
- 🔐 Funciones `readPassword()` y `testSudoPassword()` para manejo seguro de credenciales
- ⚡ Conversión a funciones async/await para mejor manejo de procesos asíncronos
## [1.1.0] - 2024-07-24
### Added
- 🎯 Comando `set-mode` para cambiar entre análisis estándar y SonarQube
- 📊 Modo SonarQube con métricas detalladas y quality gate
- 📈 Visualización del modo de análisis actual en comando `status`
- 🔧 Configuración persistente del modo de análisis en archivo `.claude-analysis-mode`
### Enhanced
- 📋 Comando `status` ahora muestra modo de análisis y archivos de pautas
- 📚 Documentación mejorada con ejemplos de ambos modos
- 🎨 Mejor formateo de salida en comandos informativos
### Technical
- 📁 Detección automática de archivos de pautas (CLAUDE_PRE_COMMIT.md, CLAUDE_PRE_COMMIT_SONAR.md)
- 🏗️ Estructura preparada para múltiples modos de análisis
## [1.0.0] - 2024-07-24
### Added
- 🎉 Primera versión estable del paquete npm `claude-git-hooks`
- 📦 CLI global `claude-hooks` para gestión de hooks de Git
- 🪝 Instalación automática de hooks `pre-commit` y `prepare-commit-msg`
- 🔍 Verificación de dependencias (Claude CLI, jq)
- 📋 Comandos principales: `install`, `uninstall`, `enable`, `disable`, `status`
- 📖 Sistema de ayuda completo con ejemplos
- 🎛️ Gestión individual de hooks (habilitar/deshabilitar por separado)
- 📂 Creación automática de archivos de pautas si no existen
- 🔄 Sistema de backup automático de hooks existentes
### Technical
- 🏗️ Arquitectura modular con funciones especializadas
- 🎨 Sistema de colores para output legible
- 🛡️ Validaciones de entorno (repositorio Git, dependencias)
- 📝 Documentación completa en README
---
## Tipos de cambios
- `Added` - para nuevas funcionalidades
- `Changed` - para cambios en funcionalidades existentes
- `Deprecated` - para funcionalidades que serán removidas
- `Removed` - para funcionalidades removidas
- `Fixed` - para corrección de bugs
- `Security` - para vulnerabilidades corregidas