-
-
Notifications
You must be signed in to change notification settings - Fork 9
/
.pre-commit-config.yaml
139 lines (139 loc) · 4.34 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
133
134
135
136
137
138
139
# https://pre-commit.com/#installation
default_stages: [pre-commit, pre-push]
default_language_version:
python: python3
node: 22.2.0
minimum_pre_commit_version: '3.2.0'
repos:
- repo: meta
hooks:
- id: identity
name: run identity
description: run the identity check
- id: check-hooks-apply
name: check hooks apply to the repository
description: useful when testing new hooks to see if they apply to the repository
- repo: local
hooks:
- id: prettier
name: run prettier
description: format files with prettier
entry: prettier --write .
files: \.(md|ya?ml)$
language: node
additional_dependencies: ['[email protected]']
- repo: https://github.com/jendrikseipp/vulture
rev: v2.14
hooks:
- id: vulture
name: run vulture
description: find dead Python code
- repo: https://github.com/psf/black-pre-commit-mirror
rev: 24.10.0
hooks:
- id: black
name: run black
description: run black on all Python files
- repo: https://github.com/PyCQA/bandit
rev: 1.8.0
hooks:
- id: bandit
name: run bandit
description: run bandit on all Python files
args: ['-c', 'pyproject.toml']
additional_dependencies: ['.[toml]']
- repo: https://github.com/gitleaks/gitleaks
rev: v8.22.0
hooks:
- id: gitleaks
name: run detect hardcoded secrets
description: run gitleaks to detect hardcoded secrets in the repo
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
- id: check-added-large-files
- id: check-case-conflict
- id: check-executables-have-shebangs
- id: check-illegal-windows-names
- id: check-merge-conflict
- id: check-shebang-scripts-are-executable
- id: check-toml
- id: check-vcs-permalinks
- id: check-yaml
exclude: ^config/layout/attribute/style/value\.yaml$
- id: destroyed-symlinks
- id: detect-aws-credentials
args: [--allow-missing-credentials]
- id: detect-private-key
- id: end-of-file-fixer
exclude: \.out$|\.html$
- id: fix-byte-order-marker
- id: forbid-submodules
- id: mixed-line-ending
- id: trailing-whitespace
args: [--markdown-linebreak-ext=md]
- repo: https://github.com/codespell-project/codespell
rev: v2.3.0
hooks:
- id: codespell
name: run codespell
description: run the codespell spell checker
exclude: |
(?x)^(
src/salam-wa.js|
src/salam-wa.html
)$
args: [--ignore-words=.github/linters/codespell.txt]
- repo: https://github.com/tcort/markdown-link-check
rev: v3.13.6
hooks:
- id: markdown-link-check
name: run markdown link check
description: check the Markdown files for broken links
args: [-q]
- repo: https://github.com/igorshubovych/markdownlint-cli
rev: v0.43.0
hooks:
- id: markdownlint
name: run markdownlint
description: check Markdown files with markdownlint
args: [--config=.github/linters/.markdown-lint.yml]
types: [markdown]
files: \.md$
- repo: https://github.com/shssoichiro/oxipng
rev: v9.1.3
hooks:
- id: oxipng
name: run oxipng
description: run oxipng lossless image compression on PNG files
args: ['-o', '4', '--strip', 'safe', '--alpha']
- repo: https://github.com/adrienverge/yamllint
rev: v1.35.1
hooks:
- id: yamllint
name: run yamllint
description: check YAML files with yamllint
args: [--strict, -c=.github/linters/.yaml-lint.yml]
types: [yaml]
files: \.ya?ml$
# env:
# PYTHONUTF8: '1'
- repo: https://github.com/pre-commit/mirrors-clang-format
rev: v19.1.5
hooks:
- id: clang-format
name: run clang-format
description: run ClangFormat on all C files
args: ['--style=file']
files: \.(c|h)$
- repo: https://github.com/pycqa/isort
rev: 5.13.2
hooks:
- id: isort
name: run isort (python)
description: a Python utility / library to sort imports
- repo: https://github.com/pre-commit/mirrors-mypy
rev: 'v1.14.0'
hooks:
- id: mypy
args: ['--explicit-package-bases', '--ignore-missing-imports']