We currently have two bash scripts for linting & formatting:
Linting & formatting could be moved to use pre-commit, that is then run via tox. In my experience, it's cleaner to handle all linting & formatting config in one single pre-commit-config.yaml file and orchestrate everything with tox instead of relying on bash scripts.
- an open-source framework for managing and maintaining multi-language pre-commit hooks
- It has been around for a long time and has over 6 million monthly downloads on PyPI
- Because new hooks are constantly added (by the project's maintainers and the community), there is rarely a need to reinvent the wheel
- It does not require root access