# Black 26.1a1 - Product: Black (https://whatsnew.fyi/product/black) - Vendor: Python Software Foundation - Date: 2025-12-08 - Version: 26.1a1 - Original notes: https://github.com/psf/black/releases/tag/26.1a1 - Permalink: https://whatsnew.fyi/product/black/releases/26.1a1 - Labels: Pre-release What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **added** — 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 - **fixed** — 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 - **fixed** — fix_module_docstring_detection to prevent module docstrings from being treated as normal strings if preceded by comments - **fixed** — fix_type_expansion_split to correct type expansions split in generic functions - **added** — multiline_string_handling option to make expressions involving multiline strings more compact - **added** — normalize_cr_newlines option to add \r style newlines to the potential newlines to normalize file newlines both from and to - **added** — remove_parens_around_except_types option to remove parentheses around multiple exception types in except and except* without as - **added** — 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 - **added** — 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** — Regenerated the _width_table.py and added tests for the Khmer language This is a preview of the Black stable style for 2026 (#4892). Please test it and [share your feedback](https://github.com/psf/black/issues/4042)! 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: skip` behavior on one-liner declarations, such as `def 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 `\r` style 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 in `except` and `except*` without `as`. 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 `#` and `type:` or between `type:` and value to `# type: (value)` (#4645) - Regenerated the `_width_table.py` and added tests for the Khmer language (#4253)