How to contribute to the project?

I have found a bug! What should I do?

Our bug tracking is located on Github: DbCharmer Issues Tracker. If you think you’ve found a bug in DbCharmer, here is a list of steps you need to take:

  1. Search for a similar existing ticket
  2. Create a new ticket (If you’re sure it doesn’t already exist) or Update the existing ticket.
  3. Add detailed instructions on how to reproduce the bug:
    • Include DbCharmer version and Rails version you’re using
    • If possible, include your database configuration file (strip passwords, host names and any other sensible information first)
    • Describe how you’re connecting the library to your project (gem, plugin)
    • If you can, you could try to create a failing spec for in test-project directory and give a link to your spec in the issue

If you can’t create a bug report, you could just join our mailing list (more info on the FAQ page) and try to explain your problem there and we would try to figure it out together.

I have a code I would like to contribute (including bug fixes)!

So, you’ve started using DbCharmer and figured out a way to improve it. And instead of asking for a feature you’ve implemented it yourself. Or you’ve found and fixed a nasty bug. Or you just wanted to point out a missing comma in our README file. In any case your patches are very welcome! Here is what you need to do:

  1. Fork the project on Github
  2. Make your changes and commit them
  3. Test your changes by writing a test case in test-project directory. Patches with no tests will never be accepted, no matter how great/useful/pretty they are.
  4. If you’re trying to add new functionality, please explain it in the README file
  5. Send us a pull request and/or explain your patch in our mailing list

By submitting your code to the project you agree it will be published under the MIT license you can find in our LICENSE file.

More resources on using Github and contributing to open-source projects

Here is a list of resources on using Github to contribute to open-source projects we think could help to better understand the concept of forking, sending pull requests, etc: