|This article relies on references to primary sources. (September 2011)|
Buggie, Mascot of Bugzilla.
|Original author(s)||Terry Weissman|
|Initial release||August 26, 1998|
|Stable release||4.4.1 (October 16, 2013[±])|
|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 Mozilla Foundation, Wikimedia Foundation, WebKit, NASA, Yahoo!, GNOME, KDE, Apache, Red Hat and Novell.
Bugzilla was originally written 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. Originally written in Tcl, Terry decided to port Bugzilla to Perl before its release as part of Netscape's early open source code drops, with the hopes that more people would be able to contribute to it as 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 released to the public via anonymous CVS. In April 2000, Weissman handed off control of the Bugzilla project to Tara Hernandez. Under Tara's 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, Tara handed off control to Dave Miller, who was still in charge as of 2013[update].
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 and the MediaWiki project use 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 facetious 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 haven't 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.
- Bugzilla Installation List
- "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 for WikiMedia". Bugzilla.wikimedia.org. Retrieved 2012-01-28.
- "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.
|MediaWiki has documentation related to: Bugzilla|