Using Trac With QGIS

This page summarizes how to use Trac with QGIS and provides links to specific information about features and operating procedures.

Login

You must have an OSGeo account and login in order to submit bug reports. To get started, first  create an OSGeo account.

Once you have your account, use  https://trac.osgeo.org/qgis/login to login (https is required).

Email Notification

If you want notification of all issues and project events, subscribe to the Qgis-trac mailing list at:

 http://lists.osgeo.org/mailman/listinfo/qgis-trac

You can set your options to digest if you find the amount of email per day to be too large.

Tickets

Tickets are used to report bugs, request enhancements and submit patches. Trac is more than a bug reporting system. Tickets can be associated with a  QGIS Milestone, allowing you to see progress towards completion. Completion of a Milestone not only requires closing bugs, but completing other tasks releated to a release such as documentation, web site updates, packaging, and announcements.

Opening a Ticket

Before filing a bug, review the currently open tickets to make sure that you aren't creating a duplicate. If you have additional information on an issue, you can add it to the ticket. Third party plugins might also cause problems. If you have installed any, you should also verify that the problem is still reproducable without them.

To report a bug choose New Ticket from the menu bar. Note: You can also request an enhancement or submit a patch using the Ticket system.

Important information needed when opening a ticket:

  • Your email or username - If you have a login your user name will be automatically supplied. If not, please provide your email address so we can contact you for further information and follow-ups.
  • Type - choose the ticket type from the drop-down list
    • enhancement - feature request
    • bug - bug
    • patch - patch (see patch notes below)
  • Full description
    • Provide a full description of the problem including steps to repeat it
    • if you feel the bug could be related to a certain platform version or dependencies package version (GDAL, OGR, GEOS etc) include that as well.
    • if your QGIS crashes if might be useful to include a backtrace (see below)
  • Priority - provide an estimate of the severity of the problem
  • Component - Choose the aspect of the application that is most closely associated with the problem
  • Milestone - If this issue affects a particular Milestone in the project choose it from the drop-down list
  • Version of QGIS this issue affects
  • Platform - Choose the platform you are using

Creating a backtrace

If you have a crash it might be useful to include a backtrace as the bug might be not reproducable on an other machine. On Unix you can create a backtrace using a core dump and gdb. A core dump is a memory dump of the state of the process when the crash happened.

  1. Depending on you distribution the automatic creation of core dumps might be disabled. In that case you only see for instance Segmentation fault and not Segmentation fault (core dumped) in the shell you started QGIS from and you need to run ulimit -c unlimited before starting QGIS. You could also include that in your .profile.
  2. Start qgis from the shell and repeat the steps to reproduce the crash. After the crash the core file will be located in the current directory.
  3. To produce a backtrace from it you start gdb /path/to/the/qgis/binary core. The binary is usually /usr/bin/qgis or /usr/bin/qgis.bin on Debian with the GRASS plugin installed.
  4. In gdb you run bt which will produce the backtrace.

Color Coding

The background color of a ticket (bug, enchancement, etc) is color coded in reports by Priority:

  • blocker
  • critical
  • major
  • minor
  • trivial
  • closed

Creating a patch

Assuming you have checked out your svn copy into a directory called 'qgis', create your patch from in the top level directory of the svn checkout e.g.

cd qgis
svn diff > patch_for_bug_33.txt

Note the naming convention - include the id of the bug you are fixing with your patch.

Closing a ticket

When committing a bug fix to the Subversion repository, refer to the bug number preceded by # as follows:

Fix for bug #31 using patch provided by Joe Bloggs

When closing the bug in trac refer to the Subversion version number of that commit:

This issue is fixed in r5051

If you follow this approach, your bug will be cross-linked in both ticket view and the source browsing view.