Contribute/Bugsquad

< Contribute
Revision as of 03:03, 11 January 2010 by DarioAndres (Talk | contribs)

Jump to: navigation, search

Bugweeks ladybug.png

Contents

What is BugSquad?

The KDE BugSquad keeps track of incoming bugs in KDE software, and goes through old bugs. We verify that a bug exists, and is reproducible, and that the reporter has given enough information. When applicable, we write testcases. Our end goal is to help developers notice valid bugs quicker, and to save their time.

You do not need any programming knowledge to be in the Bugsquad, and it is a great way to give practical support to the KDE community. If you are just starting to learn programming, it is a great way to gain familiarity with the components.

Bug Days

We have regular days where we pick a software package and look through all the old Bugzilla bugs to see if they are still valid. Sort of a Bugzilla cleaning day.

The next Bug Day will be 10th October 2010 and it will the first KWin Bug Day: http://techbase.kde.org/Contribute/Bugsquad/BugDays/KWinDay1

The results of all past bug days can be found here.

Bug Weeks

Our team has recently launched a new iniciative named "Bug Weeks", as an evolution of the traditional BugDays. All the workflow is based on the KDE Community Forums.

You can find more information about it at its official announcement

The first bugweek was about triaging Plasma Desktop bug reports. You can find more information in the BugWeek Session 0 article. (A summary article is yet to come)

noframe
 
Note
We don't just do bugs on BugDays! Don't hesitate to join us at #kde-bugs on irc.freenode.net, we have plenty for you to do. ;) Check the topic to see what we are currently working on. And if you are new, please read the "how to triage bugs" page.

How to Help

Read the guide and join us for one of our bug days or bug weeks. We meet on IRC in the #kde-bugs channel on irc.freenode.org. You can easily get started by having your questions answered there, and having someone guide you as to general bug triaging philosophy. Someone in IRC will usually be able to help you. Although we do sleep sometimes!

A summary of the BugSquad guide is provided below to give you a quick idea of how you can help:

  • Confirming bugs. Bugs with the UNCONFIRMED status should get the NEW status once someone else is able to reproduce the bug reliably.
  • Finding bug duplicates. Many bugs entered into Bugzilla are duplicates of other bugs. Sometimes it's hard to recognize these as duplicates but multiple people checking can make the duplicates bubble to the top of the pile. The following remarks may help you identifying them:
    • Using the Similar Bugs link to look if there are duplicates.
    • In the case of crashes, use the link below the comment field to look for crash reports with the same backtrace. The backtrace must be in the body of the report in order to look for similar reports. This tool does not look in attachments with backtraces.
  • Close bugs which have insufficient information and which have been open for a long time (e.g. reporter does not respond to a need-more-info request). Usually a timeout of one month or more is considered to be an "information timeout".
  • Categorize bugs into the right components. Many bug reports can be further categorized into components. For example, Konqueror reports can be assigned to KHTML and kfm components.
  • Labeling bugs which contain testcases as such in the title. Ideally, testcases contain the minimal amount of code (HTML, scripts, C++ etc.) necessary to reproduce a bug.
  • Writing testcases. Very useful and saves developers' time.

Getting started

The sheer number of open bugs can be overwhelming at the start. Here are some hints on getting started more smoothly:

  • Look at a single product at a time. For large applications (like Konqueror), you may want to further limit your search to a particular component.
  • Don't try to find duplicates early on. Finding duplicates is hard until you have become familiar with the bugs in a component. Start out with verifying UNCONFIRMED bugs as described above. That's valuable work, and a great way to familiarize yourself with the bug database.
  • Avoid very old bugs with many comments, and also bugs with many votes. This may seem counter-intuitive, but in most cases these bugs are hard, have gotten a lot of attention, and are probably on a developer's TODO list already. If it is from an older version of KDE, and there are no recent comments, verify them, make a notation, and move on.
  • Don't be afraid to ask the reporter for more info. It's something you can even do without Bugzilla permissions. And reporters will generally prefer being asked one question too many, instead of their report never being dealt with. Just remember to be polite. Ask yourself how you would feel if you got the message you are thinking about sending to a user.
  • Look at the incoming Bugzilla bugs. Or find the oldest bugs for your favorite software application.
  • Look through the rest of our documentation for more information!

Articles

How to create useful crash reports - This article helps users to prepare their KDE packages such they can create detailed backtraces.

Basic guide about crash reports - This article is a basic/simplified version of the previous one.

How to triage System Settings bugs - Explains how System Settings works from a bug squasher's perspective.

How to triage bugs - This article gives step-by-step what you do during a Bugday, or how to start triaging on your own in our "ongoing triage" (usually for old Konqueror bugs; see #kde-bugs for the current link).

Quick introduction to Bugzilla - This article explains the basics about the bugtracking software that KDE uses: "Bugzilla". It includes the description of a bug reports fields and the workflow of most common tasks like searching into the databse.

A Bug's Life Cycle - This article describes the possible status of a bug report and when each should be used.

Preparing a testing environment - This article from the BugWeeks initiative describes how to properly configure and setup a KDE SC environment in order to test the bugs.

External links


KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal