Cómo presentar un error

Ankur Sinha, Joe Walker Version all Last review: 2024-01-18
El propósito de este documento es dar instrucciones paso a paso sobre la presentación de errores en Fedora. Para más información sobre el uso de Bugzilla, vea la sección errores de los Documentos Quick.

Un error de software no a necesariamente una ruptura del software. Cualquier comportamiento no deseado del software puede ser presentado como un error. El mantenedor del paquete puede entonces ver el informe de error y decidir la mejor acción.

Cualquiera puede presentar un error: Se anima a todos los usuarios a presentar cualquier error que encuentren. La presentación de errores no se limita solo a los desarrolladores de software.

Terminología

Hay uno pocos términos que se usan habitualmente en este documento:

  • Gazapo: Un gazapo es cualquier comportamiento del software inesperado/indeseado.

  • Rastreador de gazapo: El sistema de rastreo de gazapos de Fedora en https://bugzilla.redhat.com.

  • Paquete: Cada software disponible en Fedora tiene un nombre de paquete formal que se usa por el rastreador de gazapos y otras herramientas de infraestructura. Los paquetes se pueden buscar usando Fedora dist-git.

  • Mantenedor: Un cuerpo de voluntario que están al cuidado de los paquetes de software suministrados en Fedora. Son llamados "mantenedores de paquete". Ellos mantienen el rastro de los gazapos, ayudan con cuestiones y generalmente actúan como intermediarios entre los desarrolladores de software y los usuarios de Fedora.

  • QA: La garantía de calidad es el proceso para asegurar que el software trabaja como está previsto.

  • Bodhi: La Aplicación Web QA de Fedora.

Antes de rellenar un gazapo

Ask Fedora — el foro de soporte de la comunidad — es un buen sitio para empezar si no está seguro de que ha encontrado un gazapo. A veces los que se percibe como un gazapo es un malentendido o una pregunta. La comunidad Ask Fedora puede ayudarle a determinar sin ha encontrado un gazapo — y si es específico de Fedora o está en el desarrollo del paquete.

Paso 0: Compruebe la página de Problemas Comunes

Mantenemos una lista de problemas comunes. Compruebe primero este sitio para ver si ya se ha informado de su problema — y si existe una solución.

Paso 1: Compruebe la última versión

Como de los errores se informa y son corregidos, los desarrolladores coleccionan un conjunto de soluciones y periódicamente lanzan versiones mejoradas de su software. De este modo, antes de informar de una cuestión es útil comprobar si usted está utilizando la última versión de un software. La manera más sencilla de obtener la última versión de software en Fedora es actualizar regularmente su sistema. Los usuarios de Gnome/KDE y otros entornos de escritorio pueden usar sus aplicaciones predeterminadas para hacer esto. Estas comprueban periódicamente si hay actualizaciones y lo notifican a los usuarios. También puede usar el administrador de paquetes predeterminado dnf para comprobar y actualizar su sistema. Solo lo pueden hacer los usuarios con privilegios de administrador:

$ sudo dnf upgrade --refresh

Paso 2: Compruebe si ya se ha presentado el error

Si está usando la última versión del software disponible en Fedora, es posible que el error no haya sido reportado todavía o que haya sido reportado pero todavía no esté solucionado. Por lo tanto, es útil buscar en la lista de los errores ya reportados antes de publicar un nuevo reporte. La aplicaciónhttps://packages.fedoraproject.org/[ Web Fedora Packages] proporciona un enlace a los errores abiertos para un paquete. Hay también un atajo conveniente que puede ser usado.

https://bugz.fedoraproject.org/<package name>

Aquí, package name debe ser el nombre formal del paquete.

Encontrar el nombre del paquete: Si usted no conoce el nombre formal del paquete de software, puede usar la Aplicación Web Fedora Packages para buscarlo y ver la lista de errores allí.
20180825 how to file a bug gs
Figura 1. Buscar en la Aplicación Web Fedora Packages para Gnome Software.
Búsqueda avanzada: También puede usar las funciones de búsqueda avanzada del rastreador de errores para acortar su búsqueda. Sin embargo, no es necesario.

Si ya se ha presentado un informe de error que describe el problema, debería proporcionar cualquier información extra que pueda tener. Si no tiene nada más que añadir al informe, debería poner "CC" (carbon-copy) para usted en el informe para recibir cualquier actualización. Esto se puede hacer pulsando en el botón "Save changes" cuando se ha confirmado la opción "Add me to CC list" como se muestra abajo:

20180825 how to file a bug cc list
Figura 2. La CC list contiene todos los usuarios que deberían ser notificados cuando se haga alguna actualización al informe.

Presentar un informe de error

Paso 0: Crear una cuenta Bugzilla

Los errores se rellenan en Bugzilla y usted debe tener una cuenta Bugzilla para presentar errores e interactuar con ellos. Una vez que ha creado una cuenta en Bugzilla, también puede acceder usando su cuenta Fedora. Para usar su cuenta FAS para acceder a Bugzilla, necesita o usar la misma dirección de correo electrónico en FAS y en Bugzilla o, si son diferentes, establecer la dirección de correo electrónico de Bugzilla explícitamente en su perfil FAS.

El rastreador de errores solo enviará notificaciones de correo electrónico sobre los errores en los que esté involucrado un usuario. No se enviarán otros correos electrónicos.

Paso 1: Presentar un nuevo error

Si un reporte de error para un problema concreto no se ha presentado aún, usted debe presentar uno nuevo. La manera más fácil de presentar un nuevo reporte es usando el desplegable "File a new bug" (Presentar un nuevo error) desde la barra del lado derecho en la aplicación Web Paquetes Fedora.

20240118 how to file a bug new bug shortcut
Figura 3. La Aplicación Web Paquetes Fedora proporciona un atajo conveniente para presentar nuevos errores.

Esto le dirige a una plantilla de reporte de nuevo error en el trazador de errores. La imagen de abajo presenta una plantilla de nuevo error:

20180825 how to file a bug new bug
Figura 4. Plantilla de reporte de un nuevo error.

Es necesario completar los siguientes campos:

  • Component (Componente): Aquí se pondrá el nombre del paquete.

  • Version (Versión): Usted debe establecer la versión de Fedora en la usted ha observado el error.

  • Summary (Resumen): Debe proporcionar un resumen corto y útil del problema aquí.

  • Description (Descripción): Aquí se debe proporcionar una información más detallada sobre el problema. Ya contiene una plantilla que se explica a continuación.

  • Attachment (Adjunto): Archivos que pueden proporcionar más información del problema pueden ser subidos con el reporte de error usando el botón de aquí. Por ejemplo, pantallazos, archivos de registro, grabaciones de pantalla.

  • Severity, Hardware, OS (Gravedad, Hardware, Sistema Operativo): Estos campos son opcionales y no es necesario rellenarlos.

Descripción del problema:

Explicar el problema en más detalle.

Número de Versión-Lanzamiento del componente seleccionado (si es aplicable):

Aquí se debe especificar la versión del paquete. Una vez que se sabe el nombre del paquete, se puede obtener la versión usando el comando rpm:

$ rpm -q <packagename>

Por ejemplo:

$ rpm -q gnome-software
gnome-software-3.28.2-1.fc28.x86_64

Como es de reproducible::

¿Con qué frecuencia se observa el problema? Normalmente, una buena respuesta en este campo es una de:

  • Siempre: el problema se observa cada vez.

  • Algunas veces: el problema sucede, pero no cada vez.

  • Solo una vez: el problema solo se ha observado una vez.

xLos problemas que ocurren siempre son más fáciles de diagnosticar por los desarrolladores, ya que ellos pueden ser capaces de replicarlos en sus máquinas para recoger más información. Si un problema solo sucede algunas veces, los desarrolladores deben consumir más tiempo y esfuerzo para entender lo que causa el problema. Si un problema solo se ha observado una vez, es aún más dura su depuración.

Los informes de error detallados hacen más fácil el corregirlos: Si es posible, debe intentar investigar que pasos llevan a que suceda el problema y proporcionar estos pasos en la siguiente sección:
Envíe un informe aunque no esté seguro: Si no está seguro de que completar, debe todavía enviar el informe de error. Si no está seguro de que completar, debe todavía enviar el informe de error.

Pasos para reproducir:

Esto habilita a otros usuarios para verificar el error y ellos también informar a los desarrolladores de que pasos específicos han causado el problema. Les resulta mucho más fácil mirar el código fuente y seleccionar los bits que pueden estar defectuosos.

Resultados actuales:

¿Qué se observa cuando ocurre el problema?

Resultados esperados:

¿Qué espera el usuario que ocurra si el software se comporta correctamente?

Información adicional:

Cualquier información adicional que pueda ser útil para el mantenedor debe añadirse aquí.

Paso 2: Seguimiento de informes presentados

Después de que se haya solucionado un error debe estar atento a las actualizaciones. La documentación flujo de trabajo de estado de error describe los diferentes estados que puede tener un error. Se enviará un correo electrónico de notificación de cualquier nuevo comentario sobre el informe a todos los involucrados en él---el informador, otros usuarios y el mantenedor. Con frecuencia, los mantenedores comentarán con consultas para obtener más información sobre el problema. Algunas veces otros usuarios que experimentan el mismo problema pueden también añadir más información.

Pedir instrucciones: Si los mantenedores piden más información pero no está claro como la puede obtener, es perfectamente correcto que pida a los mantenedores instrucciones explicitas.
Notificaciones de correo electrónico: Las notificaciones se envían desde bugzilla@redhat.com.. Debe estar atento a los correos electrónicos de esta dirección y añadirla a sus listas de "no spam".

Paso 3: Probar actualizaciones

Un error bien reportado es con frecuencia corregido y el mantenedor hará una versión mejorada del software disponible para los usuarios de Fedora. Bodhi añadirá un comentario al reporte cuando esto suceda. Puede ayudar al mantenedor confirmando si la versión mejorada trabaja mejor en el Bodhi.

20180825 how to file a bug qa
Figura 5. La Aplicación Bodhi añade comentarios informando de una actualización que podría corregir el error.
Ayude en las pruebas de actualizaciones:Todos los usuarios pueden ayudar probando nuevas versiones de software. Se puede encontrar más información sobre esto aquí. Tenga en cuenta que esto requiere una cuenta Fedora.

Una vez que la versión del software ha pasado el proceso de QA, el error será automáticamente cerrado ¡Enhorabuena!

Consejos para tipos específicos de errores

Colgado

Si ha experimentado un cuelgue en un programa, es casi seguro que será necesario incluir un traza de la pila con su reporte de error. Los cuelgues son, a menudo, difíciles de reproducir y aún más difíciles de corregir, por lo que cuanta más información pueda proporcionar, mejor. Necesitará instalar probablemente RPMs de información de depuración, de modo que su traza de la pila tendrá símbolos de depuración útiles. Vea más información en las siguientes páginas:

Solicitudes de Mejoras

La mayoría de las peticiones de mejora deberían presentarse en sentido ascendente. Si al software le falta una función que piensa que debería tener, generalmente querrá presentarlo en el rastreador de errores de proyecto anterior. Las solicitudes de funciones en Fedora Linux generalmente cambian los valores predeterminados, habilitan funciones deshabilitadas de forma predeterminada, etc.
  • Cuando rellene una solicitud de mejora en Bugzilla, añada la palabra clave Future Feature al reporte. La Palabra clave se debería añadir justo después de enviar el error. Usted verá la Palabra clave en la caja de entrada entonces. Asegúrese de proporcionar suficiente información y justificación para que se consideren sus solicitudes de mejora.

  • El Fedora Project tiene como objetivo ser una plataforma construida exclusivamente desde el software libre y de código abierto. Las sugerencias para incluir soporte para software propietario o gravado legalmente no son constructivas. Vea en la página con la lista de elementos prohibidos detalles sobre esto.

  • Si desea hacer una nueva función por su cuenta, cree una página wiki para su función y haga que la acepten. Vea más en Proceso de Cambios.

  • Las solicitudes para añadir nuevos paquetes a Fedora no deberían ser presentadas en Bugzilla.

Interfaces Gráficas de Usuario

Si está teniendo problemas con una interfaz gráfica de usuario (GUI), a menudo resulta útil incluir una captura de pantalla o una grabación de pantalla mostrando el error en acción. Esto ayuda a los desarrolladores a encontrar el sitio exacto del código que está causando el error y ayuda comunicar que es lo que va mal cuando es difícil de reproducir (por ejemplo, problemas de diseño específicos de la máquina).

Errores Específicos del Hardware

Una indicación fuerte de un error específico del hardware es que otras personas con un hardware diferente deberían ser capaces de reproducir el error, pero no pueden. También normalmente involucran a código que interactúa específicamente con un periférico, como una cámara web, tarjeta de vídeo, impresora o tarjeta de sonido (así, por ejemplo, es poco común que los errores que afectan a la interfaz de usuario de un procesador de texto o una calculadora de escritorio sean específicos del hardware).

Si sospecha que su error tiene algo que ver con el hardware específico que tiene, será necesario identificar el hardware para poder tomar medidas específicas.

Los dispositivos PCI y PCI-E encontrados por el pueden ser listados con lspci.

Los dispositivos USB encontrados por el kernel se pueden listar con lsusb.

Puede encontrar mención de los dispositivos o controladores específicos en los registros del sistema (ejecute journalctl).

Sensible a la Seguridad

We pay special attention to security-sensitive bugs. Read the Reporting a Security Vulnerability page to understand the special process of opening a security bug.

Información requerida para los errores en componentes específicos