-
Notifications
You must be signed in to change notification settings - Fork 7
/
.pre-commit-config.yaml
119 lines (109 loc) · 3.55 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
default_stages: [pre-commit]
repos:
- repo: https://github.com/PyCQA/flake8
rev: 7.1.1
hooks:
- id: flake8
args:
- --max-line-length=100
- --max-cognitive-complexity=15
- --ignore=E203,E266,E501,W503,F722
additional_dependencies:
- pep8-naming==0.13.3
- flake8-absolute-import==1.0.0.1
- flake8-bugbear==22.12.6
- flake8-builtins==2.0.1
- flake8-class-attributes-order==0.1.3
- flake8-cognitive-complexity==0.1.0
- flake8-comprehensions==3.10.1
- flake8-pytest-style==1.6.0
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
- id: debug-statements # Check for debugger imports
- id: requirements-txt-fixer # Order requirements alphabetically
- id: check-ast # Simply check whether the files parse as valid python
- id: check-case-conflict # Check for files that would conflict in case-insensitive filesystems
- id: check-builtin-literals # Require literal syntax when initializing empty or zero Python builtin types
- id: check-docstring-first # Check a common error of defining a docstring after code
- id: check-merge-conflict # Check for files that contain merge conflict strings
- id: check-yaml # Check yaml files
args: ["--unsafe"]
- id: end-of-file-fixer # Ensure that a file is either empty, or ends with one newline
- id: mixed-line-ending # Replace or checks mixed line ending
- id: trailing-whitespace # This hook trims trailing whitespace
- repo: https://github.com/compilerla/conventional-pre-commit
rev: v3.4.0
hooks:
- id: conventional-pre-commit
stages:
- commit-msg
args:
[
"ci",
"build",
"docs",
"feat",
"fix",
"perf",
"refactor",
"style",
"test",
"exp",
"chore",
]
- repo: https://github.com/pre-commit/mirrors-prettier
rev: v3.0.0-alpha.4
hooks:
- id: prettier
args:
- --print-width=100
- --prose-wrap=always
- --tab-width=2
# - repo: https://github.com/asottile/pyupgrade
# rev: v3.15.0
# hooks:
# - id: pyupgrade
# args:
# - --py38-plus
- repo: https://github.com/pycqa/pydocstyle
rev: 6.3.0
hooks:
- id: pydocstyle
additional_dependencies: ["toml"]
args:
- --convention=google
- --add-ignore=D100,D104,D105,D107,D417
- repo: https://github.com/codespell-project/codespell
rev: v2.3.0
hooks:
- id: codespell
name: codespell
description: Checks for common misspellings in text files.
entry: codespell --skip="*.js,*.html,*.css, *.svg" --ignore-words=.codespell-ignore.txt
language: python
types: [text]
- repo: https://github.com/kynan/nbstripout
rev: 0.7.1
hooks:
- id: nbstripout
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.6.9
hooks:
# Run the linter.
- id: ruff
args: [--fix, --ignore, F722]
# Run the formatter.
- id: ruff-format
- repo: https://github.com/pre-commit/mirrors-mypy
rev: "v1.11.2"
hooks:
- id: mypy
additional_dependencies: [types-requests, types-PyYAML]
args:
[
--ignore-missing-imports,
"--exclude=(notebooks|tests)",
--disable-error-code,
"name-defined",
]