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
Figure 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
Figure 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
Figure 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
Figure 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

How reproducible:

How often is the issue observed? Usually, a good answer to this field is one of:

  • Always: the issue is observed each time.

  • Sometimes: the issue occurs, but not each time.

  • Only once: the issue was only observed once.

Issues that occur always are easiest for developers to diagnose, since they may also be able to replicate it on their machines to collect more information. If an issue only happens sometimes, developers must spend more time and effort to understand what causes the problem. If an issue was only observed once, it is even harder to debug.

Detailed bug reports make bugs easier to fix: If possible, you should try to investigate what steps cause the issue to happen and provide these steps in the next section:
Submit a report even if unsure: If you aren’t sure of what to fill in, you should still submit the bug report. Maintainers can follow up with questions to gather more information.

Steps to Reproduce:

These enable other users to verify the bug, and they also inform the developers of what specific steps cause the issue. It makes it much easier for them to look at the source code and pick out the bits that may be faulty.

Actual results:

What is observed when the issue occurs?

Expected results:

What does the user expect that should happen if the software behaved correctly?

Additional info:

Any additional information that may be useful to the maintainer should be added here.

Step 2: Follow up on filed reports

After a bug has been filed, you should keep an eye out for any updates. The bug status workflow documentation describes the different statuses a bug may have. An e-mail notification of any new comments to the report will be sent to everyone involved in the bug report---the reporter, other users, and the maintainer. Often, maintainers will comment with queries to gather more information on the issue. Sometimes other users that experience the same issue may also add more information.

Ask for instructions: If the maintainers ask for more information but it is unclear how it should be gathered, it is perfectly OK to ask the maintainers for explicit instructions.
E-mail notifications: The notifications are sent from bugzilla@redhat.com. You should keep an eye out for e-mails from this address, and add it to your "no-spam" lists.

Step 3: Test updates

A well reported bug will often be fixed, and the maintainer will make an improved version of the software available to Fedora users. Bodhi will add a comment to the report when this happens. You can help the maintainer by confirming if the improved version works better in the Bodhi.

20180825 how to file a bug qa
Figure 5. Bodhi Application adds comments informing users of an update that should fix the bug.
Help test updates: All users can help by testing new versions of software. More information on this can be found here. Note that this requires a Fedora account.

Once the improved version of the software has passed the QA process, the bug will automatically be closed. Congratulations!

Advice for specific bug types

Crashes

If you have experienced a program crash, it will almost certainly be necessary to include a stack trace with your bug report. Crashes are often difficult to reproduce and even more difficult to fix, so the more information you can provide, the better. You will probably need to install -debuginfo RPMs so your stack trace will have useful debugging symbols. See the following pages for more information:

Enhancement Requests

Most enhancement requests should be filed upstream. If the software is missing a feature you think it should have, you generally want to file that in the upstream project’s bug tracker. Feature requests in Fedora Linux are generally changing defaults, enabling disabled-by-default features, etc.
  • When filing an enhancement request in Bugzilla, add the keyword Future Feature to the report. The Keyword should be added right after submitting the bug. You will see the Keyword input box then. Make sure you supply enough information and rationale for your enhancement requests to be considered.

  • The Fedora Project has the objective to be a platform built exclusively from free and open-source software. Suggestions to include support for proprietary or other legally encumbered software is not constructive. See the list of forbidden items page for details about this.

  • If you want to make a new feature happen on your own create a wiki page for your feature and get it accepted. See more on the Changes Process.

  • Requests for new packages to be added to Fedora should not be filed in Bugzilla.

Graphical User Interfaces

If you are having trouble with a graphical user interface (GUI), it often helps to include a screenshot or a screencast showing the bug in action. This helps developers find the exact place in the code which is causing the bug, and helps communicate what is going wrong when it is difficult to reproduce (for example, machine-specific layout problems).

Hardware-Specific Bugs

A strong indication of a hardware-specific bug is that other people with different hardware should be able to reproduce the bug, but can’t. They also usually involve code that specifically interacts with a peripheral, such a webcam, video card, printer, or sound card (so for instance, it is uncommon for bugs affecting the user interface of a word processor or desktop calculator to be hardware-specific).

If you suspect your bug has something to do with the specific hardware you have, it will be necessary to identify the hardware so targeted action can be taken.

PCI and PCI-E devices found by the kernel can be listed with lspci.

USB devices found by the kernel can be listed with lsusb.

You may also find mention of specific devices or drivers in your system logs (run journalctl).

Security-Sensitive

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.