# vim: ft=config

[BASIC]
max-module-lines=2000
# due to SQL
max-line-length=200
# Drop/decrease them one day:
max-branches=50
max-nested-blocks=10
max-statements=200

[FORMAT]
ignore-long-lines = (# )?<?https?://\S+>?$

[MESSAGES CONTROL]
disable = bad-continuation,
          missing-docstring,
          bad-whitespace,
          too-few-public-methods,
          invalid-name,
          too-many-arguments,
          keyword-arg-before-vararg,
          too-many-locals,
          too-many-instance-attributes,
          cell-var-from-loop,
          fixme,
          too-many-public-methods,
          wildcard-import,
          unused-wildcard-import,
          singleton-comparison,
          # pytest.mark.parametrize is not callable (not-callable)
          not-callable,
          # https://github.com/PyCQA/pylint/issues/3882
          # [Python 3.9] Value 'Optional' is unsubscriptable (unsubscriptable-object) (also Union)
          unsubscriptable-object,
          # Drop them one day:
          redefined-outer-name,
          broad-except,
          bare-except,
          no-else-return,
          global-statement

[SIMILARITIES]
# due to SQL
min-similarity-lines=1000