exclude: | (?x) # Files and folders generated by bots, to avoid loops /static/description/index\.html$| # Library files can have extraneous formatting (even minimized) /static/(src/)?lib/| # You don't usually want a bot to modify your legal texts (LICENSE.*|COPYING.*) default_language_version: python: python3 node: "14.14.0" repos: - repo: local hooks: - id: forbidden-files name: forbidden files entry: found forbidden files; remove them language: fail files: "\\.rej$" - repo: https://github.com/psf/black rev: 20.8b1 hooks: - id: black - repo: https://github.com/asottile/pyupgrade rev: v2.7.2 hooks: - id: pyupgrade - repo: https://github.com/timothycrosley/isort rev: 5.5.1 hooks: - id: isort name: isort except __init__.py args: [--settings, .] exclude: /__init__\.py$ # TODO Migrate to new prettier pre-commit repo after fixed: # HACK https://github.com/prettier/pre-commit/pull/17 # HACK https://github.com/prettier/pre-commit/pull/18 - repo: https://github.com/prettier/prettier rev: 2.1.2 hooks: - id: prettier name: prettier + plugin-xml additional_dependencies: - "@prettier/plugin-xml@0.12.0" args: - --plugin=@prettier/plugin-xml - repo: https://github.com/pre-commit/pre-commit-hooks rev: v3.2.0 hooks: - id: trailing-whitespace - id: end-of-file-fixer - id: debug-statements - id: fix-encoding-pragma args: ["--remove"] - id: check-case-conflict - id: check-docstring-first - id: check-executables-have-shebangs - id: check-merge-conflict - id: check-symlinks - id: check-xml - id: mixed-line-ending args: ["--fix=lf"] - repo: https://gitlab.com/pycqa/flake8 rev: 3.8.3 hooks: - id: flake8 name: flake8 except __init__.py exclude: /__init__\.py$ additional_dependencies: ["flake8-bugbear==20.1.4"] - id: flake8 name: flake8 only __init__.py args: ["--extend-ignore=F401"] # ignore unused imports in __init__.py files: /__init__\.py$ additional_dependencies: ["flake8-bugbear==20.1.4"] - repo: https://github.com/pycqa/pylint rev: pylint-2.6.0 hooks: - id: pylint name: pylint with optional checks args: - --valid_odoo_versions=14.0 - --rcfile=.pylintrc - --exit-zero verbose: true additional_dependencies: - isort==4.3.21 - pylint-odoo==3.5.0 - id: pylint name: pylint with mandatory checks args: - --valid_odoo_versions=14.0 - --rcfile=.pylintrc-mandatory additional_dependencies: - isort==4.3.21 - pylint-odoo==3.5.0 - repo: https://github.com/pre-commit/mirrors-eslint rev: v7.8.1 hooks: - id: eslint verbose: true args: - --color - --fix