Coding Style¶
Saleor uses various tools to maintain a common coding style and help with development. To install all the development tools do:
$ python -m pip install -r requirements_dev.txt``
or if using pipenv:
$ pipenv install --dev
Saleor uses the pre-commit tool to check and automatically fix any formatting issue before creating a git commit.
Run the following command to install pre-commit into your git hooks and have it run on every commit:
$ pre-commit install
If you want more information on how it works, you can refer to the .pre-commit-config.yaml
configuration file.
Python¶
Always follow PEP 8 but keep in mind that consistency is important.
The only difference with PEP 8 is that we use a 88 characters line limit instead of 79.
In addition, Saleor uses the black formatting tool that comes with its own rules. A few of them are presented below.
String Literals¶
Double quotes should be used instead of single quotes.
Wrapping Code¶
When wrapping code follow the “vertical hanging indent” format:
some_dict = {
'one': 1,
'two': 2,
'three': 3,
}
some_list = [
'foo',
'bar',
'baz',
]
Linters¶
Use black to make sure your code is correctly formatted.
Use isort to maintain consistent imports.
Use pylint with the pylint-django plugin to catch errors in your code.
Use pycodestyle to make sure your code adheres to PEP 8.
Use pydocstyle to check that your docstrings are properly formatted.