# See https://pre-commit.com for more information # See https://pre-commit.com/hooks.html for more hooks repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.3.0 hooks: - id: check-yaml - id: check-added-large-files - id: fix-byte-order-marker - id: check-case-conflict - id: end-of-file-fixer - id: trailing-whitespace - id: mixed-line-ending - id: debug-statements - repo: https://github.com/pycqa/flake8 rev: 5.0.4 hooks: - id: flake8 args: ['--config=.flake8', '--tee', '--benchmark'] - repo: https://github.com/pre-commit/mirrors-mypy rev: v0.981 hooks: - id: mypy exclude: > (?x)^( .*.py )$ - repo: https://github.com/myint/unify rev: v0.5 hooks: - id: unify - repo: https://github.com/pre-commit/mirrors-yapf rev: "v0.32.0" hooks: - id: yapf args: ['style={based_on_style: google, column_limit: 160, indent_width: 4}'] - repo: https://github.com/pre-commit/mirrors-isort rev: v5.10.1 hooks: - id: isort - repo: https://github.com/myint/eradicate/ rev: v2.1.0 hooks: - id: eradicate - repo: https://github.com/espressif/check-copyright/ rev: v1.0.3 hooks: - id: check-copyright args: ['--ignore', 'ci/check_copyright_ignore.txt', '--config', 'ci/check_copyright_config.yaml'] - repo: https://github.com/igrr/astyle_py.git rev: c0013808882a15a0c0c2c1a9b5c903866c53a653 hooks: - id: astyle_py args: ['--style=otbs', '--attach-namespaces', '--attach-classes', '--indent=spaces=4', '--convert-tabs', '--align-pointer=name', '--align-reference=name', '--keep-one-line-statements', '--pad-header', '--pad-oper'] - repo: https://github.com/commitizen-tools/commitizen rev: v2.42.1 hooks: - id: commitizen - id: commitizen-branch stages: [push, manual] - repo: local hooks: - id: commit message scopes name: "commit message must be scoped with: mdns, modem, websocket, asio, mqtt_cxx, console, common" entry: '\A(?!(feat|fix|ci|bump|test|docs)\((mdns|modem|common|console|websocket|asio|mqtt_cxx|examples)\)\:)' language: pygrep args: [--multiline] stages: [commit-msg]