Fri Sep 9 14:42:55 UTC 2022 - Yogalakshmi Arunachalam <yarunachalam@suse.com>
- 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)
+ Remove logging from internal blib2to3 library since it regularly emits error logs about failed caching that can and should be ignored (#3193)
* Parser
+ Type comments are now included in the AST equivalence check consistently so accidental deletion raises an error.
Though type comments can't be tracked when running on PyPy 3.7 due to standard library limitations. (#2874)
* Performance
+ Reduce Black's startup time when formatting a single file by 15-30% (#3211)
Wed Jan 12 03:39:41 UTC 2022 - Steve Kowalik <steven.kowalik@suse.com>
- Update to 21.12.0b1:
* 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)
* Configuration files using TOML features higher than spec v0.5.0 are now supported (#2301)
* Accept empty stdin (#2346)
* Provide a more useful error when parsing fails during AST safety checks (#2304)
* Fix failure caused by fmt: skip and indentation (#2281)
* Account for += assignment when deciding whether to split string (#2312)
* Correct max string length calculation when there are string operators (#2292)
* Fixed option usage when using the --code flag (#2259)
* Do not call uvloop.install() when Black is used as a library (#2303)
* Added --required-version option to require a specific version to be running (#2300)
* Fix incorrect custom breakpoint indices when string group contains fake f-strings (#2311)
* Fix regression where R prefixes would be lowercased for docstrings (#2285)
* Fix handling of named escapes (\N{...}) when --experimental-string-processing is used (#2319)
* Restored compatibility with Click 8.0 on Python 3.6 when LANG=C used (#2227)
* Add extra uvloop install + import support if in python env (#2258)
* Fix --experimental-string-processing crash when matching parens are not found (#2283)
* Make sure to split lines that start with a string operator (#2286)
* Fix regular expression that black uses to identify f-expressions (#2287)
* Blackd
* Add a lower bound for the aiohttp-cors dependency. Only 0.4.0 or higher is supported. (#2231)
* Refactor src/black/__init__.py into many files (#2206)
* Set --pyi mode if --stdin-filename ends in .pyi (#2169)
* Stop detecting target version as Python 3.9+ with pre-PEP-614 decorators that are being called but with no arguments (#2182)
* Fix crash if the user configuration directory is inaccessible. (#2158)
* Clarify circumstances in which Black may change the AST (#2159)
* Fix crash on docstrings ending with "\ ". (#2142)
* Fix crash when atypical whitespace is cleaned out of dostrings (#2120)
* Reflect the --skip-magic-trailing-comma and --experimental-string-processing flags in the name of the cache file. Without this fix, changes in these flags would not take effect if the cache had already been populated. (#2131)
* 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 cleans up leading non-breaking spaces in comments (#2092)
* 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)
* --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