[flake8]
ignore =
    # No space before colon
    E203,
    W503,
    # Ignore using dict() function.
    C408,
    # Missing docstring in __init__ (we do it in the class)
    D107,
    # "First line should be in imperative mood" -- this doesn't work for properties, see https://github.com/PyCQA/pydocstyle/issues/301
    D401,
    # allow method names to be the same as python builtins
    A003,
    # inline strong start-string without end-string. This is OK in the case of **kwargs in parameters.
    RST210,
    # Logging statement uses f-string.
    G004,
    # Logging statement uses + (this makes no sense...)
    G003,
max-line-length = 88
# Should be 18.
max-complexity = 35
exclude =
    development/*
per-file-ignores =
    # print statements allowed in tests
    hera_sim/tests/*:D,RST,T001,T201
    docs/conf.py:D,A
    */__init__.py:F401
    scripts/*:T001,T201
    hera_sim/components.py:T001
rst-roles =
    class
    func
    mod
    data
    const
    meth
    attr
    exc
    obj
rst-directives =
    note
    warning
    versionadded
    versionchanged
    deprecated
    seealso
