Whether reporting bugs, discussing improvements and new ideas: Contributions to Pyfield are highly welcomed and appreciated! Here's how to get started:
- Check for open issues or open a fresh issue to start a discussion around a feature idea or bug
- Fork the repository on GitHub, create a new branch off the master branch and start making your changes (known as GitHub Flow)
- Write a test which shows that the bug was fixed or that the feature works as expected
- Send a pull request and bug the maintainer until it gets merged and published :)
Report bugs for pyfield in the issue tracker.
If you can write a demonstration test that currently fails but should pass (xfail), that is a very useful commit to make as well, even if you cannot fix the bug itself.
Use master
branch for:
- typo fix
- small bug fix
Use develop
branch for:
- big bug fix
- small feature
- documentation
Use another branch for:
- new idea
- new big feature
- ...
In general the pyfield source should always follow PEP 8. However we make a small axception concerning docstrings:
when using multiline docstrings, keep the opening and closing triple quotes on their own lines and add an empty line after it. Using yapf is recommended.
def some_function():
"""
Documentation ...
"""
# implementation ...
Try to make:
- 100% coverage
- 10/10 pylint
Pyfield follows the SemVer versioning guidelines. This implies that backwards incompatible changes in the API will increment the major version. So think twice before making such changes.
Pyfield use pyscaffold API so the project version is on git tag.