-
Notifications
You must be signed in to change notification settings - Fork 184
Expand file tree
/
Copy path.pre-commit-config.yaml
More file actions
91 lines (82 loc) · 2.62 KB
/
.pre-commit-config.yaml
File metadata and controls
91 lines (82 loc) · 2.62 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
# priorities:
# 0 - read-only
# 1000 - mutually non-conflicting fixers
# none - other fixers
# exclude vendored files
exclude: '^(COPYING\.LESSER|examples/deepzoom/static/.*\.js)$'
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v6.0.0
hooks:
- id: check-added-large-files
priority: 0
- id: check-merge-conflict
priority: 0
- id: check-toml
priority: 0
- id: check-vcs-permalinks
priority: 0
- id: check-yaml
priority: 0
- id: end-of-file-fixer
- id: fix-byte-order-marker
- id: mixed-line-ending
- id: trailing-whitespace
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.15.10
hooks:
- id: ruff-check
types_or: [python, pyi, pyproject]
args: [--fix]
- id: ruff-format
- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.20.0
hooks:
- id: mypy
name: Check Python types
priority: 0
# Pillow is ignored in dependabot.yml
additional_dependencies: [flask, openslide-bin, pillow >= 12.1.0, types-PyYAML, types-setuptools]
- repo: https://github.com/rstcheck/rstcheck
rev: v6.2.5
hooks:
- id: rstcheck
name: Validate reStructuredText syntax
priority: 0
additional_dependencies: [sphinx, toml]
- repo: https://github.com/codespell-project/codespell
rev: v2.4.2
hooks:
- id: codespell
name: Check spelling with codespell
priority: 0
additional_dependencies:
- tomli # Python < 3.11
- repo: meta
hooks:
- id: check-hooks-apply
priority: 0
- id: check-useless-excludes
priority: 0
- repo: local
hooks:
- id: mkmaintainer
name: Sync maintainer issue templates
priority: 1000
entry: .github/maintainer/mkmaintainer.py
files: .github/maintainer/
language: python
additional_dependencies: [PyYAML]
- id: annotations
name: Require "from __future__ import annotations"
priority: 0
language: pygrep
types: [python]
# exclude config-like files
exclude: "^(setup\\.py|doc/conf\\.py|openslide/_version\\.py)$"
# Allow files with import statement, or of less than two characters.
# One-character files are allowed because that's the best we can do
# with paired negative lookbehind and lookahead assertions. ^ and $
# don't work because --multiline causes them to match at newlines.
entry: "(?<!.)(?!.)|\nfrom __future__ import annotations"
args: [--multiline, --negate]