-
Notifications
You must be signed in to change notification settings - Fork 240
Expand file tree
/
Copy path.pre-commit-config.yaml
More file actions
126 lines (126 loc) · 4.56 KB
/
.pre-commit-config.yaml
File metadata and controls
126 lines (126 loc) · 4.56 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
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.4.0
hooks:
- id: trailing-whitespace
args: [--markdown-linebreak-ext=md, --markdown-linebreak-ext=pandoc]
# Tests/Python/res/test_docu_scripts/ contain improper white spaces on
# purpose: such whitespace errors should be tested, there.
exclude: "^Tests/Data/.*|^Tests/Python/res/test_docu_scripts/|^web/static|^Documentation/.vale/.*|.*\\.patch"
- id: check-added-large-files
args: [--maxkb 1024]
exclude: "uv.lock"
- id: check-merge-conflict
- id: check-xml
exclude: '^Tests/Data/.*\.xml'
- id: check-yaml
exclude: "^scripts/ci/.*|.cmake-format.yaml"
- id: check-toml
- id: check-executables-have-shebangs
- id: check-shebang-scripts-are-executable
- id: check-json
- id: fix-byte-order-marker
exclude: "^Documentation/.vale/.*"
- id: mixed-line-ending
exclude: ".*\\.vtu|.*@@"
- repo: https://github.com/psf/black
rev: 26.1.0
hooks:
- id: black
exclude: "LinearMFront/generate_ref.py"
# Run black on markdown notebooks
- repo: https://github.com/nbQA-dev/nbQA
rev: 1.7.0
hooks:
- id: nbqa-black
additional_dependencies: [jupytext, black==26.1.0]
- repo: https://github.com/codespell-project/codespell
rev: v2.4.1
hooks:
- id: codespell
exclude: 'Tests/Data/.*|.*\.ya?ml|.*\.bib|^web/content/imprint.md|^GeoLib/IO/XmlIO/OpenGeoSysSTN.xsd|^Applications/FileIO/Legacy/OGSIOVer4.cpp|^scripts/cmake/CPM.cmake|Documentation/.vale/.*|.*\.ipynb|.*\.svg|^GeoLib/predicates.c'
- repo: https://github.com/cheshirekow/cmake-format-precommit
rev: v0.6.13
hooks:
- id: cmake-format
additional_dependencies: ["cmakelang[YAML]"]
args: [--config=.cmake-format.yaml]
exclude: "CPM.cmake|FindFilesystem.cmake|FindMKL.cmake|JSONParser.cmake|Tests.cmake|FindTFEL.cmake|FindMFrontGenericInterface.cmake"
- id: cmake-lint
additional_dependencies: ["cmakelang[YAML]"]
exclude: "CPM.cmake|FindFilesystem.cmake|FindMKL.cmake|JSONParser.cmake|BuildExternalProject.cmake|FindTFEL.cmake|FindMFrontGenericInterface.cmake"
- repo: https://github.com/igorshubovych/markdownlint-cli
rev: v0.42.0
hooks:
- id: markdownlint
language_version: 22.11.0
- repo: local
hooks:
- id: git-diff-check
name: Run git diff --check
entry: git --no-pager diff --check --cached -- ':!*.md' ':!*.pandoc' ':!*.asc' ':!*.dat' ':!*.ts'
language: system
exclude: "Tests/Data/.*|web/static/images/xsd"
stages: [pre-commit, manual]
- id: file-extensions
name: Check file extensions
entry: scripts/hooks/pre-commit-file-extensions.sh
language: system
files: '.*\.cpp'
stages: [pre-commit, manual]
- repo: https://github.com/errata-ai/vale
rev: v2.24.4
hooks:
- id: vale
name: vale sync
pass_filenames: false
args: [sync]
- id: vale
args: [--output=line, --minAlertLevel=error]
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: "v0.13.1"
hooks:
- id: ruff-check
types_or: [python, pyi, jupyter]
args: [--output-format=full]
# A variant of the ruff hook above that automatically applies proposed fixes.
# Runs only manually.
# Run this hook (and all other manual hooks if any) with:
# pre-commit run --hook-stage manual
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: "v0.13.1"
hooks:
- id: ruff-check
types_or: [python, pyi, jupyter]
args: [--output-format=full, --fix, --exit-non-zero-on-fix]
stages: [manual]
- repo: https://github.com/pre-commit/mirrors-clang-format
rev: v22.1.1
hooks:
# git commit hook
- id: clang-format
entry: git-clang-format
language: python
pass_filenames: false
args: [--extensions, "h,cpp"]
stages: [pre-commit]
# CI-only hook
- id: clang-format
name: clang-format (CI)
entry: bash -c 'git-clang-format --extensions h,cpp ${CI_MERGE_REQUEST_DIFF_BASE_SHA}'
language: python
pass_filenames: false
args: []
stages: [manual]
always_run: true
- repo: https://github.com/astral-sh/uv-pre-commit
rev: 0.8.18
hooks:
# Check lock file up-to-date
- id: uv-lock
files: pyproject.toml
name: uv-lock (.)
- id: uv-lock
files: Tests/Data/pyproject.toml
args: [--project, Tests/Data]
name: uv-lock (Tests/Data)