Download Latest Version 26.5.1 source code.zip (1.4 MB)
Email in envelope

Get an email when there's a new version of Black

Home / 26.5.0
Name Modified Size InfoDownloads / Week
Parent folder
black_windows.exe 2026-05-16 12.3 MB
black_windows-arm.exe 2026-05-16 12.0 MB
black_macos 2026-05-16 11.5 MB
black_linux 2026-05-16 27.3 MB
black_linux-arm 2026-05-16 26.3 MB
26.5.0 source code.tar.gz 2026-05-16 1.3 MB
26.5.0 source code.zip 2026-05-16 1.4 MB
README.md 2026-05-16 2.1 kB
Totals: 8 Items   92.1 MB 1

Highlights

  • Add support for unpacking in comprehensions (PEP 798) and for lazy imports (PEP 810), both new syntactic features in Python 3.15 (#5048)
  • Python 3.15 is now supported. Compiled wheels are not yet provided for Python 3.15, so performance may be slower than on existing Python versions. Wheels will be provided once Python 3.15 is later in its release cycle. (#5127)

Stable style

  • Fix # fmt: skip being ignored in nested if expressions with parenthesized in clauses (#4903)
  • Add syntactic support for Python 3.15 (#5048)
  • Fix crash when an f-string follows a # fmt: off comment inside brackets (#5097)
  • Preserve multiline compound statement headers when # fmt: skip is placed on the colon line (#5117)

Preview style

  • Improve heuristics around whether blank lines should appear before, within and after groups of same-name decorated functions (such as @overload groups) in .pyi stub files (#5021)
  • Fix blank lines being removed between a function and a decorated class in .pyi stub files (#5092)
  • Prevent string merger from creating unsplittable long lines when a pragma comment (e.g. # type: ignore) follows the closing bracket (#5096)

Packaging

  • Run CI on 3.15 (#5127)

Output

  • Improve parse error readability by showing multi-line output with an error pointer. (#5068)
  • Add SourceASTParseError to distinguish source parse failures from internal safety errors, improving error reporting when Black's lenient parser accepts input that ast.parse() rejects (#5080)

Blackd

  • Return HTTP 400 (Bad Request) for source parse failures instead of HTTP 500, keeping HTTP 500 only for genuine internal safety errors (#5080)

Integrations

  • Added documentation for doctest formatting tools and updated the integrations index to match (#4916)

Documentation

  • Use "Version X.Y.Z" headings in changelog for stable permalink anchors on ReadTheDocs (#5063)
  • Note in the editor integrations that the SublimeText sublack plugin is archived and unmaintained (#5082)
Source: README.md, updated 2026-05-16