Merge pull request #202 from eReuse/autoformat-black

Run black, flake8 & isort as pre-commit hook
This commit is contained in:
Santiago L 2022-02-11 11:33:03 +01:00 committed by GitHub
commit 5335507c40
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 62 additions and 0 deletions

17
.pre-commit-config.yaml Normal file
View File

@ -0,0 +1,17 @@
repos:
- repo: https://github.com/psf/black
rev: 22.1.0
hooks:
- id: black
- repo: https://github.com/PyCQA/isort
rev: 5.9.3
hooks:
- id: isort
- repo: https://github.com/PyCQA/flake8
rev: 4.0.1
hooks:
- id: flake8
- repo: https://github.com/conorfalvey/check_pdb_hook
rev: 0.0.9
hooks:
- id: check_pdb_hook

25
CONTRIBUTING.md Normal file
View File

@ -0,0 +1,25 @@
; SHARED on https://pad.cas.cat/usody-devicehub-contributing
# Contributing to devicehub
## Writing code
### Coding style
#### Python style
- Unless otherwise specified, follow [PEP 8](https://www.python.org/dev/peps/pep-0008). Use [flake8](https://pypi.org/project/flake8/) to check for problems in this area.
- Use [isort](https://github.com/PyCQA/isort#readme) to automate import sorting.
To automatize this work just configure `pre-commit` hooks in your development environment:
```bash
# on your virtual environment
pip install -r requirements-dev.txt
pre-commit install
```
#### HTML (templates)
- Template file names should be all lowercase, using underscores instead of camelCase.
Do this: `device_detail.html`
Don't do this: `DeviceDetail.html`, `Device-detail.html`

6
pyproject.toml Normal file
View File

@ -0,0 +1,6 @@
[tool.black]
skip-string-normalization = true
target-version = ['py38']
[tool.isort]
multi_line_output = 4

4
requirements-dev.txt Normal file
View File

@ -0,0 +1,4 @@
black
isort
flake8
pre-commit

10
tox.ini Normal file
View File

@ -0,0 +1,10 @@
[flake8]
count = True
exclude =
migrations
resources # exclude code that will be deprecated
tests # exclude code that will be deprecated
max-complexity = 10
max-line-length = 120
show-source = True
statistics = True