Commit 73aa647
committed
py-black: update to 26.1.0.
## 26.1.0
### Highlights
Introduces the 2026 stable style (#4892), stabilizing the following changes:
- `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` (#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)
The following change was not in any previous stable release:
- Regenerated the `_width_table.py` and added tests for the Khmer language (#4253)
This release alo bumps `pathspec` to v1 and fixes inconsistencies with Git's
`.gitignore` logic (#4958). Now, files will be ignored if a pattern matches them, even
if the parent directory is directly unignored. For example, Black would previously
format `exclude/not_this/foo.py` with this `.gitignore`:
```
exclude/
!exclude/not_this/
```
Now, `exclude/not_this/foo.py` will remain ignored. To ensure `exclude/not_this/` and
all of it's children are included in formatting (and in Git), use this `.gitignore`:
```
*/exclude/*
!*/exclude/not_this/
```
This new behavior matches Git. The leading `*/` are only necessary if you wish to ignore
matching subdirectories (like the previous behavior did), and not just matching root
directories.
### Output
- Explicitly shutdown the multiprocessing manager when run in diff mode too (#4952)
### Integrations
- Upgraded PyPI upload workflow to use Trusted Publishing (#4611)1 parent 6d6825e commit 73aa647
2 files changed
Lines changed: 6 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | | - | |
4 | | - | |
5 | | - | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
0 commit comments