Using the bug tracker

From Gramps
Revision as of 00:49, 25 September 2020 by Lordemannd (talk | contribs) (Useful Mantis bug tracker Syntax codes: add note to "mention" about that names with embedded spaces not currently supported by MantisBT)
Jump to: navigation, search

The bug/issue tracker for Gramps is located at the following URL: This bug/issue tracker allows users and developers to log new issues and track them as they progress. Please take some time to read the issue tracker instructions below and read how to create a good bug report. Also, have a look at known issues and common problems.

Quick recommendations

  • Be precise
  • Be clear: explain how to reproduce the problem, step by step, so others can reproduce the bug, or understand the request.
  • Include only one problem per report
  • Include any relevant links and examples

Report a bug

1. Login

To report a bug or raise a feature request, you must have a login account on the Gramps bug tracker:

2. Search existing bugs

Search Box

Perhaps the bug you want to report has been submitted before. To check this, click on View Issues. The top of the page is reserved for filters, which you set. Normally the default filters are just fine. Under these filters, there is a Search box. Enter the terms best describing the bug, and click Apply Filter to search. If you have an error message, try pasting a part of the error, to see if it is has been reported already.

If the bug is already reported, read over the bug report, and see if you can add to the information. If so, you can leave a note with extra information to help the developers.

3. Submit new bug

'Report Issue' buttons.

Click on one of the Report Issue buttons, and enter the required information, see below on how to select the project to which the bug belongs. Be verbose, the developers are bad at mind reading. We shall mercilessly close the bugs which have no meaningful information at all, such as #7126. Do not forget to list the Gramps version you are using. You can check this in Gramps by clicking in the Gramps program the Help menu, option About.

How to proceed

Choose Project - selection list

The first step in submitting an issue on the tracker is to determine which project it belongs to on the issue tracker from the Select Project box, use the Choose Project drop down list to select the "project" for the bugs. "Projects" are a way to categorize issues. There are two types of projects in the issue tracker, Feature Requests and Gramps:

  • The Feature Requests project is a place for recording requests for new features.
    • If the issue represents functionality that does not currently exist in Gramps, then the issue should be filed under the Feature Requests project.
  • The Gramps project is a place for recording all issues with Gramps.
    • If the issue represents a problem with functionality that has been released in a stable release of code, then the issue should be filed under the project that corresponds to the maintenance branch for that release. For example, a bug found in Gramps 5.1.0 should be filed under the Gramps 5.1.0 project.
  • If the issue represents a problem with functionality that only exists in the master branch, or the problem exists in the master branch, but not any stable releases, then the issue should be filed under the Gramps Master project.

Enter Issue Details

Enter Issue Details - page

The Enter Issue Details page is where you share with the developers what your issue or feature request is.

Try and complete all the relevant sections as well as you can and be prepared to answer follow up questions if your report needs clarification, it may help you to read the How to create a good bug report article.

Filling out the page
  • Product Version
    • The projects with names that look like Gramps x.x.X are where issues are reported that apply specifically to a maintenance branch (see Types of Branches). A separate project exists for each maintenance branch.
    • The Gramps Master project should only be used by developers and testers of the latest code. It is a place for recording issues that only apply to the master branch in Git (see Types of Branches). There is only one "Gramps Master" project because there is only one master branch in the Git repository.

Useful Mantis bug tracker Syntax codes

The following are useful Mantis bug tracker syntax codes you can use:

  • Using # before a bug number writes a link to the bug. eg: #1 becomes 1
  • Use @ before a user name to mention a person (note: user names with embedded spaces are not supported)
  • Using ~ before a comment number writes a link to the comment, same as : {url}#c{comment number}. eg: ~3 becomes [1]

Limited HTML tags

  • A limited set of HTML tags can be used in the text field:
    • <p> </p> to define a paragraph.
    • <li> to defines a list item used with:
      • <ul> unordered lists
      • <ol> ordered lists
    • <br> to insert a single line break.
    • <pre> </pre> to add preformatted text, that is displayed in a fixed-width font, and it preserves both spaces and line breaks.
    • <i> </i> usually displays text in italics.
    • <b> </b> shows bold text
    • <u> </u> Underline a misspelled word
    • <em> </em> It renders as emphasized text.
    • <strong> It defines important text.

Resolving bugs for developers

This information is for the developers following up on the submitted issues.

The roadmap page of the bug tracker lists the bugs currently prioritized for the next releases. If you are looking for a bug to fix, this is a good place to start. Placement on the roadmap is controlled by the "Target Version" field fo the bug. Special "X.Y.99" phony releases, such as "3.4.99" and "4.0.99", list bugs that we would eventually like to fix for the "X.Y" version, but don't really know the milestone yet. Bugs that really should hold up a release should be on the roadmap with a real release number, and should only be moved after giving a reason or heads up on the devel list [2]. If you fix a bug scheduled for a later milestone before a previous one is out, please manually adjust the target release field before marking the bug resolved, otherwise the roadmap display will be inaccurate [3].

In general, when resolving an issue, it is always a good idea to add a note with the hash of the commit that fixed the problem.

When resolving issues in a maintenance branch, one should always set the "Fixed in version" field to the version of the next release that will be made from that branch. This is done so that the issue properly appears in the ChangeLog page for that project ( ).

Bugs in maintenance branch projects should not be marked as closed until the developer has committed the change into the corresponding maintenance branch. Additionally, it is the developers responsibility to make sure the change has been merged into the master branch.

See also