Implement pre-commit and linting GitHub action #111
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This should not be merged until the project linting/formatting has been changed over to ruff
I recommend that you install
pre-commit.ciinto your GitHub account and allow it to run at least this repo (or all of your repos if you'd like).Sign In with GitHubThis pull request sets up automated dependency updates and linting for the repository, introducing configuration files for Dependabot, GitHub Actions-based linters, and pre-commit hooks. These changes help ensure code quality and keep dependencies up-to-date with minimal manual intervention.
Automated Dependency Management:
.github/dependabot.ymlto enable weekly automated updates for GitHub Actions and Python (pip) dependencies, with a limit of 10 open pull requests per ecosystem.Linting Workflow Integration:
.github/workflows/linters.ymlto run linters automatically on pull requests and pushes tomain, including Python environment setup, caching, and pre-commit checks.Pre-commit Hooks Configuration:
.pre-commit-config.yamlspecifying a range of pre-commit hooks for code quality (whitespace, file endings, YAML/TOML validity, large files, merge conflicts, shell scripts, spelling, and Python linting/formatting). Also configures automated autofix PRs and weekly updates for hooks.