<p>In addition to the mailserver on <code>request\@$gEmailDomain</code>
which allows the retrieval of $gBug data and documentation by email,
there is another server on <code>control\@$gEmailDomain</code> which
-also allows $gBug reports to be manipulated in various ways.
+also allows $gBug reports to be manipulated in various ways.</p>
<p>The control server works just like the request server, except that it
has some additional commands; in fact, it's the same program. The two
addresses are only separated to avoid users making mistakes and
-causing problems while merely trying to request information.
+causing problems while merely trying to request information.</p>
<p>Please see the
<a href="server-request.html#introduction">introduction to the request
server</a> available on the World Wide Web, in the file
-<code>bug-maint-mailcontrol.txt</code>, or by sending
+<code>bug-log-mailserver.txt</code>, or by sending
<code>help</code> to either mailserver, for details of the basics of
operating the mailservers and the common commands available when
-mailing either address.
+mailing either address.</p>
<p>The <a href="server-refcard.html">reference card</a> for the
mailservers is available via the WWW, in
<code>bug-mailserver-refcard.txt</code> or by email using the
-<code>refcard</code> command).
+<code>refcard</code> command.</p>
-<h1>Commands available only at the control mailserver</h1>
+<h1>Commands available at the control mailserver</h1>
<dl>
-<dt><code>close</code> <var>bugnumber</var>
-
- <dd>Close $gBug report #<var>bugnumber</var>.
-
- <p>A notification is sent to the user who reported the $gBug, but (in
- contrast to mailing <var>bugnumber</var><code>-done@$gEmailDomain</code>) the
- text of the mail which caused the $gBug to be closed is <em>not</em>
- included in that notification. The maintainer who closes a report
- should ensure, probably by sending a separate message, that the user
- who reported the $gBug knows why it is being closed.
-
<dt><code>reassign</code> <var>bugnumber</var> <var>package</var>
<dd>Records that $gBug #<var>${gBug}number</var> is a $gBug in <var>package</var>.
again.
<p>If the $gBug is not closed then reopen won't do anything, not even
- change the originator. There is no way to change the originator of an
- open $gBug report (this is deliberate, so that you can't have a $gBug be
- closed and then deleted $gRemoveAge days later without someone being told about
- it).
+ change the originator. To change the originator of an open $gBug report,
+ use the <code>submitter</code> command; note that this will inform the
+ original submitter of the change.
+
+<dt><code>submitter</code> <var>bugnumber</var>
+<var>originator-address</var> | <code>!</code>
+
+ <dd>Changes the originator of #<var>bugnumber</var> to
+ <var>originator-address</var>.
+
+ <p>If you wish to become the new originator of the report you can use
+ the <code>!</code> shorthand or specify your own email address.</p>
+
+ <p>While the <code>reopen</code> command changes the originator of other
+ bugs merged with the one being reopened, <code>submitter</code> does not
+ affect merged bugs.</p>
<dt><code>forwarded</code> <var>bugnumber</var> <var>address</var>
<dt><code>retitle</code> <var>bugnumber</var> <var>new-title</var>
<dd>Changes the title of a $gBug report to that specified (the default is
- the <code>Subject</code> mail header from the original report.
+ the <code>Subject</code> mail header from the original report).
<p>Unlike most of the other $gBug-manipulation commands when used on one of
a set of merged reports this will change the title of only the
<p>For <a href="Developer.html#severities">their meanings</a> please
consult the general developers' documentation for the $gBug system.
+<dt><code>clone</code> <var>bugnumber</var> [ <var>new IDs</var> ]
+
+ <dd>The clone control command allows you to duplicate a $gBug report. It is
+ useful in the case where a single report actually indicates that multiple
+ distinct $gBugs have occurred. "<var>New IDs</var>" are negative numbers,
+ separated by spaces, which may be used in subsequent control commands to
+ refer to the newly duplicated $gBugs. A new report is generated for each
+ new ID.
+
+ <p>Example usage:</p>
+
+ <pre>
+ clone 12345 -1 -2
+ reassign -1 foo
+ retitle -1 foo: foo sucks
+ reassign -2 bar
+ retitle -2 bar: bar sucks when used with foo
+ severity -2 wishlist
+ clone 123456 -3
+ reassign -3 foo
+ retitle -3 foo: foo sucks
+ merge -1 -3
+ </pre>
+
<dt><code>merge</code> <var>bugnumber</var> <var>bugnumber</var> ...
<dd>Merges two or more $gBug reports. When reports are merged opening,
<p>Before $gBugs can be merged they must be in exactly the same state:
either all open or all closed, with the same forwarded-to upstream
- author address or all not marked as forwarded, and all assigned to the
+ author address or all not marked as forwarded, all assigned to the
same package or package(s) (an exact string comparison is done on the
- package to which the $gBug is assigned). If they don't start out in the
- same state you should use <code>reassign</code>, <code>reopen</code>
- and so forth to make sure that they are before using
- <code>merge</code>.
+ package to which the $gBug is assigned), and all of the same severity.
+ If they don't start out in the same state you should use
+ <code>reassign</code>, <code>reopen</code> and so forth to make sure
+ that they are before using <code>merge</code>.
<p>If any of the $gBugs listed in a <code>merge</code> command is already
merged with another $gBug then all the reports merged with any of the
is reflexive, transitive and symmetric.
<p>Merging reports causes a note to appear on each report's logs; on the
- WWW pages this is includes links to the other $gBugs.
+ WWW pages this includes links to the other $gBugs.
<p>Merged reports are all expired simultaneously, and only when all of
the reports each separately meet the criteria for expiry.
command; if you want to disconnect more than one $gBug simply include
several <code>unmerge</code> commands in your message.
+<dt><code>tags</code> <var>bugnumber</var> [ <code>+</code> | <code>-</code> | <code>=</code> ] <var>tag</var>
+
+ <dd>Sets a particular tag for the $gBug report #<var>bugnumber</var> to
+ <var>tag</var>. No notification is sent to the user who reported the $gBug.
+ <code>+</code> means adding, <code>-</code> means subtracting, and
+ <code>=</code> means ignoring the current tags and setting them afresh.
+ The default action is adding.
+
+ <p>Available tags currently include <code>patch</code>, <code>wontfix</code>,
+ <code>moreinfo</code>, <code>unreproducible</code>, <code>help</code>,
+ <code>pending</code>, <code>fixed</code>, <code>security</code>,
+ <code>upstream</code>, <code>potato</code>, <code>woody</code>,
+ <code>sarge</code>,
+ <code>sid</code> and <code>experimental</code>.
+
+ <p>For <a href="Developer.html#tags">their meanings</a> please consult the
+ general developers' documentation for the $gBug system.
+
+<dt><code>close</code> <var>bugnumber</var>
+
+ <dd>Close $gBug report #<var>bugnumber</var>.
+
+ <p>A notification is sent to the user who reported the $gBug, but (in
+ contrast to mailing <var>bugnumber</var><code>-done@$gEmailDomain</code>) the
+ text of the mail which caused the $gBug to be closed is <strong>not</strong>
+ included in that notification. The maintainer who closes a report
+ should ensure, probably by sending a separate message, that the user
+ who reported the $gBug knows why it is being closed.
+ The use of this command is therefore deprecated.
+
+<dt><code>package</code> [ <var>packagename</var> ... ]
+
+ <dd>Limits the following commands so that they will only apply to bugs
+ filed against the listed packages. You can list one or more packages. If
+ you don't list any packages, the following commands will apply to all
+ bugs. You're encouraged to use this as a safety feature in case you
+ accidentally use the wrong bug numbers.
+
+ <p>Example usage:</p>
+
+ <pre>
+ package foo
+ reassign 123456 bar
+
+ package bar
+ retitle 123456 bar: bar sucks
+ severity 123456 normal
+
+ package
+ severity 234567 wishlist
+ </pre>
+
+<dt><code>quit</code>
+<dt><code>stop</code>
+<dt><code>thank</code>...
+<dt><code>--</code>...
+
+ <dd>Tells the control server to stop processing the message; the remainder
+ of the message can include explanations, signatures or anything else,
+ none of it will be detected by the control server.
+
+<dt><code>#</code>...
+
+ <dd>One-line comment. The <code>#</code> must be at the start of the line.
+
</dl>
<hr>