Previous: Write a Spec Up: Table of Contents Next: Write Benchmarks

How-To - Fix a Failing Spec

Make sure you have read:

Then, follow these steps to fix a failing spec:

  1. Fork the Rubinius project on GitHub.
  2. Clone your fork locally and run git checkout -b branch_name to create a new branch (where branch_name is a brief description for the problem you are fixing.)
  3. Run rake to ensure that all CI specs are passing.
  4. Run bin/mspec spec/some/spec_file.rb to confirm the spec fails.
  5. Edit a file somewhere in Rubinius (probably under the kernel directory).
  6. Run rake build to build your change.
  7. Run bin/mspec spec/some/spec_file.rb to see if your change makes the spec pass.
  8. Repeat until your spec passes.
  9. Run rake to ensure there are no regressions.
  10. Change directory to Rubinius root if not already there.
  11. Run git status, git add, git commit, etc. Any changes made to the spec files under the spec/ruby directory must be in a different commit from changes made to other Rubinius source code files.
  12. Push your new branch to Github.
  13. Issue a Pull Request. To do this, go to your fork on GitHub, change to your new branch and click "Pull Request". Next, write a description of your change if required and click "Send pull request".
  14. More commits and discussion may happen with other contributors using the Pull Request interface.

When your pull request is accepted by the Rubinius project, you'll get a commit bit for the Rubinius repository. Let Evan, Brian or Dirkjan know what your Github username is.

Previous: Write a Spec Up: Table of Contents Next: Write Benchmarks

Tweet at @rubinius on Twitter or email Please report Rubinius issues to our issue tracker.