1605 lines
59 KiB
Plaintext
1605 lines
59 KiB
Plaintext
|
This is Info file send-pr.info, produced by Makeinfo-1.55 from the
|
|||
|
input file ./send-pr.texi.
|
|||
|
|
|||
|
START-INFO-DIR-ENTRY
|
|||
|
* send-pr:: Reporting problems--using send-pr
|
|||
|
END-INFO-DIR-ENTRY
|
|||
|
|
|||
|
Copyright (C) 1993 Free Software Foundation, Inc.
|
|||
|
|
|||
|
Permission is granted to make and distribute verbatim copies of this
|
|||
|
manual provided the copyright notice and this permission notice are
|
|||
|
preserved on all copies.
|
|||
|
|
|||
|
Permission is granted to copy and distribute modified versions of
|
|||
|
this manual under the conditions for verbatim copying, provided also
|
|||
|
that the entire resulting derived work is distributed under the terms
|
|||
|
of a permission notice identical to this one.
|
|||
|
|
|||
|
Permission is granted to copy and distribute translations of this
|
|||
|
manual into another language, under the above conditions for modified
|
|||
|
versions.
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: Top, Next: send-pr in detail, Prev: (DIR), Up: (DIR)
|
|||
|
|
|||
|
Overview
|
|||
|
********
|
|||
|
|
|||
|
This manual documents `send-pr', version 3.2, which uses electronic
|
|||
|
mail to submit support questions and problem reports to a central
|
|||
|
Support Site. No body of work is perfect, and support organizations
|
|||
|
understand this; `send-pr' is designed to allow users who have problems
|
|||
|
to submit reports of these problems to sites responsible for supporting
|
|||
|
the products in question, in a defined form which can be read by an
|
|||
|
electronically managed database.
|
|||
|
|
|||
|
`send-pr' is part of a suite of programs known collectively as
|
|||
|
GNATS, the GNU Problem Report Management System. GNATS consists of
|
|||
|
several programs which, used in concert, formulate and partially
|
|||
|
administer a database of "Problem Reports", or "PRs", at a central
|
|||
|
Support Site. A PR goes through several states in its lifetime; GNATS
|
|||
|
tracks the PR and all information associated with it through each state
|
|||
|
and finally acts as an archive for PRs which have been "closed".
|
|||
|
|
|||
|
Because `send-pr' exists as a shell (`/bin/sh') script and as an
|
|||
|
Elisp file for use with GNU Emacs, it can be used from any machine on
|
|||
|
your network which can run a shell script and/or Emacs.
|
|||
|
|
|||
|
In general, you can use any editor and mailer to submit valid Problem
|
|||
|
Reports, as long as the format required by GNATS is preserved.
|
|||
|
`send-pr' automates the process, however, and ensures that certain
|
|||
|
fields necessary for automatic processing are present. `send-pr' is
|
|||
|
strongly recommended for all initial problem-oriented correspondence
|
|||
|
with your Support Site. The organization you submit Problem Reports to
|
|||
|
supplies an address to which further information can be sent; the person
|
|||
|
responsible for the category of the problem you report contacts you
|
|||
|
directly.
|
|||
|
|
|||
|
* Menu:
|
|||
|
|
|||
|
* send-pr in detail:: Details about send-pr and GNATS
|
|||
|
* Invoking send-pr:: Editing and sending PRs
|
|||
|
* An Example:: A working example
|
|||
|
* Installing send-pr:: Installing send-pr on your system
|
|||
|
* Index::
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: send-pr in detail, Next: Invoking send-pr, Prev: Top, Up: Top
|
|||
|
|
|||
|
Details about send-pr and GNATS
|
|||
|
*******************************
|
|||
|
|
|||
|
A "Problem Report" is a message that describes a problem you are
|
|||
|
having with a body of work. `send-pr' organizes this message into a
|
|||
|
form which can be understood and automatically processed by GNATS, the
|
|||
|
GNU Problem Report Management System. A Problem Report is organized
|
|||
|
into "fields" which contain data describing you, your organization, and
|
|||
|
the problem you are announcing (*note Problem Report format: Fields.).
|
|||
|
Problem Reports go through several defined states in their lifetimes,
|
|||
|
from "open" to "closed" (*note States of Problem Reports: States.).
|
|||
|
|
|||
|
* Menu:
|
|||
|
|
|||
|
* States:: States of Problem Reports
|
|||
|
* Fields:: Problem Report format
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: States, Next: Fields, Up: send-pr in detail
|
|||
|
|
|||
|
States of Problem Reports
|
|||
|
=========================
|
|||
|
|
|||
|
Each PR goes through a defined series of states between origination
|
|||
|
and closure. The originator of a PR receives notification
|
|||
|
automatically of any state changes.
|
|||
|
|
|||
|
"open"
|
|||
|
The initial state of a Problem Report. This means the PR has been
|
|||
|
filed and the responsible person(s) notified.
|
|||
|
|
|||
|
"analyzed"
|
|||
|
The responsible person has analyzed the problem. The analysis
|
|||
|
should contain a preliminary evaluation of the problem and an
|
|||
|
estimate of the amount of time and resources necessary to solve
|
|||
|
the problem. It should also suggest possible workarounds.
|
|||
|
|
|||
|
"feedback"
|
|||
|
The problem has been solved, and the originator has been given a
|
|||
|
patch or other fix. The PR remains in this state until the
|
|||
|
originator acknowledges that the solution works.
|
|||
|
|
|||
|
"closed"
|
|||
|
A Problem Report is closed ("the bug stops here") only when any
|
|||
|
changes have been integrated, documented, and tested, and the
|
|||
|
submitter has confirmed the solution.
|
|||
|
|
|||
|
"suspended"
|
|||
|
Work on the problem has been postponed. This happens if a timely
|
|||
|
solution is not possible or is not cost-effective at the present
|
|||
|
time. The PR continues to exist, though a solution is not being
|
|||
|
actively sought. If the problem cannot be solved at all, it
|
|||
|
should be closed rather than suspended.
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: Fields, Prev: States, Up: send-pr in detail
|
|||
|
|
|||
|
Problem Report format
|
|||
|
=====================
|
|||
|
|
|||
|
The format of a PR is designed to reflect the nature of GNATS as a
|
|||
|
database. Information is arranged into "fields", and kept in
|
|||
|
individual records (Problem Reports).
|
|||
|
|
|||
|
Problem Report fields are denoted by a keyword which begins with `>'
|
|||
|
and ends with `:', as in `>Confidential:'. Fields belong to one of
|
|||
|
three data types:
|
|||
|
|
|||
|
ENUMERATED
|
|||
|
One of a specific set of values, which vary according to the
|
|||
|
field. The value for each keyword must be on the same line as the
|
|||
|
keyword. These values are not configurable (yet).
|
|||
|
|
|||
|
For each ENUMERATED keyword, the possible choices are listed in the
|
|||
|
`send-pr' template as a comment. The following fields are
|
|||
|
ENUMERATED format; see the descriptions of fields below for
|
|||
|
explanations of each field in detail:
|
|||
|
|
|||
|
>Confidential: >Severity: >Priority:
|
|||
|
>Class: >State: >Number:
|
|||
|
|
|||
|
TEXT
|
|||
|
One single line of text which must begin and end on the same line
|
|||
|
(i.e., before a newline) as the keyword. See the descriptions of
|
|||
|
fields below for explanations of each field in detail. The
|
|||
|
following fields are TEXT format:
|
|||
|
|
|||
|
>Submitter-Id: >Originator: >Synopsis:
|
|||
|
>Category: >Release: >Responsible:
|
|||
|
>Arrival-Date:
|
|||
|
|
|||
|
MULTITEXT
|
|||
|
Text of any length may occur in this field. MULTITEXT may span
|
|||
|
multiple lines and may also include blank lines. A MULTITEXT field
|
|||
|
ends only when another keyword appears. See the descriptions of
|
|||
|
fields below for explanations of each field in detail.
|
|||
|
|
|||
|
The following fields are MULTITEXT format:
|
|||
|
|
|||
|
>Organization: >Environment: >Description:
|
|||
|
>How-To-Repeat: >Fix: >Audit-Trail:
|
|||
|
>Unformatted:
|
|||
|
|
|||
|
A Problem Report contains two different types of fields: "Mail
|
|||
|
Header" fields, which are used by the mail handler for delivery, and
|
|||
|
"Problem Report" fields, which contain information relevant to the
|
|||
|
Problem Report and its submitter. A Problem Report is essentially a
|
|||
|
specially formatted electronic mail message.
|
|||
|
|
|||
|
The following is an example Problem Report. Mail headers are at the
|
|||
|
top, followed by GNATS fields, which begin with `>' and end with `:'.
|
|||
|
The `Subject:' line in the mail header and the `>Synopsis:' field are
|
|||
|
usually duplicates of each other.
|
|||
|
|
|||
|
Message-Id: MESSAGE-ID
|
|||
|
Date: DATE
|
|||
|
From: ADDRESS
|
|||
|
Reply-To: ADDRESS
|
|||
|
To: BUG-ADDRESS
|
|||
|
Subject: SUBJECT
|
|||
|
|
|||
|
>Number: GNATS-ID
|
|||
|
>Category: CATEGORY
|
|||
|
>Synopsis: SYNOPSIS
|
|||
|
>Confidential: yes *or* no
|
|||
|
>Severity: critical, serious, *or* non-critical
|
|||
|
>Priority: high, medium *or* low
|
|||
|
>Responsible: RESPONSIBLE
|
|||
|
>State: open, analyzed, suspended, feedback, *or* closed
|
|||
|
>Class: sw-bug, doc-bug, change-request, support,
|
|||
|
*or* duplicate
|
|||
|
>Submitter-Id: SUBMITTER-ID
|
|||
|
>Arrival-Date: DATE
|
|||
|
>Originator: NAME
|
|||
|
>Organization: ORGANIZATION
|
|||
|
>Release: RELEASE
|
|||
|
>Environment:
|
|||
|
ENVIRONMENT
|
|||
|
>Description:
|
|||
|
DESCRIPTION
|
|||
|
>How-To-Repeat:
|
|||
|
HOW-TO-REPEAT
|
|||
|
>Fix:
|
|||
|
FIX
|
|||
|
>Audit-Trail:
|
|||
|
APPENDED-MESSAGES...
|
|||
|
State-Changed-From-To: FROM-TO
|
|||
|
State-Changed-When: DATE
|
|||
|
State-Changed-Why:
|
|||
|
REASON
|
|||
|
Responsible-Changed-From-To: FROM-TO
|
|||
|
Responsible-Changed-When: DATE
|
|||
|
Responsible-Changed-Why:
|
|||
|
REASON
|
|||
|
>Unformatted:
|
|||
|
MISCELLANEOUS
|
|||
|
|
|||
|
* Menu:
|
|||
|
|
|||
|
* Mail header fields::
|
|||
|
* Problem Report fields::
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: Mail header fields, Next: Problem Report fields, Up: Fields
|
|||
|
|
|||
|
Mail header fields
|
|||
|
------------------
|
|||
|
|
|||
|
A Problem Report may contain any mail header field described in the
|
|||
|
Internet standard RFC-822. However, only the fields which identify the
|
|||
|
sender and the subject are required by `send-pr':
|
|||
|
|
|||
|
`To:'
|
|||
|
The preconfigured mail address for the Support Site where the PR
|
|||
|
is to be sent, automatically supplied by `send-pr'.
|
|||
|
|
|||
|
`Subject:'
|
|||
|
A terse description of the problem. This field normally contains
|
|||
|
the same information as the `>Synopsis:' field.
|
|||
|
|
|||
|
`From:'
|
|||
|
Usually supplied automatically by the originator's mailer; should
|
|||
|
contain the originator's electronic mail address.
|
|||
|
|
|||
|
`Reply-To:'
|
|||
|
A return address to which electronic replies can be sent; in most
|
|||
|
cases, the same address as the `From:' field.
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: Problem Report fields, Prev: Mail header fields, Up: Fields
|
|||
|
|
|||
|
Problem Report fields
|
|||
|
---------------------
|
|||
|
|
|||
|
Field descriptions
|
|||
|
------------------
|
|||
|
|
|||
|
The following fields are present whenever a PR is submitted via the
|
|||
|
program `send-pr'. GNATS adds additional fields when the PR arrives at
|
|||
|
the Support Site; explanations of these follow this list.
|
|||
|
|
|||
|
`>Submitter-Id:'
|
|||
|
(TEXT) A unique identification code assigned by the Support Site.
|
|||
|
It is used to identify all Problem Reports coming from a particular
|
|||
|
site. (Submitters without a value for this field can invoke
|
|||
|
`send-pr' with the `--request-id' option to apply for one from the
|
|||
|
support organization. Problem Reports from those not affiliated
|
|||
|
with the support organization should use the default value of `net'
|
|||
|
for this field.)
|
|||
|
|
|||
|
`>Originator:'
|
|||
|
(TEXT) Originator's real name. The default is the value of the
|
|||
|
originator's environment variable `NAME'.
|
|||
|
|
|||
|
`>Organization:'
|
|||
|
(MULTITEXT) The originator's organization. The default value is
|
|||
|
set with the variable `DEFAULT_ORGANIZATION' in the `send-pr'
|
|||
|
shell script.
|
|||
|
|
|||
|
`>Confidential:'
|
|||
|
(ENUMERATED) Use of this field depends on the originator's
|
|||
|
relationship with the support organization; contractual agreements
|
|||
|
often have provisions for preserving confidentiality. Conversely,
|
|||
|
a lack of a contract often means that any data provided will not
|
|||
|
be considered confidential. Submitters should be advised to
|
|||
|
contact the support organization directly if this is an issue.
|
|||
|
|
|||
|
If the originator's relationship to the support organization
|
|||
|
provides for confidentiality, then if the value of this field is
|
|||
|
`yes' the support organization treats the PR as confidential; any
|
|||
|
code samples provided are not made publicly available (e.g., in
|
|||
|
regression test suites). The default value is `yes'.
|
|||
|
|
|||
|
`>Synopsis:'
|
|||
|
(TEXT) One-line summary of the problem. `send-pr' copies this
|
|||
|
information to the `Subject:' line when you submit a Problem
|
|||
|
Report.
|
|||
|
|
|||
|
`>Severity:'
|
|||
|
(ENUMERATED) The severity of the problem. Accepted values include:
|
|||
|
|
|||
|
`critical'
|
|||
|
The product, component or concept is completely
|
|||
|
non-operational or some essential functionality is missing.
|
|||
|
No workaround is known.
|
|||
|
|
|||
|
`serious'
|
|||
|
The product, component or concept is not working properly or
|
|||
|
significant functionality is missing. Problems that would
|
|||
|
otherwise be considered `critical' are rated `serious' when a
|
|||
|
workaround is known.
|
|||
|
|
|||
|
`non-critical'
|
|||
|
The product, component or concept is working in general, but
|
|||
|
lacks features, has irritating behavior, does something
|
|||
|
wrong, or doesn't match its documentation. The default value
|
|||
|
is `serious'.
|
|||
|
|
|||
|
`>Priority:'
|
|||
|
(ENUMERATED) How soon the originator requires a solution. Accepted
|
|||
|
values include:
|
|||
|
|
|||
|
`high'
|
|||
|
A solution is needed as soon as possible.
|
|||
|
|
|||
|
`medium'
|
|||
|
The problem should be solved in the next release.
|
|||
|
|
|||
|
`low'
|
|||
|
The problem should be solved in a future release.
|
|||
|
|
|||
|
The default value is `medium'.
|
|||
|
|
|||
|
`>Category:'
|
|||
|
(TEXT) The name of the product, component or concept where the
|
|||
|
problem lies. The values for this field are defined by the Support
|
|||
|
Site.
|
|||
|
|
|||
|
`>Class:'
|
|||
|
(ENUMERATED) The class of a problem can be one of the following:
|
|||
|
|
|||
|
`sw-bug'
|
|||
|
A general product problem. (`sw' stands for "software".)
|
|||
|
|
|||
|
`doc-bug'
|
|||
|
A problem with the documentation.
|
|||
|
|
|||
|
`change-request'
|
|||
|
A request for a change in behavior, etc.
|
|||
|
|
|||
|
`support'
|
|||
|
A support problem or question.
|
|||
|
|
|||
|
`duplicate (PR-NUMBER)'
|
|||
|
Duplicate PR. PR-NUMBER should be the number of the original
|
|||
|
PR.
|
|||
|
|
|||
|
The default is `sw-bug'.
|
|||
|
|
|||
|
`>Release:'
|
|||
|
(TEXT) Release or version number of the product, component or
|
|||
|
concept.
|
|||
|
|
|||
|
`>Environment:'
|
|||
|
(MULTITEXT) Description of the environment where the problem
|
|||
|
occured: machine architecture, operating system, host and target
|
|||
|
types, libraries, pathnames, etc.
|
|||
|
|
|||
|
`>Description:'
|
|||
|
(MULTITEXT) Precise description of the problem.
|
|||
|
|
|||
|
`>How-To-Repeat:'
|
|||
|
(MULTITEXT) Example code, input, or activities to reproduce the
|
|||
|
problem. The support organization uses example code both to
|
|||
|
reproduce the problem and to test whether the problem is fixed.
|
|||
|
Include all preconditions, inputs, outputs, conditions after the
|
|||
|
problem, and symptoms. Any additional important information
|
|||
|
should be included. Include all the details that would be
|
|||
|
necessary for someone else to recreate the problem reported,
|
|||
|
however obvious. Sometimes seemingly arbitrary or obvious
|
|||
|
information can point the way toward a solution. See also *Note
|
|||
|
Helpful hints: Helpful hints.
|
|||
|
|
|||
|
`>Fix:'
|
|||
|
(MULTITEXT) A description of a solution to the problem, or a patch
|
|||
|
which solves the problem. (This field is most often filled in at
|
|||
|
the Support Site; we provide it to the submitter in case she has
|
|||
|
solved the problem.)
|
|||
|
|
|||
|
GNATS adds the following fields when the PR arrives at the Support Site:
|
|||
|
|
|||
|
`>Number:'
|
|||
|
(ENUMERATED) The incremental identification number for this PR.
|
|||
|
|
|||
|
The `>Number:' field is often paired with the `>Category:' field as
|
|||
|
|
|||
|
CATEGORY/NUMBER
|
|||
|
|
|||
|
in subsequent email messages. This is for historical reasons, as
|
|||
|
well as because Problem Reports are stored in subdirectories which
|
|||
|
are named by category.
|
|||
|
|
|||
|
`>State:'
|
|||
|
(ENUMERATED) The current state of the PR. Accepted values are:
|
|||
|
|
|||
|
`open'
|
|||
|
The PR has been filed and the responsible person notified.
|
|||
|
|
|||
|
`analyzed'
|
|||
|
The responsible person has analyzed the problem.
|
|||
|
|
|||
|
`feedback'
|
|||
|
The problem has been solved, and the originator has been
|
|||
|
given a patch or other fix.
|
|||
|
|
|||
|
`closed'
|
|||
|
The changes have been integrated, documented, and tested, and
|
|||
|
the originator has confirmed that the solution works.
|
|||
|
|
|||
|
`suspended'
|
|||
|
Work on the problem has been postponed.
|
|||
|
|
|||
|
The initial state of a PR is `open'. *Note States of Problem
|
|||
|
Reports: States.
|
|||
|
|
|||
|
`>Responsible:'
|
|||
|
(TEXT) The person responsible for this category.
|
|||
|
|
|||
|
`>Arrival-Date:'
|
|||
|
(TEXT) The time that this PR was received by GNATS. The date is
|
|||
|
provided automatically by GNATS.
|
|||
|
|
|||
|
`>Audit-Trail:'
|
|||
|
(MULTITEXT) Tracks related electronic mail as well as changes in
|
|||
|
the `>State:' and `>Responsible:' fields with the sub-fields:
|
|||
|
|
|||
|
`State-Changed-<From>-<To>: OLDSTATE>-<NEWSTATE'
|
|||
|
The old and new `>State:' field values.
|
|||
|
|
|||
|
`Responsible-Changed-<From>-<To>: OLDRESP>-<NEWRESP'
|
|||
|
The old and new `>Responsible:' field values.
|
|||
|
|
|||
|
`State-Changed-By: NAME'
|
|||
|
`Responsible-Changed-By: NAME'
|
|||
|
The name of the maintainer who effected the change.
|
|||
|
|
|||
|
`State-Changed-When: TIMESTAMP'
|
|||
|
`Responsible-Changed-When: TIMESTAMP'
|
|||
|
The time the change was made.
|
|||
|
|
|||
|
`State-Changed-Why: REASON...'
|
|||
|
`Responsible-Changed-Why: REASON...'
|
|||
|
The reason for the change.
|
|||
|
|
|||
|
The `>Audit-Trail:' field also contains any mail messages received
|
|||
|
by GNATS related to this PR, in the order received.
|
|||
|
|
|||
|
`>Unformatted:'
|
|||
|
(MULTITEXT) Any random text found outside the fields in the
|
|||
|
original Problem Report.
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: Invoking send-pr, Next: An Example, Prev: send-pr in detail, Up: Top
|
|||
|
|
|||
|
Editing and sending PRs
|
|||
|
***********************
|
|||
|
|
|||
|
You can invoke `send-pr' from a shell prompt or from within GNU
|
|||
|
Emacs using `M-x send-pr'.
|
|||
|
|
|||
|
* Menu:
|
|||
|
|
|||
|
* using send-pr:: Creating new Problem Reports
|
|||
|
* send-pr in Emacs:: Using send-pr from within Emacs
|
|||
|
* send-pr from the shell:: Invoking send-pr from the shell
|
|||
|
* Helpful hints::
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: using send-pr, Next: send-pr in Emacs, Up: Invoking send-pr
|
|||
|
|
|||
|
Creating new Problem Reports
|
|||
|
============================
|
|||
|
|
|||
|
Invoking `send-pr' presents a PR "template" with a number of fields
|
|||
|
already filled in. Complete the template as thoroughly as possible to
|
|||
|
make a useful bug report. Submit only one bug with each PR.
|
|||
|
|
|||
|
A template consists of three sections:
|
|||
|
|
|||
|
"Comments"
|
|||
|
The top several lines of a blank template consist of a series of
|
|||
|
comments that provide some basic instructions for completing the
|
|||
|
Problem Report, as well as a list of valid entries for the
|
|||
|
`>Category:' field. These comments are all preceded by the string
|
|||
|
`SEND-PR:' and are erased automatically when the PR is submitted.
|
|||
|
The instructional comments within `<' and `>' are also removed.
|
|||
|
(Only these comments are removed; lines you provide that happen to
|
|||
|
have those characters in them, such as examples of shell-level
|
|||
|
redirection, are not affected.)
|
|||
|
|
|||
|
"Mail Header"
|
|||
|
`send-pr' creates a standard mail header. `send-pr' completes all
|
|||
|
fields except the `Subject:' line with default values. (*Note
|
|||
|
Problem Report format: Fields.)
|
|||
|
|
|||
|
"GNATS fields"
|
|||
|
These are the informational fields that GNATS uses to route your
|
|||
|
Problem Report to the responsible party for further action. They
|
|||
|
should be filled out as completely as possible. (*Note Problem
|
|||
|
Report format: Fields. Also see *Note Helpful hints: Helpful
|
|||
|
hints.)
|
|||
|
|
|||
|
For examples of a Problem Report template and complete Problem Report,
|
|||
|
see *Note An Example::.
|
|||
|
|
|||
|
The default template contains your preconfigured `>Submitter-Id:'.
|
|||
|
`send-pr' attempts to determine values for the `>Originator:' and
|
|||
|
`>Organization:' fields (*note Problem Report format: Fields.).
|
|||
|
`send-pr' also attempts to find out some information about your system
|
|||
|
and architecture, and places this information in the `>Environment:'
|
|||
|
field if it finds any.
|
|||
|
|
|||
|
You may submit problem reports to different Support Sites from the
|
|||
|
default site by specifying the alternate site when you invoke
|
|||
|
`send-pr'. Each `site' has its own list of categories for which it
|
|||
|
accepts Problem Reports. (*Note Setting a default SITE: default site.)
|
|||
|
|
|||
|
`send-pr' also provides the mail header section of the template with
|
|||
|
default values in the `To:', `From:', and `Reply-To:' fields. The
|
|||
|
`Subject:' field is empty.
|
|||
|
|
|||
|
The template begins with a comment section:
|
|||
|
|
|||
|
SEND-PR: -*- send-pr -*-
|
|||
|
SEND-PR: Lines starting with `SEND-PR' will be removed
|
|||
|
SEND-PR: automatically as well as all comments (the text
|
|||
|
SEND-PR: below enclosed in `<' and `>').
|
|||
|
SEND-PR:
|
|||
|
SEND-PR: Please consult the document `Reporting Problems
|
|||
|
SEND-PR: Using send-pr' if you are not sure how to fill out
|
|||
|
SEND-PR: a problem report.
|
|||
|
SEND-PR:
|
|||
|
SEND-PR: Choose from the following categories:
|
|||
|
|
|||
|
and also contains a list of valid `>Category:' values for the Support
|
|||
|
Site to whom you are submitting this Problem Report. One (and only
|
|||
|
one) of these values should be placed in the `>Category:' field. A
|
|||
|
complete sample bug report, from template to completed PR, is shown in
|
|||
|
*Note An Example::. For a complete list of valid categories, type
|
|||
|
`send-pr -L' at your prompt. *Note Valid Categories: Valid Categories,
|
|||
|
for a sample list of categories, .
|
|||
|
|
|||
|
The mail header is just below the comment section. Fill out the
|
|||
|
`Subject:' field, if it is not already completed using the value of
|
|||
|
`>Synopsis:'. The other mail header fields contain default values.
|
|||
|
|
|||
|
To: SUPPORT-SITE
|
|||
|
Subject: *complete this field*
|
|||
|
From: YOUR-LOGIN@YOUR-SITE
|
|||
|
Reply-To: YOUR-LOGIN@YOUR-SITE
|
|||
|
X-send-pr-version: send-pr 3.2
|
|||
|
|
|||
|
where SUPPORT-SITE is an alias for the Support Site you wish to submit
|
|||
|
this PR to.
|
|||
|
|
|||
|
The rest of the template contains GNATS fields. Each field is
|
|||
|
either automatically completed with valid information (such as your
|
|||
|
`>Submitter-Id:') or contains a one-line instruction specifying the
|
|||
|
information that field requires in order to be correct. For example,
|
|||
|
the `>Confidential:' field expects a value of `yes' or `no', and the
|
|||
|
answer must fit on one line; similarly, the `>Synopsis:' field expects
|
|||
|
a short synopsis of the problem, which must also fit on one line. Fill
|
|||
|
out the fields as completely as possible. *Note Helpful hints: Helpful
|
|||
|
hints, for suggestions as to what kinds of information to include.
|
|||
|
|
|||
|
In this example, words in *italics* are filled in with
|
|||
|
pre-configured information:
|
|||
|
|
|||
|
>Submitter-Id: *your submitter-id*
|
|||
|
>Originator: *your name here*
|
|||
|
>Organization:
|
|||
|
*your organization*
|
|||
|
>Confidential:<[ yes | no ] (one line)>
|
|||
|
>Synopsis: <synopsis of the problem (one line)>
|
|||
|
>Severity: <[non-critical | serious | critical](one line)>
|
|||
|
>Priority: <[ low | medium | high ] (one line)>
|
|||
|
>Category: <name of the product (one line)>
|
|||
|
>Class: <[sw-bug | doc-bug | change-request | support]>
|
|||
|
>Release: <release number or tag (one line)>
|
|||
|
>Environment:
|
|||
|
<machine, os, target, libraries (multiple lines)>
|
|||
|
|
|||
|
>Description:
|
|||
|
<precise description of the problem (multiple lines)>
|
|||
|
>How-To-Repeat:
|
|||
|
<code/input/activities to reproduce (multiple lines)>
|
|||
|
>Fix:
|
|||
|
<how to correct or work around the problem, if known
|
|||
|
(multiple lines)>
|
|||
|
|
|||
|
When you finish editing the Problem Report, `send-pr' mails it to
|
|||
|
the address named in the `To:' field in the mail header. `send-pr'
|
|||
|
checks that the complete form contains a valid `>Category:'.
|
|||
|
|
|||
|
Your copy of `send-pr' should have already been customized on
|
|||
|
installation to reflect your `>Submitter-Id:'. (*Note Installing
|
|||
|
`send-pr' on your system: Installing send-pr.) If you don't know your
|
|||
|
`>Submitter-Id:', you can request it using `send-pr --request-id'. If
|
|||
|
your organization is not affiliated with the site you send Problem
|
|||
|
Reports to, a good generic `>Submitter-Id:' to use is `net'.
|
|||
|
|
|||
|
If your PR has an invalid value in one of the ENUMERATED fields
|
|||
|
(*note Problem Report format: Fields.), `send-pr' places the PR in a
|
|||
|
temporary file named `/tmp/pbadNNNN' on your machine. NNNN is the
|
|||
|
process identification number given to your current `send-pr' session.
|
|||
|
If you are running `send-pr' from the shell, you are prompted as to
|
|||
|
whether or not you wish to try editing the same Problem Report again.
|
|||
|
If you are running `send-pr' from Emacs, the Problem Report is placed
|
|||
|
in the buffer `*send-pr-error*'; you can edit this file and then submit
|
|||
|
it with
|
|||
|
|
|||
|
M-x gnats-submit-pr
|
|||
|
|
|||
|
Any further mail concerning this Problem Report should be
|
|||
|
carbon-copied to the GNATS mailing address as well, with the category
|
|||
|
and identification number in the `Subject:' line of the message.
|
|||
|
|
|||
|
Subject: Re: PR CATEGORY/GNATS-ID: ORIGINAL MESSAGE SUBJECT
|
|||
|
|
|||
|
Messages which arrive with `Subject:' lines of this form are
|
|||
|
automatically appended to the Problem Report in the `>Audit-Trail:'
|
|||
|
field in the order received.
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: send-pr in Emacs, Next: send-pr from the shell, Prev: using send-pr, Up: Invoking send-pr
|
|||
|
|
|||
|
Using `send-pr' from within Emacs
|
|||
|
=================================
|
|||
|
|
|||
|
You can use an interactive `send-pr' interface from within GNU Emacs
|
|||
|
to fill out your Problem Report. We recommend that you familiarize
|
|||
|
yourself with Emacs before using this feature (*note Introduction:
|
|||
|
(emacs)Introduction.).
|
|||
|
|
|||
|
Call `send-pr' with `M-x send-pr'.(1) `send-pr' responds with a
|
|||
|
Problem Report template preconfigured for the Support Site from which
|
|||
|
you received `send-pr'. (If you use `send-pr' locally, the default
|
|||
|
Support Site is probably your local site.)
|
|||
|
|
|||
|
You may also submit problem reports to different Support Sites from
|
|||
|
the default site. To use this feature, invoke `send-pr' with
|
|||
|
|
|||
|
C-u M-x send-pr
|
|||
|
|
|||
|
`send-pr' prompts you for the name of a SITE. SITE is an alias on
|
|||
|
your local machine which points to an alternate Support Site.
|
|||
|
|
|||
|
`send-pr' displays the template and prompts you in the minibuffer
|
|||
|
with the line:
|
|||
|
>Category: other
|
|||
|
|
|||
|
Delete the default value `other' *in the minibuffer* and replace it
|
|||
|
with the keyword corresponding to your problem (the list of valid
|
|||
|
categories is in the topmost section of the PR template). For example,
|
|||
|
if the problem you wish to report has to do with the GNU C compiler,
|
|||
|
and your support organization accepts bugs submitted for this program
|
|||
|
under the category `gcc', delete `other' and then type `gcc[RET]'.
|
|||
|
`send-pr' replaces the line
|
|||
|
|
|||
|
>Category: <name of the product (one line)>
|
|||
|
|
|||
|
in the template with
|
|||
|
|
|||
|
>Category: gcc
|
|||
|
|
|||
|
and moves on to another field.
|
|||
|
|
|||
|
`send-pr' provides name completion in the minibuffer. For instance,
|
|||
|
you can also type `gc[TAB]', and `send-pr' attempts to complete the
|
|||
|
entry for you. Typing `g[TAB]' may not have the same effect if several
|
|||
|
possible entries begin with `g'. In that case `send-pr' cannot
|
|||
|
complete the entry because it cannot determine whether you mean `gcc'
|
|||
|
or, for example, `gdb', if both of those are possible categories.
|
|||
|
`send-pr' continues to prompt you for a valid entry until you enter one.
|
|||
|
|
|||
|
`send-pr' prompts you interactively to enter each field for which
|
|||
|
there is a range of specific choices. If you attempt to enter a value
|
|||
|
which is not in the range of acceptable entries, `send-pr' responds
|
|||
|
with `[No match]' and allows you to change the entry until it contains
|
|||
|
an acceptable value. This avoids unusable information (at least in
|
|||
|
these fields) and also avoids typographical errors which could cause
|
|||
|
problems later.
|
|||
|
|
|||
|
`send-pr' prompts you for the following fields:
|
|||
|
|
|||
|
>Category:
|
|||
|
>Confidential: (*default*: no)
|
|||
|
>Severity: (*default*: serious)
|
|||
|
>Priority: (*default*: medium)
|
|||
|
>Class: (*default*: sw-bug)
|
|||
|
>Release:
|
|||
|
>Synopsis: (*this value is copied to `Subject:'*)
|
|||
|
|
|||
|
After you complete these fields, `send-pr' places the cursor in the
|
|||
|
`>Description:' field and displays the message
|
|||
|
|
|||
|
To send the problem report use: C-c C-c
|
|||
|
|
|||
|
in the minibuffer. At this point, edit the file in the main buffer to
|
|||
|
reflect your specific problem, putting relevant information in the
|
|||
|
proper fields. *Note An Example::, for a sample Problem Report.
|
|||
|
|
|||
|
`send-pr' provides a few key bindings to make moving around in a
|
|||
|
template buffer more simple:
|
|||
|
|
|||
|
`C-c C-f'
|
|||
|
`M-x change-field'
|
|||
|
Changes the field under the cursor. `edit-pr' prompts you for a
|
|||
|
new value.
|
|||
|
|
|||
|
`M-C-b'
|
|||
|
`M-x gnats-backward-field'
|
|||
|
Moves the cursor to the beginning of the value of the current
|
|||
|
field.
|
|||
|
|
|||
|
`M-C-f'
|
|||
|
`M-x gnats-forward-field'
|
|||
|
Moves the cursor to the end of the value of the current field.
|
|||
|
|
|||
|
`M-p'
|
|||
|
`M-x gnats-previous-field'
|
|||
|
Moves the cursor back one field to the beginning of the value of
|
|||
|
the previous field.
|
|||
|
|
|||
|
`M-n'
|
|||
|
`M-x gnats-next-field'
|
|||
|
Moves the cursor forward one field to the beginning of the value
|
|||
|
of the next field.
|
|||
|
|
|||
|
`send-pr' takes over again when you type `C-c C-c' to send the
|
|||
|
message. `send-pr' reports any errors in a separate buffer, which
|
|||
|
remains in existence until you send the PR properly (or, of course,
|
|||
|
until you explicitly kill the buffer).
|
|||
|
|
|||
|
For detailed instructions on using Emacs, see *Note Introduction:
|
|||
|
(emacs)Introduction.
|
|||
|
|
|||
|
---------- Footnotes ----------
|
|||
|
|
|||
|
(1) If typing `M-x send-pr' doesn't work, see your system
|
|||
|
administrator for help loading `send-pr' into Emacs.
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: send-pr from the shell, Next: Helpful hints, Prev: send-pr in Emacs, Up: Invoking send-pr
|
|||
|
|
|||
|
Invoking `send-pr' from the shell
|
|||
|
=================================
|
|||
|
|
|||
|
send-pr [ SITE ]
|
|||
|
[ -f PROBLEM-REPORT | --file PROBLEM-REPORT ]
|
|||
|
[ -t MAIL-ADDRESS | --to MAIL-ADDRESS ]
|
|||
|
[ --request-id ]
|
|||
|
[ -L | --list ] [ -P | --print ]
|
|||
|
[ -V | --version] [ -h | --help ]
|
|||
|
|
|||
|
SITE is an alias on your local machine which points to an address
|
|||
|
used by a Support Site. If this argument is not present, the default
|
|||
|
SITE is usually the site which you received `send-pr' from, or your
|
|||
|
local site if you use GNATS locally. (*Note Setting a default SITE:
|
|||
|
default site.)
|
|||
|
|
|||
|
Invoking `send-pr' with no options calls the editor named in your
|
|||
|
environment variable `EDITOR' on a default PR template. If the
|
|||
|
environment variable `PR_FORM' is set, its value is used as a file name
|
|||
|
which contains a valid template. If `PR_FORM' points to a missing or
|
|||
|
unreadable file, or if the file is empty, `send-pr' generates an error
|
|||
|
message and opens the editor on a default template.
|
|||
|
|
|||
|
`-f PROBLEM-REPORT'
|
|||
|
`--file PROBLEM-REPORT'
|
|||
|
Specifies a file, PROBLEM-REPORT, where a completed Problem Report
|
|||
|
already exists. `send-pr' sends the contents of the file without
|
|||
|
invoking an editor. If PROBLEM-REPORT is `-', `send-pr' reads
|
|||
|
from standard input.
|
|||
|
|
|||
|
`-t MAIL-ADDRESS'
|
|||
|
`--to MAIL-ADDRESS'
|
|||
|
Sends the PR to MAIL-ADDRESS. The default is preset when `send-pr'
|
|||
|
is configured. *This option is not recommended*; instead, use the
|
|||
|
argument SITE on the command line.
|
|||
|
|
|||
|
`--request-id'
|
|||
|
Sends a request for a `>Submitter-Id:' to the Support Site.
|
|||
|
|
|||
|
`-L'
|
|||
|
`--list'
|
|||
|
Prints the list of valid `>Category:' values on standard output.
|
|||
|
No mail is sent.
|
|||
|
|
|||
|
`-P'
|
|||
|
`--print'
|
|||
|
Displays the PR template. If the variable `PR_FORM' is set in your
|
|||
|
environment, the file it specifies is printed. If `PR_FORM' is not
|
|||
|
set, `send-pr' prints the standard blank form. If the file
|
|||
|
specified by `PR_FORM' doesn't exist, `send-pr' displays an error
|
|||
|
message. No mail is sent.
|
|||
|
|
|||
|
`-V'
|
|||
|
`--version'
|
|||
|
Displays the `send-pr' version number and a usage summary. No mail
|
|||
|
is sent.
|
|||
|
|
|||
|
`-h'
|
|||
|
`--help'
|
|||
|
Displays a usage summary for `send-pr'. No mail is sent.
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: Helpful hints, Prev: send-pr from the shell, Up: Invoking send-pr
|
|||
|
|
|||
|
Helpful hints
|
|||
|
=============
|
|||
|
|
|||
|
There is no orthodox standard for submitting effective bug reports,
|
|||
|
though you might do well to consult the section on submitting bugs for
|
|||
|
GNU `gcc' in *Note Reporting Bugs: (gcc)Bugs, by Richard Stallman.
|
|||
|
This section contains instructions on what kinds of information to
|
|||
|
include and what kinds of mistakes to avoid.
|
|||
|
|
|||
|
In general, common sense (assuming such an animal exists) dictates
|
|||
|
the kind of information that would be most helpful in tracking down and
|
|||
|
resolving problems in software.
|
|||
|
* Include anything *you* would want to know if you were looking at
|
|||
|
the report from the other end. There's no need to include every
|
|||
|
minute detail about your environment, although anything that might
|
|||
|
be different from someone else's environment should be included
|
|||
|
(your path, for instance).
|
|||
|
|
|||
|
* Narratives are often useful, given a certain degree of restraint.
|
|||
|
If a person responsible for a bug can see that A was executed, and
|
|||
|
then B and then C, knowing that sequence of events might trigger
|
|||
|
the realization of an intermediate step that was missing, or an
|
|||
|
extra step that might have changed the environment enough to cause
|
|||
|
a visible problem. Again, restraint is always in order ("I set
|
|||
|
the build running, went to get a cup of coffee (Columbian, cream
|
|||
|
but no sugar), talked to Sheila on the phone, and then THIS
|
|||
|
happened...") but be sure to include anything relevant.
|
|||
|
|
|||
|
* Richard Stallman writes, "The fundamental principle of reporting
|
|||
|
bugs usefully is this: *report all the facts*. If you are not sure
|
|||
|
whether to state a fact or leave it out, state it!" This holds
|
|||
|
true across all problem reporting systems, for computer software
|
|||
|
or social injustice or motorcycle maintenance. It is especially
|
|||
|
important in the software field due to the major differences
|
|||
|
seemingly insignificant changes can make (a changed variable, a
|
|||
|
missing semicolon, etc.).
|
|||
|
|
|||
|
* Submit only *one* problem with each Problem Report. If you have
|
|||
|
multiple problems, use multiple PRs. This aids in tracking each
|
|||
|
problem and also in analyzing the problems associated with a given
|
|||
|
program.
|
|||
|
|
|||
|
* It never hurts to do a little research to find out if the bug
|
|||
|
you've found has already been reported. Most software releases
|
|||
|
contain lists of known bugs in the Release Notes which come with
|
|||
|
the software; see your system administrator if you don't have a
|
|||
|
copy of these.
|
|||
|
|
|||
|
* The more closely a PR adheres to the standard format, the less
|
|||
|
interaction is required by a database administrator to route the
|
|||
|
information to the proper place. Keep in mind that anything that
|
|||
|
requires human interaction also requires time that might be better
|
|||
|
spent in actually fixing the problem. It is therefore in
|
|||
|
everyone's best interest that the information contained in a PR be
|
|||
|
as correct as possible (in both format and content) at the time of
|
|||
|
submission.
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: An Example, Next: Installing send-pr, Prev: Invoking send-pr, Up: Top
|
|||
|
|
|||
|
An Example
|
|||
|
**********
|
|||
|
|
|||
|
Cygnus Support in Mountain View, CA, uses GNATS and `send-pr'
|
|||
|
extensively for their support activities. As a support company, Cygnus
|
|||
|
finds problem tracking to be a crucial part of everyday business.
|
|||
|
Cygnus supports the GNU compiling tools (including GNATS and `send-pr')
|
|||
|
over several many platforms
|
|||
|
|
|||
|
With each shipment of the Cygnus Support Developer's Kit, customers
|
|||
|
receive the latest version of `send-pr', which contains an up-to-date
|
|||
|
listing of valid categories (values for the `>Category:' field). Using
|
|||
|
these tools, Cygnus' customers can communicate their problems to Cygnus
|
|||
|
effectively and receive automatic confirmation of receipt as well as
|
|||
|
notification of changes in the status of their reported problems. Much
|
|||
|
of Cygnus' support mechanism relies on electronic mail.
|
|||
|
|
|||
|
As an example, let's pretend we're a customer of Cygnus Support, and
|
|||
|
that we're having a problem compiling some of our software using the
|
|||
|
GNU C compiler, which Cygnus supports.
|
|||
|
|
|||
|
Assume that we're getting an error in our `bifrabulator' program
|
|||
|
wherein the `prestidigitation' routines don't match with the
|
|||
|
`whatsitsname'. We've made sure we're following the rules of the
|
|||
|
program and checked the Release Notes from Cygnus and found that the bug
|
|||
|
isn't already known. In other words, we're pretty sure we've found a
|
|||
|
bug.
|
|||
|
|
|||
|
Our first step is to call `send-pr'. It really doesn't matter
|
|||
|
whether we use `send-pr' from the shell or from within Emacs. Indeed,
|
|||
|
if we use Emacs as a primary editor, calling `send-pr' from the shell
|
|||
|
is likely to start `send-pr' in an Emacs buffer anyway. So, since our
|
|||
|
company, *Imaginary Software, Ltd.*, uses GNU software extensively,
|
|||
|
we're pretty familiar with Emacs, so from within Emacs we type
|
|||
|
M-x send-pr
|
|||
|
|
|||
|
and we're greeted with the following screen:
|
|||
|
|
|||
|
SEND-PR: -*- text -*-
|
|||
|
SEND-PR: Lines starting with `SEND-PR' will be removed
|
|||
|
SEND-PR: automatically as well as all comments (the text
|
|||
|
SEND-PR: below enclosed in `<' and `>').
|
|||
|
SEND-PR: Please consult the manual if you are not sure
|
|||
|
SEND-PR: how to fill out a problem report.
|
|||
|
SEND-PR:
|
|||
|
SEND-PR: Choose from the following categories:
|
|||
|
SEND-PR:
|
|||
|
SEND-PR: bfd binutils bison
|
|||
|
SEND-PR: byacc clib config cvs diff
|
|||
|
SEND-PR: doc emacs flex g++ gas
|
|||
|
SEND-PR: gcc gdb glob gprof grep
|
|||
|
SEND-PR: info ispell kerberos ld libg++
|
|||
|
SEND-PR: libiberty make makeinfo mas newlib
|
|||
|
SEND-PR: other patch rcs readline send-pr
|
|||
|
SEND-PR: test texindex texinfo texinfo.tex
|
|||
|
SEND-PR: bifrabulator <---*note: this one is fake*
|
|||
|
SEND-PR:
|
|||
|
To: cygnus-bugs@cygnus.com
|
|||
|
Subject:
|
|||
|
From: jeffrey@imaginary.com
|
|||
|
Reply-To: jeffrey@imaginary.com
|
|||
|
X-send-pr-version: send-pr 3.2
|
|||
|
|
|||
|
>Submitter-Id: imaginary
|
|||
|
>Originator: Jeffrey Osier
|
|||
|
>Organization:
|
|||
|
Imaginary Software, Ltd.
|
|||
|
>Confidential: <[ yes | no ] (one line)>
|
|||
|
>Synopsis: <synopsis of the problem (one line)>
|
|||
|
>Severity: <[ non-critical | serious | critical ] (one line)>
|
|||
|
>Priority: <[ low | medium | high ] (one line)>
|
|||
|
>Category: <name of the product (one line)>
|
|||
|
>Class: <[sw-bug|doc-bug|change-request|support](oneline)>
|
|||
|
>Release: <release number or tag (one line)>
|
|||
|
>Environment:
|
|||
|
<machine, os, target, libraries (multiple lines)>
|
|||
|
System: SunOS imaginary.com 4.1.1 1 sun4
|
|||
|
Architecture: sun4
|
|||
|
|
|||
|
>Description:
|
|||
|
<precise description of the problem (multiple lines)>
|
|||
|
>How-To-Repeat:
|
|||
|
<code/input/activities to reproduce (multiple lines)>
|
|||
|
>Fix:
|
|||
|
-----Emacs: *send-pr* (send-pr Fill)----All------------------
|
|||
|
>Category: other[]
|
|||
|
|
|||
|
We know from past experience that we need to set certain information
|
|||
|
into each field, so we compile all the information we know about our
|
|||
|
problem. We have some sample code which we know should work, even
|
|||
|
though it doesn't, so we'll include that. Below is the completed PR;
|
|||
|
we send this using `C-c C-c'. (The comments have been truncated).
|
|||
|
|
|||
|
SEND-PR: Lines starting with `SEND-PR' will be removed
|
|||
|
SEND-PR: automatically as well as all comments (the text
|
|||
|
SEND-PR: ...
|
|||
|
SEND-PR:
|
|||
|
To: cygnus-bugs@cygnus.com
|
|||
|
Subject: bifrabulator routines don't match
|
|||
|
From: jeffrey@imaginary.com
|
|||
|
Reply-To: jeffrey@imaginary.com
|
|||
|
X-send-pr-version: send-pr 3.2
|
|||
|
|
|||
|
>Submitter-Id: imaginary
|
|||
|
>Originator: Jeffrey Osier
|
|||
|
>Organization:
|
|||
|
Imaginary Software, Ltd.
|
|||
|
>Confidential: no
|
|||
|
>Synopsis: bifrabulator routines don't match
|
|||
|
>Severity: serious
|
|||
|
>Priority: medium
|
|||
|
>Category: bifrabulator
|
|||
|
>Class: sw-bug
|
|||
|
>Release: progressive-930101
|
|||
|
>Environment:
|
|||
|
System: SunOS imaginary.com 4.1.1 1 sun4
|
|||
|
Architecture: sun4 (SPARC)
|
|||
|
|
|||
|
>Description:
|
|||
|
the following code I fed into the bifrabulator came back
|
|||
|
with a strange error. apparently, the prestidigitation
|
|||
|
routine doesn't match with the whatsitsname in all cases.
|
|||
|
|
|||
|
>How-To-Repeat:
|
|||
|
call the bifrabulator on the following code.
|
|||
|
*code sample...*
|
|||
|
|
|||
|
>Fix:
|
|||
|
-----Emacs: *send-pr* (send-pr Fill)----All------------------
|
|||
|
To send the problem report use: C-c C-c
|
|||
|
|
|||
|
We type `C-c C-c', and off it goes. Now, we depend on Cygnus
|
|||
|
Support to figure out the answer to our problem.
|
|||
|
|
|||
|
Soon afterward, we get the following message from Cygnus:
|
|||
|
|
|||
|
From: gnats (GNATS management)
|
|||
|
Sender: gnats-admin
|
|||
|
Reply-To: hacker@cygnus.com
|
|||
|
To: jeffrey@imaginary.com
|
|||
|
Subject: Re: bifrabulator/1425: routines don't match
|
|||
|
|
|||
|
Thank you very much for your problem report.
|
|||
|
It has the internal identification: g++/1425.
|
|||
|
The individual assigned to look at your bug is: hacker
|
|||
|
(F.B. Hacker)
|
|||
|
|
|||
|
Category: bifrabulator
|
|||
|
Responsible: hacker
|
|||
|
Synopsis: bifrabulator routines don't match
|
|||
|
Arrival-Date: Sat Feb 30 03:12:55 1993
|
|||
|
|
|||
|
This is our receipt that the bug has been accepted and forwarded to the
|
|||
|
responsible party.
|
|||
|
|
|||
|
A while later, we get the analysis:
|
|||
|
|
|||
|
To: jeffrey@imaginary.com
|
|||
|
From: hacker@cygnus.com
|
|||
|
Subject: Re: bifrabulator/1425: routines don't match
|
|||
|
Reply-To: hacker@cygnus.com
|
|||
|
|
|||
|
Got your message, Jeff. It seems that the bifrabulator was
|
|||
|
confusing the prestidigitation routines with the realitychecker
|
|||
|
when lexically parsing the whatsitsname.
|
|||
|
|
|||
|
I'm working on robustisizing the bifrabulator now.
|
|||
|
|
|||
|
How about lunch next week?
|
|||
|
--
|
|||
|
F.B. Hacker
|
|||
|
Cygnus Support, Mountain View, CA 415 903 1400
|
|||
|
#include <std-disclaimer.h>
|
|||
|
|
|||
|
About the same time, we get another message from Cygnus.
|
|||
|
|
|||
|
From: hacker@cygnus.com
|
|||
|
To: jeffrey@imaginary.com
|
|||
|
Subject: Re: bifrabulator/1425: doesn't match prestidig
|
|||
|
Reply-To: hacker@cygnus.com
|
|||
|
|
|||
|
|
|||
|
`F.B. Hacker' changed the state to `analyzed'.
|
|||
|
|
|||
|
State-Changed-From-To: open-analyzed
|
|||
|
State-Changed-By: hacker
|
|||
|
State-Changed-When: Fri Feb 31 1993 08:59:16 1993
|
|||
|
State-Changed-Why:
|
|||
|
figured out the problem, working on a patch this afternoon
|
|||
|
--
|
|||
|
F.B. Hacker
|
|||
|
Cygnus Support, Mountain View, CA 415 903 1400
|
|||
|
#include <std-disclaimer.h>
|
|||
|
|
|||
|
The bug has now been analyzed, and Cygnus is working on a solution.
|
|||
|
|
|||
|
Sometime later, we get more mail from F.B.:
|
|||
|
|
|||
|
To: jeffrey@imaginary.com
|
|||
|
From: hacker@cygnus.com
|
|||
|
Subject: Re: bifrabulator/1425: routines don't match
|
|||
|
Reply-To: hacker@cygnus.com
|
|||
|
|
|||
|
There's a patch now that you can ftp over and check out.
|
|||
|
|
|||
|
Hey, that joke you sent me was great! The one about the
|
|||
|
strings walking into a bar... my boss laughed for an hour!
|
|||
|
--
|
|||
|
F.B. Hacker
|
|||
|
Cygnus Support, Mountain View, CA 415 903 1400
|
|||
|
#include <std-disclaimer.h>
|
|||
|
|
|||
|
From: hacker@cygnus.com
|
|||
|
To: jeffrey@imaginary.com
|
|||
|
Subject: Re: bifrabulator/1425: doesn't match prestidig
|
|||
|
Reply-To: hacker@cygnus.com
|
|||
|
|
|||
|
|
|||
|
`F.B. Hacker' changed the state to `feedback'.
|
|||
|
|
|||
|
State-Changed-From-To: analyzed-feedback
|
|||
|
State-Changed-By: hacker
|
|||
|
State-Changed-When: Fri Feb 31 1993 23:43:16 1993
|
|||
|
State-Changed-Why:
|
|||
|
got the patch finished, notified Jeff at Imaginary Software
|
|||
|
--
|
|||
|
F.B. Hacker
|
|||
|
Cygnus Support, Mountain View, CA 415 903 1400
|
|||
|
#include <std-disclaimer.h>
|
|||
|
|
|||
|
The bug has gone into "feedback" status now, until we get the patch,
|
|||
|
install it and test it. When everything tests well, we can mail F.B.
|
|||
|
back and tell him the bug's been fixed, and he can change the state of
|
|||
|
the PR from "feedback" to "closed".
|
|||
|
|
|||
|
Following is a list of valid `>Category:' entries that are supported
|
|||
|
by Cygnus.
|
|||
|
|
|||
|
* Menu:
|
|||
|
|
|||
|
* Valid Categories::
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: Valid Categories, Up: An Example
|
|||
|
|
|||
|
Valid Categories
|
|||
|
================
|
|||
|
|
|||
|
`bfd'
|
|||
|
GNU binary file descriptor library.
|
|||
|
|
|||
|
`bifrabulator'
|
|||
|
This one doesn't actually exist.
|
|||
|
|
|||
|
`binutils'
|
|||
|
GNU utilities for binary files (`ar', `nm', `size'...).
|
|||
|
|
|||
|
`bison'
|
|||
|
GNU parser generator.
|
|||
|
|
|||
|
`byacc'
|
|||
|
Free parser generator.
|
|||
|
|
|||
|
`config'
|
|||
|
Cygnus Support Software configuration and installation.
|
|||
|
|
|||
|
`cvs'
|
|||
|
Concurrent Version System.
|
|||
|
|
|||
|
`diff'
|
|||
|
GNU `diff' program.
|
|||
|
|
|||
|
`doc'
|
|||
|
Documentation and manuals.
|
|||
|
|
|||
|
`emacs'
|
|||
|
GNU Emacs editor and related functions.
|
|||
|
|
|||
|
`flex'
|
|||
|
GNU lexical analyzer.
|
|||
|
|
|||
|
`g++'
|
|||
|
GNU C++ compiler.
|
|||
|
|
|||
|
`gas'
|
|||
|
GNU assembler.
|
|||
|
|
|||
|
`gcc'
|
|||
|
GNU C compiler.
|
|||
|
|
|||
|
`gdb'
|
|||
|
GNU source code debugger.
|
|||
|
|
|||
|
`glob'
|
|||
|
The filename globbing functions.
|
|||
|
|
|||
|
`gprof'
|
|||
|
GNU profiler.
|
|||
|
|
|||
|
`grep'
|
|||
|
GNU `grep' program.
|
|||
|
|
|||
|
`info'
|
|||
|
GNU `info' hypertext reader.
|
|||
|
|
|||
|
`ispell'
|
|||
|
GNU spelling checker.
|
|||
|
|
|||
|
`kerberos'
|
|||
|
Kerberos authentication system.
|
|||
|
|
|||
|
`ld'
|
|||
|
GNU linker.
|
|||
|
|
|||
|
`libc'
|
|||
|
Cygnus Support C Support Library.
|
|||
|
|
|||
|
`libg++'
|
|||
|
GNU C++ class library.
|
|||
|
|
|||
|
`libiberty'
|
|||
|
GNU `libiberty' library.
|
|||
|
|
|||
|
`libm'
|
|||
|
Cygnus Support C Math Library.
|
|||
|
|
|||
|
`make'
|
|||
|
GNU `make' program.
|
|||
|
|
|||
|
`makeinfo'
|
|||
|
GNU utility to build Info files from Texinfo documents.
|
|||
|
|
|||
|
`mas'
|
|||
|
GNU Motorola syntax assembler.
|
|||
|
|
|||
|
`newlib'
|
|||
|
Cygnus Support C Support and Math Libraries.
|
|||
|
|
|||
|
`patch'
|
|||
|
GNU bug patch program.
|
|||
|
|
|||
|
`gnats'
|
|||
|
GNU Problem Report Management System.
|
|||
|
|
|||
|
`rcs'
|
|||
|
Revision Control System.
|
|||
|
|
|||
|
`readline'
|
|||
|
GNU `readline' library.
|
|||
|
|
|||
|
`send-pr'
|
|||
|
GNU Problem Report submitting program.
|
|||
|
|
|||
|
`test'
|
|||
|
Category to use when testing `send-pr'.
|
|||
|
|
|||
|
`texindex'
|
|||
|
GNU documentation indexing utility.
|
|||
|
|
|||
|
`texinfo'
|
|||
|
GNU documentation macros.
|
|||
|
|
|||
|
`other'
|
|||
|
Anything which is not covered by the above categories.
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: Installing send-pr, Next: Index, Prev: An Example, Up: Top
|
|||
|
|
|||
|
Installing `send-pr' on your system
|
|||
|
***********************************
|
|||
|
|
|||
|
If you receive `send-pr' as part of a larger software distribution,
|
|||
|
it probably gets installed when the full distribution is installed. If
|
|||
|
you are using GNATS at your site as well, you must decide where
|
|||
|
`send-pr' sends Problem Reports by default; see *Note Setting a default
|
|||
|
SITE: default site.
|
|||
|
|
|||
|
* Menu:
|
|||
|
|
|||
|
* installation:: installing `send-pr' by itself
|
|||
|
* default site:: setting a default site
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: installation, Next: default site, Up: Installing send-pr
|
|||
|
|
|||
|
Installing `send-pr' by itself
|
|||
|
==============================
|
|||
|
|
|||
|
Install `send-pr' by following these steps (you may need `root'
|
|||
|
access in order to change the `aliases' file and to install `send-pr'):
|
|||
|
|
|||
|
* Unpack the distribution into a directory which we refer to as
|
|||
|
SRCDIR.
|
|||
|
|
|||
|
* Edit the file `Makefile' to reflect local conventions.
|
|||
|
Specifically, you should edit the variable `prefix' to alter the
|
|||
|
installation location. The default is `/usr/local'. All files are
|
|||
|
installed under `prefix' (see below).
|
|||
|
|
|||
|
* *Run*
|
|||
|
make all install [ info ] [ install-info ] [ clean ]
|
|||
|
|
|||
|
The targets mean the following:
|
|||
|
|
|||
|
`all'
|
|||
|
Builds `send-pr' and `install-sid'
|
|||
|
|
|||
|
`install'
|
|||
|
Installs the following:
|
|||
|
|
|||
|
`install-sid'
|
|||
|
`send-pr'
|
|||
|
into `PREFIX/bin'
|
|||
|
|
|||
|
`send-pr.1'
|
|||
|
into `PREFIX/man/man1'
|
|||
|
|
|||
|
`SITE'
|
|||
|
the list of valid CATEGORIES for the Support Site from
|
|||
|
which you received `send-pr', installed as
|
|||
|
`PREFIX/lib/gnats/SITE'
|
|||
|
|
|||
|
`send-pr.el'
|
|||
|
into `PREFIX/lib/emacs/lisp'(1)
|
|||
|
|
|||
|
`info (*optional*)'
|
|||
|
Builds `send-pr.info' from `send-pr.texi'
|
|||
|
(`send-pr.info' is included with this distribution)
|
|||
|
|
|||
|
`install-info (*optional*)'
|
|||
|
Installs `send-pr.info' into `PREFIX/info'
|
|||
|
|
|||
|
`clean (*optional*)'
|
|||
|
Removes all intermediary build files that can be rebuilt from
|
|||
|
source code
|
|||
|
|
|||
|
* Run
|
|||
|
|
|||
|
install-sid YOUR-SID
|
|||
|
|
|||
|
where YOUR-SID is the identification code you received with
|
|||
|
`send-pr'. `send-pr' automatically inserts this value into the
|
|||
|
template field `>Submitter-Id:'. If you've downloaded `send-pr'
|
|||
|
from the Net, use `net' for this value.
|
|||
|
|
|||
|
* Place the following line in `PREFIX/lib/emacs/lisp/default.el', or
|
|||
|
instruct your users to place the following line in their `.emacs'
|
|||
|
files:
|
|||
|
|
|||
|
(autoload 'send-pr "send-pr" "Submit a Problem Report." t)
|
|||
|
|
|||
|
* Create a mail alias for the Support Site from which you received
|
|||
|
`send-pr', and for every site with which you wish to use `send-pr'
|
|||
|
to communicate. Each alias must have a suffix of `-gnats'. The
|
|||
|
Support Site(s) will provide the correct addresses where these
|
|||
|
aliases should point. For instance, edit your mail aliases file
|
|||
|
to contain something like:
|
|||
|
|
|||
|
# support sites; for use with send-pr
|
|||
|
cygnus-gnats: bugs@cygnus.com # Cygnus Support
|
|||
|
bumblebee-gnats: bumblebugs@bumblebee.com # Bumblebee Inc.
|
|||
|
mycompany-gnats: bugs@my.company.com (*if you use GNATS locally*)
|
|||
|
|
|||
|
`send-pr' automatically searches for these aliases when you type
|
|||
|
|
|||
|
send-pr cygnus
|
|||
|
send-pr bumblebee
|
|||
|
send-pr SITE...
|
|||
|
|
|||
|
`send-pr' also uses SITE to determine the categories of problems
|
|||
|
accepted by the site in question by looking in
|
|||
|
|
|||
|
PREFIX/lib/gnats/SITE
|
|||
|
|
|||
|
---------- Footnotes ----------
|
|||
|
|
|||
|
(1) If your main Emacs lisp repository is in a different directory
|
|||
|
from this, substitute that directory for `PREFIX/lib/emacs/lisp'.
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: default site, Prev: installation, Up: Installing send-pr
|
|||
|
|
|||
|
Setting a default SITE
|
|||
|
======================
|
|||
|
|
|||
|
`send-pr' is capable of sending Problem Reports to any number of
|
|||
|
Support Sites, using mail aliases which have `-gnats' appended them.
|
|||
|
`send-pr' automatically appends the suffix, so that when you type
|
|||
|
|
|||
|
send-pr SITE
|
|||
|
|
|||
|
the Problem Report goes to the address noted in the `aliases' file as
|
|||
|
`SITE-gnats'. You can do this in the Emacs version of `send-pr' by
|
|||
|
invoking the program with
|
|||
|
|
|||
|
C-u M-x send-pr
|
|||
|
|
|||
|
You are prompted for SITE.
|
|||
|
|
|||
|
SITE is also used to error-check the `>Category:' field, as a
|
|||
|
precaution against sending mistaken information (and against sending
|
|||
|
information to the wrong site).
|
|||
|
|
|||
|
You may also simply type
|
|||
|
|
|||
|
send-pr
|
|||
|
|
|||
|
from the shell (or `M-x send-pr' in Emacs), and the Problem Report you
|
|||
|
generate will be sent to the SITE, which is usually the site from which
|
|||
|
you received your distribution of `send-pr'. If you use GNATS at your
|
|||
|
own organization, the default is usually your local address for
|
|||
|
reporting problems.
|
|||
|
|
|||
|
To change this, simply edit the file `Makefile' before installing
|
|||
|
and change the line
|
|||
|
|
|||
|
GNATS_SITE = SITE
|
|||
|
|
|||
|
to reflect the site where you wish to send PRs by default.
|
|||
|
|
|||
|
|
|||
|
File: send-pr.info, Node: Index, Prev: Installing send-pr, Up: Top
|
|||
|
|
|||
|
Index
|
|||
|
*****
|
|||
|
|
|||
|
* Menu:
|
|||
|
|
|||
|
* >Arrival-Date:: Problem Report fields.
|
|||
|
* >Audit-Trail:: Problem Report fields.
|
|||
|
* >Category:: Problem Report fields.
|
|||
|
* >Class:: Problem Report fields.
|
|||
|
* >Confidential:: Problem Report fields.
|
|||
|
* >Description:: Problem Report fields.
|
|||
|
* >Environment:: Problem Report fields.
|
|||
|
* >Fix:: Problem Report fields.
|
|||
|
* >How-To-Repeat:: Problem Report fields.
|
|||
|
* >Number:: Problem Report fields.
|
|||
|
* >Organization:: Problem Report fields.
|
|||
|
* >Originator:: Problem Report fields.
|
|||
|
* >Priority:: Problem Report fields.
|
|||
|
* >Release:: Problem Report fields.
|
|||
|
* >Responsible:: Problem Report fields.
|
|||
|
* >Severity:: Problem Report fields.
|
|||
|
* >State:: Problem Report fields.
|
|||
|
* >Submitter-Id:: using send-pr.
|
|||
|
* >Submitter-Id:: Problem Report fields.
|
|||
|
* >Synopsis:: Problem Report fields.
|
|||
|
* >Unformatted:: Problem Report fields.
|
|||
|
* Arrival-Date field: Problem Report fields.
|
|||
|
* Audit-Trail field: Problem Report fields.
|
|||
|
* bifrabulator: An Example.
|
|||
|
* Category field: Problem Report fields.
|
|||
|
* Class field: Problem Report fields.
|
|||
|
* Confidential field: Problem Report fields.
|
|||
|
* Description field: Problem Report fields.
|
|||
|
* Environment field: Problem Report fields.
|
|||
|
* Fix field: Problem Report fields.
|
|||
|
* From: header: Mail header fields.
|
|||
|
* How-To-Repeat field: Problem Report fields.
|
|||
|
* Number field: Problem Report fields.
|
|||
|
* Organization field: Problem Report fields.
|
|||
|
* Originator field: Problem Report fields.
|
|||
|
* Priority field: Problem Report fields.
|
|||
|
* Release field: Problem Report fields.
|
|||
|
* Reply-To: header: Mail header fields.
|
|||
|
* Responsible-Changed-<From>-<To>: in >Audit-Trail:: Problem Report fields.
|
|||
|
* Responsible-Changed-By: in >Audit-Trail:: Problem Report fields.
|
|||
|
* Responsible-Changed-When: in >Audit-Trail:: Problem Report fields.
|
|||
|
* Responsible-Changed-Why: in >Audit-Trail:: Problem Report fields.
|
|||
|
* Responsible field: Problem Report fields.
|
|||
|
* send-pr fields: using send-pr.
|
|||
|
* send-pr within Emacs: send-pr in Emacs.
|
|||
|
* Severity field: Problem Report fields.
|
|||
|
* State-Changed-<From>-<To>: in >Audit-Trail:: Problem Report fields.
|
|||
|
* State-Changed-By: in >Audit-Trail:: Problem Report fields.
|
|||
|
* State-Changed-When: in >Audit-Trail:: Problem Report fields.
|
|||
|
* State-Changed-Why: in >Audit-Trail:: Problem Report fields.
|
|||
|
* State field: Problem Report fields.
|
|||
|
* Subject: header: Mail header fields.
|
|||
|
* Submitter-Id field: Problem Report fields.
|
|||
|
* Submitter-Id field: using send-pr.
|
|||
|
* Synopsis field: Problem Report fields.
|
|||
|
* To: header: Mail header fields.
|
|||
|
* Unformatted field: Problem Report fields.
|
|||
|
* *analyzed* state: States.
|
|||
|
* *change-request* class: Problem Report fields.
|
|||
|
* *closed* state: States.
|
|||
|
* *critical* severity problems: Problem Report fields.
|
|||
|
* *doc-bug* class: Problem Report fields.
|
|||
|
* *duplicate* class: Problem Report fields.
|
|||
|
* *Enumerated* data types: Fields.
|
|||
|
* *feedback* state: States.
|
|||
|
* *high* priority problems: Problem Report fields.
|
|||
|
* *low* priority problems: Problem Report fields.
|
|||
|
* *medium* priority problems: Problem Report fields.
|
|||
|
* *MultiText* data types: Fields.
|
|||
|
* *non-critical* severity problems: Problem Report fields.
|
|||
|
* *open* state: States.
|
|||
|
* *serious* severity problems: Problem Report fields.
|
|||
|
* *support* class: Problem Report fields.
|
|||
|
* *suspended* state: States.
|
|||
|
* *sw-bug* class: Problem Report fields.
|
|||
|
* *Text* data types: Fields.
|
|||
|
* an example: An Example.
|
|||
|
* appending PRs: using send-pr.
|
|||
|
* appending PRs: Problem Report fields.
|
|||
|
* automatic notification: States.
|
|||
|
* bad Problem Reports: using send-pr.
|
|||
|
* blank PR template: An Example.
|
|||
|
* command line options: send-pr from the shell.
|
|||
|
* comment section in the PR template: using send-pr.
|
|||
|
* completed Problem Report: An Example.
|
|||
|
* completion in Emacs: send-pr in Emacs.
|
|||
|
* confidentiality in PRs: Problem Report fields.
|
|||
|
* Cygnus Support: An Example.
|
|||
|
* database similarities: Fields.
|
|||
|
* default SITE: default site.
|
|||
|
* default PR template: An Example.
|
|||
|
* details about send-pr: send-pr in detail.
|
|||
|
* editing and sending PRs: Invoking send-pr.
|
|||
|
* effective problem reporting: Helpful hints.
|
|||
|
* Emacs: send-pr in Emacs.
|
|||
|
* errors: using send-pr.
|
|||
|
* example of a completed PR: An Example.
|
|||
|
* example of a default template: An Example.
|
|||
|
* example of a list of valid categories: Valid Categories.
|
|||
|
* example of a state change: An Example.
|
|||
|
* example PR: An Example.
|
|||
|
* example Problem Report: Fields.
|
|||
|
* field format: Problem Report fields.
|
|||
|
* fields: Fields.
|
|||
|
* fields - list: Problem Report fields.
|
|||
|
* final state ("closed"): States.
|
|||
|
* foreword to send-pr: Top.
|
|||
|
* format: Fields.
|
|||
|
* generating new PRs: Invoking send-pr.
|
|||
|
* GNATS: Top.
|
|||
|
* GNATS database fields: Problem Report fields.
|
|||
|
* GNATS fields - list: Problem Report fields.
|
|||
|
* GNU software support: An Example.
|
|||
|
* helpful hints: Helpful hints.
|
|||
|
* Imaginary Software, Ltd.: An Example.
|
|||
|
* information to submit: Helpful hints.
|
|||
|
* initial state ("open"): States.
|
|||
|
* installation: Installing send-pr.
|
|||
|
* installation procedure: installation.
|
|||
|
* interactive interface: send-pr in Emacs.
|
|||
|
* Internet standard RFC-822: Mail header fields.
|
|||
|
* introduction to send-pr: Top.
|
|||
|
* invalid Problem Reports: using send-pr.
|
|||
|
* invoking send-pr from Emacs: send-pr in Emacs.
|
|||
|
* invoking send-pr from the shell: send-pr from the shell.
|
|||
|
* invoking send-pr: Invoking send-pr.
|
|||
|
* kinds of helpful information: Helpful hints.
|
|||
|
* life-cycle of a Problem Report: States.
|
|||
|
* listing valid categories: send-pr from the shell.
|
|||
|
* mail header fields: Mail header fields.
|
|||
|
* mail header section: using send-pr.
|
|||
|
* name completion in Emacs: send-pr in Emacs.
|
|||
|
* other mail: using send-pr.
|
|||
|
* other mail: Problem Report fields.
|
|||
|
* overview to send-pr: Top.
|
|||
|
* PR confidentiality: Problem Report fields.
|
|||
|
* Problem Report data types: Fields.
|
|||
|
* Problem Report format: Fields.
|
|||
|
* Problem Report states: States.
|
|||
|
* Problem Report template: Fields.
|
|||
|
* Problem Reports: send-pr in detail.
|
|||
|
* related mail: Problem Report fields.
|
|||
|
* related mail: using send-pr.
|
|||
|
* Report all the facts!: Helpful hints.
|
|||
|
* sample Problem Report: Fields.
|
|||
|
* saving related mail: Problem Report fields.
|
|||
|
* saving related mail: using send-pr.
|
|||
|
* sending PRs: Invoking send-pr.
|
|||
|
* setting a default SITE: default site.
|
|||
|
* shell invocation: send-pr from the shell.
|
|||
|
* state change example: An Example.
|
|||
|
* state--"analyzed": States.
|
|||
|
* state--"closed": States.
|
|||
|
* state--"feedback": States.
|
|||
|
* state--"open": States.
|
|||
|
* state--"suspended": States.
|
|||
|
* states of Problem Reports: States.
|
|||
|
* subsequent mail: Problem Report fields.
|
|||
|
* subsequent mail: using send-pr.
|
|||
|
* template: using send-pr.
|
|||
|
* template comment section: using send-pr.
|
|||
|
* using send-pr from within Emacs: send-pr in Emacs.
|
|||
|
* Using and Porting GNU CC: Helpful hints.
|
|||
|
* using send-pr: Invoking send-pr.
|
|||
|
* valid categories: Valid Categories.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Tag Table:
|
|||
|
Node: Top827
|
|||
|
Node: send-pr in detail2851
|
|||
|
Node: States3690
|
|||
|
Node: Fields5122
|
|||
|
Node: Mail header fields8791
|
|||
|
Node: Problem Report fields9656
|
|||
|
Node: Invoking send-pr17045
|
|||
|
Node: using send-pr17502
|
|||
|
Node: send-pr in Emacs24509
|
|||
|
Node: send-pr from the shell28914
|
|||
|
Node: Helpful hints31261
|
|||
|
Node: An Example34366
|
|||
|
Node: Valid Categories43466
|
|||
|
Node: Installing send-pr45285
|
|||
|
Node: installation45852
|
|||
|
Node: default site49077
|
|||
|
Node: Index50334
|
|||
|
|
|||
|
End Tag Table
|