From 96a0037afe2fd59183fbc5028311f04f02b7d540 Mon Sep 17 00:00:00 2001 From: "gerv%gerv.net" <> Date: Fri, 16 Jan 2004 07:54:28 +0000 Subject: Another pre-2.17.7 rev. --- docs/html/Bugzilla-Guide.html | 784 ++++++++++++++++++++---------------------- 1 file changed, 374 insertions(+), 410 deletions(-) (limited to 'docs/html/Bugzilla-Guide.html') diff --git a/docs/html/Bugzilla-Guide.html b/docs/html/Bugzilla-Guide.html index b95ae37bd..69da237dc 100644 --- a/docs/html/Bugzilla-Guide.html +++ b/docs/html/Bugzilla-Guide.html @@ -155,46 +155,51 @@ HREF="#using" >
3.1. Introduction
3.2. Create a Bugzilla Account
3.2. 3.3. Anatomy of a Bug
3.3. 3.4. Searching for Bugs
3.4. 3.5. Bug Lists
3.5. 3.6. Filing Bugs
3.6. 3.7. Patch Viewer
3.7. 3.8. Hints and Tips
3.8. 3.9. User Preferences
3.9. 3.10. Reports

The newest version of this guide can always be found at The latest version of this guide can always be found at http://www.bugzilla.org; however, you should read the version - which came with the Bugzilla release you are using. -

The latest version of this document can always be checked out via CVS. - Please follow the , or checked out via CVS. + (Please follow the Mozilla CVS - instructions and check out the Mozilla + CVS instructions and check out the + mozilla/webtools/bugzilla/docs/ - subtree. + subtree.) However, you should read the version + which came with the Bugzilla release you are using.

The Bugzilla Guide is currently only available in English. @@ -648,7 +651,7 @@ NAME="credits" >

Last but not least, all the members of the netscape.public.mozilla.webtools @@ -669,7 +672,7 @@ NAME="conventions" >

WarningsWarningNotesNoteFile and directory namesFile or directory nameCommands to be typedCommand to be typedApplications namesApplication name Prompt - - of users command under bash shell Normal user's prompt under bash shell Prompt - - of root users command under bash shell Root user's prompt under bash shell Prompt - - of user command under tcsh shell Normal user's prompt under tcsh shell2.2. Why use a bug-tracking system?

For many years, defect-tracking software was principally - the domain of large software development houses. Most smaller shops - simply relied on - shared lists and email to monitor the status of defects. This procedure - was error-prone and tended to cause those bugs judged least significant by - developers to be dropped or ignored.

Those who do not use a bug-tracking system tend to rely on + shared lists, email, spreadsheets and/or Post-It notes to monitor the + status of defects. This procedure + is usually error-prone and tends to cause those bugs judged least + significant by developers to be dropped or ignored.

Integrated - defect-tracking systems reduce downtime, increase productivity, and raise - customer satisfaction with their systems. Along with full disclosure, an - open bug-tracker allows you to keep in touch with your 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 method for accounting for unusual system or software - issues.

Integrated defect-tracking systems make sure that nothing gets + swept under the carpet; they provide a method of creating, storing, + arranging and processing defect reports and enhancement requests.

2.3. Why use Bugzilla?

Bugzilla boasts many advanced features. These include: +>Bugzilla is the leading open-source/free software bug tracking + system. It boasts many advanced features, including:

  • Web, XML, email and console interfaces

    Completely customisable and/or localisable web user + interface

  • Completely customisable and/or localisable web user - interface

    Additional XML, email and console interfaces

  • Perforce SCM, Bugzilla - provides a powerful, easy-to-use solution to configuration management and - replication problems.

Chapter 3. Using Bugzilla

3.1. Introduction

This section contains information for end-users of Bugzilla. - There is a Bugzilla test installation, called - Landfill, - which you are welcome to play with (if it's up.) - However, it does not necessarily - have all Bugzilla features enabled, and runs an up-to-the-minute version, - so some things may not quite work as this document describes.


3.1. Create a Bugzilla Account

3.2. Create a Bugzilla Account

If you want to use Bugzilla, first you need to create an account. Consult with the administrator responsible for your installation of @@ -1245,7 +1234,7 @@ CLASS="section" >3.2. Anatomy of a Bug3.3. Anatomy of a Bug

The core of Bugzilla is the screen which displays a particular bug. It's a good place to explain some Bugzilla concepts. @@ -1512,7 +1501,7 @@ CLASS="section" >3.3. Searching for Bugs3.4. Searching for Bugs

The Bugzilla Search page is is the interface where you can find any bug report, comment, or patch currently in the Bugzilla system. You @@ -1542,7 +1531,7 @@ CLASS="section" >3.4. Bug Lists3.5. Bug Lists

If you run a search, a list of matching bugs will be returned.

CSV: + + get the buglist as comma-separated values, for import into e.g. + a spreadsheet. Change Columns: @@ -1593,13 +1591,23 @@ BORDER="0" > Edit this query:Edit Search: If you didn't get exactly the results you were looking for, you can return to the Query page through this link and make small revisions to the query you just made so you get more accurate results. Remember Search As: + + You can give a search a name and remember it; a link will appear + in your page footer giving you quick access to run it again later. +

3.5. Filing Bugs3.6. Filing Bugs

Years of bug writing experience has been distilled for your reading pleasure into the @@ -1666,6 +1674,22 @@ TARGET="_top" >Select "Commit" and send in your bug report.

Try to make sure that everything said in the summary is also + said in the first comment. Summaries are often updated and this will + ensure your original information is easily accessible. +

You do not need to put "any" or similar strings in the URL field. + If there is no specific URL associated with the bug, leave this + field blank. +

If you feel a bug you filed was incorrectly marked as a + DUPLICATE of another, please question it in your bug, not + the bug it was duped to. Feel free to CC the person who duped it + if they are not already CCed. +

3.6. Patch Viewer3.7. Patch Viewer

Viewing and reviewing patches in Bugzilla is often difficult due to lack of context, improper format and the inherent readability issues that @@ -1732,7 +1756,7 @@ CLASS="section" >3.6.1. Viewing Patches in Patch Viewer3.7.1. Viewing Patches in Patch Viewer

The main way to view a patch in patch viewer is to click on the "Diff" link next to a patch in the Attachments list on a bug. You may @@ -1746,7 +1770,7 @@ CLASS="section" >3.6.2. Seeing the Difference Between Two Patches3.7.2. Seeing the Difference Between Two Patches

To see the difference between two patches, you must first view the newer patch in Patch Viewer. Then select the older patch from the @@ -1761,7 +1785,7 @@ CLASS="section" >3.6.3. Getting More Context in a Patch3.7.3. Getting More Context in a Patch

To get more context in a patch, you put a number in the textbox at the top of Patch Viewer ("Patch / File / [textbox]") and hit enter. @@ -1777,7 +1801,7 @@ CLASS="section" >3.6.4. Collapsing and Expanding Sections of a Patch3.7.4. Collapsing and Expanding Sections of a Patch

To view only a certain set of files in a patch (for example, if a patch is absolutely huge and you want to only review part of it at a @@ -1793,7 +1817,7 @@ CLASS="section" >3.6.5. Linking to a Section of a Patch3.7.5. Linking to a Section of a Patch

To link to a section of a patch (for example, if you want to be able to give someone a URL to show them which part you are talking @@ -1808,7 +1832,7 @@ CLASS="section" >3.6.6. Going to Bonsai and LXR3.7.6. Going to Bonsai and LXR

To go to Bonsai to get blame for the lines you are interested in, you can click the "Lines XX-YY" link on the section header you are @@ -1826,7 +1850,7 @@ CLASS="section" >3.6.7. Creating a Unified Diff3.7.7. Creating a Unified Diff

If the patch is not in a format that you like, you can turn it into a unified diff format by clicking the "Raw Unified" link at the top @@ -1840,7 +1864,7 @@ CLASS="section" >3.7. Hints and Tips3.8. Hints and Tips

This section distills some Bugzilla tips and best practices that have been developed.


3.7.1. Autolinkification

3.8.1. Autolinkification

Bugzilla comments are plain text - so typing <U> will produce less-than, U, greater-than rather than underlined text. @@ -1920,7 +1944,7 @@ CLASS="section" >3.7.2. Quicksearch3.8.2. Quicksearch

Quicksearch is a single-text-box query tool which uses metacharacters to indicate what is to be searched. For example, typing @@ -1953,7 +1977,7 @@ CLASS="section" >3.7.3. Comments3.8.3. Comments

If you are changing the fields on a bug, only comment if either you have something pertinent to say, or Bugzilla requires it. @@ -1977,7 +2001,7 @@ CLASS="section" >3.7.4. Attachments3.8.4. Attachments

Use attachments, rather than comments, for large chunks of ASCII data, such as trace, debugging output files, or log files. That way, it doesn't @@ -1996,31 +2020,6 @@ NAME="attachments" out of the bug.


3.7.5. Filing Bugs

Try to make sure that everything said in the summary is also - said in the first comment. Summaries are often updated and this will - ensure your original information is easily accessible. -

You do not need to put "any" or similar strings in the URL field. - If there is no specific URL associated with the bug, leave this - field blank. -

If you feel a bug you filed was incorrectly marked as a - DUPLICATE of another, please question it in your bug, not - the bug it was duped to. Feel free to CC the person who duped it - if they are not already CCed. -

3.8. User Preferences3.9. User Preferences

Once you have logged in, you can customise various aspects of Bugzilla via the "Edit prefs" link in the page footer. @@ -2041,7 +2040,7 @@ CLASS="section" >3.8.1. Account Settings3.9.1. Account Settings

On this tab, you can change your basic account information, including your password, email address and real name. For security @@ -2066,7 +2065,7 @@ CLASS="section" >3.8.2. Email Settings3.9.2. Email Settings

On this tab you can reduce or increase the amount of email sent you from Bugzilla, opting in our out depending on your relationship to @@ -2121,7 +2120,7 @@ CLASS="section" >3.8.3. Permissions3.9.3. Permissions

This is a purely informative page which outlines your current permissions on this installation of Bugzilla - what product groups you @@ -2136,7 +2135,7 @@ CLASS="section" >3.9. Reports3.10. Reports

To be writtenSection 4.4, so be sure to check out that section before +>, so unless you are on Linux, + be sure to check out that section before you start your installation.

While installing Bugzilla, it is a good idea to ensure that there - is some kind of firewall between you and the rest of the Internet + is some kind of configurable firewall between you and the rest of the + Internet as your machine may be insecure for periods during the install. Many installation steps require an active Internet connection to complete, but you must take care to ensure that at no point is your machine @@ -2240,19 +2241,18 @@ VALIGN="TOP" >

This guide assumes that you already have your operating system installed, network configured, and have administrative access to the - shell on the machine you are installing Bugzilla onto. It is possible to - install and run Bugzilla without administrative access, but you have to + machine onto which you are installing Bugzilla. It is possible to + install and run Bugzilla itself without administrative access, but you + have to either make sure all the required software is installed or get somebody with administrative access to install it for you.

You are strongly recommended to make a backup of your system - before installing Bugzilla and at regular intervals thereafter. + before installing Bugzilla (and at regular intervals thereafter :-).

The listing below is a basic step-by-step list. More information - can be found in the sections below. Minimum versions will be - included in parenthesis where appropriate. +>Here's a basic step-by-step list:

Install Perl - (5.6) + (5.6.0 or above)

  • Install MySQL - (3.23.41) + (3.23.41 or above)

  • 4.1.1. Perl

    Any machine that doesn't have Perl on it is a sad machine indeed. - Perl can be got in source form from http://www.perl.com. There are also binary versions available for many platforms, most of which are linked to from perl.com. - Although Bugzilla runs with perl 5.6, + Although Bugzilla runs with perl 5.6.0, it's a good idea to be up to the very latest version if you can when running Bugzilla. As of this writing, that is Perl - version 5.8.

  • 4.1.2. MySQL

    Visit the MySQL homepage at +>If your OS doesn't come with it or provide official packages, + visit the MySQL homepage at If you are running Bugzilla and MySQL on the same machine, you may also wish to utilize the skip-networking--skip-networking option as mentioned in 4.1.2.1. Configuring MySQL4.1.2.1. Adding a user to MySQL

    This first thing you'll want to do is make sure you've given the Section 4.5.2. For clarity, these instructions will +>. Then, you need to add a user for + Bugzilla to use. For clarity, these instructions will assume that your MySQL user for Bugzilla will be "bugs_user""bugs" for both the user and - database name. + database name. Don't use it for the password, though...

    Next, we use an SQL We use an SQL GRANT command to create a @@ -2522,8 +2525,7 @@ CLASS="command" CLASS="QUOTE" >"bugs_user" - user, and grant sufficient permissions for checksetup.pl, which we'll - use later, to work its magic. This also restricts the + user. This also restricts the "bugs_user"CREATE TEMPORARY TABLES permissions. +> permissions, + so add them to the list in the + GRANT command.

    If you symlink the bugzilla directory into your Apache's HTML +>If you symlink the bugzilla directory into your Apache's + html hierarchy, you may receive Forbidden errors unless you add the - "FollowSymLinks"FollowSymLinks - directive to the <Directory> entry for the HTML root - in httpd.conf.

    <Directory> entry for + the HTML root directory in httpd.conf.

    Once all the files are in a web accessible directory, make that - directory writable by your webserver's user. This is a temporary step - until you run the post-install - checksetup.pl - script, which locks down your installation.

    Once all the files are in a web accessible directory, make that + directory writable by your webserver's user. This is a temporary step + until you run the post-install + checksetup.pl + script, which locks down your installation.


    4.1.5. checksetup.pl

    Next, run the magic checksetup.pl script. + This is designed to check whether you have all of the right + Perl modules in the correct + versions, and that Bugzilla is generally set up correctly. +

    Eventually, + it will make sure Bugzilla files and directories have reasonable + permissions, set up the + data + directory, and create all the MySQL tables. But the first time you + run it, it's highly likely to tell you that you are missing a few + Perl modules. Make a note of which ones they are, and then proceed to + the next section to install them. +

    
bash# ./checksetup.pl
    +      

    The first time you run it with all the correct modules installed, + it will create a file called + localconfig.

    This file contains a variety of settings you may need to tweak + including how Bugzilla should connect to the MySQL database.

    The connection settings include: +

    1. server's host: just use + "localhost" + if the MySQL server is local

    2. database name: + "bugs_db" + if you're following these directions

    3. MySQL username: + "bugs_user" + if you're following these directions

    4. Password for the + "bugs_user" + MySQL account; ("bugs_password" above)

    +

    Edit the file to change these. Once you are happy with the + settings, su to the user + your web server runs as, and re-run + checksetup.pl. (Note: on some security-conscious + systems, you may need to change the login shell for the webserver + account before you can do this.) + On this second run, it will create the database and an administrator + account for which you will be prompted to provide information.

    The checksetup.pl script is designed so that you can run it at + any time without causing harm. You should run it after any upgrade to + Bugzilla.

    4.1.5. Perl Modules4.1.6. Perl Modules

    Don't be intimidated by this long list of modules. See + Section 4.1.6.1 for a way of + installing all the ones you need with a single command. +

    Perl modules can be found using PPM on Win32. The root servers - have a real tendency to bog down, so please use mirrors. +> on Win32.

    Good instuctions can be found for using each of these services on @@ -3010,15 +3182,6 @@ HREF="#install-modules-bundle-bugzilla" >

  • AppConfig - (1.52) -

  • CGI @@ -3028,15 +3191,6 @@ HREF="#install-modules-cgi" >

  • Data::Dumper - (any) -

  • Date::Format @@ -3178,7 +3332,7 @@ CLASS="section" >4.1.5.1. Bundle::Bugzilla4.1.6.1. Bundle::Bugzilla

    If you are running at least perl 5.6.1, you can save yourself a lot of time by using Bundle::Bugzilla. This bundle contains every module @@ -3255,22 +3409,9 @@ CLASS="section" >


    4.1.5.2. AppConfig (1.52)

    Dependency for Template Toolkit. We probably don't need to - specifically check for it anymore. -


  • 4.1.5.3. CGI (2.88)

    4.1.6.2. CGI (2.88)

    The CGI module parses form elements and cookies and does many other usefule things. It come as a part of recent perl distributions, but @@ -3301,43 +3442,9 @@ CLASS="section" >


    4.1.5.4. Data::Dumper (any)

    The Data::Dumper module provides data structure persistence for - Perl (similar to Java's serialization). It comes with later - sub-releases of Perl 5.004, but a re-installation just to be sure it's - available won't hurt anything. -


    -        CPAN Download Page: http://search.cpan.org/dist/Data-Dumper/
    -        PPM Download Link: http://ppm.activestate.com/PPMPackages/zips/6xx-builds-only/Data-Dumper.zip
    -        Documentation: http://www.perldoc.com/perl5.8.0/lib/Data/Dumper.html
    -      


    4.1.5.5. TimeDate modules (2.21)

    4.1.6.3. TimeDate modules (2.21)

    Many of the more common date/time/calendar related Perl modules have been grouped into a bundle similar to the MySQL modules bundle. @@ -3372,7 +3479,7 @@ CLASS="section" >4.1.5.6. DBI (1.32)4.1.6.4. DBI (1.32)

    The DBI module is a generic Perl module used the MySQL-related modules. As long as your Perl installation was done @@ -3406,7 +3513,7 @@ CLASS="section" >4.1.5.7. MySQL-related modules4.1.6.5. MySQL-related modules

    The Perl/MySQL interface requires a few mutually-dependent Perl modules. These modules are grouped together into the the @@ -3451,7 +3558,7 @@ CLASS="section" >4.1.5.8. File::Spec (0.82)4.1.6.6. File::Spec (0.82)

    File::Spec is a perl module that allows file operations, such as generating full path names, to work cross platform. @@ -3483,7 +3590,7 @@ CLASS="section" >4.1.5.9. File::Temp (any)4.1.6.7. File::Temp (any)

    File::Temp is used to generate a temporary filename that is guaranteed to be unique. It comes as a standard part of perl @@ -3515,7 +3622,7 @@ CLASS="section" >4.1.5.10. Template Toolkit (2.08)4.1.6.8. Template Toolkit (2.08)

    When you install Template Toolkit, you'll get asked various questions about features to enable. The defaults are fine, except @@ -3549,7 +3656,7 @@ CLASS="section" >4.1.5.11. Text::Wrap (2001.0131)4.1.6.9. Text::Wrap (2001.0131)

    Text::Wrap is designed to proved intelligent text wrapping.

    4.1.5.12. GD (1.20) [optional]4.1.6.10. GD (1.20) [optional]

    The GD library was written by Thomas Boutell a long while ago to - programmatically generate images in C. Since then it's become the - defacto standard for programmatic image construction. The Perl bindings - to it found in the GD library are used on millions of web pages to - generate graphs on the fly. That's what Bugzilla will be using it for - so you must install it if you want any of the graphing to work.

    You need the GD library if you want any of the graphing to work. +

    4.1.5.13. Chart::Base (0.99c) [optional]4.1.6.11. Chart::Base (0.99c) [optional]

    The Chart module provides Bugzilla with on-the-fly charting abilities. It can be installed in the usual fashion after it has been @@ -3714,7 +3817,7 @@ CLASS="section" >4.1.5.14. XML::Parser (any) [Optional]4.1.6.12. XML::Parser (any) [optional]

    XML::Parser is used by the 4.1.5.15. GD::Graph (any) [Optional]4.1.6.13. GD::Graph (any) [optional]

    In addition to GD listed above, the reporting interface of Bugzilla needs to have the GD::Graph module installed. @@ -3781,7 +3884,7 @@ CLASS="section" >4.1.5.16. GD::Text::Align (any) [Optional]4.1.6.14. GD::Text::Align (any) [optional]

    GD::Text::Align, as the name implies, is used to draw aligned strings of text. It is needed by the reporting interface. @@ -3813,7 +3916,7 @@ CLASS="section" >4.1.5.17. MIME::Parser (any) [Optional]4.1.6.15. MIME::Parser (any) [optional]

    MIME::Parser is only needed if you want to use the e-mail interface located in the 4.1.5.18. PatchReader (0.9.1) [Optional]4.1.6.16. PatchReader (0.9.1) [optional]

    PatchReader is only needed if you want to use Patch Viewer, a Bugzilla feature to format patches in a pretty HTML fashion. There are a @@ -3884,154 +3987,15 @@ CLASS="section" >


    4.1.6. checksetup.pl

    Next, run the magic checksetup.pl script. - This is designed to make sure your perl modules are the correct - version and your MySQL database and other - configuration options are consistent with the Bugzilla CGI files. - It will make sure Bugzilla files and directories have reasonable - permissions, set up the - data - directory, and create all the MySQL tables. -

    
bash# ./checksetup.pl
    -      

    The first time you run it, it will create a file called - localconfig.

    This file contains a variety of settings you may need to tweak - including how Bugzilla should connect to the MySQL database.

    The connection settings include: -

    1. server's host: just use - "localhost" - if the MySQL server is local

    2. database name: - "bugs_db" - if you're following these directions

    3. MySQL username: - "bugs_user" - if you're following these directions

    4. 4.1.7. Configuring Bugzilla

      Password for the - "bugs_user" - MySQL account; ("bugs_password" above)

    +> Once checksetup.pl has run successfully, Bugzilla should start up. + Proceed to the correct URL and log in with the administrator account + you defined in the last checksetup.pl run.

    Once you are happy with the settings, - su to the user - your web server runs as, and re-run - checksetup.pl. (Note: on some security-conscious - systems, you may need to change the login shell for the webserver - account before you can do this.) - On this second run, it will create the database and an administrator - account for which you will be prompted to provide information.

    The checksetup.pl script is designed so that you can run it at - any time without causing harm. You should run it after any upgrade to - Bugzilla.


    4.1.7. Configuring Bugzilla

    You should run through the parameters on the Edit Parameters page (link in the footer) and set them all to appropriate values. They key parameters are documented in

    4.3.1. Dependency Charts


    4.3.2. Bug Graphs


    4.3.3. The Whining Cron

    Bugzilla on Windows requires the same perl modules found in Section 4.1.5Section 4.1.6. The main difference is that windows uses


    4.6.1. Bundle::Bugzilla makes me upgrade to Perl 5.6.1


    4.6.2. DBD::Sponge::db prepare failed


    6.1.1. What to Edit


    6.1.2. How To Edit Templates


    6.1.3. Template Formats


    6.1.4. Particular Templates


    6.4.1. Bugzilla Database Basics


    6.4.1.1. Bugzilla Database Tables

    Microsoft has some advice on this matter, as well:

    Version 1.1, March 2000

    0-9, high ascii