Fixes by Mark Rowe and Joost de Valk. Reviewed by Darin. Landed by ap.
[WebKit-https.git] / WebKitSite / quality / reporting.html
index 76d4973..e5efc3d 100644 (file)
@@ -5,6 +5,106 @@
  http-equiv="content-type">
   <title>Reporting Bugs</title>
   <link rel=stylesheet href="../webkitdev.css">
+  <script type="text/javascript">
+       /* 
+       Copyright (C) 2006 Joost de Valk, http://www.joostdevalk.nl/.  All rights reserved.
+       Copyright (C) 2006 Mark Rowe, http://bdash.net.nz/.  All rights reserved.
+       Copyright (C) 2006 Apple Computer, Inc.  All rights reserved.
+       
+       Redistribution and use in source and binary forms, with or without
+       modification, are permitted provided that the following conditions
+       are met:
+       1. Redistributions of source code must retain the above copyright
+          notice, this list of conditions and the following disclaimer.
+       2. Redistributions in binary form must reproduce the above copyright
+          notice, this list of conditions and the following disclaimer in the
+          documentation and/or other materials provided with the distribution.
+       
+       THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+       EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+       IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+       PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+       CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+       EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+       PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+       PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+       OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+       (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+       OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+       
+       Script used for recognizing Safari / WebKit. A matrix of these versions can
+       be found at: http://developer.apple.com/internet/safari/uamatrix.html .
+       */
+       function parse_version(version)
+       {
+               var bits = version.split(".");
+               var is_nightly = (version[version.length - 1] == "+");
+               return {major: parseInt(bits[0]), minor: parseInt(bits[1]), is_nightly: is_nightly};
+       }
+       
+       function display(id, display_style)
+       {
+               document.getElementById(id).style.display = display_style;
+       }
+       
+       function get_version()
+       {
+               var regex = new RegExp("Mozilla/5.0 \\(.*\\) AppleWebKit/(.*) \\(KHTML, like Gecko\\) Safari/(.*)");
+               var matches = regex.exec(navigator.userAgent);
+               if (! matches)
+                       return;
+
+               // We have detected a safari version, hide the unknown version text
+               display('unknown_version', 'none');
+               var webkit_version = parse_version(matches[1]);
+               var safari_version = parse_version(matches[2]);
+
+
+               if (safari_version.major < 100)
+                       // Mac OS X 10.2
+                       display('10point2', 'block');
+
+
+               else if (safari_version.major >= 100 && safari_version.major < 400)
+               {
+                       // Mac OS X 10.3
+                       display('10point3', 'block');
+
+                       if (safari_version.major < 312)
+                               // Mac OS X 10.3.8 or lower
+                               display('updateto10_3_9', 'block');
+
+                       else if (safari_version.minor < 5)
+                               // Mac OS X 10.3.9 but not the latest Safari update
+                               display('update10_3_9_safari', 'block');
+
+                       else
+                               // Mac OS X 10.3.9 with the latest Safari update
+                               display('best10_3_9_safari', 'block');
+
+
+               } else {
+                       // Mac OS X 10.4
+                       display('10point4', 'block');
+
+                       if (webkit_version.major == 412 && webkit_version.is_nightly)
+                               // Using an old nightly
+                               display('neednewnightly', 'block');
+
+                       else if (webkit_version.major == 420 && webkit_version.is_nightly)
+                               // Using a recent nightly, not sure which
+                               display('mightneednewnightly', 'block');
+
+                       else if (safari_version.major < 417)
+                               // 10.4.3 or lower
+                               display('updateto10_4_4', 'block');
+
+                       else
+                               // 10.4.4
+                               display('10_4_4', 'block');
+               } 
+       }
+</script>
 </head>
 <body>
 <!--begin sidebar -->
@@ -16,30 +116,90 @@ Reporting Bugs
 </div>
 
 <div id="content">
-<p>In order to report WebKit bugs you need to <a href="http://bugzilla.opendarwin.org/createaccount.cgi">sign up for a Bugzilla account</a>.  
-Once you have an account you can report bugs on any product on <a href="http://www.opendarwin.org">OpenDarwin.org</a>.  WebKit is one of the individual products
-listed in Bugzilla, and all of our bugs can be classified in various components under the WebKit product.
+<h3>You have found a bug? Here are 5 steps to getting it fixed!</h3>
+<ol>
+<li>
+<strong>Check your WebKit version</strong><br>
+<div id="unknown_version">
+       To make sure you're not wasting your (and our) time, you should be using the latest version of WebKit before you file your bug.
+       You should run at least Mac OS X 10.3.9 before filing bugs. Your WebKit version should be 312 or higher if you are on 
+       Panther and 417 or higher if you are on Tiger. If you're running
+       Mac OS X 10.4, you could also <a href="http://nightly.webkit.org">download the latest nightly</a> build to be sure you
+       have the latest version. If you've done this and you still experience the bug, go ahead to the next step.
+</div>
+<div id="10point2" style="display: none;">
+       We're sorry, we do not accept bugreports anymore from people using OS X 10.2. To many bugs have been fixed since then. We advise
+       you to upgrade to OS X 10.4.
+</div>
+<div id="10point3" style="display: none;">
+       <div id="updateto10_3_9" style="display: none;">
+               You are using Mac OS X 10.3.8 or lower, please before filing any bugs, upgrade to Mac OS X 10.3.9.
+       </div>
+       <div id="update10_3_9_safari" style="display: none;">
+               You are using Mac OS X 10.3.9, but your Safari isn't the latest version. Please, before filing any bugs, upgrade your Safari.
+       </div>
+       <div id="best10_3_9_safari">
+               You are using Mac OS X 10.3.9, and the latest version of Safari, go ahead and file your bug!
+       </div>
+</div>
+<div id="10point4" style="display: none;">
+       <div id="neednewnightly" style="display: none;">
+               You are already using a nightly build, which is very good! A large number of bugs has been fixed since you downloaded
+               this nightly build though, so please <a href="http://nightly.webkit.org/">get the latest nightly</a>.
+       </div>
+       <div id="mightneednewnightly" style="display: none;">
+               You are already using a nightly build, which is very good! Unfortunately, we can't detect when you downloaded it, but
+               if that was more then a few days ago, please <a href="http://nightly.webkit.org/">get the latest nightly</a>.
+       </div>
+       <div id="updateto10_4_4" style="display: none;">
+               You are using Mac OS X 10.4.3 or lower, please before filing any bugs, do either of the following:
+               <ul>
+                       <li>Upgrade to Mac OS X 10.4.4, or:</li>
+                       <li><a href="http://nightly.webkit.org">Download the latest nightly</a>.</li>
+               </ul>
+       </div>
+       <div id="10_4_4" style="display: none;">
+               You are using Mac OS X 10.4.4, go ahead and file your bug, or if you want to <a href="http://nightly.webkit.org">
+               download the latest nightly</a> and see if your bug is already fixed.
+       </div>
+</div>
+<script type="text/javascript">get_version();</script>
+</li>
+<li>
+<strong>Search Bugzilla</strong><br>
+Now that you have the latest WebKit version and still think you've found a WebKit bug, 
+<a href="http://bugzilla.opendarwin.org/query.cgi?format=specific&amp;product=WebKit">search through Bugzilla</a> first
+to see if anyone else has already filed it. This step is very important! If you find that someone has filed your bug
+already, please go to the next step anyway, but instead of filing a new bug, comment on the one you've found. If you can't
+find your bug in Bugzilla, go to the next step.
+</li>
+<li>
+<strong>Create a Bugzilla account</strong><br>
+You will need to <a href="http://bugzilla.opendarwin.org/createaccount.cgi">sign up for a Bugzilla account</a> to be able
+to report bugs (and to comment on them). Once you have an account you can report bugs on any product on 
+<a href="http://www.opendarwin.org">OpenDarwin.org</a>. WebKit is one of the individual products listed in Bugzilla, and all 
+of our bugs can be classified in various components under the WebKit product. If you have registered, proceed to the
+next step.
+</li>
+<li>
+<strong>File the bug!</strong><br>
+Now you are ready to <a href="http://webkit.org/new-bug">file a bug on the WebKit product</a>. The <a href="bugwriting.html">
+Writing a Good Bug Report</a> document (also linked in the sidebar) gives some tips about the most useful information to include
+in bug reports. The better your bug report, the higher the chance that your bug will be addressed (and possibly fixed) 
+quickly!
+</li>
+<li>
+<strong>What happens next?</strong><br>
+Once your bug is filed, you will receive email when it is updated at each stage in the <a href="lifecycle.html">bug life cycle</a>.
+After the bug is considered fixed, you may be asked to download the <a href="http://nightly.webkit.org">latest nightly</a> 
+and confirm that the fix works for you.
+</li>
+</ol>
+<p>
+<strong>Note:</strong> <br>
+To report bugs in Safari, or WebKit bugs that may contain confidential information, please use
+<a href="http://bugreporter.apple.com">http://bugreporter.apple.com/</a>.
 </p>
-
-<p>If you think you've found a WebKit bug, first <a href="http://bugzilla.opendarwin.org/query.cgi?format=specific&product=WebKit">search through Bugzilla</a> 
-to see if anyone else has already filed it. If not, you are ready to 
-<a href="http://bugzilla.opendarwin.org/enter_bug.cgi?product=WebKit">file a bug on the WebKit product</a>. The <a href="bugwriting.html">Writing a Good Bug Report</a> 
-document (also linked in the sidebar) gives some tips about the most useful information to include
-in bug reports. The better your bug report, the higher the chance that your bug will be addressed quickly.</p>
-
-<p>Once your bug is filed, you will receive email when it is updated at each stage in the bug's <a href="lifecycle.html">life cycle</a>. After the bug is
-considered fixed, you will usually be asked to update your WebKit and try it, to make sure that the fix works for you.</p>
-
-<p>You should be running at least Mac OS X 10.3.9 before filing bugs.  Your WebKit version should be 312 or higher if you are on Panther and 412 or higher
-if you are on Tiger.  Look at the string below to see what version of WebKit you are running.  The number is next to the word <tt>AppleWebKit</tt> followed by a <tt>/</tt>.</p>
-
-<script>
-document.write("<tt>" + navigator.userAgent + "</tt>");
-</script>
-
-<p>If you are running an earlier version then your bug may have been fixed.  Please upgrade if possible before filing bugs that may have already been fixed. </p>
-
-<p>To report bugs in Safari or WebKit bugs to Apple that may contain confidential information, use <a href="http://bugreporter.apple.com">http://bugreporter.apple.com/</a>.</p>
 </div>
 
 </body>