Black

Latest version: v24.4.2

Safety actively analyzes 629765 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 7 of 10

21.4b0

Not secure
_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. Now `Black` 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.

- 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)

20.8b1

Not secure
_Packaging_

- explicitly depend on Click 7.1.2 or newer as `Black` no longer works with versions
older than 7.0

20.8b0

Not secure
_Black_

- re-implemented support for explicit trailing commas: now it works consistently within
any bracket pair, including nested structures (1288 and duplicates)

- `Black` now reindents docstrings when reindenting code around it (1053)

- `Black` now shows colored diffs (1266)

- `Black` is now packaged using 'py3' tagged wheels (1388)

- `Black` now supports Python 3.8 code, e.g. star expressions in return statements
(1121)

- `Black` no longer normalizes capital R-string prefixes as those have a
community-accepted meaning (1244)

- `Black` now uses exit code 2 when specified configuration file doesn't exit (1361)

- `Black` now works on AWS Lambda (1141)

- added `--force-exclude` argument (1032)

- removed deprecated `--py36` option (1236)

- fixed `--diff` output when EOF is encountered (526)

- fixed ` fmt: off` handling around decorators (560)

- fixed unstable formatting with some ` type: ignore` comments (1113)

- fixed invalid removal on organizing brackets followed by indexing (1575)

- introduced `black-primer`, a CI tool that allows us to run regression tests against
existing open source users of Black (1402)

- introduced property-based fuzzing to our test suite based on Hypothesis and
Hypothersmith (1566)

- implemented experimental and disabled by default long string rewrapping (1132),
hidden under a `--experimental-string-processing` flag while it's being worked on;
this is an undocumented and unsupported feature, you lose Internet points for
depending on it (1609)

Vim plugin

- prefer virtualenv packages over global packages (1383)

19.10b0

Not secure
- added support for PEP 572 assignment expressions (711)

- added support for PEP 570 positional-only arguments (943)

- added support for async generators (593)

- added support for pre-splitting collections by putting an explicit trailing comma
inside (826)

- added `black -c` as a way to format code passed from the command line (761)

- --safe now works with Python 2 code (840)

- fixed grammar selection for Python 2-specific code (765)

- fixed feature detection for trailing commas in function definitions and call sites
(763)

- ` fmt: off`/` fmt: on` comment pairs placed multiple times within the same block of
code now behave correctly (1005)

- _Black_ no longer crashes on Windows machines with more than 61 cores (838)

- _Black_ no longer crashes on standalone comments prepended with a backslash (767)

- _Black_ no longer crashes on `from` ... `import` blocks with comments (829)

- _Black_ no longer crashes on Python 3.7 on some platform configurations (494)

- _Black_ no longer fails on comments in from-imports (671)

- _Black_ no longer fails when the file starts with a backslash (922)

- _Black_ no longer merges regular comments with type comments (1027)

- _Black_ no longer splits long lines that contain type comments (997)

- removed unnecessary parentheses around `yield` expressions (834)

- added parentheses around long tuples in unpacking assignments (832)

- added parentheses around complex powers when they are prefixed by a unary operator
(646)

- fixed bug that led _Black_ format some code with a line length target of 1 (762)

- _Black_ no longer introduces quotes in f-string subexpressions on string boundaries
(863)

- if _Black_ puts parenthesis around a single expression, it moves comments to the
wrapped expression instead of after the brackets (872)

- `blackd` now returns the version of _Black_ in the response headers (1013)

- `blackd` can now output the diff of formats on source code when the `X-Diff` header is
provided (969)

19.3b0

Not secure
- new option `--target-version` to control which Python versions _Black_-formatted code
should target (618)

- deprecated `--py36` (use `--target-version=py36` instead) (724)

- _Black_ no longer normalizes numeric literals to include `_` separators (696)

- long `del` statements are now split into multiple lines (698)

- type comments are no longer mangled in function signatures

- improved performance of formatting deeply nested data structures (509)

- _Black_ now properly formats multiple files in parallel on Windows (632)

- _Black_ now creates cache files atomically which allows it to be used in parallel
pipelines (like `xargs -P8`) (673)

- _Black_ now correctly indents comments in files that were previously formatted with
tabs (262)

- `blackd` now supports CORS (622)

18.9b0

Not secure
- numeric literals are now formatted by _Black_ (452, 461, 464, 469):

- numeric literals are normalized to include `_` separators on Python 3.6+ code

- added `--skip-numeric-underscore-normalization` to disable the above behavior and
leave numeric underscores as they were in the input

- code with `_` in numeric literals is recognized as Python 3.6+

- most letters in numeric literals are lowercased (e.g., in `1e10`, `0x01`)

- hexadecimal digits are always uppercased (e.g. `0xBADC0DE`)

- added `blackd`, see
[its documentation](https://github.com/psf/black/blob/18.9b0/README.md#blackd) for
more info (349)

- adjacent string literals are now correctly split into multiple lines (463)

- trailing comma is now added to single imports that don't fit on a line (250)

- cache is now populated when `--check` is successful for a file which speeds up
consecutive checks of properly formatted unmodified files (448)

- whitespace at the beginning of the file is now removed (399)

- fixed mangling [pweave](http://mpastell.com/pweave/) and
[Spyder IDE](https://www.spyder-ide.org/) special comments (#532)

- fixed unstable formatting when unpacking big tuples (267)

- fixed parsing of `__future__` imports with renames (389)

- fixed scope of ` fmt: off` when directly preceding `yield` and other nodes (385)

- fixed formatting of lambda expressions with default arguments (468)

- fixed `async for` statements: _Black_ no longer breaks them into separate lines (372)

- note: the Vim plugin stopped registering `,=` as a default chord as it turned out to
be a bad idea (415)

Page 7 of 10

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.