Sourced from asgiref's changelog.
3.5.0 (2022-01-22)
Python 3.6 is no longer supported, and asyncio calls have been changed to use only the modern versions of the APIs as a result
Several causes of RuntimeErrors in cases where an event loop was assigned to a thread but not running
Speed improvements in the Local class
3.4.1 (2021-07-01)
- Fixed an issue with the deadlock detection where it had false positives during exception handling.
3.4.0 (2021-06-27)
Calling sync_to_async directly from inside itself (which causes a deadlock when in the default, thread-sensitive mode) now has deadlock detection.
asyncio usage has been updated to use the new versions of get_event_loop, ensure_future, wait and gather, avoiding deprecation warnings in Python 3.10. Python 3.6 installs continue to use the old versions; this is only for 3.7+
sync_to_async and async_to_sync now have improved type hints that pass through the underlying function type correctly.
All Websocket* types are now spelled WebSocket, to match our specs and the official spelling. The old names will work until release 3.5.0, but will raise deprecation warnings.
The typing for WebSocketScope and HTTPScope's
extensions
key has been fixed.3.3.4 (2021-04-06)
- The async_to_sync type error is now a warning due the high false negative rate when trying to detect coroutine-returning callables in Python.
3.3.3 (2021-04-06)
... (truncated)
8b61513
Releasing 3.5.0b2e1c9d
Fixed pytest_asyncio deprecation warning.2eda551
Added testing for Python 3.10.02fecb6
Drop Python 3.6 (#307)6689c0a
Added stacklevel to warning in AsyncToSync.4364f9b
Changed how StatelessServer handles event loops7bc055c
Update implementations.rst (#295)c758984
Move current_task import choice to module definition timedfe87b2
Fixed #292: Use get_event_loop in class-level codeb3a65e3
Removed class variable which has been unused since a0bbe90Sourced from black's releases.
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 theX-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)
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
... (truncated)
Sourced from black's changelog.
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 theX-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
... (truncated)
2018e66
Prepare docs for release 22.8.0 (#3248)0019261
Update stable branch after publishing to PyPI (#3223)7757078
Improve & update release process to reflect recent changes (#3242)767604e
Use .gitignore files in the initial source directories (#3237)2c90480
Use strict mypy checking (#3222)ba618a3
Add parens around implicit string concatenations where it increases readabili...c0cc19b
Delay worker count determinationafed2c0
Load .gitignore and exclude regex at time of usee269f44
Lazily import parallelized format modulesc47b91f
Fix misdetection of project root with --stdin-filename
(#3216)Sourced from black's releases.
22.12.0
Preview style
- Enforce empty lines before classes and functions with sticky leading comments (#3302)
- 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)
- Implicitly concatenated strings used as function args are now wrapped inside parentheses (#3307)
- Correctly handle trailing commas that are inside a line's leading non-nested parens (#3370)
Configuration
- Fix incorrectly applied
.gitignore
rules by considering the.gitignore
location and the relative path to the target file (#3338)- Fix incorrectly ignoring
.gitignore
presence when more than one source directory is specified (#3336)Parser
- Parsing support has been added for walruses inside generator expression that are passed as function args (for example,
any(match := my_re.match(text) for text in texts)
) (#3327).Integrations
- Vim plugin: Optionally allow using the system installation of Black via
let g:black_use_virtualenv = 0
(#3309)
Sourced from black's changelog.
22.12.0
Preview style
- Enforce empty lines before classes and functions with sticky leading comments (#3302)
- 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)
- Implicitly concatenated strings used as function args are now wrapped inside parentheses (#3307)
- Correctly handle trailing commas that are inside a line's leading non-nested parens (#3370)
Configuration
- Fix incorrectly applied
.gitignore
rules by considering the.gitignore
location and the relative path to the target file (#3338)- Fix incorrectly ignoring
.gitignore
presence when more than one source directory is specified (#3336)Parser
- Parsing support has been added for walruses inside generator expression that are passed as function args (for example,
any(match := my_re.match(text) for text in texts)
) (#3327).Integrations
- Vim plugin: Optionally allow using the system installation of Black via
let g:black_use_virtualenv = 0
(#3309)
2ddea29
Prepare release 22.12.0 (#3413)5b1443a
release: skip bad macos wheels for now (#3411)9ace064
Bump peter-evans/find-comment from 2.0.1 to 2.1.0 (#3404)19c5fe4
Fix CI with latest flake8-bugbear (#3412)d4a8564
Bump sphinx-copybutton from 0.5.0 to 0.5.1 in /docs (#3390)2793249
Wordsmith current_style.md (#3383)d97b789
Remove whitespaces of whitespace-only files (#3348)c23a5c1
Clarify that Black runs with --safe by default (#3378)8091b25
Correctly handle trailing commas that are inside a line's leading non-nested ...ffaaf48
Compare each .gitignore found with an appropiate relative path (#3338)Sourced from sphinx's releases.
v6.1.3
Changelog: https://www.sphinx-doc.org/en/master/changes.html
776d01e
Bump to 6.1.3 finala2e922a
CHANGES for Sphinx 6.1.331162a9
Handle exceptions for get_node_source
and get_node_line
dcb4429
Restore Sphinx 5 nodes.Element
copying behaviour2a7c40d
Undo parallel image changes7841d3d
Ignore more checks in Ruff 0.0.214ddbc5b5
Bump versionSourced from furo's changelog.
Changelog
2023.03.27 -- Tasty Tangerine
- Regenerate with newer version of sphinx-theme-builder, to fix RECORD hashes.
- Add missing class to Font Awesome examples
2023.03.23 -- Sassy Saffron
- Update Python version classifiers.
- Increase the icon size in mobile header.
- Increase admonition title bg opacity.
- Change the default API background to transparent.
- Transition the API background change.
- Remove the "indent" of API entries which have a background.
- Break long inline code literals.
2022.12.07 -- Reverent Raspberry
- ✨ Add support for Sphinx 6.
- ✨ Improve footnote presentation with docutils 0.18+.
- Drop support for Sphinx 4.
- Improve documentation about what the edit button does.
- Improve handling of empty-flexboxes for better print experience on Chrome.
- Improve styling for inline signatures.
- Replace the
meta
generator tag with a comment.- Tweak labels with icons to prevent users selecting icons as text on touch.
2022.09.29 -- Quaint Quartz
- Add ability to set arbitrary URLs for edit button.
- Add support for aligning text in MyST-parser generated tables.
2022.09.15 -- Pragmatic Pistachio
- Add a minimum version constraint on pygments.
- Add an explicit dependency on
sass
.- Change right sidebar title from "Contents" to "On this page".
- Correctly position sidebars on small screens.
... (truncated)
2f61e10
Prepare release: 2023.03.275c7aedd
Update changelog0535011
Add missing class to Font Awesome examples (#629)811f1e7
Remove unused templates_path
(#627)961d4e9
Add a inline-code as an example heading48af8eb
Back to development81139dd
Prepare release: 2023.03.23dafa73a
Update changelog82591ef
Allow all pre
tags to have overflows55b32f0
Update Python version classifiers (#626)Sourced from black's releases.
23.3.0
Highlights
This release fixes a longstanding confusing behavior in Black's GitHub action, where the version of the action did not determine the version of Black being run (issue #3382). In addition, there is a small bug fix around imports and a number of improvements to the preview style.
Please try out the preview style with
black --preview
and tell us your feedback. All changes in the preview style are expected to become part of Black's stable style in January 2024.Stable style
- 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)Preview style
- Add trailing commas to collection literals even if there's a comment after the last entry (#3393)
async def
,async for
, andasync with
statements are now formatted consistently compared to their non-async version. (#3609)with
statements that contain two context managers will be consistently wrapped in parentheses (#3589)- Let string splitters respect East Asian Width (#3445)
- Now long string literals can be split after East Asian commas and periods (
、
U+3001 IDEOGRAPHIC COMMA,。
U+3002 IDEOGRAPHIC FULL STOP, &,
U+FF0C FULLWIDTH COMMA) besides before spaces (#3445)- For stubs, enforce one blank line after a nested class with a body other than just
...
(#3564)- Improve handling of multiline strings by changing line split behavior (#1879)
Parser
- Added support for formatting files with invalid type comments (#3594)
Integrations
- Update GitHub Action to use the version of Black equivalent to action's version if version input is not specified (#3543)
- Fix missing Python binary path in autoload script for vim (#3508)
Documentation
- Document that only the most recent release is supported for security issues; vulnerabilities should be reported through Tidelift (#3612)
... (truncated)
Sourced from black's changelog.
23.3.0
Highlights
This release fixes a longstanding confusing behavior in Black's GitHub action, where the version of the action did not determine the version of Black being run (issue #3382). In addition, there is a small bug fix around imports and a number of improvements to the preview style.
Please try out the preview style with
black --preview
and tell us your feedback. All changes in the preview style are expected to become part of Black's stable style in January 2024.Stable style
- 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)Preview style
- Add trailing commas to collection literals even if there's a comment after the last entry (#3393)
async def
,async for
, andasync with
statements are now formatted consistently compared to their non-async version. (#3609)with
statements that contain two context managers will be consistently wrapped in parentheses (#3589)- Let string splitters respect East Asian Width (#3445)
- Now long string literals can be split after East Asian commas and periods (
、
U+3001 IDEOGRAPHIC COMMA,。
U+3002 IDEOGRAPHIC FULL STOP, &,
U+FF0C FULLWIDTH COMMA) besides before spaces (#3445)- For stubs, enforce one blank line after a nested class with a body other than just
...
(#3564)- Improve handling of multiline strings by changing line split behavior (#1879)
Parser
- Added support for formatting files with invalid type comments (#3594)
Integrations
- Update GitHub Action to use the version of Black equivalent to action's version if version input is not specified (#3543)
- Fix missing Python binary path in autoload script for vim (#3508)
Documentation
- Document that only the most recent release is supported for security issues; vulnerabilities should be reported through Tidelift (#3612)
... (truncated)
bf7a162
Fixup the changelog (#3628)9b2b048
Prepare release 23.3.0 (#3625)bf5abdb
Specify Python exec path with minor version if available (#3508)b542f58
Use GH action version when version argument not specified (#3543)f3b1a3b
Bump furo from 2022.12.7 to 2023.3.23 in /docs (#3624)ef6e079
Let string splitters respect East_Asian_Width
property (#3445)5c064a9
Bump sphinx from 5.3.0 to 6.1.3 in /docs (#3499)3a9d6f0
Bump myst-parser from 0.18.1 to 1.0.0 in /docs (#3601)53c23e6
Support files with type comment syntax errors (#3594)dba3c26
Fix bug introduced in #3564. (#3615)4b94add
Version 1.14.0292cb18
Support Python 3.12 (#251)72ecf2c
[pre-commit.ci] pre-commit autoupdate (#249)ea8f1ca
Upgrade requirements (#248)9979d7a
Upgrade requirements (#247)7b71075
[pre-commit.ci] pre-commit autoupdate (#245)6280868
[pre-commit.ci] pre-commit autoupdate (#244)83efc37
Upgrade requirements (#243)7aedc23
[pre-commit.ci] pre-commit autoupdate (#242)d78d593
[pre-commit.ci] pre-commit autoupdate (#241)2e74dc4
Version 1.15.08ddb2f1
[pre-commit.ci] pre-commit autoupdate (#257)64fbca6
Drop Python 3.7 support (#256)f6a0817
[pre-commit.ci] pre-commit autoupdate (#255)cbdcb50
[pre-commit.ci] pre-commit autoupdate (#254)37fc70e
Upgrade requirements (#253)7bbe434
[pre-commit.ci] pre-commit autoupdate (#250)Sourced from black's releases.
23.7.0
Highlights
- Runtime support for Python 3.7 has been removed. Formatting 3.7 code will still be supported until further notice (#3765)
Stable style
- Fix a bug where an illegal trailing comma was added to return type annotations using PEP 604 unions (#3735)
- Fix several bugs and crashes where comments in stub files were removed or mishandled under some circumstances (#3745)
- Fix a crash with multi-line magic comments like
type: ignore
within parentheses (#3740)- Fix error in AST validation when Black removes trailing whitespace in a type comment (#3773)
Preview style
- Implicitly concatenated strings used as function args are no longer wrapped inside parentheses (#3640)
- Remove blank lines between a class definition and its docstring (#3692)
Configuration
- The
--workers
argument to Black can now be specified via theBLACK_NUM_WORKERS
environment variable (#3743).pytest_cache
,.ruff_cache
and.vscode
are now excluded by default (#3691)- Fix Black not honouring
pyproject.toml
settings when running--stdin-filename
and thepyproject.toml
found isn't in the current working directory (#3719)- Black will now error if
exclude
andextend-exclude
have invalid data types inpyproject.toml
, instead of silently doing the wrong thing (#3764)Packaging
- Upgrade mypyc from 0.991 to 1.3 (#3697)
- Remove patching of Click that mitigated errors on Python 3.6 with
LANG=C
(#3768)Parser
- Add support for the new PEP 695 syntax in Python 3.12 (#3703)
Performance
- Speed up Black significantly when the cache is full (#3751)
- Avoid importing
IPython
in a case where we wouldn't need it (#3748)Output
... (truncated)
Sourced from black's changelog.
23.7.0
Highlights
- Runtime support for Python 3.7 has been removed. Formatting 3.7 code will still be supported until further notice (#3765)
Stable style
- Fix a bug where an illegal trailing comma was added to return type annotations using PEP 604 unions (#3735)
- Fix several bugs and crashes where comments in stub files were removed or mishandled under some circumstances (#3745)
- Fix a crash with multi-line magic comments like
type: ignore
within parentheses (#3740)- Fix error in AST validation when Black removes trailing whitespace in a type comment (#3773)
Preview style
- Implicitly concatenated strings used as function args are no longer wrapped inside parentheses (#3640)
- Remove blank lines between a class definition and its docstring (#3692)
Configuration
- The
--workers
argument to Black can now be specified via theBLACK_NUM_WORKERS
environment variable (#3743).pytest_cache
,.ruff_cache
and.vscode
are now excluded by default (#3691)- Fix Black not honouring
pyproject.toml
settings when running--stdin-filename
and thepyproject.toml
found isn't in the current working directory (#3719)- Black will now error if
exclude
andextend-exclude
have invalid data types inpyproject.toml
, instead of silently doing the wrong thing (#3764)Packaging
- Upgrade mypyc from 0.991 to 1.3 (#3697)
- Remove patching of Click that mitigated errors on Python 3.6 with
LANG=C
(#3768)Parser
- Add support for the new PEP 695 syntax in Python 3.12 (#3703)
Performance
- Speed up Black significantly when the cache is full (#3751)
- Avoid importing
IPython
in a case where we wouldn't need it (#3748)Output
... (truncated)
193ee76
Prepare release 23.7.0 (#3776)38723bb
Unpin pytest-xdist (#3772)138769a
Disable coverage on pypy tests (#3777)ad3724b
Upgrade to latest mypy (#3775)b8e2ec7
Fix crash on type comment with trailing space (#3773)257d392
Fix removed comments in stub files (#3745)2593af2
Improve performance by skipping unnecessary normalisation (#3751)f3b50e4
Add CITATION.cff file (#3723)0b4d7d5
Run pyupgrade on blib2to3 and src (#3771)114e835
Remove click patch (#3768)