-
Notifications
You must be signed in to change notification settings - Fork 15
/
.pre-commit-config.yaml
132 lines (125 loc) · 3.64 KB
/
.pre-commit-config.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
files: ^datajunction-(server|query|reflection)/
exclude: (^docs/|^openapi/|^datajunction-clients/python/|^datajunction-clients/javascript/|^datajunction-server/dj/sql/parsing/backends/grammar/generated|^README.md)
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.1.0
hooks:
- id: trailing-whitespace
- id: check-ast
exclude: ^templates/
- id: check-json
- id: check-merge-conflict
- id: check-xml
- id: check-yaml
- id: debug-statements
exclude: ^templates/
- id: end-of-file-fixer
exclude: openapi.json
- id: requirements-txt-fixer
exclude: ^templates/
- id: mixed-line-ending
args: ['--fix=auto'] # replace 'auto' with 'lf' to enforce Linux/Mac line endings or 'crlf' for Windows
## If you want to avoid flake8 errors due to unused vars or imports:
# - repo: https://github.com/myint/autoflake.git
# rev: v1.4
# hooks:
# - id: autoflake
# args: [
# --in-place,
# --remove-all-unused-imports,
# --remove-unused-variables,
# ]
- repo: https://github.com/pycqa/isort
rev: 5.12.0
hooks:
- id: isort
- repo: https://github.com/psf/black
rev: 22.8.0
hooks:
- id: black
language_version: python3
exclude: ^templates/
## If like to embrace black styles even in the docs:
# - repo: https://github.com/asottile/blacken-docs
# rev: v1.9.1
# hooks:
# - id: blacken-docs
# additional_dependencies: [black]
- repo: https://github.com/PyCQA/flake8
rev: 3.9.2
hooks:
- id: flake8
exclude: ^templates/
## You can add flake8 plugins via `additional_dependencies`:
# additional_dependencies: [flake8-bugbear]
- repo: https://github.com/pre-commit/mirrors-mypy
rev: 'v0.981' # Use the sha / tag you want to point at
hooks:
- id: mypy
exclude: ^templates/
additional_dependencies:
- types-requests
- types-freezegun
- types-python-dateutil
- types-setuptools
- types-tabulate
- repo: https://github.com/asottile/add-trailing-comma
rev: v2.2.1
hooks:
- id: add-trailing-comma
#- repo: https://github.com/asottile/reorder_python_imports
# rev: v2.5.0
# hooks:
# - id: reorder-python-imports
# args: [--application-directories=.:src]
- repo: https://github.com/hadialqattan/pycln
rev: v2.1.7 # Possible releases: https://github.com/hadialqattan/pycln/tags
hooks:
- id: pycln
args: [--config=pyproject.toml]
exclude: ^templates/
- repo: local
hooks:
- id: pylint
name: pylint
entry: pylint --disable=duplicate-code,use-implicit-booleaness-not-comparison
language: system
types: [python]
exclude: ^templates/
- repo: https://github.com/kynan/nbstripout
rev: 0.6.1
hooks:
- id: nbstripout
- repo: https://github.com/tomcatling/black-nb
rev: "0.7"
hooks:
- id: black-nb
files: '\.ipynb$'
- repo: https://github.com/pdm-project/pdm
rev: 2.8.1
hooks:
- id: pdm-lock-check
name: pdm-lock-check-root
entry: pdm lock --check --project .
files: ^pyproject.toml$
- repo: https://github.com/pdm-project/pdm
rev: 2.18.2
hooks:
- id: pdm-lock-check
name: pdm-lock-check-server
entry: pdm lock --check --project datajunction-server
files: ^datajunction-server/pyproject.toml$
- repo: https://github.com/pdm-project/pdm
rev: 2.18.2
hooks:
- id: pdm-lock-check
name: pdm-lock-check-query
entry: pdm lock --check --project datajunction-query
files: ^datajunction-query/pyproject.toml$
- repo: https://github.com/pdm-project/pdm
rev: 2.18.2
hooks:
- id: pdm-lock-check
name: pdm-lock-check-reflection
entry: pdm lock --check --project datajunction-reflection
files: ^datajunction-reflection/pyproject.toml$