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
|
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
repos:
- repo: local
hooks:
- id: ruff-check
name: đļ Ruff Linter
language: system
types: [python]
entry: scripts/run-in-env.sh ruff check --fix
exclude: ^aiohue/v1/
require_serial: true
stages: [pre-commit, pre-push, manual]
- id: ruff-format
name: đļ Ruff Formatter
language: system
types: [python]
entry: scripts/run-in-env.sh ruff format
require_serial: true
stages: [pre-commit, pre-push, manual]
- id: check-ast
name: đ Check Python AST
language: system
types: [python]
entry: scripts/run-in-env.sh check-ast
- id: check-case-conflict
name: đ Check for case conflicts
language: system
entry: scripts/run-in-env.sh check-case-conflict
- id: check-docstring-first
name: âšī¸ Check docstring is first
language: system
types: [python]
entry: scripts/run-in-env.sh check-docstring-first
- id: check-executables-have-shebangs
name: đ§ Check that executables have shebangs
language: system
types: [text, executable]
entry: scripts/run-in-env.sh check-executables-have-shebangs
stages: [pre-commit, pre-push, manual]
- id: check-json
name: īŊ Check JSON files
language: system
types: [json]
entry: scripts/run-in-env.sh check-json
- id: check-merge-conflict
name: đĨ Check for merge conflicts
language: system
types: [text]
entry: scripts/run-in-env.sh check-merge-conflict
- id: check-symlinks
name: đ Check for broken symlinks
language: system
types: [symlink]
entry: scripts/run-in-env.sh check-symlinks
- id: check-toml
name: â
Check TOML files
language: system
types: [toml]
entry: scripts/run-in-env.sh check-toml
- id: codespell
name: â
Check code for common misspellings
language: system
types: [text]
entry: scripts/run-in-env.sh codespell
exclude: ^tests/fixtures/
- id: detect-private-key
name: đĩī¸ Detect Private Keys
language: system
types: [text]
entry: scripts/run-in-env.sh detect-private-key
- id: end-of-file-fixer
name: ⎠Fix End of Files
language: system
types: [text]
entry: scripts/run-in-env.sh end-of-file-fixer
stages: [pre-commit, pre-push, manual]
- id: no-commit-to-branch
name: đ Don't commit to main branch
language: system
entry: scripts/run-in-env.sh no-commit-to-branch
pass_filenames: false
always_run: true
args:
- --branch=main
- id: pylint
name: đ Starring code with pylint
language: system
types: [python]
entry: scripts/run-in-env.sh pylint
- id: trailing-whitespace
name: â Trim Trailing Whitespace
language: system
types: [text]
entry: scripts/run-in-env.sh trailing-whitespace-fixer
stages: [pre-commit, pre-push, manual]
# TODO: enable mypy and solve the found issues
# - id: mypy
# name: mypy
# entry: scripts/run-in-env.sh mypy
# language: script
# types: [python]
# require_serial: true
# files: ^(aiohue/v2|pylint)/.+\.py$
|