1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns=
"http://www.w3.org/1999/xhtml">
5 <meta http-equiv=
"Content-Type" content=
"text/html; charset=utf-8"/>
6 <style type=
"text/css"> /* <![CDATA[ */
7 @import
"branding/css/tigris.css";
8 @import
"branding/css/inst.css";
10 <link rel=
"stylesheet" type=
"text/css" media=
"print"
11 href=
"branding/css/print.css"/>
12 <script type=
"text/javascript" src=
"branding/scripts/tigris.js"></script>
13 <title>Reporting Bugs in Subversion
</title>
19 <h1 style=
"text-align: center;">Reporting Bugs in Subversion
</h1>
21 <p>This document tells how and where to report bugs. (It is not a
22 list of all outstanding bugs
— you can get that
24 href=
"http://subversion.tigris.org/issues/buglist.cgi?component=subversion&issue_status=UNCONFIRMED&issue_status=NEW&issue_status=STARTED&issue_status=REOPENED&order=issues.target_milestone%2C%20issues.priority%2C%20issues.issue_type">here
</a> instead.)
</p>
27 <div class=
"h2" id=
"where" title=
"where">
28 <h2>Where To Report A Bug
</h2>
32 <li><p>If the bug is in Subversion itself, send mail to
33 <a href=
"mailto:users@subversion.tigris.org"
34 >users@subversion.tigris.org
</a>.
35 Once it's confirmed as a bug, someone, possibly you, can enter it
36 into the
<a href=
"project_issues.html">issue tracker
</a>. (Or if
37 you're pretty sure about the bug, go ahead and post directly to
38 our development list,
<a href=
"mailto:dev@subversion.tigris.org"
39 >dev@subversion.tigris.org
</a>. But if you're not sure, it's
40 better to post to
<a href=
"mailto:users@subversion.tigris.org"
41 >users@
</a> first; someone there can tell you whether the behavior
42 you encountered is expected or not.)
</p></li>
44 <li><p>If the bug is in the APR library, please report it to both of
46 <a href=
"mailto:dev@apr.apache.org">dev@apr.apache.org
</a>,
47 <a href=
"mailto:dev@subversion.tigris.org"
48 >dev@subversion.tigris.org
</a>.
</p></li>
50 <li><p>If the bug is in the Neon HTTP library, please report it to:
51 <a href=
"mailto:neon@webdav.org">neon@webdav.org
</a>,
52 <a href=
"mailto:dev@subversion.tigris.org"
53 >dev@subversion.tigris.org
</a>.
</p></li>
55 <li><p>If the bug is in Apache HTTPD
2.0, please report it to both of
56 these mailing lists:
<a href=
"mailto:dev@httpd.apache.org"
57 >dev@httpd.apache.org
</a>,
58 <a href=
"mailto:dev@subversion.tigris.org"
59 >dev@subversion.tigris.org
</a>.
60 The Apache httpd developer mailing list is high-traffic, so your
61 bug report post has the possibility to be overlooked. You may also
62 file a bug report at
<a href=
"http://httpd.apache.org/bug_report.html"
63 >http://httpd.apache.org/bug_report.html
</a>.
</p></li>
65 <li><p>If the bug is in your rug, please give it a hug and keep it
72 <div class=
"h2" id=
"how" title=
"how">
73 <h2>How To Report A Bug
</h2>
75 <p>First, make sure it's a bug. If Subversion does not behave the way
76 you expect, look in the documentation and mailing list archives for
77 evidence that it should behave the way you expect. Of course, if it's
78 a common-sense thing, like Subversion just destroyed your data and
79 caused smoke to pour out of your monitor, then you can trust your
80 judgement. But if you're not sure, go ahead and ask on the users
81 mailing list first,
<a href=
"mailto:users@subversion.tigris.org"
82 >users@subversion.tigris.org
</a>, or ask in IRC,
<a
83 href=
"irc://irc.freenode.net/#svn">irc.freenode.net, channel #svn
</a>.
</p>
85 <p>Once you've established that it's a bug, the most important thing
86 you can do is come up with a simple description and reproduction
87 recipe. For example, if the bug, as you initially found it, involves
88 five files over ten commits, try to make it happen with just one file
89 and one commit. The simpler the reproduction recipe, the more likely
90 a developer is to successfully reproduce the bug and fix it.
</p>
92 <p>When you write up the reproduction recipe, don't just write a prose
93 description of what you did to make the bug happen. Instead, give a
94 literal transcript of the exact series of commands you ran, and their
95 output. Use cut-and-paste to do this. If there are files involved,
96 be sure to include the names of the files, and even their content if
97 you think it might be relevant. The very best thing is to package
98 your reproduction recipe as a script, that helps us a lot.
</p>
100 <p><i>Quick sanity check: you *are* running the most recent version of
101 Subversion, right? :-) Possibly the bug has already been fixed; you
102 should test your reproduction recipe against the most recent
103 Subversion development tree.
</i></p>
105 <p>In addition to the reproduction recipe, we'll also need a complete
106 description of the environment in which you reproduced the bug. That
110 <li>Your operating system
</li>
111 <li>The release and/or revision of Subversion
</li>
112 <li>The compiler and configuration options you built Subversion with
</li>
113 <li>Any private modifications you made to your Subversion
</li>
114 <li>The version of Berkeley DB you're running Subversion with, if any
</li>
115 <li>Anything else that could possibly be relevant. Err on the side
116 of too much information, rather than too little.
</li>
119 <p>Once you have all this, you're ready to write the report. Start
120 out with a clear description of what the bug is. That is, say how you
121 expected Subversion to behave, and contrast that with how it actually
122 behaved. While the bug may seem obvious to you, it may not be so
123 obvious to someone else, so it's best to avoid a guessing game.
124 Follow that with the environment description, and the reproduction
125 recipe. If you also want to include speculation as to the cause, and
126 even a patch to fix the bug, that's great
— see
<a
127 href=
"hacking.html#patches">hacking.html#patches
</a> for instructions
128 on sending patches.
</p>
130 <p>Post all of this information to
<a
131 href=
"mailto:dev@subversion.tigris.org"
132 >dev@subversion.tigris.org
</a>, or if you have already been there and
133 been asked to file an issue, then go to the
<a
134 href=
"project_issues.html">Issue Tracker
</a> and follow the
135 instructions there.
</p>
137 <p>Thanks. We know it's a lot of work to file an effective bug
138 report, but a good report can save hours of a developer's time, and
139 make the bug much more likely to get fixed.
</p>