Update pre-commit hooks
This PR introduces the following changes:
-
Fix deprecated pre-commit stage names.
When
pre-commit installis run, it currently throws a deprecation regarding the stage names in the config file. This is now fixed. -
Update the
pyupgradehook to its latest version, and update its target syntax version to Python 3.9+. -
Remove
flyntas a pre-commit hook.Its functionality is handled by the
pyupgradehook. -
Migrate from
localpre-commit hooks to standard, hosted pre-commit hooks.This change is necessary because not all git-related tooling runs pre-commit hooks with the same activated virtual environment that the Poetry dev dependencies are installed in.
Taken together, these changes bring the pre-commit hook configuration up-to-date, and make it possible to enable pre-commit.ci for the repo if you choose to do so (and I highly recommend doing so!).
[!NOTE]
I've split the commits up so that it can be reviewed commit-by-commit. This isolates the manual and automatic changes so that they can be reviewed in smaller chunks.