Skip to content

Latest commit

 

History

History
96 lines (65 loc) · 2.44 KB

CONTRIBUTING.md

File metadata and controls

96 lines (65 loc) · 2.44 KB

Contributing

How to submit feedback?

The best way to send feedback is to file an issue.

If you are reporting a bug, please include:

  • Your operating system name and version.
  • Any details about your local setup that might be helpful in troubleshooting.
  • Detailed steps to reproduce the bug.

If you are proposing a feature:

  • Explain in detail how it would work.
  • Keep the scope as narrow as possible, to make it easier to implement.
  • Remember that this is a volunteer-driven project, and that contributions are welcome :)

Setup funky for Local Development

Ready to contribute? Here are the steps required to setup funky for local development.

  1. Fork the funky repo on GitHub.

  2. Clone your fork locally:

    $ git clone [email protected]:your_name_here/funky.git
  3. Install your local copy of funky and all of funky's Python development dependencies into a virtualenv. Assuming you have virtualenvwrapper installed, the following commands should do the trick:

    $ cd funky/
    $ mkvirtualenv funky
    $ python setup.py develop
    $ pip install -r dev-requirements.txt
  4. Install system development dependencies (e.g. shunit2):

    $ ./scripts/install-system-dev-deps
  5. Create a branch for local development:

    $ git checkout -b name-of-your-bugfix-or-feature

    Now you can make your changes locally.

  6. When you're done making changes, check that all the tests are still passing::

    $ make test
  7. Additionally, any code added / changed is expected to pass all linting checks.

    $ make lint
  8. Commit your changes and push your branch to GitHub:

    $ git add .
    $ git commit -m "Detailed description of your changes."
    $ git push origin name-of-your-bugfix-or-feature
  9. Submit a pull request through GitHub.

Deploying

A reminder for the maintainers on how to deploy. Make sure all your changes are committed and that you have bumpversion installed. Then run:

$ bumpversion patch  # possible values: major / minor / patch
$ git push
$ git push --tags

A new version of funky will then deploy to PyPI if tests pass.