# TODO: incorporate this into pyproject.toml if flake8 supports it in the future.
# See https://github.com/PyCQA/flake8/issues/234
[flake8]
# see https://pycodestyle.readthedocs.io/en/latest/intro.html#error-codes
# for error codes. The ones we ignore are:
#  W503: line break before binary operator
#  W504: line break after binary operator
#  E203: whitespace before ':' (which is contrary to pep8?)
#  E731: do not assign a lambda expression, use a def
#  E501: Line too long (black enforces this for us)
#
# flake8-bugbear runs extra checks. Its error codes are described at
# https://github.com/PyCQA/flake8-bugbear#list-of-warnings
#  B019: Use of functools.lru_cache or functools.cache on methods can lead to memory leaks
#  B023: Functions defined inside a loop must not use variables redefined in the loop
#  B024: Abstract base class with no abstract method.

ignore=W503,W504,E203,E731,E501,B019,B023,B024