Thanks for your interest in contributing to Kinto!
We love community feedback and are glad to review contributions of any size - from typos in the documentation to critical bug fixes - so don’t be shy!
How to contribute¶
Report bugs at https://github.com/Kinto/kinto/issues/new
If you are reporting a bug, please include:
- Any details about your local setup that might be helpful in troubleshooting.
- Detailed steps to reproduce the bug.
Check out the open bugs - anything tagged with the [easy-pick] label could be a good choice for newcomers.
Look through the GitHub issues for features. Anything tagged with [enhancement] is open to whoever wants to implement it.
Kinto could always use more documentation, whether as part of the official docs, in docstrings, or even on the Web in blog posts, articles, and such.
Any issue with the [question] label is open for feedback, so feel free to share your thoughts with us!
The best way to send feedback is to file a new issue on GitHub.
If you are proposing a feature:
- Explain how you envision it working. Try to be as detailed as you can.
- Try to keep the scope as narrow as possible. This will help make it easier to implement.
- Feel free to include any code you might already have, even if it’s just a rough idea. This is a volunteer-driven project, and contributions are welcome :)
Ready to contribute? Here’s how to set up Kinto for local development.
Fork the Kinto repo on GitHub.
Clone your fork locally:
git clone firstname.lastname@example.org:your_name_here/kinto.git
Install and run Kinto locally:
Create a branch for local development:
git checkout -b name-of-your-bugfix-or-feature
Now you can make your changes locally.
When you’re done making changes, check that your changes pass the tests:
Commit your changes and push your branch to GitHub:
$ git add . $ git commit -m "Your detailed description of your changes." $ git push origin name-of-your-bugfix-or-feature
Submit a pull request through the GitHub website.
Pull request guidelines¶
Open a pull-request even if your contribution is not ready yet! It can be discussed and improved collaboratively!
Before we merge a pull request, we check that it meets these guidelines:
- The pull request should include tests.
- If the pull request adds functionality, the docs should be updated.
- TravisCI integration tests should be green :) It will make sure the tests pass with every supported version of Python.
Hack core libraries¶
If you want to run Kinto with some core libraries under development (like Cliquet or Cornice),
just install them from your local folder using
For example :
cd .. git clone https://github.com/mozilla-services/cliquet.git cd kinto/ .venv/bin/pip install -e ../cliquet/
Run load tests¶
make test SERVER_URL=http://localhost:8888
Run a particular type of action instead of random:
LOAD_ACTION=batch_create make test SERVER_URL=http://localhost:8888
(See loadtests source code for an exhaustive list of available actions and their respective randomness.)
Coming soon !