pyupgrade VS black

Compare pyupgrade vs black and see what are their differences.

pyupgrade

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

black

The uncompromising Python code formatter [Moved to: https://github.com/psf/black] (by ambv)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
pyupgrade black
23 4
3,323 19,549
- -
8.0 8.6
9 days ago about 3 years ago
Python Python
MIT License 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.

pyupgrade

Posts with mentions or reviews of pyupgrade. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-11-12.

black

Posts with mentions or reviews of black. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-27.
  • 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
  • My first Hacktoberfest !!✨
    8 projects | dev.to | 15 Oct 2021
  • Chickity-check yo self before you wreck yo self!
    6 projects | dev.to | 6 Jul 2021
    --- # .pre-commit-config.yaml # ======================== # # pre-commit clean # pre-commit install # pre-commit install-hooks # # precommit hooks installation # # - pre-commit autoupdate # # - pre-commit run black # # continuous integration # ====================== # # - pre-commit run --all-files # repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.0.1 hooks: - id: trailing-whitespace - id: end-of-file-fixer - id: debug-statements - id: check-merge-conflict - id: sort-simple-yaml - id: fix-encoding-pragma args: ["--remove"] - id: forbid-new-submodules - id: mixed-line-ending args: ["--fix=lf"] description: Forces to replace line ending by the UNIX 'lf' character. - id: check-added-large-files args: ["--maxkb=500"] - id: no-commit-to-branch args: [--branch, master] - id: check-yaml - id: check-json files: ^tests/app/ - id: pretty-format-json args: ["--no-sort-keys", "--autofix"] files: ^tests/app/ - repo: meta hooks: - id: check-hooks-apply - id: check-useless-excludes - repo: https://github.com/ambv/black rev: 21.5b1 hooks: - id: black language_version: python3.9 - repo: https://github.com/PyCQA/bandit rev: 1.7.0 hooks: - id: bandit description: Security oriented static analyser for python code exclude: tests/|scripts/ args: - -s - B101 - repo: https://github.com/codespell-project/codespell rev: v2.1.0 hooks: - id: codespell name: codespell description: Checks for common misspellings in text files. entry: codespell language: python types: [text] - repo: https://github.com/asottile/pyupgrade rev: v2.19.4 hooks: - id: pyupgrade
  • Consistent Python code with Black
    5 projects | dev.to | 15 Feb 2021
    One of those configurations choices is... drumroll please... Black configuration! The details of this setup are explained in the Version control integration section of the documentation, but the short version is to add the following to .pre-commit-config.yaml:

What are some alternatives?

When comparing pyupgrade and black you can also consider the following projects:

pre-commit-hooks - Some out-of-the-box hooks for pre-commit

jupyterlab_code_formatter - A JupyterLab plugin to facilitate invocation of code formatters.

flynt - A tool to automatically convert old string literal formatting to f-strings

codespell - check code for common misspellings

black - The uncompromising Python code formatter

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

pep585-upgrade - Pre-commit hook for upgrading type hints

autoflake - Removes unused imports and unused variables as reported by pyflakes

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

blue - The slightly less uncompromising Python code formatter.