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