black v21.4.b0 Release Notes
-
Black
๐ Fixed a rare but annoying formatting instability created by the combination of optional trailing commas inserted by
Black
and optional parentheses looking at pre-existing "magic" trailing commas. This fixes issue #1629 and all of its many many duplicates. (#2126)๐
Black
now processes one-line docstrings by stripping leading and trailing spaces, and adding a padding space when needed to break up """". (#1740)Black
now cleans up leading non-breaking spaces in comments (#2092)Black
now respects--skip-string-normalization
when normalizing multiline docstring quotes (#1637)๐
Black
no longer removes all empty lines between non-function code and decorators when formatting typing stubs. NowBlack
enforces a single empty line. (#1646)Black
no longer adds an incorrect space after a parenthesized assignment expression in if/while statements (#1655)โ Added
--skip-magic-trailing-comma
/-C
to avoid using trailing commas as a reason to split lines (#1824)๐ fixed a crash when PWD=/ on POSIX (#1631)
๐ fixed "I/O operation on closed file" when using --diff (#1664)
Prevent coloured diff output being interleaved with multiple files (#1673)
โ Added support for PEP 614 relaxed decorator syntax on python 3.9 (#1711)
โ Added parsing support for unparenthesized tuples and yield expressions in annotated assignments (#1835)
โ added
--extend-exclude
argument (PR #2005)speed up caching by avoiding pathlib (#1950)
--diff
correctly indicates when a file doesn't end in a newline (#1662)โ Added
--stdin-filename
argument to allow stdin to respect--force-exclude
rules (#1780)Lines ending with
fmt: skip
will now be not formatted (#1800)PR #2053: Black no longer relies on typed-ast for Python 3.8 and higher
๐ PR #2053: Python 2 support is now optional, install with
python3 -m pip install black[python2]
to maintain support.0๏ธโฃ Exclude
venv
directory by default (#1683)๐ Fixed "Black produced code that is not equivalent to the source" when formatting Python 2 docstrings (#2037)
Packaging
- Self-contained native Black binaries are now provided for releases via GitHub Releases (#1743)