Include linting tools in test requirements.
Created by: tomprince
Also, use flake8 plugins for reporting black and isort errors.
This does have the downside that the linting tools' dependencies can impact what versions of tools gets picked for the test environment, but that issue already exists for all our other test dependencies.
I did run into this in practice (though not in a way that impacted tests) with zkap-spending-service, where black's dependency on tomli
was more restricted than was otherwise pulled in (as a dependency of setuptools-scm). I don't recall the exact details, but I think it only caused a conflict in the python environment, that was solved by defaulting to using wheels instead of sdists.