exclude_patterns:
- "vendor/**"
- "plugins/**"
- "includes/libraries/cryptojs/**"
- "includes/libraries/csrfp/**"
- "includes/libraries/ezimuel/**"
- "includes/libraries/plupload/**"
- "includes/libraries/yubico/**"

version: "2"         # required to adjust maintainability checks
checks:
  argument-count:
    config:
      threshold: 4
  complex-logic:
    config:
      threshold: 12
  file-lines:
    config:
      threshold: 250
  method-complexity:
    config:
      threshold: 5
  method-count:
    config:
      threshold: 20
  method-lines:
    config:
      threshold: 50
  nested-control-flow:
    config:
      threshold: 4
  return-statements:
    config:
      threshold: 4
  similar-code:
    config:
      threshold: # language-specific defaults. an override will affect all languages.
  identical-code:
    config:
      threshold: # language-specific defaults. an override will affect all languages.

plugins:
  phpcodesniffer:
    enabled: true
  eslint:
    enabled: false
  csslint:
    enabled: true
  phan:
    enabled: true
    channel: "beta"
    config:
      file_extensions: "php"
  phpmd:
    enabled: true