[flake8]
max-line-length = 100
enable-extensions = G
extend-ignore =
    G200, G202, G001
    # black adds spaces around ':'
    E203,
    # E501 line too long (let black handle line length)
    E501
    # B305 `.next()` is not a thing on Python 3. Use the `next()` builtin. For Python 2 compatibility, use `six.next()`.
    B305
per-file-ignores =
    # F841 local variable 'foo' is assigned to but never used
    # E731 do not assign a lambda expression, use a def
    # F811 redefinition of unused 'foo' from line XXX
    test/*/test_examples.py: F841,E731,F811

    # F811 redefinition of unused 'foo' from line XXX
    # B011 Do not call assert False since python -O removes these calls. Instead callers should raise AssertionError().

    test/*: F811,B011

    # E402 module level import not at top of file
    doc/examples/monitoring_example.py: E402

    # F403 'from foo import *' used; unable to detect undefined names
    # F401 'foo' imported but unused
    synchro/__init__.py: F403,F401

    # F401 'foo' imported but unused
    motor/__init__.py: F401
