fail_fast: true
repos:
- repo: git://github.com/pre-commit/pre-commit-hooks
  rev: v0.9.2
  hooks:
    - id: check-added-large-files
      args: ['--maxkb=500']
    - id: check-byte-order-marker
    - id: check-case-conflict
    - id: check-merge-conflict
    - id: check-symlinks
    - id: debug-statements
    - id: detect-private-key

- repo: local
  hooks:
  - id: isort
    name: isort-local
    entry : isort
    language: python
    types: [python]
    exclude: .+/(settings|migrations)/.+
    pass_filenames: true
  - id: black
    name: black-local
    entry: black
    language: python
    types: [python]
    exclude: .+/(settings|migrations)/.+
    pass_filenames: true
  - id: eslint
    name: eslint-local
    entry: npm run lint
    language: system
    types: [javascript]
    exclude: >
            (?x)^(
                .+\.config\.js|
                server\.js|
                \.eslintrc\.js
            )$
    pass_filenames: true
  - id: missing-migrations
    name: missing-migrations-local
    entry: python backend/manage.py has_missing_migrations
    language: system
    always_run: true
    pass_filenames: false
  - id: prospector
    name: prospector-local
    entry: prospector --messages-only
    language: python
    types: [python]
    exclude: .+/(settings|migrations)/.+
    pass_filenames: true
