--- /dev/null
+--- GD-1.33/Makefile.PL Fri Aug 4 16:59:22 2000
++++ GD-1.33-darwin/Makefile.PL Tue Jun 26 01:29:32 2001
+@@ -3,8 +3,8 @@
+ warn "NOTICE: This module requires libgd 1.8.3 or higher (shared library version 4.X).\n";
+
+ # =====> PATHS: CHECK AND ADJUST <=====
+-my @INC = qw(-I/usr/local/include -I/usr/local/include/gd);
+-my @LIBPATH = qw(-L/usr/lib/X11 -L/usr/X11R6/lib -L/usr/X11/lib -L/usr/local/lib );
++my @INC = qw(-I/sw/include -I/sw/include/gd -I/usr/local/include -I/usr/local/include/gd);
++my @LIBPATH = qw(-L/usr/lib/X11 -L/usr/X11R6/lib -L/usr/X11/lib -L/sw/lib -L/usr/local/lib);
+ my @LIBS = qw(-lgd -lpng -lz);
+
+ # FEATURE FLAGS
+@@ -23,7 +23,7 @@
+
+ push @LIBS,'-lttf' if $TTF;
+ push @LIBS,'-ljpeg' if $JPEG;
+-push @LIBS, '-lm' unless $^O eq 'MSWin32';
++push @LIBS, '-lm' unless ($^O =~ /^MSWin32|darwin$/);
+
+ # FreeBSD 3.3 with libgd built from ports croaks if -lXpm is specified
+ if ($^O ne 'freebsd' && $^O ne 'MSWin32') {
to keep secret files which would otherwise
compromise your installation - e.g. the
<filename>localconfig</filename>
-
- file contains the password to your database. If this information were
- generally available, and remote access to your database turned on,
- you risk corruption of your database by computer criminals or the
+ file contains the password to your database.
curious.</para>
</glossdef>
</glossentry>
<glossdef>
<para>A
- <quote>Bug</quote>
+ <quote>bug</quote>
in Bugzilla refers to an issue entered into the database which has an
associated number, assignments, comments, etc. Some also refer to a
<glossterm>Bug Number</glossterm>
<glossdef>
- <para>Each Bugzilla Bug is assigned a number that uniquely identifies
- that Bug. The Bug associated with a Bug Number can be pulled up via a
+ <para>Each Bugzilla bug is assigned a number that uniquely identifies
+ that bug. The bug associated with a bug number can be pulled up via a
query, or easily from the very front page by typing the number in the
"Find" box.</para>
</glossdef>
</glossentry>
- <glossentry>
- <glossterm>Bug Life Cycle</glossterm>
-
- <glossdef>
- <para>A Bug has stages through which it must pass before becoming a
- <quote>closed bug</quote>,
- including acceptance, resolution, and verification. The
- <quote>Bug Life Cycle</quote>
-
- is moderately flexible according to the needs of the organization
- using it, though.</para>
- </glossdef>
- </glossentry>
-
<glossentry>
<glossterm>Bugzilla</glossterm>
<glossdef>
- <para>Bugzilla is the industry-standard bug tracking system. It is
- quite popular among Open Source enthusiasts.</para>
+ <para>Bugzilla is the world-leading free software bug tracking system.
</glossdef>
</glossentry>
</glossdiv>
<acronym>CPAN</acronym>
stands for the
- <quote>Comprehensive Perl Archive Network</quote>
-
- . CPAN maintains a large number of extremely useful
+ <quote>Comprehensive Perl Archive Network</quote>.
+ CPAN maintains a large number of extremely useful
<glossterm>Perl</glossterm>
-
- modules. By themselves, Perl modules generally do nothing, but when
- used as part of a larger program, they provide much-needed algorithms
- and functionality.</para>
+ modules - encapsulated chunks of code for performing a
+ particular task.</para>
</glossdef>
</glossentry>
</glossdiv>
<quote>Groups</quote>
has a very special meaning to Bugzilla. Bugzilla's main security
- mechanism comes by lumping users into groups, and assigning those
- groups certain privileges to
+ mechanism comes by placing users in groups, and assigning those
+ groups certain privileges to view bugs in particular
<glossterm>Products</glossterm>
-
- and
- <glossterm>Components</glossterm>
-
in the
<glossterm>Bugzilla</glossterm>
-
database.</para>
</glossdef>
</glossentry>
</glossdiv>
- <glossdiv id="gloss-i">
- <title>I</title>
-
- <glossentry id="gloss-infiniteloop">
- <glossterm>Infinite Loop</glossterm>
-
- <glossdef>
- <para>A loop of information that never ends; see recursion.</para>
- </glossdef>
- </glossentry>
- </glossdiv>
-
<glossdiv id="gloss-m">
<title>M</title>
<glossterm id="gloss-product">Product</glossterm>
<glossdef>
- <para>A Product is a broad category of types of bugs. In general,
- there are several Components to a Product. A Product may also define a
+ <para>A Product is a broad category of types of bugs, normally
+ representing a single piece of software or entity. In general,
+ there are several Components to a Product. A Product may define a
group (used for security) for all bugs entered into
- components beneath it.</para>
+ its Components.</para>
</glossdef>
</glossentry>
bugs over their life cycle, thus the need for the
<quote>QA Contact</quote>
- field in a Bug.</para>
- </glossdef>
- </glossentry>
- </glossdiv>
-
- <glossdiv id="gloss-r">
- <title>R</title>
-
- <glossentry id="gloss-recursion" xreflabel="Recursion">
- <glossterm>Recursion</glossterm>
-
- <glossdef>
- <para>The property of a function looking back at itself for
- something.
- <quote>GNU</quote>, for instance, stands for
- <quote>GNU's Not UNIX</quote>,
- thus recursing upon itself for definition. For further clarity, see
- Infinite Loop.</para>
+ field in a bug.</para>
</glossdef>
</glossentry>
</glossdiv>
--- /dev/null
+<chapter id="introduction">
+ <title>Introduction</title>
+
+ <section id="whatis">
+ <title>What is Bugzilla?</title>
+
+ <para>
+ Bugzilla is a bug- or issue-tracking system. Bug-tracking
+ systems allow individual or groups of developers effectively to keep track
+ of outstanding problems with their product.
+ Bugzilla was originally
+ written by Terry Weissman in a programming language called TCL, to
+ replace a rudimentary bug-tracking database used internally by Netscape
+ Communications. Terry later ported Bugzilla to Perl from TCL, and in Perl
+ it remains to this day. Most commercial defect-tracking software vendors
+ at the time charged enormous licensing fees, and Bugzilla quickly became
+ a favorite of the open-source crowd (with its genesis in the open-source
+ browser project, Mozilla). It is now the de-facto standard
+ defect-tracking system against which all others are measured.
+ </para>
+
+ <para>Bugzilla boasts many advanced features. These include:
+ <itemizedlist>
+ <listitem>
+ <para>Powerful searching</para>
+ </listitem>
+
+ <listitem>
+ <para>User-configurable email notifications of bug changes</para>
+ </listitem>
+
+ <listitem>
+ <para>Full change history</para>
+ </listitem>
+
+ <listitem>
+ <para>Inter-bug dependency tracking and graphing</para>
+ </listitem>
+
+ <listitem>
+ <para>Excellent attachment management</para>
+ </listitem>
+
+ <listitem>
+ <para>Integrated, product-based, granular security schema</para>
+ </listitem>
+
+ <listitem>
+ <para>Fully security-audited, and runs under Perl's taint mode</para>
+ </listitem>
+
+ <listitem>
+ <para>A robust, stable RDBMS back-end</para>
+ </listitem>
+
+ <listitem>
+ <para>Web, XML, email and console interfaces</para>
+ </listitem>
+
+ <listitem>
+ <para>Completely customisable and/or localisable web user
+ interface</para>
+ </listitem>
+
+ <listitem>
+ <para>Extensive configurability</para>
+ </listitem>
+
+ <listitem>
+ <para>Smooth upgrade pathway between versions</para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </section>
+
+ <section id="why">
+ <title>Why Should We Use Bugzilla?</title>
+
+ <para>For many years, defect-tracking software has remained principally
+ the domain of large software development houses. Even then, most shops
+ never bothered with bug-tracking software, and instead simply relied on
+ shared lists and email to monitor the status of defects. This procedure
+ is error-prone and tends to cause those bugs judged least significant by
+ developers to be dropped or ignored.</para>
+
+ <para>These days, many companies are finding that integrated
+ defect-tracking systems reduce downtime, increase productivity, and raise
+ customer satisfaction with their systems. Along with full disclosure, an
+ open bug-tracker allows manufacturers to keep in touch with their clients
+ and resellers, to communicate about problems effectively throughout the
+ data management chain. Many corporations have also discovered that
+ defect-tracking helps reduce costs by providing IT support
+ accountability, telephone support knowledge bases, and a common,
+ well-understood system for accounting for unusual system or software
+ issues.</para>
+
+ <para>But why should
+ <emphasis>you</emphasis>
+
+ use Bugzilla?</para>
+
+ <para>Bugzilla is very adaptable to various situations. Known uses
+ currently include IT support queues, Systems Administration deployment
+ management, chip design and development problem tracking (both
+ pre-and-post fabrication), and software and hardware bug tracking for
+ luminaries such as Redhat, NASA, Linux-Mandrake, and VA Systems.
+ Combined with systems such as CVS, Bonsai, or Perforce SCM, Bugzilla
+ provides a powerful, easy-to-use solution to configuration management and
+ replication problems.</para>
+
+ <para>Bugzilla can dramatically increase the productivity and
+ accountability of individual employees by providing a documented workflow
+ and positive feedback for good performance. How many times do you wake up
+ in the morning, remembering that you were supposed to do
+ <emphasis>something</emphasis>
+ today, but you just can't quite remember? Put it in Bugzilla, and you
+ have a record of it from which you can extrapolate milestones, predict
+ product versions for integration, and follow the discussion trail
+ that led to critical decisions.</para>
+
+ <para>Ultimately, Bugzilla puts the power in your hands to improve your
+ value to your employer or business while providing a usable framework for
+ your natural attention to detail and knowledge store to flourish.</para>
+ </section>
+</chapter>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-always-quote-attributes:t
+sgml-auto-insert-required-elements:t
+sgml-balanced-tag-edit:t
+sgml-exposed-tags:nil
+sgml-general-insert-case:lower
+sgml-indent-data:t
+sgml-indent-step:2
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+sgml-minimize-attributes:nil
+sgml-namecase-general:t
+sgml-omittag:t
+sgml-parent-document:("Bugzilla-Guide.sgml" "book" "chapter")
+sgml-shorttag:t
+sgml-tag-region-if-active:t
+End:
+-->
setting up your VirtualHost section for Bugzilla with a rule like
this:</para>
- <programlisting>
-<![CDATA[
+ <programlisting><![CDATA[
<VirtualHost 12.34.56.78>
RewriteEngine On
RewriteRule ^/([0-9]+)$ http://foo.bar.com/show_bug.cgi?id=$1 [L,R]
</VirtualHost>
-]]>
- </programlisting>
+]]></programlisting>
</listitem>
<listitem>
<para>There are many, many more things you can do with mod_rewrite.
- As time goes on, I will include many more in the Guide. For now,
- though, please refer to the mod_rewrite documentation at
- <ulink url="http://www.apache.org">http://www.apache.org</ulink>
+ Please refer to the mod_rewrite documentation at
+ <ulink url="http://www.apache.org">http://www.apache.org</ulink>.
</para>
</listitem>
</orderedlist>
</section>
- <section id="setperl" xreflabel="The setperl.csh Utility">
- <title>The setperl.csh Utility</title>
+ <section id="cmdline">
+ <title>Command-line Bugzilla Queries</title>
- <para>You can use the "setperl.csh" utility to quickly and easily change
- the path to perl on all your Bugzilla files. This is a C-shell script; if
- you do not have "csh" or "tcsh" in the search path on your system, it
- will not work!</para>
+ <para>There are a suite of utilities for querying Bugzilla from the
+ command line. Although there's no particular reason why they
+ shouldn't work, they have not been tested with 2.16.</para>
<procedure>
<step>
- <para>Download the "setperl.csh" utility to your Bugzilla directory
- and make it executable.</para>
-
- <substeps>
- <step>
- <para>
- <computeroutput>
- <prompt>bash#</prompt>
-
- <command>cd /your/path/to/bugzilla</command>
- </computeroutput>
- </para>
- </step>
-
- <step>
- <para>
- <computeroutput>
- <prompt>bash#</prompt>
-
- <command>wget -O setperl.csh
- 'http://bugzilla.mozilla.org/showattachment.cgi?attach_id=10795'</command>
- </computeroutput>
- </para>
- </step>
-
- <step>
- <para>
- <computeroutput>
- <prompt>bash#</prompt>
-
- <command>chmod u+x setperl.csh</command>
- </computeroutput>
- </para>
- </step>
- </substeps>
- </step>
-
- <step>
- <para>Prepare (and fix) Bugzilla file permissions.</para>
+ <para>Download three files:</para>
<substeps>
<step>
<para>
<computeroutput>
- <prompt>bash#</prompt>
+ <prompt>bash$</prompt>
- <command>chmod u+w *</command>
+ <command>wget -O query.conf
+ 'http://bugzilla.mozilla.org/showattachment.cgi?attach_id=26157'</command>
</computeroutput>
</para>
</step>
<step>
<para>
<computeroutput>
- <prompt>bash#</prompt>
+ <prompt>bash$</prompt>
- <command>chmod u+x duplicates.cgi</command>
+ <command>wget -O buglist
+ 'http://bugzilla.mozilla.org/showattachment.cgi?attach_id=26944'</command>
</computeroutput>
</para>
</step>
<computeroutput>
<prompt>bash#</prompt>
- <command>chmod a-x bug_status.html</command>
+ <command>wget -O bugs
+ 'http://bugzilla.mozilla.org/showattachment.cgi?attach_id=26215'</command>
</computeroutput>
</para>
</step>
</step>
<step>
- <para>Run the script:</para>
-
- <para>
- <computeroutput>
- <prompt>bash#</prompt>
-
- <command>./setperl.csh /your/path/to/perl</command>
- </computeroutput>
-
- <example>
- <title>Using Setperl to set your perl path</title>
-
- <para>
- <computeroutput>
- <prompt>bash#</prompt>
+ <para>Make your utilities executable:
+ <computeroutput>
+ <prompt>bash$</prompt>
- <command>./setperl.csh /usr/bin/perl</command>
- </computeroutput>
- </para>
- </example>
+ <command>chmod u+x buglist bugs</command>
+ </computeroutput>
</para>
</step>
</procedure>
- </section>
-
- <section id="cmdline">
- <title>Command-line Bugzilla Queries</title>
-
- <para>Users can query Bugzilla from the command line using this suite of
- utilities.</para>
-
+
<para>The query.conf file contains the mapping from options to field
names and comparison types. Quoted option names are "grepped" for, so it
should be easy to edit this file. Comments (#) have no effect; you must
- make sure these lines do not contain any quoted "option"</para>
+ make sure these lines do not contain any quoted "option".</para>
<para>buglist is a shell script which submits a Bugzilla query and writes
the resulting HTML page to stdout. It supports both short options, (such
<command>w3m -T text/html -dump</command>
</para>
- <procedure>
- <step>
- <para>Download three files:</para>
-
- <substeps>
- <step>
- <para>
- <computeroutput>
- <prompt>bash$</prompt>
-
- <command>wget -O query.conf
- 'http://bugzilla.mozilla.org/showattachment.cgi?attach_id=26157'</command>
- </computeroutput>
- </para>
- </step>
-
- <step>
- <para>
- <computeroutput>
- <prompt>bash$</prompt>
-
- <command>wget -O buglist
- 'http://bugzilla.mozilla.org/showattachment.cgi?attach_id=26944'</command>
- </computeroutput>
- </para>
- </step>
-
- <step>
- <para>
- <computeroutput>
- <prompt>bash#</prompt>
-
- <command>wget -O bugs
- 'http://bugzilla.mozilla.org/showattachment.cgi?attach_id=26215'</command>
- </computeroutput>
- </para>
- </step>
- </substeps>
- </step>
-
- <step>
- <para>Make your utilities executable:
- <computeroutput>
- <prompt>bash$</prompt>
-
- <command>chmod u+x buglist bugs</command>
- </computeroutput>
- </para>
- </step>
- </procedure>
</section>
<section id="quicksearch">
<title>The Quicksearch Utility</title>
- <para>Quicksearch is a new, experimental feature of the 2.12 release. It
- consist of two Javascript files, "quicksearch.js" and "localconfig.js",
+ <para>Quicksearch is a single-text-box query tool which uses metacharacters
+ to indicate what is to be searched. For example, "foo@bar.com" would be
+ looked for in email address fields, because it contains an @ and so
+ is an email address.
+ </para>
+
+ <para>Quicksearch consists of two Javascript files,
+ "quicksearch.js" and "localconfig.js",
and two documentation files, "quicksearch.html" and
- "quicksearchhack.html"</para>
-
- <para>The index.html page has been updated to include the QuickSearch
- text box.</para>
+ "quicksearchhack.html". More information on how to use Quicksearch
+ can be found there. You'll find the Quicksearch box on Bugzilla's
+ front page.</para>
<para>To take full advantage of the query power, the Bugzilla maintainer
- must edit "localconfig.js" according to the value sets used in the local
+ must edit "localconfig.js" and change the parameters according to the local
installation.</para>
<para>Currently, keywords must be hard-coded in localconfig.js. If they
<section id="rhbugzilla" xreflabel="Red Hat Bugzilla">
<title>Red Hat Bugzilla</title>
- <para>Red Hat Bugzilla is probably the most popular Bugzilla variant on
- the planet. One of the major benefits of Red Hat Bugzilla is the ability
+ <para>Red Hat Bugzilla is probably the most popular Bugzilla, after
+ Bugzilla itself, on the planet. One of the major benefits of Red Hat
+ Bugzilla is the ability
to work with Oracle, MySQL, and PostGreSQL databases serving as the
- back-end, instead of just MySQL. Dave Lawrence has worked very hard to
- keep Red Hat Bugzilla up-to-date, and many people prefer the
- snappier-looking page layout of Red Hat Bugzilla to the default
- Mozilla-standard formatting.</para>
+ back-end, instead of just MySQL. Dave Lawrence of Red Hat is
+ active in the Bugzilla community, and we hope to see a reunification
+ of the fork before too long.</para>
<para>URL:
<ulink url="http://bugzilla.redhat.com/bugzilla/">
<section id="variant-scarab" xreflabel="Scarab">
<title>Scarab</title>
- <para>Scarab is a new bug-tracking system built using Java
+ <para>Scarab is a new open source bug-tracking system built using Java
Serlet technology. It is currently at version 1.0 beta 7.</para>
<para>URL:
--- /dev/null
+--- GD-1.33/Makefile.PL Fri Aug 4 16:59:22 2000
++++ GD-1.33-darwin/Makefile.PL Tue Jun 26 01:29:32 2001
+@@ -3,8 +3,8 @@
+ warn "NOTICE: This module requires libgd 1.8.3 or higher (shared library version 4.X).\n";
+
+ # =====> PATHS: CHECK AND ADJUST <=====
+-my @INC = qw(-I/usr/local/include -I/usr/local/include/gd);
+-my @LIBPATH = qw(-L/usr/lib/X11 -L/usr/X11R6/lib -L/usr/X11/lib -L/usr/local/lib );
++my @INC = qw(-I/sw/include -I/sw/include/gd -I/usr/local/include -I/usr/local/include/gd);
++my @LIBPATH = qw(-L/usr/lib/X11 -L/usr/X11R6/lib -L/usr/X11/lib -L/sw/lib -L/usr/local/lib);
+ my @LIBS = qw(-lgd -lpng -lz);
+
+ # FEATURE FLAGS
+@@ -23,7 +23,7 @@
+
+ push @LIBS,'-lttf' if $TTF;
+ push @LIBS,'-ljpeg' if $JPEG;
+-push @LIBS, '-lm' unless $^O eq 'MSWin32';
++push @LIBS, '-lm' unless ($^O =~ /^MSWin32|darwin$/);
+
+ # FreeBSD 3.3 with libgd built from ports croaks if -lXpm is specified
+ if ($^O ne 'freebsd' && $^O ne 'MSWin32') {
to keep secret files which would otherwise
compromise your installation - e.g. the
<filename>localconfig</filename>
-
- file contains the password to your database. If this information were
- generally available, and remote access to your database turned on,
- you risk corruption of your database by computer criminals or the
+ file contains the password to your database.
curious.</para>
</glossdef>
</glossentry>
<glossdef>
<para>A
- <quote>Bug</quote>
+ <quote>bug</quote>
in Bugzilla refers to an issue entered into the database which has an
associated number, assignments, comments, etc. Some also refer to a
<glossterm>Bug Number</glossterm>
<glossdef>
- <para>Each Bugzilla Bug is assigned a number that uniquely identifies
- that Bug. The Bug associated with a Bug Number can be pulled up via a
+ <para>Each Bugzilla bug is assigned a number that uniquely identifies
+ that bug. The bug associated with a bug number can be pulled up via a
query, or easily from the very front page by typing the number in the
"Find" box.</para>
</glossdef>
</glossentry>
- <glossentry>
- <glossterm>Bug Life Cycle</glossterm>
-
- <glossdef>
- <para>A Bug has stages through which it must pass before becoming a
- <quote>closed bug</quote>,
- including acceptance, resolution, and verification. The
- <quote>Bug Life Cycle</quote>
-
- is moderately flexible according to the needs of the organization
- using it, though.</para>
- </glossdef>
- </glossentry>
-
<glossentry>
<glossterm>Bugzilla</glossterm>
<glossdef>
- <para>Bugzilla is the industry-standard bug tracking system. It is
- quite popular among Open Source enthusiasts.</para>
+ <para>Bugzilla is the world-leading free software bug tracking system.
</glossdef>
</glossentry>
</glossdiv>
<acronym>CPAN</acronym>
stands for the
- <quote>Comprehensive Perl Archive Network</quote>
-
- . CPAN maintains a large number of extremely useful
+ <quote>Comprehensive Perl Archive Network</quote>.
+ CPAN maintains a large number of extremely useful
<glossterm>Perl</glossterm>
-
- modules. By themselves, Perl modules generally do nothing, but when
- used as part of a larger program, they provide much-needed algorithms
- and functionality.</para>
+ modules - encapsulated chunks of code for performing a
+ particular task.</para>
</glossdef>
</glossentry>
</glossdiv>
<quote>Groups</quote>
has a very special meaning to Bugzilla. Bugzilla's main security
- mechanism comes by lumping users into groups, and assigning those
- groups certain privileges to
+ mechanism comes by placing users in groups, and assigning those
+ groups certain privileges to view bugs in particular
<glossterm>Products</glossterm>
-
- and
- <glossterm>Components</glossterm>
-
in the
<glossterm>Bugzilla</glossterm>
-
database.</para>
</glossdef>
</glossentry>
</glossdiv>
- <glossdiv id="gloss-i">
- <title>I</title>
-
- <glossentry id="gloss-infiniteloop">
- <glossterm>Infinite Loop</glossterm>
-
- <glossdef>
- <para>A loop of information that never ends; see recursion.</para>
- </glossdef>
- </glossentry>
- </glossdiv>
-
<glossdiv id="gloss-m">
<title>M</title>
<glossterm id="gloss-product">Product</glossterm>
<glossdef>
- <para>A Product is a broad category of types of bugs. In general,
- there are several Components to a Product. A Product may also define a
+ <para>A Product is a broad category of types of bugs, normally
+ representing a single piece of software or entity. In general,
+ there are several Components to a Product. A Product may define a
group (used for security) for all bugs entered into
- components beneath it.</para>
+ its Components.</para>
</glossdef>
</glossentry>
bugs over their life cycle, thus the need for the
<quote>QA Contact</quote>
- field in a Bug.</para>
- </glossdef>
- </glossentry>
- </glossdiv>
-
- <glossdiv id="gloss-r">
- <title>R</title>
-
- <glossentry id="gloss-recursion" xreflabel="Recursion">
- <glossterm>Recursion</glossterm>
-
- <glossdef>
- <para>The property of a function looking back at itself for
- something.
- <quote>GNU</quote>, for instance, stands for
- <quote>GNU's Not UNIX</quote>,
- thus recursing upon itself for definition. For further clarity, see
- Infinite Loop.</para>
+ field in a bug.</para>
</glossdef>
</glossentry>
</glossdiv>
--- /dev/null
+<chapter id="introduction">
+ <title>Introduction</title>
+
+ <section id="whatis">
+ <title>What is Bugzilla?</title>
+
+ <para>
+ Bugzilla is a bug- or issue-tracking system. Bug-tracking
+ systems allow individual or groups of developers effectively to keep track
+ of outstanding problems with their product.
+ Bugzilla was originally
+ written by Terry Weissman in a programming language called TCL, to
+ replace a rudimentary bug-tracking database used internally by Netscape
+ Communications. Terry later ported Bugzilla to Perl from TCL, and in Perl
+ it remains to this day. Most commercial defect-tracking software vendors
+ at the time charged enormous licensing fees, and Bugzilla quickly became
+ a favorite of the open-source crowd (with its genesis in the open-source
+ browser project, Mozilla). It is now the de-facto standard
+ defect-tracking system against which all others are measured.
+ </para>
+
+ <para>Bugzilla boasts many advanced features. These include:
+ <itemizedlist>
+ <listitem>
+ <para>Powerful searching</para>
+ </listitem>
+
+ <listitem>
+ <para>User-configurable email notifications of bug changes</para>
+ </listitem>
+
+ <listitem>
+ <para>Full change history</para>
+ </listitem>
+
+ <listitem>
+ <para>Inter-bug dependency tracking and graphing</para>
+ </listitem>
+
+ <listitem>
+ <para>Excellent attachment management</para>
+ </listitem>
+
+ <listitem>
+ <para>Integrated, product-based, granular security schema</para>
+ </listitem>
+
+ <listitem>
+ <para>Fully security-audited, and runs under Perl's taint mode</para>
+ </listitem>
+
+ <listitem>
+ <para>A robust, stable RDBMS back-end</para>
+ </listitem>
+
+ <listitem>
+ <para>Web, XML, email and console interfaces</para>
+ </listitem>
+
+ <listitem>
+ <para>Completely customisable and/or localisable web user
+ interface</para>
+ </listitem>
+
+ <listitem>
+ <para>Extensive configurability</para>
+ </listitem>
+
+ <listitem>
+ <para>Smooth upgrade pathway between versions</para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </section>
+
+ <section id="why">
+ <title>Why Should We Use Bugzilla?</title>
+
+ <para>For many years, defect-tracking software has remained principally
+ the domain of large software development houses. Even then, most shops
+ never bothered with bug-tracking software, and instead simply relied on
+ shared lists and email to monitor the status of defects. This procedure
+ is error-prone and tends to cause those bugs judged least significant by
+ developers to be dropped or ignored.</para>
+
+ <para>These days, many companies are finding that integrated
+ defect-tracking systems reduce downtime, increase productivity, and raise
+ customer satisfaction with their systems. Along with full disclosure, an
+ open bug-tracker allows manufacturers to keep in touch with their clients
+ and resellers, to communicate about problems effectively throughout the
+ data management chain. Many corporations have also discovered that
+ defect-tracking helps reduce costs by providing IT support
+ accountability, telephone support knowledge bases, and a common,
+ well-understood system for accounting for unusual system or software
+ issues.</para>
+
+ <para>But why should
+ <emphasis>you</emphasis>
+
+ use Bugzilla?</para>
+
+ <para>Bugzilla is very adaptable to various situations. Known uses
+ currently include IT support queues, Systems Administration deployment
+ management, chip design and development problem tracking (both
+ pre-and-post fabrication), and software and hardware bug tracking for
+ luminaries such as Redhat, NASA, Linux-Mandrake, and VA Systems.
+ Combined with systems such as CVS, Bonsai, or Perforce SCM, Bugzilla
+ provides a powerful, easy-to-use solution to configuration management and
+ replication problems.</para>
+
+ <para>Bugzilla can dramatically increase the productivity and
+ accountability of individual employees by providing a documented workflow
+ and positive feedback for good performance. How many times do you wake up
+ in the morning, remembering that you were supposed to do
+ <emphasis>something</emphasis>
+ today, but you just can't quite remember? Put it in Bugzilla, and you
+ have a record of it from which you can extrapolate milestones, predict
+ product versions for integration, and follow the discussion trail
+ that led to critical decisions.</para>
+
+ <para>Ultimately, Bugzilla puts the power in your hands to improve your
+ value to your employer or business while providing a usable framework for
+ your natural attention to detail and knowledge store to flourish.</para>
+ </section>
+</chapter>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-always-quote-attributes:t
+sgml-auto-insert-required-elements:t
+sgml-balanced-tag-edit:t
+sgml-exposed-tags:nil
+sgml-general-insert-case:lower
+sgml-indent-data:t
+sgml-indent-step:2
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+sgml-minimize-attributes:nil
+sgml-namecase-general:t
+sgml-omittag:t
+sgml-parent-document:("Bugzilla-Guide.sgml" "book" "chapter")
+sgml-shorttag:t
+sgml-tag-region-if-active:t
+End:
+-->
setting up your VirtualHost section for Bugzilla with a rule like
this:</para>
- <programlisting>
-<![CDATA[
+ <programlisting><![CDATA[
<VirtualHost 12.34.56.78>
RewriteEngine On
RewriteRule ^/([0-9]+)$ http://foo.bar.com/show_bug.cgi?id=$1 [L,R]
</VirtualHost>
-]]>
- </programlisting>
+]]></programlisting>
</listitem>
<listitem>
<para>There are many, many more things you can do with mod_rewrite.
- As time goes on, I will include many more in the Guide. For now,
- though, please refer to the mod_rewrite documentation at
- <ulink url="http://www.apache.org">http://www.apache.org</ulink>
+ Please refer to the mod_rewrite documentation at
+ <ulink url="http://www.apache.org">http://www.apache.org</ulink>.
</para>
</listitem>
</orderedlist>
</section>
- <section id="setperl" xreflabel="The setperl.csh Utility">
- <title>The setperl.csh Utility</title>
+ <section id="cmdline">
+ <title>Command-line Bugzilla Queries</title>
- <para>You can use the "setperl.csh" utility to quickly and easily change
- the path to perl on all your Bugzilla files. This is a C-shell script; if
- you do not have "csh" or "tcsh" in the search path on your system, it
- will not work!</para>
+ <para>There are a suite of utilities for querying Bugzilla from the
+ command line. Although there's no particular reason why they
+ shouldn't work, they have not been tested with 2.16.</para>
<procedure>
<step>
- <para>Download the "setperl.csh" utility to your Bugzilla directory
- and make it executable.</para>
-
- <substeps>
- <step>
- <para>
- <computeroutput>
- <prompt>bash#</prompt>
-
- <command>cd /your/path/to/bugzilla</command>
- </computeroutput>
- </para>
- </step>
-
- <step>
- <para>
- <computeroutput>
- <prompt>bash#</prompt>
-
- <command>wget -O setperl.csh
- 'http://bugzilla.mozilla.org/showattachment.cgi?attach_id=10795'</command>
- </computeroutput>
- </para>
- </step>
-
- <step>
- <para>
- <computeroutput>
- <prompt>bash#</prompt>
-
- <command>chmod u+x setperl.csh</command>
- </computeroutput>
- </para>
- </step>
- </substeps>
- </step>
-
- <step>
- <para>Prepare (and fix) Bugzilla file permissions.</para>
+ <para>Download three files:</para>
<substeps>
<step>
<para>
<computeroutput>
- <prompt>bash#</prompt>
+ <prompt>bash$</prompt>
- <command>chmod u+w *</command>
+ <command>wget -O query.conf
+ 'http://bugzilla.mozilla.org/showattachment.cgi?attach_id=26157'</command>
</computeroutput>
</para>
</step>
<step>
<para>
<computeroutput>
- <prompt>bash#</prompt>
+ <prompt>bash$</prompt>
- <command>chmod u+x duplicates.cgi</command>
+ <command>wget -O buglist
+ 'http://bugzilla.mozilla.org/showattachment.cgi?attach_id=26944'</command>
</computeroutput>
</para>
</step>
<computeroutput>
<prompt>bash#</prompt>
- <command>chmod a-x bug_status.html</command>
+ <command>wget -O bugs
+ 'http://bugzilla.mozilla.org/showattachment.cgi?attach_id=26215'</command>
</computeroutput>
</para>
</step>
</step>
<step>
- <para>Run the script:</para>
-
- <para>
- <computeroutput>
- <prompt>bash#</prompt>
-
- <command>./setperl.csh /your/path/to/perl</command>
- </computeroutput>
-
- <example>
- <title>Using Setperl to set your perl path</title>
-
- <para>
- <computeroutput>
- <prompt>bash#</prompt>
+ <para>Make your utilities executable:
+ <computeroutput>
+ <prompt>bash$</prompt>
- <command>./setperl.csh /usr/bin/perl</command>
- </computeroutput>
- </para>
- </example>
+ <command>chmod u+x buglist bugs</command>
+ </computeroutput>
</para>
</step>
</procedure>
- </section>
-
- <section id="cmdline">
- <title>Command-line Bugzilla Queries</title>
-
- <para>Users can query Bugzilla from the command line using this suite of
- utilities.</para>
-
+
<para>The query.conf file contains the mapping from options to field
names and comparison types. Quoted option names are "grepped" for, so it
should be easy to edit this file. Comments (#) have no effect; you must
- make sure these lines do not contain any quoted "option"</para>
+ make sure these lines do not contain any quoted "option".</para>
<para>buglist is a shell script which submits a Bugzilla query and writes
the resulting HTML page to stdout. It supports both short options, (such
<command>w3m -T text/html -dump</command>
</para>
- <procedure>
- <step>
- <para>Download three files:</para>
-
- <substeps>
- <step>
- <para>
- <computeroutput>
- <prompt>bash$</prompt>
-
- <command>wget -O query.conf
- 'http://bugzilla.mozilla.org/showattachment.cgi?attach_id=26157'</command>
- </computeroutput>
- </para>
- </step>
-
- <step>
- <para>
- <computeroutput>
- <prompt>bash$</prompt>
-
- <command>wget -O buglist
- 'http://bugzilla.mozilla.org/showattachment.cgi?attach_id=26944'</command>
- </computeroutput>
- </para>
- </step>
-
- <step>
- <para>
- <computeroutput>
- <prompt>bash#</prompt>
-
- <command>wget -O bugs
- 'http://bugzilla.mozilla.org/showattachment.cgi?attach_id=26215'</command>
- </computeroutput>
- </para>
- </step>
- </substeps>
- </step>
-
- <step>
- <para>Make your utilities executable:
- <computeroutput>
- <prompt>bash$</prompt>
-
- <command>chmod u+x buglist bugs</command>
- </computeroutput>
- </para>
- </step>
- </procedure>
</section>
<section id="quicksearch">
<title>The Quicksearch Utility</title>
- <para>Quicksearch is a new, experimental feature of the 2.12 release. It
- consist of two Javascript files, "quicksearch.js" and "localconfig.js",
+ <para>Quicksearch is a single-text-box query tool which uses metacharacters
+ to indicate what is to be searched. For example, "foo@bar.com" would be
+ looked for in email address fields, because it contains an @ and so
+ is an email address.
+ </para>
+
+ <para>Quicksearch consists of two Javascript files,
+ "quicksearch.js" and "localconfig.js",
and two documentation files, "quicksearch.html" and
- "quicksearchhack.html"</para>
-
- <para>The index.html page has been updated to include the QuickSearch
- text box.</para>
+ "quicksearchhack.html". More information on how to use Quicksearch
+ can be found there. You'll find the Quicksearch box on Bugzilla's
+ front page.</para>
<para>To take full advantage of the query power, the Bugzilla maintainer
- must edit "localconfig.js" according to the value sets used in the local
+ must edit "localconfig.js" and change the parameters according to the local
installation.</para>
<para>Currently, keywords must be hard-coded in localconfig.js. If they
<section id="rhbugzilla" xreflabel="Red Hat Bugzilla">
<title>Red Hat Bugzilla</title>
- <para>Red Hat Bugzilla is probably the most popular Bugzilla variant on
- the planet. One of the major benefits of Red Hat Bugzilla is the ability
+ <para>Red Hat Bugzilla is probably the most popular Bugzilla, after
+ Bugzilla itself, on the planet. One of the major benefits of Red Hat
+ Bugzilla is the ability
to work with Oracle, MySQL, and PostGreSQL databases serving as the
- back-end, instead of just MySQL. Dave Lawrence has worked very hard to
- keep Red Hat Bugzilla up-to-date, and many people prefer the
- snappier-looking page layout of Red Hat Bugzilla to the default
- Mozilla-standard formatting.</para>
+ back-end, instead of just MySQL. Dave Lawrence of Red Hat is
+ active in the Bugzilla community, and we hope to see a reunification
+ of the fork before too long.</para>
<para>URL:
<ulink url="http://bugzilla.redhat.com/bugzilla/">
<section id="variant-scarab" xreflabel="Scarab">
<title>Scarab</title>
- <para>Scarab is a new bug-tracking system built using Java
+ <para>Scarab is a new open source bug-tracking system built using Java
Serlet technology. It is currently at version 1.0 beta 7.</para>
<para>URL: