* Import lines with `# fmt: skip` and `# fmt: off` no longer
have an extra blank line added when they are right after
another import line (#3610)
* Added support for formatting files with invalid type comments
* Document that only the most recent release is supported for
security issues;
* Introduce the 2023 stable style, which incorporates most
aspects of last year's preview style (#3418).
* Enforce empty lines before classes and functions with sticky
leading comments
* Reformat empty and whitespace-only files as either an empty
file (if no newline is present) or as a single newline character
(if a newline is present) (#3348)
* Correctly handle trailing commas that are inside a line's
leading non-nested parens
* `--skip-string-normalization` / `-S` now prevents docstring
prefixes from being
* Details see https://github.com/psf/black/releases/tag/23.3.0
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-black?expand=0&rev=36
- update to version 22.8.0:
* Highlights
+ Python 3.11 is now supported, except for blackd as aiohttp does not support 3.11 as of publishing (#3234)
+ This is the last release that supports running Black on Python 3.6 (formatting 3.6 code will continue to be supported until further notice)
+ Reword the stability policy to say that we may, in rare cases, make changes that affect code that was not previously formatted by Black (#3155)
* Stable style
+ Fix an infinite loop when using # fmt: on/off in the middle of an expression or code block (#3158)
+ Fix incorrect handling of # fmt: skip on colon (:) lines (#3148)
+ Comments are no longer deleted when a line had spaces removed around power operators (#2874)
* Preview style
+ Single-character closing docstring quotes are no longer moved to their own line as this is invalid. This was a bug introduced in version 22.6.0. (#3166)
+ --skip-string-normalization / -S now prevents docstring prefixes from being normalized as expected (#3168)
+ When using --skip-magic-trailing-comma or -C, trailing commas are stripped from subscript expressions with more than 1 element (#3209)
+ Implicitly concatenated strings inside a list, set, or tuple are now wrapped inside parentheses (#3162)
+ Fix a string merging/split issue when a comment is present in the middle of implicitly concatenated strings on its own line (#3227)
* Blackd
+ blackd now supports enabling the preview style via the X-Preview header (#3217)
* Configuration
+ Black now uses the presence of debug f-strings to detect target version (#3215)
+ Fix misdetection of project root and verbose logging of sources in cases involving --stdin-filename (#3216)
+ Immediate .gitignore files in source directories given on the command line are now also respected, previously only .gitignore files
in the project root and automatically discovered directories were respected (#3237)
* Documentation
+ Recommend using BlackConnect in IntelliJ IDEs (#3150)
* Integrations
+ Vim plugin: prefix messages with Black: so it's clear they come from Black (#3194)
+ Docker: changed to a /opt/venv installation + added to PATH to be available to non-root users (#3202)
+ Vim plugin: add flag (g:black_preview) to enable/disable the preview style (#3246)
* Output
+ Change from deprecated asyncio.get_event_loop() to create our event loop which removes DeprecationWarning (#3164)
OBS-URL: https://build.opensuse.org/request/show/1002332
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-black?expand=0&rev=34
- Update to 22.1.0
* Remove Python 2 support (#2740)
* Introduce the --preview flag (#2752)
* Deprecate --experimental-string-processing and move the
functionality under --preview (#2789)
* For stubs, one blank line between class attributes and methods
is now kept if there's at least one pre-existing blank line
(#2736)
* Black now normalizes string prefix order (#2297)
* Remove spaces around power operators if both operands are
simple (#2726)
* Work around bug that causes unstable formatting in some cases
in the presence of the magic trailing comma (#2807)
* Use parentheses for attribute access on decimal float and int
literals (#2799)
* Don't add whitespace for attribute access on hexadecimal,
binary, octal, and complex literals (#2799)
* Treat blank lines in stubs the same inside top-level if
statements (#2820)
* Fix unstable formatting with semicolons and arithmetic
expressions (#2817)
* Fix unstable formatting around magic trailing comma (#2572)
* Fix mapping cases that contain as-expressions, like case
{"key": 1 | 2 as password} (#2686)
* Fix cases that contain multiple top-level as-expressions, like
case 1 as a, 2 as b (#2716)
* Fix call patterns that contain as-expressions with keyword
arguments, like case Foo(bar=baz as quux) (#2749)
* Tuple unpacking on return and yield constructs now implies 3.8+
(#2700)
* Unparenthesized tuples on annotated assignments (e.g values:
Tuple[int, ...] = 1, 2, 3) now implies 3.8+ (#2708)
* Fix handling of standalone match() or case() when there is a
trailing newline or a comment inside of the parentheses.
(#2760)
* from __future__ import annotations statement now implies Python
3.7+ (#2690)
* Speed-up the new backtracking parser about 4X in general
(enabled when --target-version is set to 3.10 and higher).
(#2728)
* Black is now compiled with mypyc for an overall 2x speed-up.
64-bit Windows, MacOS, and Linux (not including musl) are
supported. (#1009, #2431)
* Do not accept bare carriage return line endings in
pyproject.toml (#2408)
* Add configuration option (python-cell-magics) to format cells
with custom magics in Jupyter Notebooks (#2744)
* Allow setting custom cache directory on all platforms with
environment variable BLACK_CACHE_DIR (#2739).
* Enable Python 3.10+ by default, without any extra need to
specify --target-version=py310. (#2758)
* Make passing SRC or --code mandatory and mutually exclusive
(#2804)
* Improve error message for invalid regular expression (#2678)
* Improve error message when parsing fails during AST safety
check by embedding the underlying SyntaxError (#2693)
* No longer color diff headers white as it's unreadable in light
themed terminals (#2691)
* Text coloring added in the final statistics (#2712)
* Verbose mode also now describes how a project root was
discovered and which paths will be formatted. (#2526)
* All upper version bounds on dependencies have been removed
(#2718)
* typing-extensions is no longer a required dependency in Python
3.10+ (#2772)
* Set click lower bound to 8.0.0 as Black crashes on 7.1.2
(#2791)
* Deprecate the black-primer tool (#2809)
* Document Python support policy (#2819)
- Drop black-pr2718-unpin.patch
OBS-URL: https://build.opensuse.org/request/show/965253
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-black?expand=0&rev=28
* Fix determination of f-string expression spans (#2654)
* Fix bad formatting of error messages about EOF in multi-line statements (#2343)
* Functions and classes in blocks now have more consistent surrounding spacing (#2472)
* from __future__ import annotations statement now implies Python 3.7+ (#2690)
* Fix assignment to environment variables in Jupyter Notebooks (#2642)
* Point users to using --target-version py310 if we detect 3.10-only syntax (#2668)
* Fix match statements with open sequence subjects, like match a, b: or match a, *b: (#2639) (#2659)
* Fix match/case statements that contain match/case soft keywords multiple times, like match re.match() (#2661)
* Fix case statements with an inline body (#2665)
* Fix styling of starred expressions inside match subject (#2667)
* Fix parser error location on invalid syntax in a match statement (#2649)
* Fix Python 3.10 support on platforms without ProcessPoolExecutor (#2631)
* Improve parsing performance on code that uses match under --target-version py310 up to ~50% (#2670)
* Remove dependency on regex (#2644) (#2663)
* Warn about Python 2 deprecation in more cases by improving Python 2 only syntax detection (#2592)
* Add experimental PyPy support (#2559)
* Add partial support for the match statement. As it's experimental, it's only enabled when --target-version py310 is explicitly specified (#2586)
* Add support for parenthesized with (#2586)
* Declare support for Python 3.10 for running Black (#2562)
* Add new --workers parameter (#2514)
* Fixed feature detection for positional-only arguments in lambdas (#2532)
* Fixed a Python 3.10 compatibility issue where the loop argument was still being passed even though it has been removed (#2580)
* Deprecate Python 2 formatting support (#2523)
* Fix missing modules in self-contained binaries (#2466)
* Fix missing toml extra used during installation (#2475)
* Add support for formatting Jupyter Notebook files (#2357)
* Move from appdirs dependency to platformdirs (#2375)
* Present a more user-friendly error if .gitignore is invalid (#2414)
* Pin setuptools-scm build-time dependency version (#2457)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-black?expand=0&rev=25
- update to 18.9b0
* numeric literals are now formatted by Black
* 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 for more info
* adjacent string literals are now correctly split into multiple lines
* trailing comma is now added to single imports that don't fit on a line
* cache is now populated when --check is successful for a file which
speeds up consecutive checks of properly formatted unmodified files
* whitespace at the beginning of the file is now removed
* fixed mangling pweave and Spyder IDE special comments
* fixed unstable formatting when unpacking big tuples
* fixed parsing of __future__ imports with renames
* fixed scope of # fmt: off when directly preceding yield and other nodes
* fixed formatting of lambda expressions with default arguments
* fixed async for statements: Black no longer breaks them into separate lines
* note: the Vim plugin stopped registering ,= as a default chord
as it turned out to be a bad idea
OBS-URL: https://build.opensuse.org/request/show/639753
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-black?expand=0&rev=6