flake8 VS pre-commit-hooks

Compare flake8 vs pre-commit-hooks and see what are their differences.

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
flake8 pre-commit-hooks
10 22
- 4,889
- 2.1%
- 7.4
- 4 days ago
Python
- MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

flake8

Posts with mentions or reviews of flake8. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-01-19.
  • How I start every new Python backend API project
    14 projects | dev.to | 19 Jan 2023
    repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.3.0 hooks: - id: trailing-whitespace - id: check-merge-conflict - id: check-yaml args: [--unsafe] - id: check-json - id: detect-private-key - id: end-of-file-fixer - repo: https://github.com/timothycrosley/isort rev: 5.10.1 hooks: - id: isort - repo: https://github.com/psf/black rev: 22.8.0 hooks: - id: black - repo: https://gitlab.com/pycqa/flake8 rev: 3.9.2 hooks: - id: flake8 - repo: https://github.com/pre-commit/mirrors-mypy rev: v0.971 hooks: - id: mypy args: [ --warn-unused-configs, --ignore-missing-imports, --disallow-untyped-defs, --follow-imports=silent, --install-types, --non-interactive ]
  • Flake8 took down the gitlab repository in favor of github
    13 projects | /r/Python | 14 Nov 2022
    I just ran `pre-commit autoupdate`. It's asking for a username for https://gitlab.com/pycqa/flake8. :-(
  • flake8-length: Flake8 plugin for a smart line length validation.
    3 projects | /r/Python | 4 Oct 2022
    Flake8 plugin for a smart line length validation.
  • Should I follow the warnings in Pycharm? Does anyone do this?
    6 projects | /r/learnpython | 18 Jul 2022
    repo: https://gitlab.com/pycqa/flake8 rev: 3.9.2 hooks:
  • flake8-pylint: Flake8 plugin that runs PyLint
    3 projects | /r/Python | 14 Apr 2022
    Flake8 plugin that runs PyLint.
  • Ask HN: Did somebody have success with the migration of Python 2.7 to Java/C#?
    3 projects | news.ycombinator.com | 15 Oct 2021
  • Make your Django project newbie contributor friendly with pre-commit
    5 projects | dev.to | 4 Jul 2021
    $ pre-commit install pre-commit installed at .git/hooks/pre-commit $ git add .pre-commit-config.yaml $ git commit -m "Add pre-commit config" [INFO] Initializing environment for https://github.com/pre-commit/pre-commit-hooks. [INFO] Initializing environment for https://gitlab.com/pycqa/flake8. [INFO] Initializing environment for https://github.com/pycqa/isort. [INFO] Initializing environment for https://github.com/python/black. [INFO] Installing environment for https://github.com/pre-commit/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... [INFO] Installing environment for https://gitlab.com/pycqa/flake8. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... [INFO] Installing environment for https://github.com/pycqa/isort. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... [INFO] Installing environment for https://github.com/python/black. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... Trim Trailing Whitespace.................................................Passed Check Yaml...............................................................Passed Check for merge conflicts................................................Passed Debug Statements (Python)............................(no files to check)Skipped Check for added large files..............................................Passed Fix requirements.txt.................................(no files to check)Skipped Check django project for potential problems..........(no files to check)Skipped Check django project for missing migrations..........(no files to check)Skipped flake8...............................................(no files to check)Skipped isort................................................(no files to check)Skipped black................................................(no files to check)Skipped
  • On unit testing
    1 project | /r/learnpython | 8 Mar 2021
    If you're looking for just good automated error checking, I personally use a bunch of flake8 plugins via pre-commit hooks: flake8-bugbear, flake8-builtins, flake8-bandit, etc. You can find a bunch of sites that give recommended plugins and you just need to pick which ones you care about :)
  • Python: Setting Up Project Environment
    12 projects | dev.to | 13 Oct 2020
    flake8 is Python style checker based on PEP8(Python Enhance Proposal 8). black is a good code formatter. But some items such as Documentation String, black is not provided the check option. flake8 not only helps for lack of black but also can be easily applied with black.

pre-commit-hooks

Posts with mentions or reviews of pre-commit-hooks. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-13.
  • Implementing Quality Checks In Your Git Workflow With Hooks and pre-commit
    6 projects | dev.to | 13 Dec 2023
    # See https://pre-commit.com for more information # See https://pre-commit.com/hooks.html for more hooks repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v3.2.0 hooks: - id: trailing-whitespace - id: end-of-file-fixer - id: check-yaml - id: check-toml - id: check-added-large-files - repo: local hooks: - id: tox lint name: tox-validation entry: pdm run tox -e test,lint language: system files: ^src\/.+py$|pyproject.toml|^tests\/.+py$ types_or: [python, toml] pass_filenames: false - id: tox docs name: tox-docs language: system entry: pdm run tox -e docs types_or: [python, rst, toml] files: ^src\/.+py$|pyproject.toml|^docs\/ pass_filenames: false - repo: https://github.com/pdm-project/pdm rev: 2.10.4 # a PDM release exposing the hook hooks: - id: pdm-lock-check - repo: https://github.com/jumanjihouse/pre-commit-hooks rev: 3.0.0 hooks: - id: markdownlint
  • How to Write Impeccably Clean Code That Will Save Your Sanity
    7 projects | dev.to | 27 Jul 2023
    repos: - repo: https://github.com/ambv/black rev: 23.3.0 hooks: - id: black args: [--config=./pyproject.toml] language_version: python3.11 - repo: https://github.com/pycqa/flake8 rev: 6.0.0 hooks: - id: flake8 args: [--config=./tox.ini] language_version: python3.11 - repo: https://github.com/pycqa/isort rev: 5.12.0 hooks: - id: isort args: ["--profile", "black", "--filter-files"] language_version: python3.11 - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.4.0 hooks: - id: requirements-txt-fixer language_version: python3.11 - id: debug-statements - id: detect-aws-credentials - id: detect-private-key
  • Setting Up Pre-Commit Hooks in GitHub: Ensuring Code Quality and Consistency
    4 projects | dev.to | 11 Jul 2023
    repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: hooks: - id: check-json
  • Level up your development in Git
    3 projects | dev.to | 3 Jun 2023
    $ pre-commit run --all-files [INFO] Initializing environment for https://github.com/pre-commit/pre-commit-hooks. [INFO] Initializing environment for https://github.com/psf/black. [INFO] Installing environment for https://github.com/pre-commit/pre-commit-hooks. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... [INFO] Installing environment for https://github.com/psf/black. [INFO] Once installed this environment will be reused. [INFO] This may take a few minutes... Check Yaml...............................................................Passed Fix End of Files.........................................................Passed Trim Trailing Whitespace.................................................Failed - hook id: trailing-whitespace - exit code: 1 Files were modified by this hook. Additional output: Fixing sample.py black....................................................................Passed
  • What happens when you leak AWS credentials and how AWS minimizes the damage
    3 projects | news.ycombinator.com | 6 Apr 2023
    The excellent pre-commit framework (https://pre-commit.com/) has a hook for that in its official hook collection: https://github.com/pre-commit/pre-commit-hooks#detect-aws-cr...
  • Improve your Django Code with pre-commit
    13 projects | dev.to | 5 Apr 2023
    exclude: .*migrations\/.* repos: - repo: https://github.com/pre-commit/pre-commit-hooks ... - repo: https://github.com/psf/black rev: 22.12.0 hooks: - id: black language_version: python3.9
  • ChatGPT based PR Reviewer and Summarizer (GH Action)
    2 projects | /r/sre | 12 Mar 2023
    This is what we use — https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/detect_private_key.py
  • How I use pre-commit for Terraform
    1 project | /r/Terraform | 19 Oct 2022
    Personally I do also add "end-of-file-fixer" and "trailing-whitespace" from the "https://github.com/pre-commit/pre-commit-hooks" repo. That cleans up and normalizes some files as well.
  • Gitlab CI with docker compose
    2 projects | dev.to | 6 Aug 2022
    repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v3.3.0 hooks: - id: check-yaml args: ["--allow-multiple-documents"] - repo: local hooks: - id: forbidden-files name: forbidden files entry: found copier update rejection files; review them and remove them language: fail files: "\\.rej$" - id: black name: black entry: poetry run black language: system types: [python] - id: flake8 name: flake8 entry: poetry run flake8 language: system types: [python] - id: isort name: isort entry: poetry run isort --settings-path=. language: system types: [python] - id: pyupgrade name: pyupgrade entry: poetry run pyupgrade language: system types: [python] args: [--py310-plus] - id: mypy name: mypy description: Check python types. entry: poetry run mypy language: system types: [python]
  • Disable a direct push to GitHub main branch
    1 project | dev.to | 3 Aug 2022
    repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.1.0 hooks: - id: no-commit-to-branch

What are some alternatives?

When comparing flake8 and pre-commit-hooks you can also consider the following projects:

pyright - Static Type Checker for Python

bandit - Bandit is a tool designed to find common security issues in Python code.

black - The uncompromising Python code formatter [Moved to: https://github.com/psf/black]

pyupgrade - A tool (and pre-commit hook) to automatically upgrade syntax for newer versions of the language.

yapf - A formatter for Python files

tfsec - Security scanner for your Terraform code [Moved to: https://github.com/aquasecurity/tfsec]

pyre-check - Performant type-checking for python.

tflint - A Pluggable Terraform Linter

mypy - Optional static typing for Python

codespell - check code for common misspellings

pre-commit - A framework for managing and maintaining multi-language pre-commit hooks.

terraform-docs - Generate documentation from Terraform modules in various output formats