How to work on bugs: Difference between revisions

From diaspora* project wiki
mNo edit summary
No edit summary
Line 6: Line 6:
  (If you don’t already have one.) This is necessary in order to contribute the code you write.</li>
  (If you don’t already have one.) This is necessary in order to contribute the code you write.</li>
<li>'''Find a bug to work on'''<br />
<li>'''Find a bug to work on'''<br />
  One possibility is to look at the [https://github.com/diaspora/diaspora/issues issues list on Github] and look for bugs with the “quickfix” label. Those bugs often cover a wide selection of topics for various skillsets and interests (Ruby/Rails, HTML/CSS, JavaScript…).<br />
  One possibility is to look at the [https://github.com/diaspora/diaspora/issues issues list on Github] and look for bugs with the "newcomer" or "quickfix" labels. Those bugs often cover a wide selection of topics for various skillsets and interests (Ruby/Rails, HTML/CSS, JavaScript…).</li>
Another way is to look for the weekly ''Bug Mash'' entries on the [http://devblog.joindiaspora.com/ Devblog]. Those contain a list of easy-to-start-with bugs that come with an outline of how to attack them.</li>
<li>'''Claim the issue'''<br />
<li>'''Claim the issue'''<br />
  If you selected your bug directly from the issue tracker, just leave a note in the comments to that bug, saying you started to work on it.<br />
  If you selected your bug directly from the issue tracker, just leave a note in the comments to that bug, saying you started to work on it.</li>
The ''Bug Mash'' posts contain their own information of how to claim them. Typically it’s by responding to the email on the [http://groups.google.com/group/diaspora-discuss mailing list] or leaving a comment on the [http://devblog.joindiaspora.com/ blog post].</li>
<li>'''Before you start'''<br />
<li>'''Before you start'''<br />
  Now, there are a few things we want you to keep in mind before you start to work on the bug.
  Now, there are a few things we want you to keep in mind before you start to work on the bug.
<ul>
<ul>
<li>You will need to [[set up a development environment|Installing and Running Diaspora]]</li>
<li>You will need to [[Installation guides|set up a development environment]]</li>
<li>Please skim through our page on [[how we use git|Git-Workflow]] so that there will be no problems merging your fix.</li>
<li>Please skim through our page on [[Git Workflow|how we use git]] so that there will be no problems merging your fix.</li>
<li>You migh also be interested in an [[introduction to the source code|An Introduction to the Diaspora Source]] and the [[FAQ for developers]].</li></ul>
<li>You migh also be interested in an [[An Introduction to the Diaspora Source|introduction to the source code]] and the [[FAQ_for_Developers]].</li></ul>


If you need help with any of that, run into a problem or get stuck somewhere, don’t hesitate to ask, either on the [http://groups.google.com/group/diaspora-discuss mailing list] or come to our [[IRC chatroom|How we use IRC]].</li>
If you need help with any of that, run into a problem or get stuck somewhere, don’t hesitate to ask, either on the [http://groups.google.com/group/diaspora-discuss mailing list] or come to our [[How_We_Communicate|IRC chatroom]].</li>
<li>'''Write awesome code'''<br />
<li>'''Write awesome code'''<br />
  We strive to encourage ''TDD'' ([https://en.wikipedia.org/wiki/Test_Driven_Development Test Driven Development]) or ''BDD'' ([https://en.wikipedia.org/wiki/Behavior_Driven_Development Behaviour Driven Development]) when possible. In short that means before you write some actual code, you should write a test firsts that fails because of the bug, then fix the bug, which in turn also makes the test pass.</li>
  We strive to encourage ''TDD'' ([https://en.wikipedia.org/wiki/Test_Driven_Development Test Driven Development]) or ''BDD'' ([https://en.wikipedia.org/wiki/Behavior_Driven_Development Behaviour Driven Development]) when possible. In short that means before you write some actual code, you should write a test firsts that fails because of the bug, then fix the bug, which in turn also makes the test pass.</li>
<li>'''Submit your fix'''<br />
<li>'''Submit your fix'''<br />
  Now it’s time to push your git branch to your fork on Github and make a pull request for it. Look [[here|Git Workflow]] or [http://help.github.com/send-pull-requests/ here] for specific instructions on how to do that. Also, it’s best to let us know that you are finished with a quick email to the [http://groups.google.com/group/diaspora-discuss mailing list] or comment on the issue, pointing to the pull request.</li>
  Now it’s time to push your git branch to your fork on Github and make a pull request for it. Look [[Git Workflow|here]] or [http://help.github.com/send-pull-requests/ here] for specific instructions on how to do that.</li>
<li>'''Done'''<br />
<li>'''Done'''<br />
  ''Great! You just fixed a bug. We really can’t thank you enough for it. &lt;3''</li></ol>
  ''Great! You just fixed a bug. We really can’t thank you enough for it. &lt;3''</li></ol>


[[Category:Developers]]
[[Category:Developers]]

Revision as of 20:04, 28 November 2012

Thank you for helping us make Diaspora awesome! ;)
So you’d like to start contributing, but you don’t know where to begin? This is a fairly large project, which means it’s probably best to get your hands dirty with a small fix so you can get used to the codebase.

  1. Make an account on Github
    (If you don’t already have one.) This is necessary in order to contribute the code you write.
  2. Find a bug to work on
    One possibility is to look at the issues list on Github and look for bugs with the "newcomer" or "quickfix" labels. Those bugs often cover a wide selection of topics for various skillsets and interests (Ruby/Rails, HTML/CSS, JavaScript…).
  3. Claim the issue
    If you selected your bug directly from the issue tracker, just leave a note in the comments to that bug, saying you started to work on it.
  4. Before you start
    Now, there are a few things we want you to keep in mind before you start to work on the bug. If you need help with any of that, run into a problem or get stuck somewhere, don’t hesitate to ask, either on the mailing list or come to our IRC chatroom.
  5. Write awesome code
    We strive to encourage TDD (Test Driven Development) or BDD (Behaviour Driven Development) when possible. In short that means before you write some actual code, you should write a test firsts that fails because of the bug, then fix the bug, which in turn also makes the test pass.
  6. Submit your fix
    Now it’s time to push your git branch to your fork on Github and make a pull request for it. Look here or here for specific instructions on how to do that.
  7. Done
    Great! You just fixed a bug. We really can’t thank you enough for it. <3