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

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

Home / 25.1.0
Name Modified Size InfoDownloads / Week
Parent folder
black_windows.exe 2025-01-29 12.4 MB
black_macos 2025-01-29 11.1 MB
black_linux 2025-01-29 26.8 MB
25.1.0 source code.tar.gz 2025-01-29 1.3 MB
25.1.0 source code.zip 2025-01-29 1.4 MB
README.md 2025-01-29 2.1 kB
Totals: 6 Items   52.9 MB 0

Highlights

This release introduces the new 2025 stable style (#4558), stabilizing the following changes:

  • Normalize casing of Unicode escape characters in strings to lowercase (#2916)
  • Fix inconsistencies in whether certain strings are detected as docstrings (#4095)
  • Consistently add trailing commas to typed function parameters (#4164)
  • Remove redundant parentheses in if guards for case blocks (#4214)
  • Add parentheses to if clauses in case blocks when the line is too long (#4269)
  • Whitespace before # fmt: skip comments is no longer normalized (#4146)
  • Fix line length computation for certain expressions that involve the power operator (#4154)
  • Check if there is a newline before the terminating quotes of a docstring (#4185)
  • Fix type annotation spacing between * and more complex type variable tuple (#4440)

The following changes were not in any previous release:

  • Remove parentheses around sole list items (#4312)
  • Generic function definitions are now formatted more elegantly: parameters are split over multiple lines first instead of type parameter definitions (#4553)

Stable style

  • Fix formatting cells in IPython notebooks with magic methods and starting or trailing empty lines (#4484)
  • Fix crash when formatting with statements containing tuple generators/unpacking (#4538)

Preview style

  • Fix/remove string merging changing f-string quotes on f-strings with internal quotes (#4498)
  • Collapse multiple empty lines after an import into one (#4489)
  • Prevent string_processing and wrap_long_dict_values_in_parens from removing parentheses around long dictionary values (#4377)
  • Move wrap_long_dict_values_in_parens from the unstable to preview style (#4561)

Packaging

  • Store license identifier inside the License-Expression metadata field, see PEP 639. (#4479)

Performance

  • Speed up the is_fstring_start function in Black's tokenizer (#4541)

Integrations

  • If using stdin with --stdin-filename set to a force excluded path, stdin won't be formatted. (#4539)
Source: README.md, updated 2025-01-29