declare smobs in alloc.c
[bpt/emacs.git] / admin / notes / bugtracker
CommitLineData
acc12ef7 1NOTES ON THE EMACS BUG TRACKER -*- outline -*-
585351d7 2
d72fa05c 3The Emacs Bug Tracker can be found at http://debbugs.gnu.org/
585351d7 4
7a88d194
GM
5* Quick-start guide
6
f1b95f0a 7This is 95% of all you will ever need to know.
7a88d194
GM
8
9** How do I report a bug?
10Use M-x report-emacs-bug, or send mail to bug-gnu-emacs@gnu.org.
f4ca11f8
GM
11If you want to Cc someone, use an "X-Debbugs-CC" header (or
12pseudo-header, see below) instead.
7a88d194
GM
13
14** How do I comment on a bug?
15Reply to a mail on the bug-gnu-emacs list in the normal way.
16Or send a mail to 123@debbugs.gnu.org.
17
18If the bug is old and closed, you may have to unarchive it first.
19Send a mail to control@debbugs.gnu.org with
20unarchive 123
21on the first line of the body.
22
23** How do I close a bug?
24Send a mail to 123-done@debbugs.gnu.org. In the body, explain
25why the bug is being closed.
26
27** How do I set bug meta-data?
28By mailing commands to control@debbugs.gnu.org. Place commands at the
29start of the message body, one per line.
30
31severity 123 serious|important|normal|minor|wishlist
32tags 123 moreinfo|unreproducible|wontfix|patch
33
34* More detailed information
35
b945368a 36For a list of all bugs, see http://debbugs.gnu.org/db/pa/lemacs.html
72707255 37This is a static page, updated once a day. There is also a dynamic
f1b95f0a
GM
38list, generated on request. This accepts various options, eg to see
39the most recent bugs:
40
41http://debbugs.gnu.org/cgi/pkgreport.cgi?newest=100
42
43Or follow the links on the front page http://debbugs.gnu.org .
585351d7 44
4ca141e4
GM
45** How do I report a bug in Emacs now?
46The same way as you always did. Send mail to bug-gnu-emacs@gnu.org,
47or use M-x report-emacs-bug.
48
49The only differences are:
50
51i) Your report will be assigned a number and generate an automatic reply.
52
53ii) Optionally, you can set some database parameters when you first
54report a bug (see "Setting bug parameters" below).
55
f4ca11f8
GM
56iii) If you want to CC: someone, use X-Debbugs-CC: (note this only
57applies to _new_ reports, not followups).
4ca141e4
GM
58
59Once your report is filed and assigned a number, it is sent out to the
60bug mailing list. In some cases, it may be appropriate to just file a
61bug, without sending out a copy. To do this, send mail to
d72fa05c 62quiet@debbugs.gnu.org.
4ca141e4
GM
63
64** How do I reply to an existing bug report?
d72fa05c 65Reply to 123@debbugs.gnu.org, replacing 123 with the number
9376e71f 66of the bug you are interested in. NB this only sends mail to the
1adfa36f 67bug-list, it does NOT send a CC to the original bug submitter.
9376e71f 68So you need to explicitly CC him/her (and anyone else you like).
1adfa36f
GM
69(This works the same way as all the Emacs mailing lists. We generally
70don't assume anyone who posts to a list is subscribed to it, so we
71cc everyone on replies.)
9376e71f
GM
72
73(Many people think the submitter SHOULD be automatically subscribed
74to subsequent discussion, but this does not seem to be implemented.
1adfa36f
GM
75See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=37078
76See also http://debbugs.gnu.org/5439 )
9376e71f 77
ed130eb0
GM
78Do NOT send a separate copy to the bug list address, since this may
79generate a new report. The only time to send mail to the bug list
80address is to create a new report.
585351d7 81
82c43d4c
GM
82Gnus users can add the following to message-dont-reply-to-names;
83similarly with Rmail and rmail-dont-reply-to-names:
84
38da2cf8 85"\\(emacs-pretest-bug\\|bug-gnu-emacs\\|bug-\\(e\\|gnu\\)macs\\)@gnu\\.org\\|\
b64afe54
GM
86\\(submit\\|control\\|owner\\)@debbugs\\.gnu\\.org"
87
88The "owner@debbugs.gnu.org" entry is there because it appears in the
89"Resent-To" header. For a long time Rmail erroneously included such
90headers in replies. If you correspond with an Rmail user on a bug,
91these addresses may end up in the Cc. Mailing to them does nothing
1adfa36f
GM
92but create duplicates and errors. (It is possible, but unlikely, that
93you might want to have a dialog with the owner address, outside of
94normal bug reporting.)
61cf9fad 95
f4ca11f8 96** When reporting a new bug, to send a Cc to another address
b33f826d 97(e.g. bug-cc-mode@gnu.org), do NOT just use a Cc: header.
062a07f2 98Instead, use "X-Debbugs-CC:". This ensures the Cc address will get a
b33f826d 99mail with the bug report number in. If you do not do this, each reply
f4ca11f8
GM
100in the subsequent discussion might end up creating a new bug.
101This is annoying. (So annoying that a form of message-id tracking has
102been implemented to hopefully stop this happening, but it is still
103better to use X-Debbugs-CC.)
d6388ebd 104
f4ca11f8
GM
105Like any X-Debbugs- header, this one can also be specified in the
106pseudo-header (see below), if your mail client does not let you add
107"X-" headers.
f1b95f0a 108
9630d49e 109If a new report contains X-Debbugs-CC in the input, this is
6096db2e 110converted to a real Cc header in the output. (See Bug#1780,5384)
9630d49e 111It is also merged into the Resent-CC header (see below).
a1e32f89
GM
112
113** How does Debbugs send out mails?
114
ed130eb0
GM
115The mails are sent out to the bug list by being resent. The From:
116header is unchanged. In new reports only (at present), the To:
117address is altered as follows. Any "bug-gnu-emacs",
118"emacs-pretest-bug", or "submit@debbugs" address is replaced by
119123@debbugs in the mail that gets sent out. (This also applies to any
120Cc: header, though you should be using X-Debbugs-CC instead in new
121reports). The original header is stored as X-Debbugs-Original-To, if
122it was changed. Any X-Debbugs-CC is merged into the Cc.
a1e32f89
GM
123
124Mails arriving at the bug list have the following Resent-* headers:
125
126Resent-From: person who submitted the bug
b64afe54 127Resent-To: owner@debbugs.gnu.org
a1e32f89
GM
128Resent-CC: maintainer email address, plus any X-Debbugs-CC: entries
129
b64afe54 130The "maintainer email address" is "bug-gnu-emacs@gnu.org" in most cases.
a1e32f89 131
09ae5da1 132** To not get acknowledgment mail from the tracker,
9376e71f
GM
133add an "X-Debbugs-No-Ack:" header (with any value). If you use Gnus,
134you can add an element to gnus-posting-styles to do this automatically, eg:
135
136("gnu-emacs\\(-pretest\\)?-bug"
137 ("X-Debbugs-No-Ack" "yes"))
138
139(adjust the regexp according to the name you use for the bug lists)
d6388ebd 140
cfa6d52a
GM
141** To record a bug in the tracker without sending mail to the bug list.
142This can be useful to make a note of something discussed on
bb5fdfd2
GM
143emacs-devel that needs fixing. In other words, this can be the
144equivalent of adding something to FOR-RELEASE.
cfa6d52a 145
d72fa05c 146To: quiet@debbugs.gnu.org
cfa6d52a
GM
147[headers end]
148Package: emacs
149Version: 23.0.60
150Severity: minor
151
152Remember to fix FOO, as discussed on emacs-devel at http://... .
153
c8099200
GM
154** Not interested in tracker control messages (tags being set, etc)?
155Discard mails matching:
156
7af1d7ff 157^X-GNU-PR-Message: (transcript|closed)
a7d54520 158
3a617237
GM
159** Not receiving messages in response to your control commands?
160The messages debbugs sends out in response to control-server commands
161always have headers To: your@email, and Cc: tracker@debbugs.gnu.org
162(the latter is an alias for the emacs-bug-tracker mailing list).
163These are also the addresses to which a copy of the response is sent.
164(In general, there need not be any relation between the To: and Cc:
165headers visible in a message and where debbugs actually sends it.)
166If you used an X-Debbugs-No-Ack header, however, a copy is _not_ sent
167to you, but the To: header is unchanged. If you are subscribed to the
168emacs-bug-tracker mailing list and have duplicate suppression turned
169on, the presence of your address in the To: header will cause Mailman
170to not send you a list copy, because it thinks you have received a
171direct copy. If you used X-Debbugs-No-Ack, this is not the case, and
172you won't get any copy at all. If this bothers you, don't use both
173X-Debbugs-No-Ack and Mailman duplicate suppression for the
174emacs-bug-tracker mailing list, just pick one or the other.
175
c8099200 176** How to avoid multiple copies of mails.
9630d49e
GM
177If you reply to reports in the normal way, this should work fine.
178Basically, reply only to the numbered bug address (and any individual
179people's addresses). Do not send mail direct to bug-gnu-emacs or
180emacs-pretest-bug unless you are reporting a new bug.
c8099200 181
acc12ef7 182** To close bug #123 (for example), send mail
d6388ebd 183
d72fa05c 184To: 123-done@debbugs.gnu.org
585351d7
GM
185
186with a brief explanation in the body as to why the bug was closed.
d9075623
GM
187There is no need to cc the address without the "-done" part or the
188submitter; they get copies anyway so this will just result in more
189duplicate mail.
585351d7 190
7a88d194
GM
191** Details of closing a bug.
192(For information only)
193Sending a mail to 123-done does the following:
194
1951) Mark the bug as closed in the database.
196
1972) Send a mail to the original submitter telling them that their bug
198has been closed. This mail has a header:
199
7af1d7ff 200X-GNU-PR-Message: they-closed 123
7a88d194
GM
201
2023) Send a mail to you and to the emacs-bug-tracker list confirming
203that the bug has been closed. This mail has a header:
204
7af1d7ff 205X-GNU-PR-Message: closed 123
7a88d194
GM
206
2074) Send a copy of your mail to the bug-gnu-emacs list in exactly the
208same way as if you had sent mail to "123" (sans -done). This mail has
209headers:
210
7af1d7ff 211X-GNU-PR-Message: cc-closed 123
3a78fc36 212Mail-Followup-To: 123@debbugs.gnu.org, person-who-closed
7a88d194
GM
213
214(This is Emacs-specific. Normally the bug list gets the same mail as in 3).
215
062a07f2
GM
216** Setting bug parameters.
217There are two ways to set the parameters of bugs in the database
218(tags, severity level, etc). When you report a new bug, you can
219provide a "pseudo-header" at the start of the report, eg:
585351d7 220
062a07f2
GM
221Package: emacs
222Version: 23.0.60
223Severity: minor
acc12ef7 224
f4ca11f8
GM
225This can also include tags, or any X-Debbugs- setting.
226Some things (e.g. submitter) don't seem to work here.
aae74b9b 227
d72fa05c 228Otherwise, send mail to the control server, control@debbugs.gnu.org.
062a07f2
GM
229At the start of the message body, supply the desired commands, one per
230line:
acc12ef7 231
062a07f2
GM
232command bug-number [arguments]
233...
234quit|stop|thank|thanks|thankyou|thank you
acc12ef7 235
062a07f2
GM
236The control server ignores anything after the last line above. So you
237can place control commands at the beginning of a reply to a bug
cbed6bef
GM
238report, and Bcc: the control server (note the commands have no effect
239if you just send them to the bug-report number). Bcc: is better than Cc:
240in case people use Reply-to-All in response.
acc12ef7 241
062a07f2 242Some useful control commands:
acc12ef7 243
062a07f2
GM
244*** To reopen a closed bug:
245reopen 123
585351d7 246
062a07f2 247*** Bugs can be tagged in various ways (eg wontfix, patch, etc).
cbed6bef
GM
248The available tags are:
249patch wontfix moreinfo unreproducible fixed notabug
52b76c5f 250See http://debbugs.gnu.org/Developer#tags
cbed6bef
GM
251The list of tags can be prefixed with +, - or =, meaning to add (the
252default), remove, or reset the tags. E.g.:
585351d7 253
cbed6bef 254tags 123 + wontfix
dcaf1e4b 255
52b76c5f
GM
256** URL shortcuts
257
258http://debbugs.gnu.org/...
259
260123 # given bug number
261123;mbox=yes # mbox version of given bug
f1b95f0a 262package # bugs in given package
52b76c5f
GM
263from:submitter@email.address
264severity:severity # all bugs of given severity
265tag:tag # all bugs with given tag
266
cf176799
GM
267** Usertags
268
269See <http://wiki.debian.org/bugs.debian.org/usertags>
270
271"Usertags" are very similar to tags: a set of labels that can be added
74170103 272to a bug. There are two differences between normal tags and user tags:
cf176799
GM
273
2741) Anyone can define any valid usertag they like. In contrast, only a
275limited, predefined set of normal tags are available (see above).
276
b166258b
GM
2772) A usertag is associated with a specific user. This is normally
278an email address (with an "@" sign and least 4 characters after the "@"),
279but on debbugs.gnu.org, the definition is less strict - anything with
2805 or more alphanumeric characters will work. For personal tags,
281using an email address is still recommended. Please only use the
282"emacs" user, or other short users, for "official" tags.
283
284You set usertags in the same way as tags, by talking to the control server.
285One difference is that you can also specify the associated user.
286If you don't explicitly specify a user, then it will use the email
287address from which you send the control message.
cf176799
GM
288
289*** Setting usertags
290
291a) In a control message:
292
b166258b 293user emacs # or email@example.com
cf176799
GM
294usertags 1234 any-tag-you-like
295
296This will add a usertag "any-tag-you-like" to bug 1234. The tag will
b166258b
GM
297be associated with the user "emacs". If you omit the first line,
298the tag will be associated with your email address.
cf176799
GM
299
300The syntax of the usertags command is the same as that of tags (eg wrt
301the optional [=+-] argument).
302
303b) In an initial submission, in the pseudo-header:
304
b166258b 305User: emacs
cf176799
GM
306Usertags: a-new-tag
307
308Again, the "User" is optional.
309
310*** Searching by usertags
311
312The search interface is not as advanced as for normal tags. You need
313to construct the relevant url yourself rather than just typing in a
314search box. The only piece you really need to add is the "users"
315portion, the rest has the same syntax as normal.
316
f1b95f0a
GM
317**** To browse bugs by usertag:
318http://debbugs.gnu.org/cgi/pkgindex.cgi?indexon=users
319
cf176799
GM
320**** To find all bugs usertagged by a given email address:
321
b166258b 322http://debbugs.gnu.org/cgi/pkgreport.cgi?users=emacs
cf176799
GM
323
324(Supposedly, the "users" field can be a comma-separated list of more
325than one email address, but it does not seem to work for me.)
326
327**** To find bugs tagged with a specific usertag:
328
329This works just like a normal tags search, but with the addition of a
330"users" field. Eg:
331
b166258b 332http://debbugs.gnu.org/cgi/pkgreport.cgi?users=emacs;tag=calendar
cf176799 333
062a07f2 334*** To merge bugs:
dcaf1e4b 335Eg when bad replies create a bunch of new bugs for the same report.
8e22fa7e
EZ
336Bugs must all be in the same state (e.g. same package(s) and severity
337-- see `reassign' and `severity' below), but need not have the same
338tags (tags are merged). E.g.:
dcaf1e4b 339
062a07f2 340merge 123 124 125 ...
dcaf1e4b 341
b5726dba
GM
342Note that merging does not affect titles. In particular, a "retitle"
343of merged bugs only affects individual bugs, not all of them.
344
062a07f2 345*** Forcing a merge:
b5726dba 346Like `merge', but bugs need not be in the same state. The packages
8e22fa7e
EZ
347must still match though (see `reassign' below). The first one listed
348is the master. E.g.:
3726988d 349
062a07f2 350forcemerge 123 124 125 ...
dcaf1e4b 351
61cf9fad
GM
352Note: you cannot merge with an archived bug - you must unarchive it first.
353
71755807
GM
354*** To unmerge bugs:
355To disconnect a bug from all bugs it is merged with:
356
357unmerge 123
358
359This command accepts only one bug number.
360
97b69a57
GM
361*** To clone bugs:
362Useful when one report refers to more than one bug.
363
364clone 123 -1 [-2 ...]
365retitle -1 second bug
366retitle -2 third bug
367
368The negative numbers provide a way to refer to the cloned bugs (which
369will be assigned proper numbers).
370
9270da33
GM
371NB you cannot clone a merged bug. You'd think that trying to do so
372would just give you an unmerged copy of the specified bug number, but no:
373
374http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=474742
375
376You must unmerge, clone, then re-merge.
377
062a07f2
GM
378*** To set severity:
379severity 123 critical|grave|serious|important|normal|minor|wishlist
dcaf1e4b 380
d72fa05c 381See http://debbugs.gnu.org/Developer#severities for the meanings.
3d4c9dbd 382
d57a0b67 383*** To set the owner of a bug:
062a07f2 384owner 123 A Hacker <none@example.com>
3d4c9dbd
GM
385
386The shorthand `!' means your own address.
387
d57a0b67
GM
388*** To remove the owner of a bug:
389noowner 123
390
062a07f2
GM
391*** To mark a bug as fixed in a particular version:
392fixed 123 23.0.60
3d4c9dbd 393
cbed6bef
GM
394*** To remove a "fixed" mark:
395notfixed 123 23.0.60
396
e63715a0
GM
397*** To make a bug as present in a particular version:
398found 123 23.2
399NB if there is no specified "fixed" version, or if there is one and it
400is earlier than the found version, this reopens a closed bug.
401
402The leading "23.1;" that M-x report-emacs-bug adds to bug subjects
403automatically sets a found version (if none is explicitly specified).
404
8e22fa7e 405*** To assign or reassign a bug to a package or list of packages:
f1b95f0a 406reassign 1234 emacs
8e22fa7e 407
9218b9bd
GM
408Note that reassigning clears the list of found versions, even if the
409new packages includes the original one.
410
062a07f2
GM
411** To remove spam from the tracker, move it to the `spam' pseudo-package:
412reassign 123 spam
a2501e52 413
9218b9bd
GM
414(Should not be necessary any more, now that the input is moderated.)
415
a2501e52
GM
416** To change the title of a bug:
417retitle 123 Some New Title
418
419** To change the submitter address:
420submitter 123 none@example.com
aae74b9b
GM
421
422Note that it does not seem to work to specify "Submitter:" in the
423pseudo-header when first reporting a bug.
d3ace93b
GM
424
425** How does archiving work?
426You can still send mail to a bug after it is closed. After 28 days with
427no activity, the bug is archived, at which point no more changes can
428be made. If you try to send mail to the bug after that (or merge with
429it), it will be rejected. To make any changes, you must unarchive it first:
430
431unarchive 123
432
433The bug will be re-archived after the next 28 day period of no activity.
994e9647
GM
434
435** The web-page with the list of bugs is slow to load
436
437It's a function of the number of displayed bugs. You can speed things
438up by only looking at the newest 100 bugs:
d72fa05c 439http://debbugs.gnu.org/cgi-bin/pkgreport.cgi?newest=100;package=emacs
994e9647 440
52b76c5f
GM
441Or use the static index:
442http://debbugs.gnu.org/db/ix/full.html
6d60445e 443
db68501f
GM
444** What are those "mbox folder" links on the bug report pages?
445
446"mbox folder" = messages as they arrived at the tracker
447
448"status mbox" = as above, but with a fake message at the start
449 summarizing the bug status
450
451"maintainer mbox" = messages as sent out from the tracker to the
452 maintainers (ie, bug-gnu-emacs). These have some changed headers
453 (Resent-*, Subject, etc).
454
4ed1ae2d
GM
455** What do the pkgreport.cgi sort options mean?
456
457"normal" = by open/closed status, then severity, then tag, then bug number
458
459"oldview" = as above, but without the tag part
460
461"age" = as normal, but sort in decreasing order of last modification
462time, rather than by increasing bug number
463
464"raw" = ?
465
15d0fd3a
GM
466** ChangeLog issues
467
468*** When you fix a bug, it can be helpful to put the bug number in the
469ChangeLog entry, for example:
470
471 * foo.el (foofunc): Fix the `foo' case. (Bug#123)
472
473Then the relevant bug can be found for easy reference. If it's an
474obvious fix (e.g. a typo), there's no need to clutter the log with the
475bug number.
476
477Similarly, when you close a bug, it can be helpful to include the
478relevant ChangeLog entry in the message to the bug tracker, so people
9630d49e 479can see exactly what the fix was.
15d0fd3a
GM
480
481*** bug-reference-mode
482
483Activate `bug-reference-mode' in ChangeLogs to get clickable links to
484the bug web-pages.
485
88cff6b5
GM
486*** Debian stuff
487
488http://lists.gnu.org/archive/html/emacs-devel/2009-11/msg00440.html
489
9630d49e
GM
490** Bazaar stuff
491
de4708cb 492*** You can use `bzr commit --fixes debbugs:123' to mark that a commit fixes
5b9b7ef4
EZ
493Emacs bug 123. You will first need to add a line to one of your
494configuration files, ~/.bazaar/bazaar.conf or ~/.bazaar/locations.conf:
9630d49e 495
de4708cb
GM
496bugtracker_debbugs_url = http://debbugs.gnu.org/{id}
497
6173c5b5
EZ
498Here "{id}" is a literal string, a placeholder that will be replaced
499by the bug number you specify after `--fixes debbugs:' in the bzr
500command line (123 in the example above).
501
31fdb544 502In the bazaar.conf file, this setting should go into the [DEFAULT]
6173c5b5
EZ
503section.
504
505In the locations.conf file, it should go into the branch-specific
506configuration section for the branch where you want this to be in
507effect. For example, if you want this to be in effect for the branch
508located at `/home/projects/emacs/trunk', you need to have this in your
0c3b6727 509~/.bazaar/locations.conf file:
6173c5b5
EZ
510
511[/home/projects/emacs/trunk]
512bugtracker_debbugs_url = http://debbugs.gnu.org/{id}
513
514If you want to use this in all Emacs branches whose common parent is
515`/home/projects/emacs', put the setting in the [/home/projects/emacs]
516section. See "bzr help configuration" for more information about
517the *.conf files, their location and formats. See "bzr help bugs" for
518more information about the bugtracker_debbugs_url setting.
519
de4708cb 520See also log-edit-rewrite-fixes in .dir-locals.el.
9630d49e
GM
521
522Note that all this does is add some metadata to the commit, it doesn't
43335389
EZ
523actually mark the bug as closed in the tracker. You can see this
524information with `bzr log', and it will show up as a link in a recent
525loggerhead installation, or with some of the graphical frontends to
526`bzr log'.
9630d49e 527
6d60445e
GM
528** Gnus-specific voodoo
529
530*** Put point on a bug-number and try: M-x gnus-read-ephemeral-emacs-bug-group
531
532*** If the above is not available:
533(add-hook 'gnus-article-mode-hook
534 (lambda ()
d72fa05c 535 (setq bug-reference-url-format "http://debbugs.gnu.org/%s")
6d60445e
GM
536 (bug-reference-mode 1)))
537
538and you can click on the bug number in the subject header.
ba35a992
GM
539
540
541* Technical Notes
542
543The following are technical notes on how it works. These are just for
544reference, you don't need to read these as a user of the system.
545
546Getting mail from the Emacs bug list into the tracker requires the
547assistance of sysadmin at gnu.org. The test tracker set-up was, I
548think, [gnu.org #359140]:
549http://lists.gnu.org/archive/html/savannah-hackers/2008-03/msg00074.html
550http://lists.gnu.org/archive/html/savannah-hackers/2008-04/msg00034.html
551
552** The debbugs.gnu.org setup was handled in [gnu.org #510605].
553There are two pieces (replace AT with @ in the following):
554
555i) fencepost has an /etc/aliases entry:
556emacs-pretest-bug: submit AT debbugs.gnu.org
557
558ii) An exim router:
559emacsbugs_router:
560 driver = redirect
561 senders = !Debian-debbugs AT debbugs.gnu.org
562 local_parts = bug-gnu-emacs
563 domains = gnu.org
564 data = submit AT debbugs.gnu.org
565
566This says, for mail arriving at bug-gnu-emacs, only allow it through
567to the list if it was sent from debbugs.gnu.org. Otherwise, send
568it to the submit address at the bug-tracker.
569
570FIXME There's probably an issue with the mail-news gateway here that
571still needs to be addressed (bug#936).
572
573** fencepost's /etc/exim4/local_domains configuration needs a line
574!debbugs.gnu.org adding [gnu.org #503532]. Otherwise people on
575fencepost can't report bugs, since *.gnu.org addresses are assumed to
576be handled locally on fencepost, unless otherwise specified.
577
578** All mail arriving at debbugs.gnu.org is first run through SpamAssassin.
579Obvious spam is rejected, the rest is sent on to the moderated list
580debbugs-submit. Approved mail is passed on to the tracker.
efeee2cd
GM
581(Note this means that messages may appear out of sequence in the
582tracker, since mail from whitelisted senders goes straight through.)
ba35a992
GM
583
584NOTE: An alternative to this would be to use listhelper AT nongnu.org
585as a moderator address. Eg the emacs-bug-tracker list uses this.
586It does basic spam processing on the moderator requests and
587automatically rejects the obviously bogus ones. Someone still has to
588accept the good ones though. The advantage of this would not be having
589to run and tune our own spam filter. See
590http://savannah.nongnu.org/projects/listhelper
591
592An "X-Debbugs-Envelope-To" header is used to keep track of where the
593mail was actually bound for:
594http://lists.gnu.org/archive/html/emacs-devel/2009-11/msg01211.html
595
596** Mailing list recipient/sender filters.
597The following mailman filters are useful to stop messages being
598needlessly held for moderation:
599
600*** debbugs-submit
601(quiet|control|submit)@(debbugs\.gnu\.org|emacsbugs\.donarmstrong\.com)
602[0-9]+(-done|-quiet|-subscribe)?@(debbugs\.gnu\.org|emacsbugs\.donarmstrong\.com)
38da2cf8
GM
603(bug-gnu-emacs|emacs-pretest-bug|bug-(e|gnu)macs)@gnu\.org
604
605bug-emacs and bug-gnumacs are lesser-used aliases from fencepost's
606/etc/aliases file.
ba35a992
GM
607
608*** emacs-bug-tracker
609sender: bug-gnu-emacs AT gnu.org
610recipient: emacs-bug-tracker AT debbugs\.gnu\.org
611
612The latter is because that is the address that debbugs actually sends to.
613An /etc/aliases entry redirects it to the real emacs-bug-tracker address.
9630d49e 614
4ed1ae2d
GM
615** Recovering from moderation mistakes
616
617All discarded messages are stored in /var/lib/mailman/spam.
618If a non-spam message accidentally gets discarded, just do:
619
67d63151 620/usr/lib/debbugs/receive < /var/lib/mailman/spam/not-really-spam.msg
9d5c6f0e 621chown Debian-debbugs:Debian-debbugs /var/lib/debbugs/spool/incoming/*
4ed1ae2d
GM
622... check it works ...
623mv /var/lib/mailman/spam/not-really-spam.msg /var/lib/mailman/not-spam/
624
9d5c6f0e
GM
625Also check that the sender was not added to the auto-discard/reject list
626in the debbugs-submit Mailman interface.
627
e210dac4
GM
628If you don't have the actual mail, just the mailman moderation mail
629version of it, you need to extract the original mail, and add the
630following headers:
631
6321) The leading envelope From line.
6332) Message-ID (get it from /var/log/mailman/vette).
ca5f6cd4
GM
6343) X-Debbugs-Envelope-To: xxx
635For a new report, xxx = submit; for a control message, xxx = control;
636for a reply to bug#123, xxx = 123
e210dac4
GM
637
638Then pipe it to receive as above.
639
9630d49e
GM
640** Administrivia
641
642The debbugs-submit list should have the administrivia option off,
643else it can by mistake filter out requests to subscribe to bugs.
644But, this feature doesn't work anyway (see bug#5439).
645
646** How to test changes
647
648Add an entry to /etc/debbugs/Maintainers like:
649
650mytest my.email.address
651
652Then if you do all your testing with 'Package: mytest', the resulting
653mails should only go to your email address.
f5c7a929
GM
654
655** Adding new tags
656
657Add them to @gTags in /etc/debbugs/config.
658I think you also have to add them to 'tags' and 'tags_single_letter'
659in /usr/share/perl5/Debbugs/Config.pm.
660And update /var/www/Developer.html with a description of what the tag means.
661And the "valid tags" list in /var/www/index.html.
0992bd9c
CY
662
663** Backups
664
665The FSF sysadmins handle multi-generational backups of the filesystem
666on debbugs.gnu.org. But if you really want to have your own backup of
667the bug database, you can use rsync (this requires login access to
668debbugs.gnu.org):
669
670 rsync -azvv -e ssh USER@debbugs.gnu.org:/var/lib/debbugs/ DEST
671
672Note that this occupies well over 1G of disk space.