[flake8]
max-line-length = 120

ignore=
    # E501: Line length
    E501
    # Function calls in argument defaults
    B008
    # Docstring at the top of a public module
    D100
    # Docstring at the top of a public class (method is enough)
    D101
    # Make docstrings one line if it can fit.
    D200
    # Imperative docstring declarations
    D401
    # Type annotation for `self`
    TYP101
    # for cls
    TYP102
    # Missing docstring in __init__
    D107
    # Missing docstring in public package
    D104
    # Missing type annotations for `**kwargs`
    TYP003
    # Whitespace before ':'. Black formats code this way.
    E203
    # 1 blank line required between summary line and description
    D205
    # First line should end with a period - here we have a few cases where the first line is too long, and
    # this issue can't be fixed without using noqa notation
    D400
    # Missing type annotations for self
    ANN101
    # Missing type annotation for cls in classmethod
    ANN102
    # Missing type annotations for **args
    ANN002
    # Missing type annotations for **kwargs
    ANN003
    # W503 line break before binary operator - conflicts with black
    W503

exclude =
    .git,
    .idea,
    __pycache__,
    tests/*,
    venv
