| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| --- |
| default_stages: [commit, push] |
| default_language_version: |
| # force all unspecified python hooks to run python3 |
| python: python3 |
| minimum_pre_commit_version: "1.20.0" |
| repos: |
| - repo: meta |
| hooks: |
| - id: identity |
| - id: check-hooks-apply |
| - repo: https://github.com/Lucas-C/pre-commit-hooks |
| rev: v1.1.9 |
| hooks: |
| - id: forbid-tabs |
| - id: insert-license |
| name: Add license |
| exclude: ^\.github/.*$|^license-templates/|\.json$ |
| args: |
| - --comment-style |
| - "|#|" |
| - --license-filepath |
| - license-templates/LICENSE.txt |
| - --fuzzy-match-generates-todo |
| - id: insert-license |
| name: Add license for all rst files |
| exclude: ^\.github/.*$ |
| args: |
| - --comment-style |
| - "||" |
| - --license-filepath |
| - license-templates/LICENSE.rst |
| - --fuzzy-match-generates-todo |
| files: \.rst$ |
| - repo: https://github.com/psf/black |
| rev: 20.8b1 |
| hooks: |
| - id: black |
| args: [--config=./pyproject.toml] |
| - repo: https://github.com/pre-commit/pre-commit-hooks |
| rev: v3.4.0 |
| hooks: |
| - id: check-merge-conflict |
| - id: debug-statements |
| - id: check-builtin-literals |
| - id: detect-private-key |
| - id: end-of-file-fixer |
| - id: mixed-line-ending |
| - id: trailing-whitespace |
| - id: fix-encoding-pragma |
| args: |
| - --remove |
| - repo: https://github.com/asottile/pyupgrade |
| rev: v2.7.4 |
| hooks: |
| - id: pyupgrade |
| args: ["--py36-plus"] |
| - repo: https://github.com/pre-commit/pygrep-hooks |
| rev: v1.7.0 |
| hooks: |
| - id: rst-backticks |
| - id: python-no-log-warn |
| - repo: https://github.com/timothycrosley/isort |
| rev: 5.7.0 |
| hooks: |
| - id: isort |
| name: Run isort to sort imports |
| files: \.py$ |
| # To keep consistent with the global isort skip config defined in setup.cfg |
| exclude: ^build/.*$|^.tox/.*$|^venv/.*$ |
| - repo: https://gitlab.com/pycqa/flake8 |
| rev: 3.8.4 |
| hooks: |
| - id: flake8 |
| name: Run flake8 |