-
Notifications
You must be signed in to change notification settings - Fork 0
/
.pre-commit-config.yaml
112 lines (100 loc) · 3.03 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
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v3.4.0
hooks:
- id: trailing-whitespace
exclude: ^tests/resources/
- id: end-of-file-fixer
exclude: ^tests/resources/
- id: check-yaml
args: ["--unsafe"]
- id: check-added-large-files
- id: check-ast
- id: check-json
- id: debug-statements
- id: detect-aws-credentials
args: [--allow-missing-credentials]
- id: detect-private-key
- id: check-merge-conflict
- id: check-added-large-files
args: ['--maxkb=3000']
- repo: https://github.com/myint/autoflake
rev: v1.4
hooks:
- id: autoflake
name: Removes unused variables
args:
- --in-place
- --remove-all-unused-imports
- --expand-star-imports
- --ignore-init-module-imports
- repo: https://github.com/pre-commit/mirrors-isort
rev: v5.10.1
hooks:
- id: isort
name: Sorts imports
args: [
# Align isort with black formatting
"--multi-line=3",
"--trailing-comma",
"--force-grid-wrap=0",
"--use-parentheses",
"--line-width=99",
]
- repo: https://github.com/psf/black
rev: 22.3.0
hooks:
- id: black
name: Fixes formatting
language_version: python3
args: ["--line-length=99"]
- repo: https://github.com/pycqa/flake8
rev: 6.1.0
hooks:
- id: flake8
name: Checks pep8 style
args: [
"--max-line-length=99",
# Ignore imports in init files
"--per-file-ignores=*/__init__.py:F401,setup.py:E121",
# ignore long comments (E501), as long lines are formatted by black
# ignore Whitespace before ':' (E203)
# ignore Line break occurred before a binary operator (W503)
"--ignore=E501,E203,W503",
]
# - repo: https://github.com/pre-commit/mirrors-mypy
# rev: v0.782
# hooks:
# - id: mypy
# args: [--ignore-missing-imports]
- repo: local
hooks:
- id: mypy
name: Static type checking
entry: mypy
files: \.py$
language: python
- id: jupyisort
name: Sorts ipynb imports
entry: jupytext --pipe-fmt ".py" --pipe "isort - --multi-line=3 --trailing-comma --force-grid-wrap=0 --use-parentheses --line-width=99" --sync
files: \.ipynb$
language: python
- id: jupyblack
name: Fixes ipynb format
entry: jupytext --pipe-fmt ".py" --pipe "black - --line-length=99" --sync
files: \.ipynb$
language: python
- id: nbconvert
name: Removes ipynb content
entry: jupyter nbconvert
args:
[
"--ClearOutputPreprocessor.enabled=True",
"--ClearMetadataPreprocessor.enabled=True",
"--RegexRemovePreprocessor.enabled=True",
"--to=notebook",
"--log-level=ERROR",
"--inplace",
]
files: \.ipynb$
language: python