26.1a1Pre-release
Added 6
- always_one_newline_after_import option to always force one blank line after import statements, except when the line after the import is a comment or an import statement
- multiline_string_handling option to make expressions involving multiline strings more compact
- normalize_cr_newlines option to add \r style newlines to the potential newlines to normalize file newlines both from and to
- remove_parens_around_except_types option to remove parentheses around multiple exception types in except and except* without as
- remove_parens_from_assignment_lhs option to remove unnecessary parentheses from the left-hand side of assignments while preserving magic trailing commas and intentional multiline formatting
- standardize_type_comments option to format type comments which have zero or more spaces between # and type: or between type: and value to # type: (value)
Changed 1
- Regenerated the _width_table.py and added tests for the Khmer language
Fixed 3
- fix_fmt_skip_in_one_liners to correct # fmt: skip behavior on one-liner declarations such as def foo(): return "mock" # fmt: skip where the declaration would have been incorrectly collapsed
- fix_module_docstring_detection to prevent module docstrings from being treated as normal strings if preceded by comments
- fix_type_expansion_split to correct type expansions split in generic functions
This is a preview of the Black stable style for 2026 (#4892). Please test it and share your feedback!
The following formatting changes are included:
always_one_newline_after_import: Always force one blank line after import statements, except when the line after the import is a comment or an import statement (#4489)fix_fmt_skip_in_one_liners: Fix# fmt: skipbehavior on one-liner declarations, such asdef foo(): return "mock" # fmt: skip, where previously the declaration would have been incorrectly collapsed (#4800)fix_module_docstring_detection: Fix module docstrings being treated as normal strings if preceded by comments (#4764)fix_type_expansion_split: Fix type expansions split in generic functions (#4777)multiline_string_handling: Make expressions involving multiline strings more compact (#1879)normalize_cr_newlines: Add\rstyle newlines to the potential newlines to normalize file newlines both from and to (#4710)remove_parens_around_except_types: Remove parentheses around multiple exception types inexceptandexcept*withoutas. See PEP 758 for details (#4720)remove_parens_from_assignment_lhs: Remove unnecessary parentheses from the left-hand side of assignments while preserving magic trailing commas and intentional multiline formatting (#4865)standardize_type_comments: Format type comments which have zero or more spaces between#andtype:or betweentype:and value to# type: (value)(#4645)- Regenerated the
_width_table.pyand added tests for the Khmer language (#4253)