Contributions are welcome! Not familiar with the codebase yet? No problem! There are many ways to contribute to open source projects: reporting bugs, helping with the documentation, spreading the word and of course, adding new features and patches.
- Make sure you have a GitHub account.
- Open a new issue, assuming one does not already exist.
- Clearly describe the issue including steps to reproduce when it is a bug.
- Fork the repository on GitHub.
- Create a topic branch from where you want to base your work.
- This is usually the
master
branch. - Please avoid working directly on the
master
branch. - Make commits of logical units (if needed rebase your feature branch before submitting it).
- Check for unnecessary whitespace with
git diff --check
before committing. - Make sure your commit messages are in the proper format.
- If your commit fixes an open issue, reference it in the commit message (#15).
- Make sure your code conforms to PEP8 (we're using flake8 for PEP8 and extra checks).
- Make sure you have added the necessary tests for your changes.
- Run all the tests to assure nothing else was accidentally broken.
- Run again the entire suite via tox to check your changes against multiple
python versions.
pip install tox; tox
- Don't forget to add yourself to AUTHORS.
These guidelines also apply when helping with documentation (actually, for typos and minor additions you might choose to fork and edit).
- Push your changes to a topic branch in your fork of the repository.
- Submit a Pull Request.
- Wait for maintainer feedback.
The fork can be kept in sync by following the instructions here.
If you're interested in contributing to the Eve-SQLAlchemy project or have any questions about it, come join us in Eve's #python-eve channel on irc.freenode.net.
It's alright. We've all been there. See next chapter.
There are usually several TODO comments scattered around the codebase, maybe
check them out and see if you have ideas, or can help with them. Also, check
the open issues in case there's something that sparks your interest. There's
also a special contributor-friendly
label flagging some interesting feature
requests and issues that will easily get you started - even without knowing the
codebase yet. If you're fluent in English (or notice any typo and/or mistake),
feel free to improve the documentation. In any case, other than GitHub help
pages, you might want to check this excellent Effective Guide to Pull
Requests