mirror of
https://github.com/ZGCA-Forge/Elevator.git
synced 2026-02-08 16:05:23 +00:00
114 lines
2.8 KiB
YAML
114 lines
2.8 KiB
YAML
repos:
|
|
# Code formatting
|
|
- repo: https://github.com/psf/black
|
|
rev: 23.12.1
|
|
hooks:
|
|
- id: black
|
|
language_version: python3
|
|
args: ["--line-length=88"]
|
|
|
|
# Import sorting
|
|
- repo: https://github.com/pycqa/isort
|
|
rev: 5.13.2
|
|
hooks:
|
|
- id: isort
|
|
args: ["--profile", "black", "--multi-line", "3"]
|
|
|
|
# Linting
|
|
- repo: https://github.com/pycqa/flake8
|
|
rev: 7.0.0
|
|
hooks:
|
|
- id: flake8
|
|
args:
|
|
- "--max-line-length=88"
|
|
- "--extend-ignore=E203,W503,F401"
|
|
- "--exclude=build,dist,.eggs"
|
|
|
|
# Type checking
|
|
- repo: https://github.com/pre-commit/mirrors-mypy
|
|
rev: v1.8.0
|
|
hooks:
|
|
- id: mypy
|
|
additional_dependencies: [types-PyYAML]
|
|
args: ["--ignore-missing-imports", "--scripts-are-modules"]
|
|
exclude: "^(tests/|examples/)"
|
|
|
|
# General pre-commit hooks
|
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
rev: v4.5.0
|
|
hooks:
|
|
# File checks
|
|
- id: trailing-whitespace
|
|
args: [--markdown-linebreak-ext=md]
|
|
- id: end-of-file-fixer
|
|
- id: check-yaml
|
|
- id: check-json
|
|
- id: check-toml
|
|
- id: check-xml
|
|
|
|
# Security
|
|
- id: check-merge-conflict
|
|
- id: check-case-conflict
|
|
- id: check-symlinks
|
|
- id: check-added-large-files
|
|
args: ["--maxkb=1000"]
|
|
|
|
# Python specific
|
|
- id: check-ast
|
|
- id: check-builtin-literals
|
|
- id: check-docstring-first
|
|
- id: debug-statements
|
|
- id: name-tests-test
|
|
args: ["--django"]
|
|
|
|
# Security scanning
|
|
- repo: https://github.com/PyCQA/bandit
|
|
rev: 1.7.5
|
|
hooks:
|
|
- id: bandit
|
|
args: ["-c", "pyproject.toml"]
|
|
additional_dependencies: ["bandit[toml]"]
|
|
exclude: "^tests/"
|
|
|
|
# Documentation
|
|
- repo: https://github.com/pycqa/pydocstyle
|
|
rev: 6.3.0
|
|
hooks:
|
|
- id: pydocstyle
|
|
args: ["--convention=google"]
|
|
exclude: "^(tests/|examples/)"
|
|
|
|
# YAML/JSON formatting
|
|
- repo: https://github.com/pre-commit/mirrors-prettier
|
|
rev: v4.0.0-alpha.8
|
|
hooks:
|
|
- id: prettier
|
|
types_or: [yaml, json, markdown]
|
|
exclude: "^(.github/)"
|
|
|
|
# Spell checking (optional)
|
|
- repo: https://github.com/codespell-project/codespell
|
|
rev: v2.2.6
|
|
hooks:
|
|
- id: codespell
|
|
args: ["--write-changes"]
|
|
exclude: "^(.*\\.po|.*\\.pot|CHANGELOG\\.md)$"
|
|
|
|
# Global settings
|
|
default_stages: [commit, push]
|
|
fail_fast: false
|
|
|
|
# CI settings
|
|
ci:
|
|
autofix_commit_msg: |
|
|
[pre-commit.ci] auto fixes from pre-commit.com hooks
|
|
|
|
for more information, see https://pre-commit.ci
|
|
autofix_prs: true
|
|
autoupdate_branch: ''
|
|
autoupdate_commit_msg: '[pre-commit.ci] pre-commit autoupdate'
|
|
autoupdate_schedule: weekly
|
|
skip: []
|
|
submodules: false
|
|
|