Changes between Version 19 and Version 20 of WorkingConventions/FixingBugs


Ignore:
Timestamp:
Nov 5, 2013 10:10:05 PM (5 months ago)
Author:
simonpj
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WorkingConventions/FixingBugs

    v19 v20  
    33Please help us fix bugs in GHC!  GHC is so large, and is used in such diverse ways by so many people, that we really need your help in fixing bugs, especially those that show up in specialised situations.   
    44 
    5 There are two ways to help: the Quick Fix and the True Way. 
     5Here's how to go about helping with a bug. 
    66 
    7 == The Quick Fix == 
    8  
    9 Some bugs are easy to fix: improvements to documentation, misleading comments, poorly-worded error messages, or egregious little bugs.  In these cases, please just 
    10  * Fix the code 
    11  * Use `git send-email`, or just mail a patch to [mailto:ghc-devs@haskell.org] (you'll need to be subscribed to the list or the mail will be silently rejected).  Make sure you include in the patch description a summary of what the problem is, and the nature of your fix. 
    12  
    13 This route is easy for you, but more work for us; we have to [wiki:TestingPatches test your fix].  But it's a low-overhead route for easy fixes. 
    14  
    15 == The True Way == 
    16  
    17 Many bugs require a bit more work.  Here's how to go about helping with a non-trivial bug. 
    18  
    19  0. '''Make sure the bug is in Trac'''.  Usually it is (that's why you are working on it), but if it's a bug you have found yourself, add it to Trac before you start work.  [[BR]][[BR]] 
     7 0. '''Make sure the bug is in Trac'''.  Usually it is (that's why you are working on it), but if it's a bug you have found yourself, add it to Trac before you start work. It's important to have a ticket, because it makes sure that the bug report, discussion about the fix, the regression test that checks it, and the eventual conclusion, are all recorded together.  Comments in the code can refer to the ticket (e.g. `See Trac #2382 for an example`). And so on.  If there's no ticket, there is every chance that it'll get lost.[[BR]][[BR]] 
    208 0. '''Take ownership of the bug in Trac''', by using the "Action" chunk at the bottom of the Trac bug display (you need to be logged in to see it), and putting your name in the "reassign to" box.  This makes sure that two people don't work on the same bug.  If you later decide you can't do it after all, remove your name.[[BR]][[BR]] 
    219 0. '''Add a test case''' in the [wiki:Building/RunningTests regression-test suite] that shows up the bug. 
     
    3422   * Attach the patch bundle to the Trac bug report 
    3523   * Add a comment to the Trac bug report to say what you've done 
    36    * In the 'Action' part of the Trac ticket, select "Please review".  This shifts responsibility to the GHC team to review and commit your patch. 
     24   * In the 'Action' part of the Trac ticket, select "Please review".  This shifts responsibility to [wiki:TeamGHC the GHC team] to review and commit your patch. 
    3725   
    3826 If you do have commit permission, then commit, update the Trac report, and close the bug.