Add a CI step to lint the backend. Discussed with @aarongundel after the avoidable error in #1551.
Alternatives considered
pylint -- would have caught #1551, deeply configurable
flake8 -- focused more on style/cosmetics. wasn't immediately clear how to just filter down on the important stuff.
ruff -- the new hotness in python linting, but I still don't think it would have caught #1551. sure it will one day, though, and we can switch over when it's fast/mature.
Add a CI step to lint the backend. Discussed with @aarongundel after the avoidable error in #1551.
Alternatives considered
pylint -- would have caught #1551, deeply configurable flake8 -- focused more on style/cosmetics. wasn't immediately clear how to just filter down on the important stuff. ruff -- the new hotness in python linting, but I still don't think it would have caught #1551. sure it will one day, though, and we can switch over when it's fast/mature.