Reporting Bugs

From Funtoo
Jump to navigation Jump to search

Determining a bug

Bugs

Sometimes things don't go as planned when emerging things. These are some strategies to determine bugs, & severity:

  • purge the package & emerge it back
  • disable use flags & emerge
  • MAKEOPTS="-j1" emerge -j1 package

If all of these fail, you're going to need to report a bug on the issue. If disabling use flags works, slowly add use flags back to determine the breaking use flag and bug report the use flag breaking building. If MAKEOPTS="-j1" emerge -j1 package works bug report these problems also.

Improvements

Improvements including site infrastructure improvements, feature requests, ebuild modifications, and ebuild requests also go to the bug tracker. If you know procedures to fix something, document them and post them. If you have patches, or new ebuilds to submit along with the bug report, great! Patches greatly accelerate the speed a bug can be resolved because the developers work is boiled down to simply review the patch.

Priorities

Most bugs will be of normal priority however this may not be appropriate for the bug being reported. Blocker bugs should almost always exclusively be for toolchain breakage. example: gcc can't compile. Critical bugs block installing stage3-bootloader-kernel core funtoo systems, or severely immediately compromise system security. Trivial bugs are for minor flaws in programs.

Reporting a bug

The Funtoo community's goal is to provide a seamless and problem-free computing experience, and we take all bugs seriously. Before reporting, search the bug tracker to ensure that your problem is not already reported. Please use the following resources for reporting bugs, technical support, and troubleshooting assistance:

Collecting Info

Before submitting bugs collect information about your system, & problem.

root # emerge --info > /tmp/emergeinfo.txt

Towards the end of failed emerges are messages about build logs. This is an example of a failed lvm2 emerge, your exact messages will vary. Use your emerge output rather than the examples.

  • The complete build log is located at '/var/tmp/portage/sys-fs/lvm2-2.02.111/temp/build.log'
IRC

The #funtoo IRC channel on freenode available for informal, real-time technical support and troubleshooting. Please use Funtoo channels rather than Gentoo channels for Funtoo Linux support.

To share emerge info, and build log information on irc use app-text/wgetpaste. Share links wgetpaste returns to you rather than posting directly to the channel.

Support Forums

The following Web-based discussion resources are specifically created for community-based support and troubleshooting, and are monitored by the Funtoo Linux core team. Under the new thread text area, attach the emerge info, and build logs directly to your posts rather than using wgetpaste links. Wgetpaste links expire where the forums attached files are timeless.

Bug tracker

We are using JIRA for tracking Funtoo Linux issues. See bugs.funtoo.org to access the bug tracker.

For information on how to properly use the bug tracker, see below.

How To Report Bugs

  1. First, Create a Funtoo account.
  2. Go to Issues -> Create Issue
  3. Set Issue Type to "Bug".
  4. For Summary, enter a clear description of the defect.
  5. For Description, enter:
    1. a clear, detailed description of the problem
    2. clear steps to reproduce the problem
    3. output of the failure
    4. a description of what you expected to happen instead of the failure
    5. attach emerge info, and build logs under bug description. You can achieve this by clicking Edit button, then Attachment. Browse for any logs and additional information files you may think is helpful to resolve your problem. Notice, that for very big logs it make sense to compress them by using xz -9 and attaching tarball instead.

When your issue is created, it will have a short name such as FL-17 that can be used to reference it.

Each issue is intended to track a specific defect in Funtoo Linux. Please respect the focus of each individual issue. Use the mailing lists and forums for general discussion, and dealing with packages needing many patches or adjustments to get running properly.

Bug Status

When bugs are first reported, they are marked as Awaiting Review. This means that they are waiting to be reviewed by staff. Once reviewed and possibly revised somewhat, they will be moved into Queued status. This means that the bug has been accepted and is in queue to being fixed. When a developer starts working on the bug, it will move to In Progress status. This means that the bug is being actively worked on. When the bug is resolved, it will move to Test/Integration status, which means that it will now be tested and fully integrated into Funtoo Linux. When it has been fully integrated into Funtoo Linux, it will be marked as Closed, and the resolution will be set appropriately.

There are a few other statuses that are used. Upstream Review is used when a bug is submitted to an upstream project and is awaiting review or feedback. Workaround is used when a short-term fix is used to resolve a problem, but a longer-term fix is also required. There is also a Community Discussion status. This status is used when we are actively requesting community feedback. In general, we want to use JIRA as a way to have a very focused discussion about a specific bug, so we don't want the bug comments to be used like forums posts as a type of general discussion. Use the forums for this.

Fixing Bugs

When developers fix bugs, they can reference the issue(s) being fixed in the git commit message, by saying something like "This fixes FL-22". The funtoo-overlay and other repositories are integrated with JIRA, so you will be able to see links to these commits by going to the Commits tab for the issue.

Upstream Bug Reporting

Please report all bugs to us first, so we are aware of the issue. We will handle reporting bugs to upstream projects, including to Gentoo Linux.