content: [tool.isort]
  profile = "black"
  multi_line_output = 3
  order_by_type = false
  
  [tool.mypy]
  files = "."
  exclude = [
      "doc/.*",
      "examples/.*",
      "tests/.*",
  ]
  
  show_error_codes = true
  
  # 'strict = true' is equivalent to:
  #   --check-untyped-defs
  #   --disallow-any-generics
  #   --disallow-incomplete-defs
  #   --disallow-subclassing-any
  #   --disallow-untyped-calls
  #   --disallow-untyped-decorators
  #   --disallow-untyped-defs
  #   --extra-checks
  #   --no-implicit-reexport
  #   --strict-equality
  #   --warn-redundant-casts
  #   --warn-return-any
  #   --warn-unused-configs
  #   --warn-unused-ignores
  
  check_untyped_defs = true
  disallow_any_generics = true
  disallow_incomplete_defs = true
  disallow_subclassing_any = true
  disallow_untyped_calls = true
  disallow_untyped_decorators = true
  disallow_untyped_defs = true
  extra_checks = true
  no_implicit_reexport = true
  strict_equality = true
  warn_redundant_casts = true
  warn_return_any = true
  warn_unused_configs = true
  warn_unused_ignores = true
  
  # Overrides for currently untyped modules
  [[tool.mypy.overrides]]
  module = [
      "imapclient.imapclient",
      "livetest",
  ]
  ignore_errors = true
  
  [tool.pylint.messages_control]
  max-line-length = 88
  jobs = 0  # Use auto-detected number of multiple processes to speed up Pylint.
  # TODO(jlvillal): Work on removing these disables over time.
  disable = [
      "attribute-defined-outside-init",
      "broad-exception-caught",
      "consider-using-f-string",
      "consider-using-ternary",
      "deprecated-method",
      "fixme",
      "import-error",
      "import-outside-toplevel",
      "inconsistent-return-statements",
      "invalid-name",
      "line-too-long",
      "missing-class-docstring",
      "missing-function-docstring",
      "missing-module-docstring",
      "no-value-for-parameter",
      "protected-access",
      "raise-missing-from",
      "signature-differs",
      "simplifiable-if-statement",
      "too-few-public-methods",
      "too-many-arguments",
      "too-many-boolean-expressions",
      "too-many-branches",
      "too-many-instance-attributes",
      "too-many-lines",
      "too-many-public-methods",
      "try-except-raise",
      "undefined-loop-variable",
      "unused-argument",
  ]
  