Bug Tips

Proper source package

Assigning bugs to packages helps direct bug reports to the developer(s) most likely to be able to help. By ensuring that this information is accurate, you increase the chances of the bug being fixed promptly. Often, it is unclear which package contains the bug, and in these cases it is appropriate to file the bug in Ubuntu. If a bug is assigned to a package which is clearly not correct, and you don't know the correct package, change it to Ubuntu.

The correct package for bugs in the Linux kernel is linux, regardless of which particular package is in use (there are many packages which contain Linux kernels).

Confirming problems

If a bug is marked as Unconfirmed, it is helpful for you to try to reproduce the problem and record the results in Malone. If you are able to confirm the problem, you may change the status to Confirmed. If you are unable to confirm the problem, that is also useful information that should be recorded in a comment.

Forwarding bugs upstream

You can forward bugs to the authors of the software (upstream), if

  • you made sure that the bug doesn't occur because of Ubuntu related changes

  • the change is too hard to be fixed by yourself or anyone else on the team

If you do this, be sure to include all the necessary information, such as

  • how to reproduce the bug

  • which version is used (which version of dependent libraries, if the bug indicates problems there)

  • who reported it

  • where the whole conversation can be found

Make sure to also create a bug watch in Malone for this bug.

How to Deal with Feature Requests

If you feel that the bug reported is a feature request disguised as a bug report, please introduce the reporter gently to the Specification Process we have. Be sure to mention the following specification resources: FeatureSpecifications, SpecSpec, SpecTemplate, and http://launchpad.net/specs

How to deal with Support Requests

If you feel that the bug reported is a support request disguised as a bug report, please introduce the reporter gently to the Support Tracker we have. Be sure to mention http://launchpad.net/support.

How to deal with suggestions for changing defaults

If you feel that the bug reported is a suggestion for changing defaults disguised as a bug report, please kindly reroute the discussion to an appropriate mailing list or discussion forum. If this change has already been discussed and rejected, explain the reasons to the user and direct him or her to the relevant discussion for further suggestions/comments.

Finding Duplicates

Finding duplicates of bugs is a very valuable contribution in the Bug community. Users sometimes don't know how to check if the same bug has already been filed, and sometimes they don't care. Weeding out simple ME TOO messages and aggregating information is crucial to the process of fixing a bug.

There are quite a few measures you can take to assist with this aspect. One is to search for bugs filed for the same component. Also try to rephrase your search, and concentrate on actions and words that describe the items involved to reproduce the bug.

Examples:

If you can't find it in the list of open bugs, you could try to find it in the list of closed ones. Don't feel discouraged if you don't find duplicates quickly in the beginning. After some time, you will recognize the usual suspects and will be able to identify them more easily.

[Note]

If you encounter a bug that has a terrible/unintelligible title, rephrase it so people find it more quickly.

Reminder of the Code of Conduct

Note that the Code of Conduct applies to conversations in bug reports too. If you observe people being disrespectful, please direct them to the Ubuntu Code of Conduct.

Managing Status

As a reporter you usually don't have to take care of statuses. As a bug triager or developer it's an important tool to categorize bugs and have a good overview of the state of packages and software.

Here's a brief list and explanation of the various statuses:

  • Unconfirmed: Bugs start with this status. Bugs marked Unconfirmed sometimes lack information, are not ready, or are not confirmed yet. Most of them have not yet been triaged.

  • Needs Info: If you have to ask the reporter questions, please set this bug to "Needs Info". A regular task for Needs Info bugs is to ask back. If there are no answers after a reasonable period, close them saying "If you have more information on this bug, please reopen."

  • Rejected: Bugs marked as Rejected are closed. Be sure to triple-check a bug before you reject it.

  • Confirmed: Confirmed bugs require somebody else to confirm. Please don't confirm your own bugs.

  • In Progress: If you start working on a bug, set it to In Progress so people know someone is working on the bug.

  • Fix Committed: For upstream projects this means the fix is in CVS/SVN/bzr or committed somewhere. For package maintainers it means that the changes are pending and to be uploaded soon (it is what PENDINGUPLOAD is in Bugzilla)

  • Fix Released: For upstream projects this means that a release tarball was announced and is publicly available. For package maintainers this means that a fix was uploaded. Please don't be hesitant to add a changelog as a comment, so people know which changes affect their bug(s).

Managing Severity

Ubuntu uses the following guidelines for assigning severity:

  • Wishlist: a request to add a new feature to one of the programs in Ubuntu. Use this for bugs which aren't really bugs but ideas for new features which do not yet exist.

  • Minor: bugs that affect functionality, but to a lesser extent than most bugs

  • Normal: a functionality bug of the standard variety. Most bugs are of "Normal" severity.

  • Major: a bug that has a severe impact on a small portion of Ubuntu users (estimated) or has a moderate impact on a large portion of Ubuntu users (estimated)

  • Critical: a bug which has a severe impact on a large portion of Ubuntu users

Target Milestone

Don't change this field unless specifically instructed to by a developer. In particular, do NOT use this field to record the release of Ubuntu in which the bug was observed: that is not its purpose! It is used by the release team when there is a reason to address the bug in a specific milestone release.