psf/black repo issues, pull requests, and releases [back to top]
Return bad request for undecodable blackd input #5519 [muneikh]
Description blackd returns HTTP 500 when a request contains invalid bytes for its charset or specifies an unknown...
Document the summary and output-file inputs of the GitHub Action #5570 [qodelicious] ci: skip news
Description The GitHub Action has summary and output-file inputs in action.yml, but the GitHub Actions docs page...
Document stdin filename file-type inference #5527 [Mohamedajab] ci: skip news
Description Explain that Black uses the filename supplied with standard input to choose the right formatting rules....
Include version info in the documented INTERNAL ERROR output #5556 [ump45nose] ci: skip news
Description The --check example in docs/usage_and_configuration/the_basics.md prints the internal-error line...
Describe the bug PEP 798 unpacking in comprehensions is supported for [*x for x in y], (*x for x in y), {*x for x in...
Parse unpacking in a generator passed as the only call argument (PEP 798) #5568 [sebxt]
Description PEP 798 support covers [*x for x in y], (*x for x in y) and the set and dict forms, but sum(*x for x in...
Expand guidance for adopting Black in existing projects #5472 [Mohamedajab] S: needs discussion
Description Explain how to introduce Black to a project that already has code and active branches. Cover choosing a...
Echo force-excluded stdin input unchanged #5530 [jiteshgulati]
Description Fixes #5529. When a file passed through stdin matches --force-exclude, Black prints the input back as it...
Force-excluded stdin input is not echoed back unchanged #5529 [jiteshgulati]
Describe the bug When a file passed through stdin matches --force-exclude, Black prints the input back unchanged...
Don't strip parens that protect merged strings in function argument defaults #5558 [VedantBhayani]
Description Fixes #3497. With the string processing feature (--enable-unstable-feature string_processing), an...
string_processing: Multiline string concatenated to be over line length in function argument default value #3497 [felix-hilden] T: bug F: strings C: preview style
Describe the bug From #2188: When processing a multiline string in a function argument default value with --preview...
Do not translate the newline twice when writing to stdout #5559 [PerryLink]
What When the input uses CRLF line endings and does not end with a newline, --stdin output can end in \r\r\n instead...
black --check exits 0 and prints All done when a multi file run is interrupted #5541 [jiteshgulati]
Describe the bug if black is formatting more than one file and the run gets interrupted with ctrl+c or SIGTERM it...
Don't report success when a multi-file run is interrupted #5542 [jiteshgulati]
Description Fixes #5541 when black formats more than one file and you stop it with ctrl+c or SIGTERM it prints...
blackd: keep the skipped first line inside the returned diff #5573 [ump45nose]
Description blackd computes the response patch in format_code(), but the first line that was skipped for...
Apply recursive exclusions to symlink destinations #5574 [polootyyyyy]
Recursive discovery currently checks exclusions against a symlink's visible path, so a link can cause excluded...
Report a clear error for non-table Black configuration #5548 [Jo2234] ci: skip news
Description When tool.black is an array or scalar in pyproject.toml, Black crashes at config.items() with an...
Preserve compatible-release bounds when inferring target versions #5469 [maple-pwn]
Description Fixes #5468. With requires-python = "~=3.11.0", Black currently infers py311 through py315. Removing the...
Put each string literal of an implicit concatenation on its own line in preview style #5554 [shashb27]
Description Implements the change welcomed in #1540 - the rule as proposed by YodaEmbedding in the thread: in...
Fix BlackDClient default URL to match blackd's default port #5576 [ump45nose]
Description blackd's --bind-port option defaults to 45484 (src/blackd/__init__.py:80), but BlackDClient.__init__...
Treat ruff directives as pragma comments (#5260) #5534 [rajat397]
Fixes #5260. What A trailing # ruff: ignore[...] comment no longer prevents line splitting/merging. A 65-char name...
Fix ~=X.Y.Z requires-python inferring later Python versions #5578 [beniamin-levin]
Description Fixes #5468. strip_specifier_set turned ~=3.11.0 into ~=3.11. That drops the upper bound: ~=3.11.0 means...
cache: reject unsafe globals when loading pickles #5579 [Faustus-Faber]
What Cache.read and Grammar.load/loads unpickle files under the cache directory. A project can point cache-dir into...
docs: the major version example for `--required-version` no longer matches #5571 [ump45nose]
Description The --required-version section documents "you can also pass just the major version" with: $ black...
Keep walrus parentheses in set literals for Python 3.9 and older targets #5502 [jiteshgulati] S: needs discussion
Description When the target versions include Python 3.9 or older, Black removes the parentheses around a walrus that...
Document the Windows cap of 60 parallel workers #5575 [ump45nose] ci: skip news
Description The -W / --workers section in docs/usage_and_configuration/the_basics.md documents the default as "the...
docs: the documented cache file name no longer matches Mode.get_cache_key #5572 [ump45nose] ci: skip news
Description The "Ignoring unmodified files" section still describes the cache file name...
Fix string_processing crash on strings in collections at small line lengths #5521 [awss1i]
Description Fixes #3424. With the unstable string_processing feature, Black fails on this list with "produced...
Fix preview generator-parens crash with --skip-magic-trailing-comma #5564 [ag3ntsc4rn]
Description With --preview --skip-magic-trailing-comma, removing redundant parentheses around a generator argument...
Fix crash on `# fmt: skip` after a multi-line call in brackets #5522 [LuisFigueroaG]
Description # fmt: skip after the closing bracket of a multi-line call or subscript crashes Black when that element...
Fix preview unpacking-parens crash on multiline targets #5563 [ag3ntsc4rn]
Description With --preview, remove_redundant_unpacking_parentheses (#5416) produces unstable formatting when a...
Fix long keyword argument values exceeding line length #5335 [dajinzhu]
Summary Fix formatting of long keyword argument values so the value can be parenthesized and split when the complete...
Fix preview splitting of commented method chains #5518 [TusharND12]
Summary Add a preview-gated split for method chains separated by a standalone comment. Keep stable formatting...
Ignore project-configured cache directories #5547 [dannyward630]
Description Closes #5546. Black currently accepts cache-dir values from project configuration, which comes from the...
Fix crash on `# fmt: skip` after an opening bracket followed by more code #5538 [novain-shibu]
Description Since 26.10.0, a # fmt: skip on an opening bracket crashes Black when more code follows the closing...
Normalize hex codes in unicode escape sequences in f-strings (#4523) #5526 [Prateek99-s]
Closes #4523 Summary When PR #4401 prevented quotes from normalizing inside f-strings containing backslashes (to...
`hex_codes_in_unicode_sequences`: restrictions around f-strings are too strict #4523 [MeGaGiGaGon] T: style F: strings
I had this idea while reading #4522. This probably shouldn't block hex_codes_in_unicode_sequences from being...
fix(lines): do not add blank lines before # endregion comments #5545 [saadkhantareen] S: needs discussion
Summary Black inserted two blank lines before a standalone # endregion comment that followed a top-level class or...
Avoid OSError: AF_UNIX path too long for multiprocessing manager when running --diff (#2105) #5513 [Prateek99-s]
Description Fixes #2105. Problem When black --diff (or --color) is run on multiple files in environments with a long...
Confusing error - OSError: AF_UNIX path too long - when default temporary directory is too long #2105 [adamtheturtle] T: bug C: configuration
Describe the bug A clear and concise description of what the bug is. When black --diff is run with a long temporary...
Multi-line raw strings do not get merged properly into a single string #3664 [st-pasha] T: bug
Describe the bug Multi-line short raw strings do not get merged properly into a single string. To Reproduce For...
Merge short raw strings in unstable string processing #5515 [sergioperezcheco]
Description Fixes #3664 in the unstable string_processing feature. Adjacent short raw literals with matching...
Lambda becomes a tuple when its default has a standalone comment #5536 [jiteshgulati]
Describe the bug black can turn a lambda into a tuple. if a lambda default has a comment on its own line and the...
Fix lambda turned into a tuple by a comment in its default #5533 [jiteshgulati]
Description Black can turn a lambda into a tuple when a lambda default has a comment on its own line and the lambda...
Remove redundant parentheses around operands in comparison expressions (#2581) #5539 [Prateek99-s]
Summary Closes #2581. Under --preview, Black now removes redundant parentheses around operands in comparison...
Fix #3679: Remove redundant parentheses in getitem/indexing operators #5496 [Prateek99-s]
Fixes #3679 Description This PR introduces the remove_redundant_subscript_parentheses preview style to automatically...
(🎁) Remove redundant parenthesis in `getitem`/indexing operator #3679 [KotlinIsland] T: enhancement
Given: [][(1)] [][(1,)] [][(1,),] [][(1, 2)] [][(1, 2),] 😢 Current behavior No modifications 😲 Desired...
Add preview support for formatting Cython files #5569 [0x000NULL] S: needs discussion
Description Part of #359. This adds a first version of Cython support, following the approach Jelle suggested in the...
Format expressions inside f-strings (#567) #5565 [Prateek99-s] S: needs discussion
Description Closes #567. Formats arbitrary Python expressions inside f-string replacement fields ({ ... }), gated...
blackd: the [d] extra installs aiohttp, not aiohttp_cors #5581 [ump45nose] ci: skip news
Description blackd's import guard tells users to install black[d] "to obtain aiohttp_cors", but that extra never...
Avoid adding redundant parentheses around unsplittable strings (#3466) #5544 [Prateek99-s]
Description Fixes #3466. Background When preview string processing is enabled, StringParenWrapper determines whether...
Fix the grammar of the --quiet help text #5582 [ump45nose] ci: skip news
Description The --quiet help text has a missing verb: Stop emitting all non-critical output. Error messages will...
Remove parentheses around simple top-level expressions #4231 [JelleZijlstra] T: enhancement F: parentheses
% cat parens.py (x) (1) (yield 42) ([]) ({}) (a + b) % black --unstable --diff parens.py All done! ✨ 🍰 ✨ 1 file...
Remove parentheses around simple top-level expressions (#4231) #5516 [Prateek99-s]
Description Closes #4231. Currently, redundant parentheses around simple top-level expressions (simple_stmt) are...
Respect --skip-source-first-line when formatting stdin #5580 [Enesuygurs]
Description --skip-source-first-line (-x) is honoured when formatting files by path, but it is silently ignored when...
Split long strings after overloaded operators in string_processing #5562 [ZXLyyds100]
Description Fixes #2334. Extend the existing unstable string_processing feature to split long string operands after...
psf/requests repo issues, pull requests, and releases [back to top]
Add json parameter support to PUT and PATCH methods #7052 [tboy1337]
Summary This PR enhances the put() and patch() methods to accept a json parameter, bringing them to feature parity...
Add json parameter support to PUT and PATCH methods #7049 [tboy1337]
Summary This PR enhances the put() and patch() functions to accept a json parameter, bringing them to feature parity...
2025-10-21T10:12:14.3082809Z ERROR: Exception in ASGI application 2025-10-21T10:12:14.3083028Z Traceback (most...
feat: Add comprehensive type hints and improve code quality across codebase #7054 [tboy1337]
Summary This PR implements comprehensive type annotations across the entire requests library and introduces strict...
Incorrect type annotation for iter_lines #7630 [grantisu]
The type annotation for Response.iter_lines misses that chunk_size can be None, causing valid code to fail type...
Docstring examples in `from_key_val_list` show the pre-3.12 OrderedDict repr #7627 [pactender]
src/requests/utils.py's from_key_val_list docstring shows: >>> from_key_val_list([('key',...
Non-string form field names raise AttributeError when files are attached #7634 [jbrown9513]
While testing an experimental version of Perch, we found the following and figured it was worth a report. A...
python/peps repo issues, pull requests, and releases [back to top]
PEP 827: Major changes now that we do not need to evaluate directly #5170 [msullivan]
The most visible part of the change is that we no longer need to write typing.Iter[...] in every comprehension! Get...
PEP 790: Add planned bugfix releases for Python 3.15 #5176 [hugovk]
On the first Tuesday of even months. For the first year, this coincides with the remaining 3.14 bugfix releases.
PEP 1, 12 and template: update style #5082 [hugovk]
We usually don't review PEPs to the same level as the main docs following our style guide, as each PEP is more of a...
Mark PEP 836 as withdrawn #5178 [savannahostrowski]
Context for why we are opting to withdraw is in...
PEP 817: Wheel Variants: switch to Informational, major update #5149 [rgommers]
This is a large update to the first PEP on Wheel Variants, turning it from an all-in-one Standards Track PEP to an...
PEP 817, PEP 850: link the new discussion threads #5182 [mgorny]
Change is either: To a Draft PEP To an Accepted or Final PEP, with Steering Council approval To fix an editorial...
PEP 774: Mark as withdrawn #5183 [savannahostrowski]
In light of the withdrawal of the withdrawal of PEP 836 yesterday, I’m also going to be withdrawing this (deferred) PEP.
PEP 823: Expand 'How to Teach This' to a mini-tutorial #5177 [gvanrossum]
Don't merge until @cdce8p (Marc Müller, the PEP author) has approved this.
PEP 824: Expand 'How to Teach This' to a mini-tutorial #5179 [gvanrossum]
Don't merge until @cdce8p (Marc Mueller, the PEP author) approves!
PEP 827: Make UpdateClass take the class to update as an argument #5184 [msullivan]
Change is either: To a Draft PEP To an Accepted or Final PEP, with Steering Council approval To fix an editorial...
PEP 718: Address Discourse feedback and review comments #5180 [PabloRuizCuevas]
This updates PEP 718 to answer the open points from the Discourse thread (mainly @carljm's review) and @gvanrossum's...
PEP 849: Minor edits and fixes #5185 [JelleZijlstra]
cc @ImogenBits
PEP 718: Add today's date to Post History and add a Change History section #5186 [gvanrossum]
Clarify PEP number assignment workflow #5187 [SrushtiPampat]
Summary Clarify the description of PEP editor responsibilities regarding PEP number allocation. Remove outdated...
PEP 835: address Jelle and Carl's feedback #5181 [till-varoquaux]
Change is either: To a Draft PEP To an Accepted or Final PEP, with Steering Council approval To fix an editorial...
PEP 718: Add a mini-tutorial as How to Teach This; rewrite Abstract, some other clarifications #5188 [gvanrossum]
Don't merge until at least one of @PabloRuizCuevas and @Gobot1234 approves.
PEP 719, 745, 790: 3.13.17, 3.14.9, 3.15.1 released on 2026-10-21 #5189 [hugovk]
https://discuss.python.org/t/python-3-15-1-3-14-9-and-3-13-17-are-out/109595 @Yhg1s I've added 3.13.17 as the first...
cobaltt7: Thanks!