Articulo de referencia

Resumen (seguimiento de incidencias)

Roundup es un sistema de seguimiento de errores o incidencias de código abierto que cuenta con una interfaz de línea de comandos, web y de correo electrónico . Está escrito en P...

Roundup es un sistema de seguimiento de errores o incidencias de código abierto que cuenta con una interfaz de línea de comandos, web y de correo electrónico . Está escrito en Python y diseñado para ser altamente personalizable. [ 3 ]

Historia

Roundup fue diseñado por Ka-Ping Yee para el proyecto Software Carpentry y se desarrolló entre 2001 y 2016 bajo la dirección de Richard Jones. Desde entonces, ha sido desarrollado por la comunidad de Roundup. Fue el sistema de seguimiento de incidencias para el lenguaje de programación Python durante 17 años antes de migrar a GitHub . [ 4 ] En una ocasión se lo describió como «como Bugzilla sin los seis años de formación, o RT sin esa tediosa basura de MySQL ». [ 5 ]

Características

La configuración estándar de Roundup incluye las siguientes características:

Roundup admite varios backends web. [ 10 ] Puede ejecutarse de forma independiente , como un proceso demonio en segundo plano , como un script CGI [ 11 ] o como una aplicación WSGI .

Conceptos

Roundup se personaliza cambiando el contenido del directorio de la instancia del rastreador:

Esquema de la base de datos

El esquema de la base de datos se define en un archivo Python ubicado en el directorio raíz de la instancia del rastreador; este esquema se vuelve a leer cada vez que se inicia el servidor. Cuando se detectan cambios (por ejemplo, nuevos atributos), las tablas del sistema de bases de datos relacionales subyacente se modifican en consecuencia.

Plantillas de página

Roundup utiliza el lenguaje de atributos de plantilla (TAL) para crear salida HTML o XHTML . La versión 1.5.0 añade soporte experimental para motores de plantillas alternativos, como Jinja2 . [ 12 ]

Las plantillas reciben el nombre de las clases en la base de datos. Roundup selecciona automáticamente la plantilla según el nombre de la clase solicitada en la URL. Algunas plantillas se utilizan para varias clases, por ejemplo, _generic.index.html, que permite a los usuarios (autorizados) modificar los objetos de todas las clases que carecen de una plantilla de índice propia.

Cuando se solicita un "issue123", este designador se divide en la clase de incidencia y el ID "123". [ 13 ] Por defecto se elige una plantilla "item": Primero, se busca un archivo de plantilla issue.item.html; si no se encuentra, se utiliza _generic.item.html como opción alternativa. Si tampoco se encuentra, se produce un error.

Detectores

Muchas funciones de Roundup, incluyendo algunas de las funciones estándar, se implementan mediante los llamados detectores [ 14 ] , que se encuentran en el subdirectorio "detectors" de la instancia del rastreador. Son subrutinas de Python que tienen acceso al objeto que se va a modificar (si ya está creado) y a los cambios de atributos solicitados.

Los detectores se dividen en auditores y reactores . Los auditores se utilizan principalmente para realizar varios cambios automáticos (en la configuración estándar, el usuario asignado se añade automáticamente a la lista de usuarios que desean recibir notificaciones del problema) y para rechazar cambios no permitidos; los reactores se ejecutan posteriormente y se utilizan, por ejemplo, para la función de notificación por correo electrónico, enviando correos de notificación a todos los usuarios interesados ​​en un problema determinado cuando se añade un comentario.

Los detectores se activan siempre que se produce una de las acciones.

  • crear
  • conjunto (cambio de atributos)
  • retirarse
  • restaurar

Se solicita. Se pueden utilizar para crear un flujo de trabajo personalizado y elaborado.

Extensiones

El subdirectorio de instancia "extensions" puede contener archivos adicionales necesarios para funcionalidades extendidas que no se pueden realizar (de forma práctica) con TAL ; incluso son posibles acciones totalmente nuevas.

Los módulos de Python que utilizan tanto los detectores como las extensiones se pueden colocar en el subdirectorio "lib".

Véase también

Referencias

  1. "Se ha lanzado Roundup 2.6.0" . 13 de julio de 2026.
  2. "Licencia" .
  3. La interfaz de usuario principal es la interfaz web. Se distribuye una plantilla denominadaclassic"tracker" como plantilla estándar y conjunto de estructura de datos, pero puede utilizarse como punto de partida para la personalización.
  4. Rastreador de errores de Python
  5. NTKnow 05/07/2002 - SEGUIMIENTO
  6. Documentación REST
  7. Interfaz de usuario de correo electrónico , Guía del usuario de Roundup
  8. Diseño de listas de curiosidades
  9. control de acceso , descripción del diseño de Roundup
  10. "Instalación de Roundup - Documentación de Roundup 2.6.0" .
  11. El uso a través de CGI es poco frecuente y no se recomienda por motivos de rendimiento.
  12. "Resumen: Un sistema de seguimiento de incidencias fácil de usar e instalar con interfaces de línea de comandos, web y correo electrónico. Altamente personalizable" .
  13. identificadores y designadores , descripción del diseño de Roundup
  14. Interfaz del detector , descripción del diseño de Roundup
  • Sitio web oficialEdita esto en Wikidata