Python pre-commit hooks