exclude: > (?x)( LICENSE$| \.snap$| \.map$| \.map\.js$| ^src/sentry/static/sentry/vendor/| ^src/.*/locale/| ^src/sentry/data/ ) repos: # Many of these hooks are local because people use a variety of IDEs # with autoformatters that need to call out to things like `black` directly. # pre-commit run is not the same, and something like pre-commit exec does # not exist yet. - repo: local hooks: - id: pyupgrade name: pyupgrade entry: pyupgrade args: ['--py38-plus', '--keep-runtime-typing'] language: system types: [python] # Configuration for black exists in pyproject.toml, # but we let pre-commit take care of the file filtering. - id: black name: black entry: black language: system types: [python] require_serial: true # Configuration for isort exists in pyproject.toml, # but we let pre-commit take care of the file filtering. - id: isort name: isort entry: isort language: system types: [python] # Configuration for flake8 exists in setup.cfg, # but we let pre-commit take care of the file filtering. - id: flake8 name: flake8 entry: flake8 language: system types: [python] log_file: '.artifacts/flake8.pycodestyle.log' - id: lint-requirements name: lint-requirements entry: python -m tools.lint_requirements language: python files: requirements-.*\.txt$ additional_dependencies: [packaging==21.3] - repo: https://github.com/python-jsonschema/check-jsonschema rev: 0.21.0 hooks: - id: check-github-actions - id: check-github-workflows args: [--verbose] - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.3.0 hooks: - id: check-case-conflict - id: check-executables-have-shebangs - id: check-merge-conflict - id: check-symlinks - id: check-yaml - id: end-of-file-fixer exclude_types: [svg] exclude: ^fixtures/ - id: trailing-whitespace exclude_types: [svg] exclude: ^(fixtures/|scripts/patches/) - id: debug-statements - id: name-tests-test args: [--pytest-test-first]