|This article relies too much on references to primary sources. (September 2011)|
Buggie, Mascot of Bugzilla.
|Original author(s)||Terry Weissman|
|Initial release||August 26, 1998|
|Stable release||) [±]|
|Preview release||5.0rc3 (April 15, 2015) [±]|
|Available in||Multiple languages|
|Type||Bug tracking system|
|License||Mozilla Public License|
Released as open-source software by Netscape Communications in 1998, it has been adopted by a variety of organizations for use as a bug tracking system for both free and open-source software and proprietary projects and products. Bugzilla is used, among others, by the Mozilla Foundation, WebKit, Linux kernel, FreeBSD, GNOME, KDE, Apache, Red Hat, MediaWiki, Eclipse and LibreOffice. It is also self-hosting.
Bugzilla was originally devised by Terry Weissman in 1998 for the nascent Mozilla.org project, as an open source application to replace the in-house system then in use at Netscape Communications for tracking defects in the Netscape Communicator suite. Bugzilla was originally written in Tcl, but Weissman decided to port it to Perl before its release as part of Netscape's early open source code drops, in the hope that more people would be able to contribute to it, given that Perl seemed to be a more popular language at the time.
Bugzilla 2.0 was the result of that port to Perl, and the first version was released to the public via anonymous CVS. In April 2000, Weissman handed over control of the Bugzilla project to Tara Hernandez. Under her leadership, some of the regular contributors were coerced into taking more responsibility, and Bugzilla development became more community-driven. In July 2001, facing distraction from her other responsibilities in Netscape, Hernandez handed control to Dave Miller, who was still in charge as of 2013[update].
Bugzilla 3.0 was released on May 10, 2007 and brought refreshed UI, XML-RPC interface, custom fields and resolutions, mod_perl support, shared saved searches, and improved UTF-8 support, along with other changes.
Bugzilla 4.0 was released on February 15, 2011.
Bugzilla's release timeline:
Bugzilla's system requirements include:
- A compatible database management system
- A suitable release of Perl 5
- An assortment of Perl modules
- A compatible web server
- A suitable mail transfer agent, or any SMTP server
Currently supported database systems are MySQL, PostgreSQL, Oracle, and SQLite. Bugzilla is usually installed on Linux using the Apache HTTP Server, but any web server that supports CGI such as Lighttpd, Hiawatha, Cherokee can be used. Bugzilla's installation process is command line driven and runs through a series of stages where system requirements and software capabilities are checked.
While the potential exists in the code to turn Bugzilla into a technical support ticket system, task management tool, or project management tool, Bugzilla's developers have chosen to focus on the task of designing a system to track software defects. Mandated design requirements include:
- The ability to run on freely available, open-source tools. While Bugzilla development includes work to support commercial databases, tools, and operating systems.
- The maintenance of speed and efficiency at all costs. One of Bugzilla's major attractions to developers is its lightweight implementation and speed, so calls into the database are minimized whenever possible, data fetching is kept as light as possible, and generation of heavy HTML is avoided.
- Tickets. For instance, Mozilla.org uses it to track feature requests as well. In this case items (called bugs) can be submitted by anybody, and will be assigned to a particular developer. Various status updates for each bug are allowed, together with user notes and bug examples.
In practice, most Bugzilla projects allowing the public to file bugs—such as the Bugzilla bug database for Bugzilla itself—assign all bugs to a gatekeeper, whose job it is to assign responsibility and priority level.
By design, Bugzilla is programmed to return the string "zarro boogs found" instead of "0 bugs found" when a search for bugs returns no results. "Zarro Boogs" is a meta-statement about the nature of software debugging. Bug tracking systems like Bugzilla readily describe how many known bugs are outstanding. The response "zarro boogs", is intended as a buggy statement itself (a misspelling of "zero bugs"), implying that even when no bugs have been identified, software is still likely to contain bugs that have not yet been identified.
The following comment is provided in the Bugzilla source code to developers who may be confused by this behaviour:
- Zarro Boogs Found
- This is just a goofy way of saying that there were no bugs found matching your query. When asked to explain this message, Terry Weissman (an early Bugzilla developer) had the following to say:
- I've been asked to explain this ... way back when, when Netscape released version 4.0 of its browser, we had a release party. Naturally, there had been a big push to try and fix every known bug before the release. Naturally, that hadn't actually happened. (This is not unique to Netscape or to 4.0; the same thing has happened with every software project I've ever seen.) Anyway, at the release party, T-shirts were handed out that said something like "Netscape 4.0: Zarro Boogs". Just like the software, the T-shirt had no known bugs. Uh-huh. So, when you query for a list of bugs, and it gets no results, you can think of this as a friendly reminder. Of *course* there are bugs matching your query, they just aren't in the bugsystem yet...
- — Terry Weissman
- From The Bugzilla Guide – 2.16.10 Release: Glossary
- "New version of "Bugzilla" (the mozilla.org bugsystem) – with source!". netscape.public.mozilla.announce. Retrieved 2011-01-28.
- "[ 2015 Dec 22 ] Release of Bugzilla 5.0.2, 4.4.11, and 4.2.16". 2015-12-22. Retrieved 2015-12-28.
- "[ 2015 Apr 15 ] Release of Bugzilla 5.0rc3, 4.4.9, 4.2.14, and 4.0.18". 2015-04-15. Retrieved 2015-04-16.
- "Announcement of Migration from GNATS to Bugzilla on the FreeBSD mailing list".
Bugzilla supports finer granularity for categories and keywords and over time we will adopt more of these, making it easier to filter bugs into specific target areas. It is now easy for multiple people to track a single bug, without having to have them assigned to custom mailing lists, add attachments to bugs, and so on. Many features that people expect from a modern bug tracker are simply not present in GNATS.
- "Installation List". bugzilla.org.
- "Reporting Bugs". Bugzilla. Bugzilla. 31 December 2014. Retrieved 9 January 2014.
- "Brief History". Development Roadmap. Mozilla.org. Retrieved 2006-11-22.
- "Developer Profiles". Bugzilla Website. Mozilla.org. Retrieved 2013-07-02.
- "Release Dates". Release Information. Mozilla.org. Retrieved 2011-03-31.
- "Design Principles". Development Roadmap. Mozilla.org. Retrieved 2006-11-22.
- "Bugzilla Guide glossary entry for Zarro Boogs Found". Glossary. Bugzilla.org. Retrieved 2008-04-21.
- Coined by Michael Toy as explained by Tara Hernandez in the PBS documentary Code Rush. Event occurs at 18:21.
|Wikimedia Commons has media related to Bugzilla.|