Bugzilla

From GnuCash
Revision as of 01:02, 20 March 2024 by Fell (talk | contribs) (Attachments: link unzipers)
Jump to: navigation, search

This page describes the normal usage of Bugzilla. For Quality Assurance (QA) tasks see Bugzilla Administration.


Introduction

If you discover a problem with the program or its documentation (known as a bug), you should record the bug so that it can be fixed by the developers. The GnuCash project uses the Bugzilla repository, which includes bugs and enhancement requests for GnuCash. Tips for submitting enhancement requests can be found at Enhancement requests.

Tip
Bugzilla has a help button, currently linking into the Bugzilla 5.0.4+ documentation.

Bug Tracker Overview

Third Party Components

GnuCash uses several tools and is sometimes also confused with similar sounding programs, which are maintained by other teams. They have their own bug trackers:

GnuCash for Android
Beneath GitHub issues see also support group and feature requests.
AqBanking
has its own bugtracker. The details are on top of AqBanking.
Finance::Quote
can be tested by using the gnc-fq-* command line tools, see Online_Quotes#Trouble_Shooting.
Report bugs at GitHub issues (preferred by the maintainers) or their Request Tracker at the Comprehensive Perl Archive Network (CPAN).

Translation Issues

For missing or wrong translations, pleaase contact the translator or translation team directly.

Program
  • In the program open Help->About->Credits and look at the end for a section Translated by or
  • ask on your locale mailing list or
  • open the po file of your language in the repository and look at Language-Team: or Last-Translator:
for a contact address.
Documentation
The translator should have left a contact address on the title page, but it seems, most email addresses were removed for privacy reasons.
Other Components
See Translation.

Some can be fixed directly in https://hosted.weblate.org/projects/gnucash/.

Organization

Bugzilla categorizes bugs by what it terms products and components. We've set up the following categories as top-level products:

  • Bugzilla: Issues with this bug tracking system, not the program.
  • Documentation: GnuCash Documentation: User Guide, Help, Man Pages, Tip of the Day. Edit the Wiki directly instead of filing bugs!
  • GnuCash: Bugs in the program GnuCash
  • Packaging: Bugs specific to the OS-specific packaging
  • Website: Bugs specific to the GnuCash website (www.gnucash.org) and other web services

Most products have one or more component. When searching for bugs one can use product and component along with an enormous collection of other criteria to narrow the search. When filing a bug click the link above for the component you want to start in, then select the appropriate component for your problem.

GnuCash and Gnome Bugzilla

Until 2018, GnuCash used the Gnome Bugzilla to track bugs. When Gnome Bugzilla was set to read only mode, GnuCash implemented its own Bugzilla instance. All existing GnuCash bugs on Gnome were migrated to GnuCash's copy, and all GnuCash bugs on Gnome's Bugzilla refer visitors to GnuCash's Bugzilla. New bugs must be reported at GnuCash's Bugzilla.  

For all existing user accounts that touched any GnuCash bug, email address and full name were migrated. Passwords and email watch lists were not.

  • Migrated users, on first access to GnuCash Bugzilla, must reset their passwords by using the Forgot Password link at the top of the page.
  • Watch lists must be re-created on the Email Preferences tab in Preferences. See Notifications for more information.

Triage

Before filing a new bug, you should check to see whether the problem or suggestion has already been made. It may be still open or already closed after the date of your release.

Here are several links to different Bugzilla sections:

Commenting on existing bugs or entering new ones

If a bug has already been entered for the problem or enhancement you have identified, you can add comments to that bug.

If there is no bug, then you can Open a new GnuCash bug.

Users new to the bug process would benefit by reading: How to Report Bugs Effectively.

If you are unsure how to use Bugzilla, read [https://bugzilla.readthedocs.io/en/5.0/using/index.html or use the "Help" or "?" links in Bugzilla.

Note: GnuCash has different versions that run under different operating systems. When you report a bug, you should include both the GnuCash version and the operating system you use in the bug report. You should also include any other information about your configuration that might be pertinent in your request. Examples of this include: your problem might depend on your Locale Settings (like currency, number and date format), which means you would add your language and region.

On updates
Do not change the version, except it was a typo. Instead add a comment "In version 5.10 the problem still exists."

In many cases of errors it is helpful to provide the developers with the always generated Tracefile. See logging to learn about capturing and providing error messages and filtering detail.

When reporting an actual crash of GnuCash see whether you can generate a stack trace. See Stack Trace for information on how to produce a stack trace for your bug report.

Tips
* If you refer to other bugs in your text, we suggest to use the form bug nnnnnn - Title. Bugzilla will then add a link and the reader saves time if the title can be read without following the link.
  • Do not copy and paste log files or other longer output in your comments. Instead append them as attachments.

Attachments

If a program crash or freeze only happens on a specific file (for example, a data file, an import file, or a (modified) report), it can be useful to attach a copy of that file to your bug report.

If the crash is caused by a data file, you should attach the XML file in uncompressed format (see Edit->Preferences->General->Files->Compress Files) or use gunzip, 7-zip or similar programs.

Bear in mind that this data is available on the internet, and take steps to protect your financial data, e.g., by using the ObfuscateScript. If the file is really big, try to create a minimal example. For example, when creating a Tracefile using the --debug or --extra flags, details such as your GnuCash account names will be visible in the Tracefile; some users store sensitive info such as a bank account number in the account name.

If you accidentally upload attachments with un-obfuscated financial data, take the following steps:

  1. Mark the attachment as Obsolete; this will reduce its visibility while waiting for deletion (next step). A guide on marking attachments in Bugzilla obsolete can be found here.
  2. Request a Bugzilla Administrator to delete your attachment; only Administrators have the privileges needed to delete attachments.

When uploading, adjust the MIME type of your file. Whenever possible replace application/octet-stream by a more appropriate type:

Uncompressed gnucash data files are of type text/xml.
Most import files like csv and log files are are only displayed properly, if marked as type text/plain.
Note
There are many other valid MIME types (http://www.iana.org/assignments/media-types/media-types.xhtml), but you need to test if they are displayed properly.

Importance

Bugs have two importance fields. The first uses terms of priority: Immediate, Urgent, Highest, High, Normal, Low, and Lowest. The other uses terms of severity: blocker, critical, major, normal, minor, trivial, and enhancement. We use only normal for the first and only normal and enhancement for the second. Enhancement is for new feature requests. Bugzilla changes the typeface and color of lines in search result listings according to the value of those fields, something that's very distracting when trying to read the listings. Of course everyone thinks that their bug is critical and should be addressed immediately, but that would make the listings all in huge red type that's hard to read and is anyway not very helpful. Please leave the fields at normal/normal or at least don't get upset when someone changes your bug to that.

Notifications

Notifications can be set to alert you about particular bugs, as well as entire categories of bug.

If you want to receive email notifications about a particular bug, you can add the email address that is your Bugzilla id to the CC list on the bug. Bugzilla will do this for you by default if you take any action on the bug page.

Notifications about entire categories of bugs are known as Watch lists. If you want to add a watch list to your account, add one or more of the following email addresses to your User Watch list in your Bugzilla Email Preferences:

  • After login click Preferences in the Bugzilla menu bar.
  • Select the Email Preferences tab.
  • Scroll to the User Watching section, and enter one or more special addresses.

The email addresses and the groups they monitor are:

Address Elements Followed
core@gnucash.bugs Backend-SQL, Backend-XML, Budgets, Build System, Business, Currency and Commodity, Engine, Python Bindings, Scheduled Transactions
documentation@gnucash.bugs Documentation, Translations, Website
general@gnucash.bugs General
import@gnome.bugs Import-AqBanking, Import-CSV, Import-OFX, Import-Other, Import-QIF, Import-QSF, TXF Export
macos@gnucash.bugs macOS
reports@gnucash.bugs Check Printing, Reports
ui@gnucash.bugs Register, Regist-2, User Interface General
windows@gnucash.bugs Windows
all-bugs@gnucash.bugs Everything

Help Wanted

For those people who might like to help manage bugs on Bugzilla, there is additional information in Bugzilla Administration.