Sourced from black's releases.
\n\n\n21.5b2
\nBlack
\n\n
\n- A space is no longer inserted into empty docstrings (#2249)
\n- Fix handling of .gitignore files containing non-ASCII characters on Windows (#2229)
\n- Respect
\n.gitignore
files in all levels, not onlyroot/.gitignore
file (apply\n.gitignore
rules likegit
does) (#2225)- Restored compatibility with Click 8.0 on Python 3.6 when LANG=C used (#2227)
\n- Add extra uvloop install + import support if in python env (#2258)
\n- Fix --experimental-string-processing crash when matching parens are not found (#2283)
\n- Make sure to split lines that start with a string operator (#2286)
\n- Fix regular expression that black uses to identify f-expressions (#2287)
\nBlackd
\n\n
\n- Add a lower bound for the
\naiohttp-cors
dependency. Only 0.4.0 or higher is\nsupported. (#2231)Packaging
\n\n
\n- Release self-contained x86_64 MacOS binaries as part of the GitHub release pipeline\n(#2198)
\n- Always build binaries with the latest available Python (#2260)
\nDocumentation
\n\n
\n- Add discussion of magic comments to FAQ page (#2272)
\n- \n
--experimental-string-processing
will be enabled by default in the future (#2273)- Fix typos discovered by codespell (#2228)
\n- Fix Vim plugin installation instructions. (#2235)
\n- Add new Frequently Asked Questions page (#2247)
\n- Fix encoding + symlink issues preventing proper build on Windows (#2262)
\n
Sourced from black's changelog.
\n\n\n21.5b2
\nBlack
\n\n
\n- A space is no longer inserted into empty docstrings (#2249)
\n- Fix handling of .gitignore files containing non-ASCII characters on Windows (#2229)
\n- Respect
\n.gitignore
files in all levels, not onlyroot/.gitignore
file (apply\n.gitignore
rules likegit
does) (#2225)- Restored compatibility with Click 8.0 on Python 3.6 when LANG=C used (#2227)
\n- Add extra uvloop install + import support if in python env (#2258)
\n- Fix --experimental-string-processing crash when matching parens are not found (#2283)
\n- Make sure to split lines that start with a string operator (#2286)
\n- Fix regular expression that black uses to identify f-expressions (#2287)
\nBlackd
\n\n
\n- Add a lower bound for the
\naiohttp-cors
dependency. Only 0.4.0 or higher is\nsupported. (#2231)Integrations
\n\n
\n- The official Black action now supports choosing what version to use, and supports the\nmajor 3 OSes. (#1940)
\nPackaging
\n\n
\n- Release self-contained x86_64 MacOS binaries as part of the GitHub release pipeline\n(#2198)
\n- Always build binaries with the latest available Python (#2260)
\nDocumentation
\n\n
\n- Add discussion of magic comments to FAQ page (#2272)
\n- \n
--experimental-string-processing
will be enabled by default in the future (#2273)- Fix typos discovered by codespell (#2228)
\n- Fix Vim plugin installation instructions. (#2235)
\n- Add new Frequently Asked Questions page (#2247)
\n- Fix encoding + symlink issues preventing proper build on Windows (#2262)
\n
f2fe98e
0.16.04e1df31
Remove obsolete test, add make test6ec7647
feat: Add support for Python 3.10.42ff5d1
ci: Include Python 3.10 in the CI test run.be3b327
build: Include Python 3.10 in Tox test runs.1c283bd
refactor: test_async_fixtures_with_finalizer no longer trigger a DeprecationW...2751982
refactor: Replaced tests asserting that the event loop is properly closed.70989fd
refactor: Grouped test cases together that are related to the use of the asyn...b27abe8
refactor: Removed TestUnexistingLoop.remove_loop fixture, because it has no e...e3ec312
Adjusted Hypothesis integration test to use the same event loop initializatio...Sourced from furo's changelog.
\n\n\nChangelog
\n\n2023.07.26 -- Vigilant Volt
\n\n
\n- Fix compatiblity with Sphinx 7.1.
\n- Improve how content overflow is handled.
\n- Improve how literal blocks containing inline code are handled.
\n2023.05.20 -- Unassuming Ultramarine
\n\n
\n- \u2728 Add support for Sphinx 7.
\n- Drop support for Sphinx 5.
\n- Improve the screen-reader label for sidebar collapse.
\n- Make it easier to create derived themes from Furo.
\n- Bump all JS dependencies (NodeJS and npm packages).
\n2023.03.27 -- Tasty Tangerine
\n\n
\n- Regenerate with newer version of sphinx-theme-builder, to fix RECORD hashes.
\n- Add missing class to Font Awesome examples
\n2023.03.23 -- Sassy Saffron
\n\n
\n- Update Python version classifiers.
\n- Increase the icon size in mobile header.
\n- Increase admonition title bg opacity.
\n- Change the default API background to transparent.
\n- Transition the API background change.
\n- Remove the "indent" of API entries which have a background.
\n- Break long inline code literals.
\n2022.12.07 -- Reverent Raspberry
\n\n
\n\n- \u2728 Add support for Sphinx 6.
\n- \u2728 Improve footnote presentation with docutils 0.18+.
\n- Drop support for Sphinx 4.
\n- Improve documentation about what the edit button does.
\n- Improve handling of empty-flexboxes for better print experience on Chrome.
\n- Improve styling for inline signatures.
\n
... (truncated)
\n35f5307
Prepare release: 2023.07.260a8bedc
Update changeloga92dd0c
Make _add_asset_hashes
a no-op with Sphinx 7.1f8db95b
Improve literals with inline code are handled1680dbe
Document the use of figclass
with figure
directivebeebd7e
Increase the specificity of the admonition title selector834e951
Setup uploads to Percy27bf2c0
[pre-commit.ci] pre-commit autoupdate (#672)c8b51d0
Fix how content overflow is handled80afa27
[pre-commit.ci] pre-commit autoupdate (#652)Sourced from jinja2's releases.
\n\n\n3.1.0
\nThis is a feature release, which includes new features and removes previously deprecated features. The 3.1.x branch is now the supported bugfix branch, the 3.0.x branch has become a tag marking the end of support for that branch. We encourage everyone to upgrade, and to use a tool such as pip-tools to pin all dependencies and control upgrades. We also encourage upgrading to MarkupSafe 2.1.1, the latest version at this time.
\n\n
\n- Changes: https://jinja.palletsprojects.com/en/3.1.x/changes/#version-3-1-0
\n- Milestone: https://github.com/pallets/jinja/milestone/8?closed=1
\n- MarkupSafe changes: https://markupsafe.palletsprojects.com/en/2.1.x/changes/#version-2-1-1
\n
Sourced from jinja2's changelog.
\n\n\nVersion 3.1.0
\nReleased 2022-03-24
\n\n
\n- \n
\nDrop support for Python 3.6. :pr:
\n1534
- \n
\nRemove previously deprecated code. :pr:
\n1544
\n
\n- \n
WithExtension
andAutoEscapeExtension
are built-in now.- \n
contextfilter
andcontextfunction
are replaced by\npass_context
.evalcontextfilter
and\nevalcontextfunction
are replaced bypass_eval_context
.\nenvironmentfilter
andenvironmentfunction
are replaced\nbypass_environment
.- \n
Markup
andescape
should be imported from MarkupSafe.- Compiled templates from very old Jinja versions may need to be\nrecompiled.
\n- Legacy resolve mode for
\nContext
subclasses is no longer\nsupported. Overrideresolve_or_missing
instead of\nresolve
.- \n
unicode_urlencode
is renamed tourl_quote
.- \n
\nAdd support for native types in macros. :issue:
\n1510
- \n
\nThe
\n{% trans %}
tag can usepgettext
andnpgettext
by\npassing a context string as the first token in the tag, like\n{% trans "title" %}
. :issue:1430
- \n
\nUpdate valid identifier characters from Python 3.6 to 3.7.\n:pr:
\n1571
- \n
\nFilters and tests decorated with
\n@async_variant
are pickleable.\n:pr:1612
- \n
\nAdd
\nitems
filter. :issue:1561
- \n
\nSubscriptions (
\n[0]
, etc.) can be used after filters, tests, and\ncalls when the environment is in async mode. :issue:1573
- \n
\nThe
\ngroupby
filter is case-insensitive by default, matching\nother comparison filters. Added thecase_sensitive
parameter to\ncontrol this. :issue:1463
- \n
\nWindows drive-relative path segments in template names will not\nresult in
\nFileSystemLoader
andPackageLoader
loading from\ndrive-relative paths. :pr:1621
Version 3.0.3
\nReleased 2021-11-09
\n\n
\n\n- Fix traceback rewriting internals for Python 3.10 and 3.11.\n:issue:
\n1535
- Fix how the native environment treats leading and trailing spaces\nwhen parsing values on Python 3.10. :pr:
\n1537
... (truncated)
\n84c0e2c
Merge pull request #1625 from pallets/release-3.1.07b0c47f
release version 3.1.0ede0f98
Merge pull request #1621 from pallets/template-safe-path040088a
use posixpath.join
when loading template namesa292075
Merge pull request #1620 from janfilips/patch-16e4df02
Fix formatting in tricks.rst3a050b1
Merge pull request #1617 from pallets/docs-prose4b63cd8
rewrite include statement sectiona98d482
clean up faq, move technical discussions9de99f8
clean up engine comparisonsSourced from janus's changelog.
\n\n\n0.5.0 (2020-04-23)
\n\n
\n- Remove explicit loop arguments and forbid creating queues outside event loops #246
\n0.4.0 (2018-07-28)
\n\n
\n- Add
\npy.typed
macro #89- Drop python 3.4 support and fix minimal version python3.5.3 #88
\n- Add property with that indicates if queue is closed #86
\n0.3.2 (2018-07-06)
\n\n
\n- Fixed python 3.7 support #97
\n0.3.1 (2018-01-30)
\n\n
\n- Fixed bug with join() in case tasks are added by sync_q.put() #75
\n0.3.0 (2017-02-21)
\n\n
\n- Expose unfinished_tasks property #34
\n0.2.4 (2016-12-05)
\n\n
\n- Restore tarball deploying
\n0.2.3 (2016-07-12)
\n\n
\n- Fix exception type
\n0.2.2 (2016-07-11)
\n\n
\n- Update asyncio.async() to use asyncio.ensure_future() #6
\n0.2.1 (2016-03-24)
\n\n
\n- Fix python setup.py test command #4
\n0.2.0 (2015-09-20)
\n ... (truncated)\n
8e89b45
Bump to 0.5.0ec8592b
Fix up Python 3.8 loop argument warnings (#246)2543af6
Bump coverage from 5.0.4 to 5.103d1b36
Bump tox from 3.14.5 to 3.14.68219c38
Bump coverage from 5.0.3 to 5.0.485ec71d
Bump pytest from 5.4.0 to 5.4.13b974c9
Bump pytest from 5.3.5 to 5.4.0282dc12
Bump mypy from 0.761 to 0.7701364fb3
Bump tox from 3.14.4 to 3.14.5dc519bb
Bump tox from 3.14.3 to 3.14.4Sourced from black's releases.
\n\n\n21.4b0
\nBlack
\n\n
\n\n- \n
\nFixed a rare but annoying formatting instability created by the combination of\noptional trailing commas inserted by
\nBlack
and optional parentheses looking at\npre-existing "magic" trailing commas. This fixes issue #1629 and all of its many many\nduplicates. (#2126)- \n
\n\n
Black
now processes one-line docstrings by stripping leading and trailing spaces,\nand adding a padding space when needed to break up """". (#1740)- \n
\n\n
Black
now cleans up leading non-breaking spaces in comments (#2092)- \n
\n\n
Black
now respects--skip-string-normalization
when normalizing multiline\ndocstring quotes (#1637)- \n
\n\n
Black
no longer removes all empty lines between non-function code and decorators\nwhen formatting typing stubs. NowBlack
enforces a single empty line. (#1646)- \n
\n\n
Black
no longer adds an incorrect space after a parenthesized assignment expression\nin if/while statements (#1655)- \n
\nAdded
\n--skip-magic-trailing-comma
/-C
to avoid using trailing commas as a reason\nto split lines (#1824)- \n
\nfixed a crash when PWD=/ on POSIX (#1631)
\n- \n
\nfixed "I/O operation on closed file" when using --diff (#1664)
\n- \n
\nPrevent coloured diff output being interleaved with multiple files (#1673)
\n- \n
\nAdded support for PEP 614 relaxed decorator syntax on python 3.9 (#1711)
\n- \n
\nAdded parsing support for unparenthesized tuples and yield expressions in annotated\nassignments (#1835)
\n- \n
\nuse lowercase hex strings (#1692)
\n- \n
\nadded
\n--extend-exclude
argument (PR #2005)- \n
\nspeed up caching by avoiding pathlib (#1950)
\n- \n
\n\n
--diff
correctly indicates when a file doesn't end in a newline (#1662)- \n
\nAdded
\n--stdin-filename
argument to allow stdin to respect--force-exclude
rules\n(#1780)- \n
\nLines ending with
\nfmt: skip
will now be not formatted (#1800)- \n
\nPR #2053: Black no longer relies on typed-ast for Python 3.8 and higher
\n
... (truncated)
\nSourced from black's changelog.
\n\n\n21.4b0
\nBlack
\n\n
\n\n- \n
\nFixed a rare but annoying formatting instability created by the combination of\noptional trailing commas inserted by
\nBlack
and optional parentheses looking at\npre-existing "magic" trailing commas. This fixes issue #1629 and all of its many many\nduplicates. (#2126)- \n
\n\n
Black
now processes one-line docstrings by stripping leading and trailing spaces,\nand adding a padding space when needed to break up """". (#1740)- \n
\n\n
Black
now cleans up leading non-breaking spaces in comments (#2092)- \n
\n\n
Black
now respects--skip-string-normalization
when normalizing multiline\ndocstring quotes (#1637)- \n
\n\n
Black
no longer removes all empty lines between non-function code and decorators\nwhen formatting typing stubs. NowBlack
enforces a single empty line. (#1646)- \n
\n\n
Black
no longer adds an incorrect space after a parenthesized assignment expression\nin if/while statements (#1655)- \n
\nAdded
\n--skip-magic-trailing-comma
/-C
to avoid using trailing commas as a reason\nto split lines (#1824)- \n
\nfixed a crash when PWD=/ on POSIX (#1631)
\n- \n
\nfixed "I/O operation on closed file" when using --diff (#1664)
\n- \n
\nPrevent coloured diff output being interleaved with multiple files (#1673)
\n- \n
\nAdded support for PEP 614 relaxed decorator syntax on python 3.9 (#1711)
\n- \n
\nAdded parsing support for unparenthesized tuples and yield expressions in annotated\nassignments (#1835)
\n- \n
\nadded
\n--extend-exclude
argument (PR #2005)- \n
\nspeed up caching by avoiding pathlib (#1950)
\n- \n
\n\n
--diff
correctly indicates when a file doesn't end in a newline (#1662)- \n
\nAdded
\n--stdin-filename
argument to allow stdin to respect--force-exclude
rules\n(#1780)- \n
\nLines ending with
\nfmt: skip
will now be not formatted (#1800)- \n
\nPR #2053: Black no longer relies on typed-ast for Python 3.8 and higher
\n
... (truncated)
\nSourced from click's releases.
\n\n\n8.1.0
\nThis is a feature release, which includes new features and removes previously deprecated features. The 8.1.x branch is now the supported bugfix branch, the 8.0.x branch will become a tag marking the end of support for that branch. We encourage everyone to upgrade, and to use a tool such as pip-tools to pin all dependencies and control upgrades.
\n\n
Sourced from click's changelog.
\n\n\nVersion 8.1.0
\nReleased 2022-03-28
\n\n
\n\n- \n
\nDrop support for Python 3.6. :pr:
\n2129
- \n
\nRemove previously deprecated code. :pr:
\n2130
\n
\n- \n
Group.resultcallback
is renamed toresult_callback
.- \n
autocompletion
parameter toCommand
is renamed to\nshell_complete
.- \n
get_terminal_size
is removed, use\nshutil.get_terminal_size
instead.- \n
get_os_args
is removed, usesys.argv[1:]
instead.- \n
\nRely on :pep:
\n538
and :pep:540
to handle selecting UTF-8 encoding\ninstead of ASCII. Click's locale encoding detection is removed.\n:issue:2198
- \n
\nSingle options boolean flags with
\nshow_default=True
only show\nthe default if it isTrue
. :issue:1971
- \n
\nThe
\ncommand
andgroup
decorators can be applied with or\nwithout parentheses. :issue:1359
- \n
\nThe
\nPath
type can check whether the target is executable.\n:issue:1961
- \n
\n\n
Command.show_default
overridesContext.show_default
, instead\nof the other way around. :issue:1963
- \n
\nParameter decorators and
\n@group
handlescls=None
the same as\nnot passingcls
.@option
handleshelp=None
the same as\nnot passinghelp
. :issue:[#1959](https://github.com/pallets/click/issues/1959)
- \n
\nA flag option with
\nrequired=True
requires that the flag is\npassed instead of choosing the implicit default value. :issue:1978
- \n
\nIndentation in help text passed to
\nOption
andCommand
is\ncleaned the same as using the@option
and@command
\ndecorators does. A command'sepilog
andshort_help
are also\nprocessed. :issue:1985
- \n
\nStore unprocessed
\nCommand.help
,epilog
andshort_help
\nstrings. Processing is only done when formatting help text for\noutput. :issue:2149
- \n
\nAllow empty str input for
\nprompt()
when\nconfirmation_prompt=True
anddefault=""
. :issue:2157
- \n
\nWindows glob pattern expansion doesn't fail if a value is an invalid\npattern. :issue:
\n2195
- \n
\nIt's possible to pass a list of
\nparams
to@command
. Any\nparams defined with decorators are appended to the passed params.\n:issue:2131
.- \n
\n\n
@command
decorator is annotated as returning the correct type if\nacls
argument is used. :issue:2211
- \n
\nA
\nGroup
withinvoke_without_command=True
andchain=False
\nwill invoke its result callback with the group function's return\nvalue. :issue:2124
... (truncated)
\ne4aceee
Merge pull request #2224 from pallets/release-8.1.0f8d811e
release version 8.1.020c88f0
Merge pull request #2223 from pallets/env-var8d7f03d
treat empty auto_envvar as Noneef11be6
Merge pull request #2041 from spanglerco/shell-completion-option-valuesf2e579a
shell completion prioritizes option values over new optionsd251cb0
Merge pull request #2219 from pallets/paramtype-namee003331
fix ParamType.to_info_dict() with no name19be092
Merge pull request #2217 from pallets/group-return7d3a871
group without command passes return value to result callbackSourced from black's releases.
\n\n\n22.3.0
\nPreview style
\n\n
\n- Code cell separators
\n#%%
are now standardised to# %%
(#2919)- Remove unnecessary parentheses from
\nexcept
statements (#2939)- Remove unnecessary parentheses from tuple unpacking in
\nfor
loops (#2945)- Avoid magic-trailing-comma in single-element subscripts (#2942)
\nConfiguration
\n\n
\n- Do not format
\n__pypackages__
directories by default (#2836)- Add support for specifying stable version with
\n--required-version
(#2832).- Avoid crashing when the user has no homedir (#2814)
\n- Avoid crashing when md5 is not available (#2905)
\n- Fix handling of directory junctions on Windows (#2904)
\nDocumentation
\n\n
\n- Update pylint config documentation (#2931)
\nIntegrations
\n\n
\n- Move test to disable plugin in Vim/Neovim, which speeds up loading (#2896)
\nOutput
\n\n
\n- In verbose, mode, log when Black is using user-level config (#2861)
\nPackaging
\n\n
\n- Fix Black to work with Click 8.1.0 (#2966)
\n- On Python 3.11 and newer, use the standard library's
\ntomllib
instead oftomli
\n(#2903)- \n
black-primer
, the deprecated internal devtool, has been removed and copied to a\nseparate repository (#2924)Parser
\n\n
\n- Black can now parse starred expressions in the target of
\nfor
andasync for
\nstatements, e.gfor item in *items_1, *items_2: pass
(#2879).
Sourced from black's changelog.
\n\n\n22.3.0
\nPreview style
\n\n
\n- Code cell separators
\n#%%
are now standardised to# %%
(#2919)- Remove unnecessary parentheses from
\nexcept
statements (#2939)- Remove unnecessary parentheses from tuple unpacking in
\nfor
loops (#2945)- Avoid magic-trailing-comma in single-element subscripts (#2942)
\nConfiguration
\n\n
\n- Do not format
\n__pypackages__
directories by default (#2836)- Add support for specifying stable version with
\n--required-version
(#2832).- Avoid crashing when the user has no homedir (#2814)
\n- Avoid crashing when md5 is not available (#2905)
\n- Fix handling of directory junctions on Windows (#2904)
\nDocumentation
\n\n
\n- Update pylint config documentation (#2931)
\nIntegrations
\n\n
\n- Move test to disable plugin in Vim/Neovim, which speeds up loading (#2896)
\nOutput
\n\n
\n- In verbose, mode, log when Black is using user-level config (#2861)
\nPackaging
\n\n
\n- Fix Black to work with Click 8.1.0 (#2966)
\n- On Python 3.11 and newer, use the standard library's
\ntomllib
instead oftomli
\n(#2903)- \n
black-primer
, the deprecated internal devtool, has been removed and copied to a\nseparate repository (#2924)Parser
\n\n
\n- Black can now parse starred expressions in the target of
\nfor
andasync for
\nstatements, e.gfor item in *items_1, *items_2: pass
(#2879).
ae2c075
Prepare release 22.3.0 (#2968)e9681a4
Fix _unicodefun patch code for Click 8.1.0 (#2966)ac7402c
Bump sphinx from 4.4.0 to 4.5.0 in /docs (GH-2959)f239d22
Enforce no formatting changes for PRs via CI (GH-2951)bd1e980
Remove unnecessary parentheses from except
clauses (#2939)14d84ba
Resolve new flake8-bugbear errors (B020) (GH-2950)14e5ce5
Remove unnecessary parentheses from tuple unpacking in for
loops (#2945)3800ebd
Avoid magic-trailing-comma in single-element subscripts (#2942)062b549
Github now supports .git-blame-ignore-revs (GH-2948)5379d4f
stub style: remove some possible future changes (#2940)Sourced from black's releases.
\n\n\n21.4b2
\nBlack
\n\n
\n- \n
\nFix crash if the user configuration directory is inaccessible. (#2158)
\n- \n
\nClarify\ncircumstances\nin which Black may change the AST (#2159)
\nPackaging
\n\n
\n- Install
\nprimer.json
(used byblack-primer
by default) with black. (#2154)21.4b1
\nBlack
\n\n
\n- \n
\nFix crash on docstrings ending with "\\ ". (#2142)
\n- \n
\nFix crash when atypical whitespace is cleaned out of dostrings (#2120)
\n- \n
\nReflect the
\n--skip-magic-trailing-comma
and--experimental-string-processing
flags\nin the name of the cache file. Without this fix, changes in these flags would not take\neffect if the cache had already been populated. (#2131)- \n
\nDon't remove necessary parentheses from assignment expression containing assert /\nreturn statements. (#2143)
\nPackaging
\n\n
\n- Bump pathspec to >= 0.8.1 to solve invalid .gitignore exclusion handling
\n21.4b0
\nBlack
\n\n
\n\n- \n
\nFixed a rare but annoying formatting instability created by the combination of\noptional trailing commas inserted by
\nBlack
and optional parentheses looking at\npre-existing "magic" trailing commas. This fixes issue #1629 and all of its many many\nduplicates. (#2126)- \n
\n\n
Black
now processes one-line docstrings by stripping leading and trailing spaces,\nand adding a padding space when needed to break up """". (#1740)- \n
\n\n
Black
now cleans up leading non-breaking spaces in comments (#2092)- \n
\n\n
Black
now respects--skip-string-normalization
when normalizing multiline\ndocstring quotes (#1637)- \n
\n\n
Black
no longer removes all empty lines between non-function code and decorators\nwhen formatting typing stubs. NowBlack
enforces a single empty line. (#1646)
... (truncated)
\nSourced from black's changelog.
\n\n\n21.4b2
\nBlack
\n\n
\n- \n
\nFix crash if the user configuration directory is inaccessible. (#2158)
\n- \n
\nClarify\ncircumstances\nin which Black may change the AST (#2159)
\nPackaging
\n\n
\n- Install
\nprimer.json
(used byblack-primer
by default) with black. (#2154)21.4b1
\nBlack
\n\n
\n- \n
\nFix crash on docstrings ending with "\\ ". (#2142)
\n- \n
\nFix crash when atypical whitespace is cleaned out of dostrings (#2120)
\n- \n
\nReflect the
\n--skip-magic-trailing-comma
and--experimental-string-processing
flags\nin the name of the cache file. Without this fix, changes in these flags would not take\neffect if the cache had already been populated. (#2131)- \n
\nDon't remove necessary parentheses from assignment expression containing assert /\nreturn statements. (#2143)
\nPackaging
\n\n
\n- Bump pathspec to >= 0.8.1 to solve invalid .gitignore exclusion handling
\n21.4b0
\nBlack
\n\n
\n\n- \n
\nFixed a rare but annoying formatting instability created by the combination of\noptional trailing commas inserted by
\nBlack
and optional parentheses looking at\npre-existing "magic" trailing commas. This fixes issue #1629 and all of its many many\nduplicates. (#2126)- \n
\n\n
Black
now processes one-line docstrings by stripping leading and trailing spaces,\nand adding a padding space when needed to break up """". (#1740)- \n
\n\n
Black
now cleans up leading non-breaking spaces in comments (#2092)- \n
\n\n
Black
now respects--skip-string-normalization
when normalizing multiline\ndocstring quotes (#1637)
... (truncated)
\n53f3da7
Prepare for releasee99569d
A line is added to the changelog.4099b63
One import is not needed68513b3
Clarify names and comments, according to yanlend comments 26 May907e8f2
FIX new test_cases on python 3.5 & 3.651d986c
To solve test cases that fail:f97e900
1) Test case (test_async_fixtures_with_finalizer) refactoring to pass on pyth...c1131f8
1) A new test case that fails with 0.12.0, and pass with this commit.7a255bc
0.13.0 open for businessb8e2a45
0.12.0d010ff4
0.8.03e3830d
Tweak README713984e
Update README9570975
Use os.sep2b2500d
Add prefix, suffix, dir args to TemporaryDirectory8895eb4
Fix ospath.exists test8308355
Fix typo: aiofiles.ospath.existsb8cf8dd
Update Readme with os.makedirs and os.removedirsaea353e
Merge branch 'patch-2'761f06e
Fix READMESourced from pytest's releases.
\n\n\n6.1.0
\npytest 6.1.0 (2020-09-26)
\nBreaking Changes
\n\n
\n- \n
\n#5585: As per our policy, the following features which have been deprecated in the 5.X series are now\nremoved:
\n\n
\n- The
\nfuncargnames
read-only property ofFixtureRequest
,Metafunc
, andFunction
classes. Usefixturenames
attribute.- \n
@pytest.fixture
no longer supports positional arguments, pass all arguments by keyword instead.- Direct construction of
\nNode
subclasses now raise an error, usefrom_parent
instead.- The default value for
\njunit_family
has changed toxunit2
. If you require the old format, addjunit_family=xunit1
to your configuration file.- The
\nTerminalReporter
no longer has awriter
attribute. Plugin authors may use the public functions of theTerminalReporter
instead of accessing theTerminalWriter
object directly.- The
\n--result-log
option has been removed. Users are recommended to use the pytest-reportlog plugin instead.For more information consult\nDeprecations and Removals in the docs.
\nDeprecations
\n\n
\n- \n
\n#6981: The
\npytest.collect
module is deprecated: all its names can be imported frompytest
directly.- \n
\n#7097: The
\npytest._fillfuncargs
function is deprecated. This function was kept\nfor backward compatibility with an older plugin.It's functionality is not meant to be used directly, but if you must replace\nit, use function._request._fillfixtures() instead, though note this is not\na public API and may break in the future.
\n- \n
\n#7210: The special
\n-k '-expr'
syntax to-k
is deprecated. Use-k 'not expr'
\ninstead.The special
\n-k 'expr:'
syntax to-k
is deprecated. Please open an issue\nif you use this and want a replacement.- \n
\n#7255: The pytest_warning_captured <_pytest.hookspec.pytest_warning_captured> hook is deprecated in favor\nof pytest_warning_recorded <_pytest.hookspec.pytest_warning_recorded>, and will be removed in a future version.
\n- \n
\n#7648: The
\ngethookproxy()
andisinitpath()
methods ofFSCollector
andPackage
are deprecated;\nuseself.session.gethookproxy()
andself.session.isinitpath()
instead.\nThis should work on all pytest versions.Features
\n\n
\n- #7667: New
\n--durations-min
command-line flag controls the minimal duration for inclusion in the slowest list of tests shown by--durations
. Previously this was hard-coded to0.005s
.Improvements
\n\n
Sourced from pytest's changelog.
\n868bc00
Prepare release version 6.1.00b327cc
Merge pull request #7796 from bluetech/changelog-cleanupsd3c746e
changelog: some consistency cleanupsd3f47bf
Improved 'Declaring new hooks' section in docs. (#7782)3db2489
Merge pull request #7784 from nicoddemus/use-new-pip-solver-77838215625
Use new pip resolver in plugins tox env5cfd7c0
Merge pull request #7780 from bluetech/finala99ca87
Mark some public and to-be-public classes as @final
050c2df
Use multiple issue template types and mention Discussions (#7739)cdfdb3a
Add docs about reusing fixtures from other projects (#7772)9d697f5
22.1.06a14491
Update README76f8934
Update test deps885df35
Min Python to 3.7a93206b
Bump poetry to 1.2.0d2eda61
Add missing commab02cf6a
CI tweaks7636eff
Update README.rst9bc662a
Added os scantdir with is't tests and improved the tests for listdir2aefa1e
Added os listdir function with it's testsSourced from sphinx's releases.
\n\n\nv6.1.0
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.0.1
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.0.0
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.0.0b2
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.0.0b1
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\n
Sourced from sphinx's changelog.
\n\n\nRelease 6.1.0 (released Jan 05, 2023)
\nDependencies
\n\n
\n- \n
\nAdopted the
\nRuff
_ code linter... _Ruff: https://github.com/charliermarsh/ruff
\nIncompatible changes
\n\n
\n- #10979: gettext: Removed support for pluralisation in
\nget_translation
.\nThis was unused and complicated other changes tosphinx.locale
.Deprecated
\n\n
\n- \n
\n\n
sphinx.util
functions:\n
\n- Renamed
\nsphinx.util.typing.stringify()
\ntosphinx.util.typing.stringify_annotation()
- Moved
\nsphinx.util.xmlname_checker()
\ntosphinx.builders.epub3._XML_NAME_PATTERN
Moved to
\nsphinx.util.display
:\n
\n- \n
sphinx.util.status_iterator
- \n
sphinx.util.display_chunk
- \n
sphinx.util.SkipProgressMessage
- \n
sphinx.util.progress_message
Moved to
\nsphinx.util.http_date
:\n
\n- \n
sphinx.util.epoch_to_rfc1123
- \n
sphinx.util.rfc1123_to_epoch
Moved to
\nsphinx.util.exceptions
:\n
\n- \n
sphinx.util.save_traceback
- \n
sphinx.util.format_exception_cut_frames
Features added
\n\n
\n\n- Cache doctrees in the build environment during the writing phase.
\n- Make all writing phase tasks support parallel execution.
\n- #11072: Use PEP 604 (
\nX | Y
) display conventions fortyping.Optional
\nandtyping.Optional
types within the Python domain and autodoc.
... (truncated)
\n4e1004a
Bump to 6.1.0 finala2176d4
Fix deprecation warnings2c104e9
Merge branch '6.0.x'a27d262
Bump to 6.0.1 final821569e
Add note for Pygments222d366
imgmath: Fix relative file path (#10965)c499f66
Add SIM113 lint (#11057)0fbd8af
Add missing default arguments in sphinx-apidoc.rst (#11084)f89f943
Remove flake8 plugins in favour of Ruff (#11085)0479115
Suppress lint failures from Ruff 0.0.211 (#11086)Sourced from pytest-asyncio's releases.
\n\n\npytest-asyncio 0.19.0
\n
\ntitle: 'pytest-asyncio: pytest support for asyncio'
\n\n\n\n\n\npytest-asyncio is an Apache2 licensed library, written in Python, for\ntesting asyncio code with pytest.
\nasyncio code is usually written in the form of coroutines, which makes\nit slightly more difficult to test using normal testing tools.\npytest-asyncio provides useful fixtures and markers to make testing\neasier.
\n\n@pytest.mark.asyncio\nasync def test_some_asyncio_code():\n res = await library.do_something()\n assert b"expected result" == res\n
pytest-asyncio has been strongly influenced by\npytest-tornado.
\nFeatures
\n\n
\n- fixtures for creating and injecting versions of the asyncio event\nloop
\n- fixtures for injecting unused tcp/udp ports
\n- pytest markers for treating tests as asyncio coroutines
\n- easy testing with non-default event loops
\n- support for [async def]{.title-ref} fixtures and async generator\nfixtures
\n- support auto mode to handle all async fixtures and tests\nautomatically by asyncio; provide strict mode if a test suite\nshould work with different async frameworks simultaneously, e.g.\n
\nasyncio
andtrio
.Installation
\n\n
... (truncated)
\nSourced from pytest-asyncio's changelog.
\n\n\n0.19.0 (22-07-13)
\n\n
\n- BREAKING: The default
\nasyncio_mode
is now strict.[#293](https://github.com/pytest-dev/pytest-asyncio/issues/293) <https://github.com/pytest-dev/pytest-asyncio/issues/293>
_- Removes
\nsetup.py
since all relevant configuration is presentsetup.cfg
. Users requiring an editable installation of pytest-asyncio need to use pip v21.1 or newer.[#283](https://github.com/pytest-dev/pytest-asyncio/issues/283) <https://github.com/pytest-dev/pytest-asyncio/issues/283>
_- Declare support for Python 3.11.
\n0.18.3 (22-03-25)
\n\n
\n- Adds
\npytest-trio <https://pypi.org/project/pytest-trio/>
_ to the test dependencies- Fixes a bug that caused pytest-asyncio to try to set up async pytest_trio fixtures in strict mode.
\n[#298](https://github.com/pytest-dev/pytest-asyncio/issues/298) <https://github.com/pytest-dev/pytest-asyncio/issues/298>
_0.18.2 (22-03-03)
\n\n
\n- Fix asyncio auto mode not marking static methods.
\n[#295](https://github.com/pytest-dev/pytest-asyncio/issues/295) <https://github.com/pytest-dev/pytest-asyncio/issues/295>
_- Fix a compatibility issue with Hypothesis 6.39.0.
\n[#302](https://github.com/pytest-dev/pytest-asyncio/issues/302) <https://github.com/pytest-dev/pytest-asyncio/issues/302>
_0.18.1 (22-02-10)
\n\n
\n- Fixes a regression that prevented async fixtures from working in synchronous tests.
\n[#286](https://github.com/pytest-dev/pytest-asyncio/issues/286) <https://github.com/pytest-dev/pytest-asyncio/issues/286>
_0.18.0 (22-02-07)
\n\n
\n- Raise a warning if
\n@\u200bpytest
.mark.asyncio is applied to non-async function.[#275](https://github.com/pytest-dev/pytest-asyncio/issues/275) <https://github.com/pytest-dev/pytest-asyncio/issues/275>
_- Support parametrized
\nevent_loop
fixture.[#278](https://github.com/pytest-dev/pytest-asyncio/issues/278) <https://github.com/pytest-dev/pytest-asyncio/issues/278>
_0.17.2 (22-01-17)
\n\n
\n- Require
\ntyping-extensions
on Python`_- Fix a regression in tests collection introduced by 0.17.1, the plugin works fine with non-python tests again.
\n[#267](https://github.com/pytest-dev/pytest-asyncio/issues/267) <https://github.com/pytest-dev/pytest-asyncio/issues/267>
_0.17.1 (22-01-16)
\n\n
\n- Fixes a bug that prevents async Hypothesis tests from working without explicit
\nasyncio
marker when--asyncio-mode=auto
is set.[#258](https://github.com/pytest-dev/pytest-asyncio/issues/258) <https://github.com/pytest-dev/pytest-asyncio/issues/258>
_- Fixed a bug that closes the default event loop if the loop doesn't exist
\n[#257](https://github.com/pytest-dev/pytest-asyncio/issues/257) <https://github.com/pytest-dev/pytest-asyncio/issues/257>
_- Added type annotations.
\n[#198](https://github.com/pytest-dev/pytest-asyncio/issues/198) <https://github.com/pytest-dev/pytest-asyncio/issues/198>
_- Show asyncio mode in pytest report headers.
\n[#266](https://github.com/pytest-dev/pytest-asyncio/issues/266) <https://github.com/pytest-dev/pytest-asyncio/issues/266>
_- Relax
\nasyncio_mode
type definition; it allows to support pytest 6.1+.[#262](https://github.com/pytest-dev/pytest-asyncio/issues/262) <https://github.com/pytest-dev/pytest-asyncio/issues/262>
_0.17.0 (22-01-13)
\n\n
\n\n- \n
pytest-asyncio
no longer alters existing event loop policies.[#168](https://github.com/pytest-dev/pytest-asyncio/issues/168) <https://github.com/pytest-dev/pytest-asyncio/issues/168>
,[#188](https://github.com/pytest-dev/pytest-asyncio/issues/188) <https://github.com/pytest-dev/pytest-asyncio/issues/168>
- Drop support for Python 3.6
\n- Fixed an issue when pytest-asyncio was used in combination with
\nflaky
or inherited asynchronous Hypothesis tests.[#178](https://github.com/pytest-dev/pytest-asyncio/issues/178) <https://github.com/pytest-dev/pytest-asyncio/issues/178>
_[#231](https://github.com/pytest-dev/pytest-asyncio/issues/231) <https://github.com/pytest-dev/pytest-asyncio/issues/231>
_- Added
\nflaky <https://pypi.org/project/flaky/>
_ to test dependencies- Added
\nunused_udp_port
andunused_udp_port_factory
fixtures (similar tounused_tcp_port
andunused_tcp_port_factory
counterparts.[#99](https://github.com/pytest-dev/pytest-asyncio/issues/99) <https://github.com/pytest-dev/pytest-asyncio/issues/99>
_- Added the plugin modes: strict, auto, and legacy. See
\ndocumentation <https://github.com/pytest-dev/pytest-asyncio#modes>
_ for details.[#125](https://github.com/pytest-dev/pytest-asyncio/issues/125) <https://github.com/pytest-dev/pytest-asyncio/issues/125>
_- Correctly process
\nKeyboardInterrupt
during async fixture setup phase[#219](https://github.com/pytest-dev/pytest-asyncio/issues/219) <https://github.com/pytest-dev/pytest-asyncio/issues/219>
_
... (truncated)
\n2da33c4
docs: Prepare v0.19.0 release. (#385)07beb80
opt into strict mode by default (#380)25c54a5
Clarify documentation of event_loop fixture (#375)49f07a4
Bump typing-extensions from 4.2.0 to 4.3.0 in /dependencies/default (#382)739198b
Bump hypothesis from 6.48.0 to 6.48.3 in /dependencies/default (#381)db72f25
Bump importlib-metadata from 4.11.4 to 4.12.0 in /dependencies/default (#378)4cf16cf
Bump hypothesis from 6.47.3 to 6.48.0 in /dependencies/default (#377)f13c85f
docs: Fix typo in README.b463f72
Python 3.11 support (#370)860ff51
Bump hypothesis from 6.47.2 to 6.47.3 in /dependencies/default (#373)Sourced from sphinx's releases.
\n\n\nv6.1.1
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.1.0
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.0.1
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.0.0
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.0.0b2
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.0.0b1
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\n
Sourced from sphinx's changelog.
\n\n\nRelease 6.1.1 (released Jan 05, 2023)
\nBugs fixed
\n\n
\n- #11091: Fix
\nutil.nodes.apply_source_workaround
forliteral_block
nodes\nwith no source information in the node or the node's parents.Release 6.1.0 (released Jan 05, 2023)
\nDependencies
\n\n
\n- \n
\nAdopted the
\nRuff
_ code linter... _Ruff: https://github.com/charliermarsh/ruff
\nIncompatible changes
\n\n
\n- #10979: gettext: Removed support for pluralisation in
\nget_translation
.\nThis was unused and complicated other changes tosphinx.locale
.Deprecated
\n\n
\n\n- \n
\n\n
sphinx.util
functions:\n
\n- Renamed
\nsphinx.util.typing.stringify()
\ntosphinx.util.typing.stringify_annotation()
- Moved
\nsphinx.util.xmlname_checker()
\ntosphinx.builders.epub3._XML_NAME_PATTERN
Moved to
\nsphinx.util.display
:\n
\n- \n
sphinx.util.status_iterator
- \n
sphinx.util.display_chunk
- \n
sphinx.util.SkipProgressMessage
- \n
sphinx.util.progress_message
Moved to
\nsphinx.util.http_date
:\n
\n- \n
sphinx.util.epoch_to_rfc1123
- \n
sphinx.util.rfc1123_to_epoch
Moved to
\nsphinx.util.exceptions
:\n
\n- \n
sphinx.util.save_traceback
... (truncated)
\n77aaa86
Bump to 6.1.1 final476c115
Suppress ValueError
in apply_source_workaround
(#11092)c80d656
Bump version4e1004a
Bump to 6.1.0 finala2176d4
Fix deprecation warnings2c104e9
Merge branch '6.0.x'a27d262
Bump to 6.0.1 final821569e
Add note for Pygments222d366
imgmath: Fix relative file path (#10965)c499f66
Add SIM113 lint (#11057)Sourced from sphinx's releases.
\n\n\nv7.0.0
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv7.0.0rc1
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.2.1
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.2.0
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\n
Sourced from sphinx's changelog.
\n\n\nRelease 7.0.0 (released Apr 29, 2023)
\nIncompatible changes
\n\n
\n- #11359: Remove long-deprecated aliases for
\nMecabSplitter
and\nDefaultSplitter
insphinx.search.ja
.- #11360: Remove deprecated
\nmake_old_id
functions in domain object\ndescription classes.- #11363: Remove the Setuptools integration (
\nbuild_sphinx
hook in\nsetup.py
).- #11364: Remove deprecated
\nsphinx.ext.napoleon.iterators
module.- #11365: Remove support for the
\njsdump
format insphinx.search
.- #11366: Make
\nlocale
a required argument to\nsphinx.util.i18n.format_date()
.- #11370: Remove deprecated
\nsphinx.util.stemmer
module.- #11371: Remove deprecated
\nsphinx.pycode.ast.parse()
function.- #11372: Remove deprecated
\nsphinx.io.read_doc()
function.- #11373: Removed deprecated
\nsphinx.util.get_matching_files()
function.- #11378: Remove deprecated
\nsphinx.util.docutils.is_html5_writer_available()
\nfunction.- #11379: Make the
\nenv
argument toBuilder
subclasses required.- #11380: autosummary: Always emit grouped import exceptions.
\n- #11381: Remove deprecated
\nstyle
key for HTML templates.- #11382: Remove deprecated
\nsphinx.writers.latex.LaTeXTranslator.docclasses
\nattribute.- #11383: Remove deprecated
\nsphinx.builders.html.html5_ready
and\nsphinx.builders.html.HTMLTranslator
attributes.- #11385: Remove support for HTML 4 output.
\nRelease 6.2.1 (released Apr 25, 2023)
\nBugs fixed
\n\n
\n- #11355: Revert the default type of :confval:
\nnitpick_ignore
and\n:confval:nitpick_ignore_regex
tolist
.Release 6.2.0 (released Apr 23, 2023)
\nDependencies
\n\n
\n- Require Docutils 0.18.1 or greater.
\nIncompatible changes
\n\n
... (truncated)
\nd568b2f
Bump to 7.0.0 finalff79edf
Remove jsdump
references post removal1a5133a
Bump to 7.0.0rc1 final5795fc7
Update sphinx.deprecation
for Sphinx 7.0 (#11386)6202087
Add a note to CHANGES for PR 11385ad47373
Remove HTML 4 support (#11385)3e3251d
Remove HTMLTranslator
and html5_ready
from sphinx.builders.html
(...77fd819
Remove deprecated LaTeXTranslator.docclasses
attribute (#11382)4be56f3
Remove deprecated style
key for HTML templates (#11381)49027a9
Autosummary: Always emit grouped ImportError
exceptions (#11380)Sourced from sphinx's releases.
\n\n\nSphinx 7.1.0
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv7.0.1
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv7.0.0
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv7.0.0rc1
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.2.1
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.2.0
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\n
Sourced from sphinx's changelog.
\n\n\nRelease 7.1.0 (released Jul 24, 2023)
\nIncompatible changes
\n\n
\n- \n
\nReleases are no longer signed, given the
\nchange in PyPI policy
_... _change in PyPI policy: https://blog.pypi.org/posts/2023-05-23-removing-pgp/
\nDeprecated
\n\n
\n- #11412: Emit warnings on using a deprecated Python-specific index entry type\n(namely,
\nmodule
,keyword
,operator
,object
,exception
,\nstatement
, andbuiltin
) in the :rst:dir:index
directive, and\nset the removal version to Sphinx 9. Patch by Adam Turner.Features added
\n\n
\n\n- #11415: Add a checksum to JavaScript and CSS asset URIs included within\ngenerated HTML, using the CRC32 algorithm.
\n- :meth:
\n~sphinx.application.Sphinx.require_sphinx
now allows the version\nrequirement to be specified as(major, minor)
.- #11011: Allow configuring a line-length limit for object signatures, via\n:confval:
\nmaximum_signature_line_length
and the domain-specific variants.\nIf the length of the signature (in characters) is greater than the configured\nlimit, each parameter in the signature will be split to its own logical line.\nThis behaviour may also be controlled by options on object description\ndirectives, for example :rst:dir:py:function:single-line-parameter-list
.\nPatch by Thomas Louf, Adam Turner, and Jean-Fran\u00e7ois B.- #10983: Support for multiline copyright statements in the footer block.\nPatch by Stefanie Molin
\n- \n
sphinx.util.display.status_iterator
now clears the current line\nwith ANSI control codes, rather than overprinting with space characters.- #11431: linkcheck: Treat SSL failures as broken links.\nPatch by B\u00e9n\u00e9dikt Tran
\n- #11157: Keep the
\ntranslated
attribute on translated nodes.- #11451: Improve the traceback displayed when using :option:
\nsphinx-build -T
\nin parallel builds. Patch by B\u00e9n\u00e9dikt Tran- #11324: linkcheck: Use session-basd HTTP requests.
\n- #11438: Add support for the :rst:dir:
\npy:class
and :rst:dir:py:function
\ndirectives for PEP 695 (generic classes and functions declarations) and\nPEP 696 (default type parameters). Multi-line support (#11011) is enabled\nfor type parameters list and can be locally controlled on object description\ndirectives, e.g., :rst:dir:py:function:single-line-type-parameter-list
.\nPatch by B\u00e9n\u00e9dikt Tran.- #11484: linkcheck: Allow HTML anchors to be ignored on a per-URL basis\nvia :confval:
\nlinkcheck_anchors_ignore_for_url
while
... (truncated)
\ne560f63
Bump to 7.1.0 final066e0fa
Add translation progress information (#11509)0882914
Target PyPI in create-release.yml21fbee5
Fix OIDC token payload1a403e4
Add informational log messaging258b0ea
Revert "Switch to using github.request
"f9c89e5
Switch to using github.request
52c7f66
Use the correct token minting URL for TestPyPI6079f28
Install twine in PyPI publish workflow3d43b9e
Fix github-script syntax in create-release.ymlSourced from black's releases.
\n\n\n22.8.0
\nHighlights
\n\n
\n- Python 3.11 is now supported, except for blackd as aiohttp does not support 3.11 as of publishing (#3234)
\n- 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)
\n- 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)
\nStable style
\n\n
\n- Fix an infinite loop when using
\n# fmt: on/off
in the middle of an expression or code block (#3158)- Fix incorrect handling of
\n# fmt: skip
on colon (:
) lines (#3148)- Comments are no longer deleted when a line had spaces removed around power operators (#2874)
\nPreview style
\n\n
\n- 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)
\n- \n
--skip-string-normalization
/-S
now prevents docstring prefixes from being normalized as expected (#3168)- When using
\n--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)
\n- Fix a string merging/split issue when a comment is present in the middle of implicitly concatenated strings on its own line (#3227)
\nBlackd
\n\n
\n- \n
blackd
now supports enabling the preview style via theX-Preview
header (#3217)Configuration
\n\n
\n- Black now uses the presence of debug f-strings to detect target version (#3215)
\n- Fix misdetection of project root and verbose logging of sources in cases involving
\n--stdin-filename
(#3216)- Immediate
\n.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
\n\n
\n- Recommend using BlackConnect in IntelliJ IDEs (#3150)
\nIntegrations
\n\n
\n- Vim plugin: prefix messages with
\nBlack:
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)
\nOutput
\n\n
\n- Change from deprecated
\nasyncio.get_event_loop()
to create our event loop which removes DeprecationWarning (#3164)- Remove logging from internal
\nblib2to3
library since it regularly emits error logs about failed caching that can and should be ignored (#3193)Parser
\n\n
\n- 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)
\nPerformance
\n\n
... (truncated)
\nSourced from black's changelog.
\n\n\n22.8.0
\nHighlights
\n\n
\n- Python 3.11 is now supported, except for blackd as aiohttp does not support 3.11 as\nof publishing (#3234)
\n- This is the last release that supports running Black on Python 3.6 (formatting 3.6\ncode will continue to be supported until further notice)
\n- Reword the stability policy to say that we may, in rare cases, make changes that\naffect code that was not previously formatted by Black (#3155)
\nStable style
\n\n
\n- Fix an infinite loop when using
\n# fmt: on/off
in the middle of an expression or code\nblock (#3158)- Fix incorrect handling of
\n# fmt: skip
on colon (:
) lines (#3148)- Comments are no longer deleted when a line had spaces removed around power operators\n(#2874)
\nPreview style
\n\n
\n- Single-character closing docstring quotes are no longer moved to their own line as\nthis is invalid. This was a bug introduced in version 22.6.0. (#3166)
\n- \n
--skip-string-normalization
/-S
now prevents docstring prefixes from being\nnormalized as expected (#3168)- When using
\n--skip-magic-trailing-comma
or-C
, trailing commas are stripped from\nsubscript expressions with more than 1 element (#3209)- Implicitly concatenated strings inside a list, set, or tuple are now wrapped inside\nparentheses (#3162)
\n- Fix a string merging/split issue when a comment is present in the middle of implicitly\nconcatenated strings on its own line (#3227)
\nBlackd
\n\n
\n- \n
blackd
now supports enabling the preview style via theX-Preview
header (#3217)Configuration
\n\n
\n- Black now uses the presence of debug f-strings to detect target version (#3215)
\n- Fix misdetection of project root and verbose logging of sources in cases involving\n
\n--stdin-filename
(#3216)- Immediate
\n.gitignore
files in source directories given on the command line are now\nalso respected, previously only.gitignore
files in the project root and\nautomatically discovered directories were respected (#3237)Documentation
\n\n
\n- Recommend using BlackConnect in IntelliJ IDEs (#3150)
\nIntegrations
\n\n
... (truncated)
\n2018e66
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.
\n\n\n22.10.0
\nHighlights
\n\n
\n- Runtime support for Python 3.6 has been removed. Formatting 3.6 code will still be\nsupported until further notice.
\nStable style
\n\n
\n- Fix a crash when
\n# fmt: on
is used on a different block level than# fmt: off
\n(#3281)Preview style
\n\n
\n- Fix a crash when formatting some dicts with parenthesis-wrapped long string keys\n(#3262)
\nConfiguration
\n\n
\n- \n
.ipynb_checkpoints
directories are now excluded by default (#3293)- Add
\n--skip-source-first-line
/-x
option to ignore the first line of source code\nwhile formatting (#3299)Packaging
\n\n
\n- Executables made with PyInstaller will no longer crash when formatting several files\nat once on macOS. Native x86-64 executables for macOS are available once again.\n(#3275)
\n- Hatchling is now used as the build backend. This will not have any effect for users\nwho install Black with its wheels from PyPI. (#3233)
\n- Faster compiled wheels are now available for CPython 3.11 (#3276)
\nBlackd
\n\n
\n- Windows style (CRLF) newlines will be preserved (#3257).
\nIntegrations
\n\n
Sourced from black's changelog.
\n\n\n22.10.0
\nHighlights
\n\n
\n- Runtime support for Python 3.6 has been removed. Formatting 3.6 code will still be\nsupported until further notice.
\nStable style
\n\n
\n- Fix a crash when
\n# fmt: on
is used on a different block level than# fmt: off
\n(#3281)Preview style
\n\n
\n- Fix a crash when formatting some dicts with parenthesis-wrapped long string keys\n(#3262)
\nConfiguration
\n\n
\n- \n
.ipynb_checkpoints
directories are now excluded by default (#3293)- Add
\n--skip-source-first-line
/-x
option to ignore the first line of source code\nwhile formatting (#3299)Packaging
\n\n
\n- Executables made with PyInstaller will no longer crash when formatting several files\nat once on macOS. Native x86-64 executables for macOS are available once again.\n(#3275)
\n- Hatchling is now used as the build backend. This will not have any effect for users\nwho install Black with its wheels from PyPI. (#3233)
\n- Faster compiled wheels are now available for CPython 3.11 (#3276)
\nBlackd
\n\n
\n- Windows style (CRLF) newlines will be preserved (#3257).
\nIntegrations
\n\n
27d2014
Prepare release 22.10.0 (#3311)4da0851
Add option to skip the first line of source code (#3299)0359b85
Preserve crlf line endings in blackd (#3257)27d7ea4
Bump docutils from 0.18.1 to 0.19 in /docs (#3161)1a20c4d
Bump sphinx from 5.2.1 to 5.2.3 in /docs (#3305)980997f
Bump furo from 2022.9.15 to 2022.9.29 in /docs (#3304)b1077aa
Bump myst-parser from 0.18.0 to 0.18.1 in /docs (#3303)956bf39
Add .ipynb_checkpoints to DEFAULT_EXCLUDES (#3293)141291a
Enable build isolation under CIWB (#3297)ddb9924
Bump pypa/cibuildwheel from 2.10.0 to 2.10.2 (#3290)Sourced from furo's changelog.
\n\n\nChangelog
\n\n2022.09.15 -- Pragmatic Pistachio
\n\n
\n- Add a minimum version constraint on pygments.
\n- Add an explicit dependency on
\nsass
.- Change right sidebar title from "Contents" to "On this page".
\n- Correctly position sidebars on small screens.
\n- Correctly select only Furo's own
\nsvg
in related pagesnav
.- Make numpy-style documentation headers consistent.
\n- Retitle the reference section.
\n- Update npm dependencies.
\n2022.06.21 -- Opulent Opal
\n\n
\n- Fix
\ndocutils <= 0.17.x
compatibility.- Bump to the latest Node.js LTS.
\n2022.06.04.1 -- Naughty Nickel bugfix
\n\n
\n- Fix the URL used in the "Edit this page" for Read the Docs builds.
\n2022.06.04 -- Naughty Nickel
\n\n
\n- \u2728 Advertise Sphinx 5 compatibility.
\n- \u2728 Change to
\nbasic-ng
as the base theme (from {pypi}sphinx-basic-ng
).- Document site-wide announcement banners.
\n- Drop the pin on pygments.
\n- Improve edit button, using
\nbasic-ng
'sedit-this-page
component.- Tweak headings to better match what users expect.
\n- Tweak how Sphinx's default HTML is rendered, using docutils post-transforms (this replaces parsing+modifying it with BeautifulSoup).
\n- When built with docutils 0.18, footnotes are rendered differently and stylised differently in Furo.
\n2022.04.07 -- Magical Mauve
\n\n
\n\n- \u2728 Make sphinx-copybutton look better.
\n- Add margin to indentations in line blocks.
\n- Add styling for non-arabic list styles
\n- Add support for
\nhtml_baseurl
.
... (truncated)
\n08e6b38
Prepare release: 2022.09.159de7613
Update changeloga064929
Tweak changelog content style46f4adc
Revert "Add initial theme.conf content for eventual ablog support"45b839b
Set a minimum constraint on pygmentsa4af988
[pre-commit.ci] pre-commit autoupdate (#518)a72186f
[pre-commit.ci] pre-commit autoupdate (#504)9f41ee6
Add initial theme.conf content for eventual ablog support75e0361
Make numpy-style documentation headers consistent9d280e6
[pre-commit.ci] pre-commit autoupdate (#487)Sourced from sphinx's releases.
\n\n\nv6.0.0
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.0.0b2
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\nv6.0.0b1
\nChangelog: https://www.sphinx-doc.org/en/master/changes.html
\n
Sourced from sphinx's changelog.
\n\n\nRelease 6.0.0 (released Dec 29, 2022)
\nDependencies
\n\n
\n- #10468: Drop Python 3.6 support
\n- #10470: Drop Python 3.7, Docutils 0.14, Docutils 0.15, Docutils 0.16, and\nDocutils 0.17 support. Patch by Adam Turner
\nIncompatible changes
\n\n
\n- \n
\n#7405: Removed the jQuery and underscore.js JavaScript frameworks.
\nThese frameworks are no longer be automatically injected into themes from\nSphinx 6.0. If you develop a theme or extension that uses the\n
\njQuery
,$
, or$u
global objects, you need to update your\nJavaScript to modern standards, or use the mitigation below.The first option is to use the sphinxcontrib.jquery_ extension, which has been\ndeveloped by the Sphinx team and contributors. To use this, add\n
\nsphinxcontrib.jquery
to theextensions
list inconf.py
, or call\napp.setup_extension("sphinxcontrib.jquery")
if you develop a Sphinx theme\nor extension.The second option is to manually ensure that the frameworks are present.\nTo re-add jQuery and underscore.js, you will need to copy
\njquery.js
and\nunderscore.js
fromthe Sphinx repository
_ to yourstatic
directory,\nand add the following to yourlayout.html
:.. code-block:: html+jinja
\n{%- block scripts %}\n\n\n{{ super() }}\n{%- endblock %}
\n.. _sphinxcontrib.jquery: https://github.com/sphinx-contrib/jquery/
\nPatch by Adam Turner.
\n- \n
\n#10471, #10565: Removed deprecated APIs scheduled for removal in Sphinx 6.0. See\n:ref:
\ndev-deprecated-apis
for details. Patch by Adam Turner.- \n
\n#10901: C Domain: Remove support for parsing pre-v3 style type directives and\nroles. Also remove associated configuration variables
\nc_allow_pre_v3
and\nc_warn_on_allowed_pre_v3
. Patch by Adam Turner.Features added
\n\n
... (truncated)
\n5b56a23
Bump to 6.0.0 finalf1d1e9c
Update coverage workflow for Tox 466a738c
Update coverage workflow for new configuration location041e5f8
Add test coverage for 'today_fmt' reference substitution (#10980)da25145
Remove unnecessary conditional import in sphinx.ext.napoleon
(#11043)45a0ea9
Migrate coveragepy config into pyproject.toml (#11025)3ec54f1
Create a pydata_sphinx_theme
section in usage examples (#11046)32bce8f
Copy edit the tutorial (#11049)9844162
Fix example using add_config_value
(#10937)bf4a626
RTD builder: add graphviz depedendency (#11040)Sourced from black's releases.
\n\n\n23.3.0
\nHighlights
\nThis release fixes a longstanding confusing behavior in Black's GitHub action, where the\nversion of the action did not determine the version of Black being run (issue #3382). In\naddition, there is a small bug fix around imports and a number of improvements to the\npreview style.
\nPlease try out the\npreview style\nwith
\nblack --preview
and tell us your feedback. All changes in the preview style are\nexpected to become part of Black's stable style in January 2024.Stable style
\n\n
\n- Import lines with
\n# fmt: skip
and# fmt: off
no longer have an extra blank line\nadded when they are right after another import line (#3610)Preview style
\n\n
\n- Add trailing commas to collection literals even if there's a comment after the last\nentry (#3393)
\n- \n
async def
,async for
, andasync with
statements are now formatted consistently\ncompared to their non-async version. (#3609)- \n
with
statements that contain two context managers will be consistently wrapped in\nparentheses (#3589)- Let string splitters respect East Asian Width\n(#3445)
\n- Now long string literals can be split after East Asian commas and periods (
\n\u3001
U+3001\nIDEOGRAPHIC COMMA,\u3002
U+3002 IDEOGRAPHIC FULL STOP, &\uff0c
U+FF0C FULLWIDTH COMMA)\nbesides before spaces (#3445)- For stubs, enforce one blank line after a nested class with a body other than just\n
\n...
(#3564)- Improve handling of multiline strings by changing line split behavior (#1879)
\nParser
\n\n
\n- Added support for formatting files with invalid type comments (#3594)
\nIntegrations
\n\n
\n- Update GitHub Action to use the version of Black equivalent to action's version if\nversion input is not specified (#3543)
\n- Fix missing Python binary path in autoload script for vim (#3508)
\nDocumentation
\n\n
\n\n- Document that only the most recent release is supported for security issues;\nvulnerabilities should be reported through Tidelift (#3612)
\n
... (truncated)
\nSourced from black's changelog.
\n\n\n23.3.0
\nHighlights
\nThis release fixes a longstanding confusing behavior in Black's GitHub action, where the\nversion of the action did not determine the version of Black being run (issue #3382). In\naddition, there is a small bug fix around imports and a number of improvements to the\npreview style.
\nPlease try out the\npreview style\nwith
\nblack --preview
and tell us your feedback. All changes in the preview style are\nexpected to become part of Black's stable style in January 2024.Stable style
\n\n
\n- Import lines with
\n# fmt: skip
and# fmt: off
no longer have an extra blank line\nadded when they are right after another import line (#3610)Preview style
\n\n
\n- Add trailing commas to collection literals even if there's a comment after the last\nentry (#3393)
\n- \n
async def
,async for
, andasync with
statements are now formatted consistently\ncompared to their non-async version. (#3609)- \n
with
statements that contain two context managers will be consistently wrapped in\nparentheses (#3589)- Let string splitters respect East Asian Width\n(#3445)
\n- Now long string literals can be split after East Asian commas and periods (
\n\u3001
U+3001\nIDEOGRAPHIC COMMA,\u3002
U+3002 IDEOGRAPHIC FULL STOP, &\uff0c
U+FF0C FULLWIDTH COMMA)\nbesides before spaces (#3445)- For stubs, enforce one blank line after a nested class with a body other than just\n
\n...
(#3564)- Improve handling of multiline strings by changing line split behavior (#1879)
\nParser
\n\n
\n- Added support for formatting files with invalid type comments (#3594)
\nIntegrations
\n\n
\n- Update GitHub Action to use the version of Black equivalent to action's version if\nversion input is not specified (#3543)
\n- Fix missing Python binary path in autoload script for vim (#3508)
\nDocumentation
\n\n
\n\n- Document that only the most recent release is supported for security issues;\nvulnerabilities should be reported through Tidelift (#3612)
\n
... (truncated)
\nbf7a162
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)Sourced from black's releases.
\n\n\n21.11b0
\nBlack
\n\n
\n- Warn about Python 2 deprecation in more cases by improving Python 2 only syntax\ndetection (#2592)
\n- Add experimental PyPy support (#2559)
\n- Add partial support for the match statement. As it's experimental, it's only enabled\nwhen
\n--target-version py310
is explicitly specified (#2586)- Add support for parenthesized with (#2586)
\n- Declare support for Python 3.10 for running Black (#2562)
\nIntegrations
\n\n
\n- Fixed vim plugin with Python 3.10 by removing deprecated distutils import (#2610)
\n- The vim plugin now parses
\nskip_magic_trailing_comma
from pyproject.toml (#2613)21.10b0
\nBlack
\n\n
\n- Document stability policy, that will apply for non-beta releases (#2529)
\n- Add new
\n--workers
parameter (#2514)- Fixed feature detection for positional-only arguments in lambdas (#2532)
\n- Bumped typed-ast version minimum to 1.4.3 for 3.10 compatiblity (#2519)
\n- Fixed a Python 3.10 compatibility issue where the loop argument was still being passed\neven though it has been removed (#2580)
\n- Deprecate Python 2 formatting support (#2523)
\nBlackd
\n\nBlack-Primer
\n\n
\n- Add primer support for --projects (#2555)
\n- Print primer summary after individual failures (#2570)
\nIntegrations
\n\n
Sourced from black's changelog.
\n\n\n21.11b0
\nBlack
\n\n
\n- Warn about Python 2 deprecation in more cases by improving Python 2 only syntax\ndetection (#2592)
\n- Add experimental PyPy support (#2559)
\n- Add partial support for the match statement. As it's experimental, it's only enabled\nwhen
\n--target-version py310
is explicitly specified (#2586)- Add support for parenthesized with (#2586)
\n- Declare support for Python 3.10 for running Black (#2562)
\nIntegrations
\n\n
\n- Fixed vim plugin with Python 3.10 by removing deprecated distutils import (#2610)
\n- The vim plugin now parses
\nskip_magic_trailing_comma
from pyproject.toml (#2613)21.10b0
\nBlack
\n\n
\n- Document stability policy, that will apply for non-beta releases (#2529)
\n- Add new
\n--workers
parameter (#2514)- Fixed feature detection for positional-only arguments in lambdas (#2532)
\n- Bumped typed-ast version minimum to 1.4.3 for 3.10 compatibility (#2519)
\n- Fixed a Python 3.10 compatibility issue where the loop argument was still being passed\neven though it has been removed (#2580)
\n- Deprecate Python 2 formatting support (#2523)
\nBlackd
\n\nBlack-Primer
\n\n
\n- Add primer support for --projects (#2555)
\n- Print primer summary after individual failures (#2570)
\nIntegrations
\n\n
Sourced from janus's releases.
\n\n\njanus 1.0.0 release
\n\n
\n- Dropped Python 3.6 support
\n- Janus is marked as stable, no API changes was made for years
\n
Sourced from janus's changelog.
\n\n\n1.0.0 (2021-12-17)
\n\n
\n- Drop Python 3.6 support
\n0.7.0 (2021-11-24)
\n\n
\n- Add SyncQueue and AsyncQueue Protocols to provide type hints for sync and async queues #374
\n0.6.2 (2021-10-24)
\n\n
\n- Fix Python 3.10 compatibility #358
\n0.6.1 (2020-10-26)
\n\n
\n- \n
\nRaise RuntimeError on queue.join() after queue closing. #295
\n- \n
\nReplace
\ntimeout
type fromOptional[int]
toOptional[float]
#2670.6.0 (2020-10-10)
\n\n
\n- \n
\nDrop Python 3.5, the minimal supported version is Python 3.6
\n- \n
\nSupport Python 3.9
\n- \n
\nRefomat with
\nblack
0.5.0 (2020-04-23)
\n\n
\n- Remove explicit loop arguments and forbid creating queues outside event loops #246
\n0.4.0 (2018-07-28)
\n\n
\n- \n
\nAdd
\npy.typed
macro #89- \n
\nDrop python 3.4 support and fix minimal version python3.5.3 #88
\n- \n
\nAdd property with that indicates if queue is closed #86
\n0.3.2 (2018-07-06)
\n\n
\n\n- Fixed python 3.7 support #97
\n
... (truncated)
\n0783f9b
Fix coverage upload41c49ba
Make deployment only if checks are greenec94b35
Fix CI again2303208
Fix CIdff5078
Bump to 1.0.03421545
Bump mypy from 0.910 to 0.920 (#384)56b2d1d
Bump black from 21.11b1 to 21.12b0 (#383)883e82b
Update README.rst2e30d8a
Bump coverage from 6.1.2 to 6.2 (#382)7b72d85
Bump to 0.7Sourced from black's changelog.
\n\n\n20.8b1
\nPackaging
\n\n
\n- explicitly depend on Click 7.1.2 or newer as
\nBlack
no longer works with versions\nolder than 7.020.8b0
\nBlack
\n\n
\n\n- \n
\nre-implemented support for explicit trailing commas: now it works consistently within\nany bracket pair, including nested structures (#1288 and duplicates)
\n- \n
\n\n
Black
now reindents docstrings when reindenting code around it (#1053)- \n
\n\n
Black
now shows colored diffs (#1266)- \n
\n\n
Black
is now packaged using 'py3' tagged wheels (#1388)- \n
\n\n
Black
now supports Python 3.8 code, e.g. star expressions in return statements\n(#1121)- \n
\n\n
Black
no longer normalizes capital R-string prefixes as those have a\ncommunity-accepted meaning (#1244)- \n
\n\n
Black
now uses exit code 2 when specified configuration file doesn't exit (#1361)- \n
\n\n
Black
now works on AWS Lambda (#1141)- \n
\nadded
\n--force-exclude
argument (#1032)- \n
\nremoved deprecated
\n--py36
option (#1236)- \n
\nfixed
\n--diff
output when EOF is encountered (#526)- \n
\nfixed
\n# fmt: off
handling around decorators (#560)- \n
\nfixed unstable formatting with some
\n# type: ignore
comments (#1113)- \n
\nfixed invalid removal on organizing brackets followed by indexing (#1575)
\n- \n
\nintroduced
\nblack-primer
, a CI tool that allows us to run regression tests against\nexisting open source users of Black (#1402)- \n
\nintroduced property-based fuzzing to our test suite based on Hypothesis and\nHypothersmith (#1566)
\n- \n
\nimplemented experimental and disabled by default long string rewrapping (#1132),\nhidden under a
\n--experimental-string-processing
flag while it's being worked on;
Sourced from black's releases.
\n\n\n23.1.0
\nHighlights
\nThis is the first release of 2023, and following our stability policy, it comes with a number of improvements to our stable style, notably improvements to empty line handling and the removal of redundant parentheses in several contexts.
\nThere are also many changes to the preview style; try out
\nblack --preview
and give us feedback to help us set the stable style for next year.In addition to style changes, Black now automatically infers the supported Python versions from your
\npyproject.toml
file, removing the need to set Black's target versions separately.Stable style
\n\n\n
\n- Introduce the 2023 stable style, which incorporates most aspects of last year's preview style (#3418). Specific changes:\n
\n\n
\n- Enforce empty lines before classes and functions with sticky leading comments (#3302) (22.12.0)
\n- 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) (22.12.0)
\n- Correctly handle trailing commas that are inside a line's leading non-nested parens (#3370) (22.12.0)
\n- \n
--skip-string-normalization
/-S
now prevents docstring prefixes from being normalized as expected (#3168) (since 22.8.0)- When using
\n--skip-magic-trailing-comma
or-C
, trailing commas are stripped from subscript expressions with more than 1 element (#3209) (22.8.0)- Fix a string merging/split issue when a comment is present in the middle of implicitly concatenated strings on its own line (#3227) (22.8.0)
\n- Docstring quotes are no longer moved if it would violate the line length limit (#3044, #3430) (22.6.0)
\n- Parentheses around return annotations are now managed (#2990) (22.6.0)
\n- Remove unnecessary parentheses around awaited objects (#2991) (22.6.0)
\n- Remove unnecessary parentheses in
\nwith
statements (#2926) (22.6.0)- Remove trailing newlines after code block open (#3035) (22.6.0)
\n- Code cell separators
\n#%%
are now standardised to# %%
(#2919) (22.3.0)- Remove unnecessary parentheses from
\nexcept
statements (#2939) (22.3.0)- Remove unnecessary parentheses from tuple unpacking in
\nfor
loops (#2945) (22.3.0)- Avoid magic-trailing-comma in single-element subscripts (#2942) (22.3.0)
\n- Fix a crash when a colon line is marked between
\n# fmt: off
and# fmt: on
(#3439)Preview style
\n\n\n
\n\n- Format hex codes in unicode escape sequences in string literals (#2916)
\n- Add parentheses around
\nif
-else
expressions (#2278)- Improve performance on large expressions that contain many strings (#3467)
\n- Fix a crash in preview style with assert + parenthesized string (#3415)
\n- Fix crashes in preview style with walrus operators used in function return annotations and except clauses (#3423)
\n- Fix a crash in preview advanced string processing where mixed implicitly concatenated regular and f-strings start with an empty span (#3463)
\n- Fix a crash in preview advanced string processing where a standalone comment is placed before a dict's value (#3469)
\n- Fix an issue where extra empty lines are added when a decorator has
\n# fmt: skip
applied or there is a standalone comment between decorators (#3470)- Do not put the closing quotes in a docstring on a separate line, even if the line is too long (#3430)
\n- Long values in dict literals are now wrapped in parentheses; correspondingly unnecessary parentheses around short values in dict literals are now removed; long string lambda values are now wrapped in parentheses (#3440)
\n- Fix two crashes in preview style involving edge cases with docstrings (#3451)
\n- Exclude string type annotations from improved string processing; fix crash when the return type annotation is stringified and spans across multiple lines (#3462)
\n- Wrap multiple context managers in parentheses when targeting Python 3.9+ (#3489)
\n- Fix several crashes in preview style with walrus operators used in
\nwith
statements or tuples (#3473)- Fix an invalid quote escaping bug in f-string expressions where it produced invalid code. Implicitly concatenated f-strings with different quotes can now be merged or quote-normalized by changing the quotes used in expressions. (#3509)
\n
... (truncated)
\nSourced from black's changelog.
\n\n\n23.1.0
\nHighlights
\nThis is the first release of 2023, and following our\nstability policy,\nit comes with a number of improvements to our stable style, including improvements to\nempty line handling, removal of redundant parentheses in several contexts, and output\nthat highlights implicitly concatenated strings better.
\nThere are also many changes to the preview style; try out
\nblack --preview
and give us\nfeedback to help us set the stable style for next year.In addition to style changes, Black now automatically infers the supported Python\nversions from your
\npyproject.toml
file, removing the need to set Black's target\nversions separately.Stable style
\n\n\n
\n\n- Introduce the 2023 stable style, which incorporates most aspects of last year's\npreview style (#3418). Specific changes:\n
\n\n
\n- Enforce empty lines before classes and functions with sticky leading comments\n(#3302) (22.12.0)
\n- Reformat empty and whitespace-only files as either an empty file (if no newline is\npresent) or as a single newline character (if a newline is present) (#3348)\n(22.12.0)
\n- Implicitly concatenated strings used as function args are now wrapped inside\nparentheses (#3307) (22.12.0)
\n- Correctly handle trailing commas that are inside a line's leading non-nested parens\n(#3370) (22.12.0)
\n- \n
--skip-string-normalization
/-S
now prevents docstring prefixes from being\nnormalized as expected (#3168) (since 22.8.0)- When using
\n--skip-magic-trailing-comma
or-C
, trailing commas are stripped from\nsubscript expressions with more than 1 element (#3209) (22.8.0)- Implicitly concatenated strings inside a list, set, or tuple are now wrapped inside\nparentheses (#3162) (22.8.0)
\n- Fix a string merging/split issue when a comment is present in the middle of\nimplicitly concatenated strings on its own line (#3227) (22.8.0)
\n- Docstring quotes are no longer moved if it would violate the line length limit\n(#3044, #3430) (22.6.0)
\n- Parentheses around return annotations are now managed (#2990) (22.6.0)
\n- Remove unnecessary parentheses around awaited objects (#2991) (22.6.0)
\n- Remove unnecessary parentheses in
\nwith
statements (#2926) (22.6.0)- Remove trailing newlines after code block open (#3035) (22.6.0)
\n- Code cell separators
\n#%%
are now standardised to# %%
(#2919) (22.3.0)- Remove unnecessary parentheses from
\nexcept
statements (#2939) (22.3.0)- Remove unnecessary parentheses from tuple unpacking in
\nfor
loops (#2945) (22.3.0)- Avoid magic-trailing-comma in single-element subscripts (#2942) (22.3.0)
\n
... (truncated)
\nb0d1fba
Prepare release 23.1.0 (#3536)69ca0a4
Infer target version based on project metadata (#3219)c4bd2e3
Draft for Black 2023 stable style (#3418)226cbf0
Fix unsafe cast in linegen.py w/ await yield handling (#3533)f4ebc68
Upgrade isort (#3534)6407ebb
Remove Python version in the_basics.md (#3528)196b1f3
Fix black --help
output for --python-cell-magics
option to be reproducibl...d950f15
Update document now that paren wrapping CMs on Python 3.9+ is implemented (#3...a36878e
Fix an invalid quote escaping bug in f-string expressions (#3509)eabff67
Format hex code in unicode escape sequences in string literals (#2916)Sourced from black's releases.
\n\n\n23.7.0
\nHighlights
\n\n
\n- Runtime support for Python 3.7 has been removed. Formatting 3.7 code will still be\nsupported until further notice (#3765)
\nStable style
\n\n
\n- Fix a bug where an illegal trailing comma was added to return type annotations using\nPEP 604 unions (#3735)
\n- Fix several bugs and crashes where comments in stub files were removed or mishandled\nunder some circumstances (#3745)
\n- Fix a crash with multi-line magic comments like
\ntype: ignore
within parentheses\n(#3740)- Fix error in AST validation when Black removes trailing whitespace in a type comment\n(#3773)
\nPreview style
\n\n
\n- Implicitly concatenated strings used as function args are no longer wrapped inside\nparentheses (#3640)
\n- Remove blank lines between a class definition and its docstring (#3692)
\nConfiguration
\n\n
\n- The
\n--workers
argument to Black can now be specified via theBLACK_NUM_WORKERS
\nenvironment variable (#3743)- \n
.pytest_cache
,.ruff_cache
and.vscode
are now excluded by default (#3691)- Fix Black not honouring
\npyproject.toml
settings when running--stdin-filename
\nand thepyproject.toml
found isn't in the current working directory (#3719)- Black will now error if
\nexclude
andextend-exclude
have invalid data types in\npyproject.toml
, instead of silently doing the wrong thing (#3764)Packaging
\n\n
\n- Upgrade mypyc from 0.991 to 1.3 (#3697)
\n- Remove patching of Click that mitigated errors on Python 3.6 with
\nLANG=C
(#3768)Parser
\n\n
\n- Add support for the new PEP 695 syntax in Python 3.12 (#3703)
\nPerformance
\n\n
\n- Speed up Black significantly when the cache is full (#3751)
\n- Avoid importing
\nIPython
in a case where we wouldn't need it (#3748)Output
\n\n
... (truncated)
\nSourced from black's changelog.
\n\n\n23.7.0
\nHighlights
\n\n
\n- Runtime support for Python 3.7 has been removed. Formatting 3.7 code will still be\nsupported until further notice (#3765)
\nStable style
\n\n
\n- Fix a bug where an illegal trailing comma was added to return type annotations using\nPEP 604 unions (#3735)
\n- Fix several bugs and crashes where comments in stub files were removed or mishandled\nunder some circumstances (#3745)
\n- Fix a crash with multi-line magic comments like
\ntype: ignore
within parentheses\n(#3740)- Fix error in AST validation when Black removes trailing whitespace in a type comment\n(#3773)
\nPreview style
\n\n
\n- Implicitly concatenated strings used as function args are no longer wrapped inside\nparentheses (#3640)
\n- Remove blank lines between a class definition and its docstring (#3692)
\nConfiguration
\n\n
\n- The
\n--workers
argument to Black can now be specified via theBLACK_NUM_WORKERS
\nenvironment variable (#3743)- \n
.pytest_cache
,.ruff_cache
and.vscode
are now excluded by default (#3691)- Fix Black not honouring
\npyproject.toml
settings when running--stdin-filename
\nand thepyproject.toml
found isn't in the current working directory (#3719)- Black will now error if
\nexclude
andextend-exclude
have invalid data types in\npyproject.toml
, instead of silently doing the wrong thing (#3764)Packaging
\n\n
\n- Upgrade mypyc from 0.991 to 1.3 (#3697)
\n- Remove patching of Click that mitigated errors on Python 3.6 with
\nLANG=C
(#3768)Parser
\n\n
\n- Add support for the new PEP 695 syntax in Python 3.12 (#3703)
\nPerformance
\n\n
\n- Speed up Black significantly when the cache is full (#3751)
\n- Avoid importing
\nIPython
in a case where we wouldn't need it (#3748)Output
\n\n
... (truncated)
\n193ee76
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)