How to work on bugs: Difference between revisions

From diaspora* project wiki
(Migrated page from github wiki - needs some fixes)
 
(wikisyntax)
 
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
= How to work on bugs =
Thank you for helping us make Diaspora awesome! ;)<br />
 
If you found a bug and want to report it, [[How to report a bug|here is how to]]. If you want to start contributing by fixing a bug, this is the correct page.


Thank you for helping us make Diaspora awesome! ;)<br />
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.
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.


<ol style="list-style-type: decimal;">
# '''Make an account on [https://github.com Github]'''
<li>'''Make an account on [https://github.com Github]'''<br />
#: (If you don’t already have one.) This is necessary in order to contribute the code you write.
(If you don’t already have one.) This is necessary in order to contribute the code you write.</li>
# '''Find a bug to work on'''
<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 "newcomer" or "quickfix" labels. Those bugs often cover a wide selection of topics for various skillsets and interests (Ruby/Rails, HTML/CSS, JavaScript…).
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 />
# '''Claim the issue'''
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>
#: 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>'''Claim the issue'''<br />
# '''Before you start'''
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 />
#: Now, there are a few things we want you to keep in mind before you start to work on the bug.
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>
#* You will need to [[Installation|set up a development environment]]
<li>'''Before you start'''<br />
#* Please skim through our page on [[Git Workflow|how we use git]] so that there will be no problems merging your fix.
Now, there are a few things we want you to keep in mind before you start to work on the bug.
#* You migh also be interested in an [[An Introduction to the Diaspora Source|introduction to the source code]] and the [[FAQ_for_Developers]].
<ul>
#:If you need help with any of that, run into a problem or get stuck somewhere, don’t hesitate to ask, either on [https://discourse.diasporafoundation.org discourse] or come to our [[How_We_Communicate|IRC chatroom]].
<li>You will need to [[set up a development environment|Installing and Running Diaspora]]</li>
# '''Write awesome code'''
<li>Please skim through our page on [[how we use git|Git-Workflow]] so that there will be no problems merging your fix.</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>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>
# '''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 [[Git Workflow|here]] or [http://help.github.com/send-pull-requests/ here] for specific instructions on how to do that.
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>
# '''Done'''
<li>'''Write awesome code'''<br />
#: ''Great! You just fixed a bug. We really can’t thank you enough for it. &lt;3''
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 />
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>
<li>'''Done'''<br />
''Great! You just fixed a bug. We really can’t thank you enough for it. &lt;3''</li></ol>


[[Category:Developers]]
[[Category:Developers]]
[[Category:Github transfer done]]

Latest revision as of 04:30, 16 August 2017

Thank you for helping us make Diaspora awesome! ;)

If you found a bug and want to report it, here is how to. If you want to start contributing by fixing a bug, this is the correct page.

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 discourse 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