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.
We celebrate bug meetings 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 meeting.
When these meetings are 24-hours long, we call them Bug Days. They are usually organized live through IRC — #kde-bugs on irc.freenode.net.
The following Bug Weeks are currently scheduled:
How to help
Read the ultimate guide to BugTriaging for KDE Projects (Recommended)
Read this 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.
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!
- Dario's Guide to Bug Triaging - Extensive guide on how to perform bug triagers tasks
- 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 database.
- A Bug's Life Cycle - This article describes the possible status of a bug report and when each should be used.
- 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).
- How to triage System Settings bugs - Explains how System Settings works from a bug squasher's perspective.
- 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.
- 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.
- Extra Mile - This article presents the Extra Mile initiative, whose goal is to help KDE applications and workspaces "walk the extra mile". The Extra Mile initiative uses Bugzilla to track extra mile bugs.