// the find
asottile/yesqa
Automatically remove unnecessary `# noqa` comments
yesqa finds and removes `# noqa` comments that aren't actually suppressing anything — because you fixed the code, changed your config, or added the comment by mistake. It's a pre-commit hook companion to flake8 that keeps your noqa annotations honest.
Solves a real drift problem: noqa comments accumulate over time and become lies, masking future violations. Pre-commit integration means it runs automatically at commit time with zero ceremony. It respects flake8 plugins via `additional_dependencies`, so it knows about your actual rule set, not just core flake8. asottile maintains a lot of the flake8 ecosystem, so this isn't abandoned glue code.
Only works with flake8 — if your project uses ruff, pylint, or any other linter, this does nothing for you. 263 stars after years of existence suggests limited adoption, which tracks given ruff has largely eaten flake8's market. Single-file implementation (`yesqa.py`) means no extension points if you need custom behavior. No support for inline `# type: ignore` cleanup, which is the analogous problem in mypy workflows.