Release Drafter
Automatizar la generación de changelogs y release notes en repositorios GitHub.
GitHub Action que genera automáticamente los release notes como borrador según las Pull Requests mergeadas. Categoriza PRs por labels.
Notas y contexto
Qué es
Release Drafter es una GitHub Action diseñada para gestionar de forma automatizada los borradores de lanzamientos (releases) de tus proyectos. Su función principal consiste en escuchar los eventos de mezcla (merge) de Pull Requests y redactar gradualmente el historial de cambios (changelog), clasificando cada contribución en secciones personalizables según las etiquetas (labels) aplicadas.
Para qué sirve
- Mantener un borrador de lanzamiento de GitHub siempre actualizado con el changelog detallado y los autores de cada cambio a medida que se mezclan las PRs.
- Organizar automáticamente las contribuciones en categorías limpias y lógicas (ej: “Nuevas Características”, “Corrección de Errores”, “Documentación”).
- Determinar de forma automática el siguiente incremento del número de versión semántica (major, minor, patch) basándose en las etiquetas de los commits o PRs.
- Evitar las tareas manuales de redacción y formateo de changelogs antes de publicar una nueva versión de software de cara al público.
Cuándo usarlo
Es una herramienta imprescindible para cualquier equipo de desarrollo que gestione proyectos alojados en GitHub, especialmente en repositorios de código abierto con múltiples colaboradores donde llevar un registro ordenado de cambios es crucial. Alternativas como semantic-release automatizan completamente el proceso de publicación incluyendo el commit de tag, mientras que Release Drafter se enfoca en dejar listo un borrador impecable en GitHub listo para ser revisado y publicado manualmente.
Puntos clave
- Altamente personalizable mediante un archivo de configuración en formato YAML (
.github/release-drafter.yml). - Soporte para Conventional Commits para extraer de forma inteligente el propósito de cada cambio y categorizarlo automáticamente.
- Incluye menciones y enlaces directos a los perfiles de GitHub de los colaboradores que realizaron las aportaciones correspondientes.
- Permite definir plantillas de texto reutilizables para homogeneizar el estilo de todas las notas de versión de la organización.
Ten en cuenta
Para que la herramienta funcione de forma óptima, el equipo debe ser disciplinado en el uso consistente de etiquetas (labels) en las Pull Requests o estructurar adecuadamente el título de los commits, de lo contrario la categorización fallará o agrupará todo en secciones por defecto sin clasificar.