forked from SciTools/iris-grib
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.pre-commit-config.yaml
More file actions
131 lines (118 loc) · 4.17 KB
/
.pre-commit-config.yaml
File metadata and controls
131 lines (118 loc) · 4.17 KB
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
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
# See https://pre-commit.ci/#configuration
# See https://github.com/scientific-python/cookie#sp-repo-review
ci:
autofix_prs: true
autoupdate_commit_msg: "chore: update pre-commit hooks"
# Alphabetised, for lack of a better order.
files: |
(?x)(
benchmarks\/.+\.py|
docs\/.+\.py|
docs\/.+\.rst|
lib\/.+\.py|
noxfile\.py|
pyproject\.toml|
setup\.py|
src\/.+\.py
)
minimum_pre_commit_version: 1.21.0
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
# Prevent giant files from being committed.
- id: check-added-large-files
# Check whether files parse as valid Python.
- id: check-ast
# Check for file name conflicts on case-insensitive filesystems.
- id: check-case-conflict
# Check for files that contain merge conflict strings.
- id: check-merge-conflict
# Check for debugger imports and py37+ `breakpoint()` calls in Python source.
- id: debug-statements
# Check TOML file syntax.
- id: check-toml
# Check YAML file syntax.
- id: check-yaml
# Makes sure files end in a newline and only a newline.
# Duplicates Ruff W292 but also works on non-Python files.
- id: end-of-file-fixer
# Replaces or checks mixed line ending.
- id: mixed-line-ending
# Don't commit to main branch.
- id: no-commit-to-branch
# Trims trailing whitespace.
# Duplicates Ruff W291 but also works on non-Python files.
- id: trailing-whitespace
- repo: https://github.com/adamchainz/blacken-docs
rev: 1.19.1
hooks:
- id: blacken-docs
types: [file, rst]
- repo: https://github.com/codespell-project/codespell
rev: "v2.4.1"
hooks:
- id: codespell
types_or: [asciidoc, python, markdown, rst]
additional_dependencies: [tomli]
- repo: https://github.com/pre-commit/mirrors-mypy
rev: 'v1.16.0'
hooks:
- id: mypy
exclude: 'noxfile\.py|docs/conf\.py'
- repo: https://github.com/numpy/numpydoc
rev: v1.8.0
hooks:
- id: numpydoc-validation
exclude: "src/iris_grib/tests/|noxfile.py"
types: [file, python]
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: "v0.11.12"
hooks:
- id: ruff
types: [file, python]
args: [--fix, --show-fixes]
- id: ruff-format
types: [file, python]
- repo: https://github.com/aio-libs/sort-all
rev: v1.3.0
hooks:
- id: sort-all
types: [file, python]
- repo: https://github.com/scientific-python/cookie
rev: 2025.05.02
hooks:
- id: sp-repo-review
additional_dependencies: ["repo-review[cli]"]
args: ["--show=errskip"]
- repo: https://github.com/abravalheri/validate-pyproject
# More exhaustive than Ruff RUF200.
rev: "v0.24.1"
hooks:
- id: validate-pyproject
- repo: https://github.com/pre-commit/pygrep-hooks
rev: v1.10.0
hooks:
- id: python-check-blanket-noqa
# Enforce that all noqa annotations always occur with specific codes.
- id: python-check-blanket-type-ignore
# Enforce that "# type: ignore" annotations always occur with specific codes.
- id: python-check-mock-methods
# Prevent common mistakes of assert mck.not_called(), assert
# mck.called_once_with(...) and mck.assert_called.
- id: python-no-eval
# A quick check for the eval() built-in function
- id: python-no-log-warn
# A quick check for the deprecated .warn() method of python loggers
- id: python-use-type-annotations
# Enforce that python3.6+ type annotations are used instead of type comments
- id: rst-backticks
# Detect common mistake of using single backticks when writing rst.
- id: rst-directive-colons
# Detect mistake of rst directive not ending with double colon.
- id: rst-inline-touching-normal
# Detect mistake of inline code touching normal text in rst.
- id: text-unicode-replacement-char
# Forbid files which have a UTF-8 Unicode replacement character.