Contributions are very welcome. If you want a feature to be added, chances are it will not happen unless you actually write the code.
To get setup, run
bundle install. You
can run the full test suite with
rspec spec/ or
All pull requests which add a feature or fix a bug must have the following things:
- Integration test(s). These generally go into
spec/integration/session_spec.rb, unless it's something specific to the driver, in which case it goes in
spec/integration/driver_spec.rb. (So a test for
driver_spec.rbbut a test for
- A good commit message
- An entry into the changelog. This currently resides at the bottom of
README.mdfile. Reference the Github issue number if there is an associated bug report. Feel free to add your name if you want to be credited.
Some other things to bear in mind:
- While PhantomJS is capable of compiling and running CoffeeScript code
directly, I prefer to compile the code myself and distribute that (it
makes debugging easier). Running
rake autocompilewill watch the
.coffeefiles for changes, and compile them into
- If you've worked on your changes over time, please squash the commits
in a sensible manner so that each commit is self-contained. If you
need to update a pull request with new changes, you can just
git push -fto your branch which will overwrite previous commits that you have now squashed.
- Please try to pay attention to and follow the existing coding style.
Thanks! It's really great when people help with Poltergeist's development.