-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.pre-commit-config.yaml
119 lines (115 loc) · 3.23 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
# SPDX-FileCopyrightText: Copyright (C) 2018-2025 Uwe Klotz <uwedotklotzatgmaildotcom> et al.
# SPDX-License-Identifier: CC0-1.0
# yaml-language-server: $schema=https://json.schemastore.org/pre-commit-config.json
# Configuration file for https://pre-commit.com/
#
# Install or update pre-commit:
# pip install -U pre-commit
#
# Update all pre-commit hooks that are used in this config:
# pre-commit autoupdate
#
# Run pre-commit manually:
# pre-commit run --all-files
#
# Install Git hooks:
# pre-commit install --hook-type commit-msg --hook-type pre-commit
default_stages:
# Prevent that hooks run twice, triggered by both
# the Git commit-msg and the pre-commit hook.
- pre-commit
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
- id: check-case-conflict
- id: check-json
- id: check-merge-conflict
- id: check-symlinks
- id: check-toml
- id: check-xml
- id: check-yaml
exclude: ^.*spectral\.yaml$
- id: destroyed-symlinks
- id: detect-private-key
- id: end-of-file-fixer
- id: fix-byte-order-marker
- id: forbid-new-submodules
- id: mixed-line-ending
- id: trailing-whitespace
- repo: https://github.com/alessandrojcm/commitlint-pre-commit-hook
rev: v9.21.0
hooks:
- id: commitlint
stages:
# Differs from default_stages (see above)
- commit-msg
- repo: https://github.com/shellcheck-py/shellcheck-py
rev: v0.10.0.1
hooks:
- id: shellcheck
- repo: https://github.com/codespell-project/codespell
rev: v2.4.1
hooks:
- id: codespell
# Check for hardcoded and leaked secrets.
- repo: https://github.com/gitleaks/gitleaks
rev: v8.24.0
hooks:
- id: gitleaks
# Audit GitHub Actions CI/CD setups.
- repo: https://github.com/woodruffw/zizmor-pre-commit
rev: v1.4.1
hooks:
- id: zizmor
# JSON
- repo: https://github.com/sirosen/check-jsonschema
rev: 0.31.3
hooks:
- id: check-github-actions
- id: check-github-workflows
# Markdown
- repo: https://github.com/DavidAnson/markdownlint-cli2
rev: v0.17.2
hooks:
- id: markdownlint-cli2
exclude: ^LICENSE\.md$
# TODO: Remove unmaintained Prettier plugin.
- repo: https://github.com/pre-commit/mirrors-prettier
rev: v3.1.0
hooks:
- id: prettier
types_or:
- markdown
# YAML
- repo: https://github.com/google/yamlfmt
rev: v0.16.0
hooks:
- id: yamlfmt
# TOML
- repo: https://github.com/ComPWA/taplo-pre-commit
rev: v0.9.3
hooks:
- id: taplo-format
- id: taplo-lint
# Licensing: https://reuse.software
- repo: https://github.com/fsfe/reuse-tool
rev: v5.0.2
hooks:
- id: reuse
# Rust
- repo: https://github.com/doublify/pre-commit-rust
rev: v1.0
hooks:
- id: fmt
args: [--all, --]
- id: clippy
args: [--locked, --workspace, --all-features, --all-targets, --no-deps, --, -D, warnings]
- repo: local
hooks:
- id: cargo-doc
name: cargo-doc
entry: env RUSTDOCFLAGS=-Dwarnings cargo
language: system
pass_filenames: false
args: [doc, --locked, --workspace, --no-deps, --all-features]