| route-pattern | /:user_id/:repository/pull/:id/files(.:format) |
| route-controller | pull_requests |
| route-action | files |
| fetch-nonce | v2:3a895c8d-18aa-5d0a-b8d7-044dbf7a0698 |
| current-catalog-service-hash | ae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b |
| request-id | B0E4:21BBA6:EB26C:1498C8:696A5CD1 |
| html-safe-nonce | 4472d31331a6850e5ff89750ba5af4460e69a69be6127e07cd1e6f8e6ad852b2 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCMEU0OjIxQkJBNjpFQjI2QzoxNDk4Qzg6Njk2QTVDRDEiLCJ2aXNpdG9yX2lkIjoiNTA4MDg4MjIxNDg0NDY1Mjc1MyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 181242e72e53b241586a4d682f30b0ed67cbff6288637b89e389a007bbad63b2 |
| hovercard-subject-tag | pull_request:835373142 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | ///pull_requests/show/files |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/python/cpython/pull/31021/files |
| twitter:image | https://avatars.githubusercontent.com/u/4431336?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/4431336?s=400&v=4 |
| og:image:alt | These are the parts of the old PR (#30398) relevant to typing.py.
Note that we haven't yet merged the grammar PR (#31018), so for the time being all the tests just use Unpack. We can add tests ... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | 3f871c8e07f0ae1886fa8dac284166d28b09ad5bada6476fc10b674e489788ef |
| turbo-cache-control | no-preview |
| diff-view | unified |
| go-import | github.com/python/cpython git https://github.com/python/cpython.git |
| octolytics-dimension-user_id | 1525981 |
| octolytics-dimension-user_login | python |
| octolytics-dimension-repository_id | 81598961 |
| octolytics-dimension-repository_nwo | python/cpython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 81598961 |
| octolytics-dimension-repository_network_root_nwo | python/cpython |
| turbo-body-classes | logged-out env-production page-responsive full-width |
| disable-turbo | true |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 63c426b30d262aba269ef14c40e3c817b384cd61 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
| Skip to content | https://github.com/python/cpython/pull/31021/files#start-of-content |
|
| https://github.com/ |
|
Sign in
| https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F31021%2Ffiles |
| GitHub CopilotWrite better code with AI | https://github.com/features/copilot |
| GitHub SparkBuild and deploy intelligent apps | https://github.com/features/spark |
| GitHub ModelsManage and compare prompts | https://github.com/features/models |
| MCP RegistryNewIntegrate external tools | https://github.com/mcp |
| ActionsAutomate any workflow | https://github.com/features/actions |
| CodespacesInstant dev environments | https://github.com/features/codespaces |
| IssuesPlan and track work | https://github.com/features/issues |
| Code ReviewManage code changes | https://github.com/features/code-review |
| GitHub Advanced SecurityFind and fix vulnerabilities | https://github.com/security/advanced-security |
| Code securitySecure your code as you build | https://github.com/security/advanced-security/code-security |
| Secret protectionStop leaks before they start | https://github.com/security/advanced-security/secret-protection |
| Why GitHub | https://github.com/why-github |
| Documentation | https://docs.github.com |
| Blog | https://github.blog |
| Changelog | https://github.blog/changelog |
| Marketplace | https://github.com/marketplace |
| View all features | https://github.com/features |
| Enterprises | https://github.com/enterprise |
| Small and medium teams | https://github.com/team |
| Startups | https://github.com/enterprise/startups |
| Nonprofits | https://github.com/solutions/industry/nonprofits |
| App Modernization | https://github.com/solutions/use-case/app-modernization |
| DevSecOps | https://github.com/solutions/use-case/devsecops |
| DevOps | https://github.com/solutions/use-case/devops |
| CI/CD | https://github.com/solutions/use-case/ci-cd |
| View all use cases | https://github.com/solutions/use-case |
| Healthcare | https://github.com/solutions/industry/healthcare |
| Financial services | https://github.com/solutions/industry/financial-services |
| Manufacturing | https://github.com/solutions/industry/manufacturing |
| Government | https://github.com/solutions/industry/government |
| View all industries | https://github.com/solutions/industry |
| View all solutions | https://github.com/solutions |
| AI | https://github.com/resources/articles?topic=ai |
| Software Development | https://github.com/resources/articles?topic=software-development |
| DevOps | https://github.com/resources/articles?topic=devops |
| Security | https://github.com/resources/articles?topic=security |
| View all topics | https://github.com/resources/articles |
| Customer stories | https://github.com/customer-stories |
| Events & webinars | https://github.com/resources/events |
| Ebooks & reports | https://github.com/resources/whitepapers |
| Business insights | https://github.com/solutions/executive-insights |
| GitHub Skills | https://skills.github.com |
| Documentation | https://docs.github.com |
| Customer support | https://support.github.com |
| Community forum | https://github.com/orgs/community/discussions |
| Trust center | https://github.com/trust-center |
| Partners | https://github.com/partners |
| GitHub SponsorsFund open source developers | https://github.com/sponsors |
| Security Lab | https://securitylab.github.com |
| Maintainer Community | https://maintainers.github.com |
| Accelerator | https://github.com/accelerator |
| Archive Program | https://archiveprogram.github.com |
| Topics | https://github.com/topics |
| Trending | https://github.com/trending |
| Collections | https://github.com/collections |
| Enterprise platformAI-powered developer platform | https://github.com/enterprise |
| GitHub Advanced SecurityEnterprise-grade security features | https://github.com/security/advanced-security |
| Copilot for BusinessEnterprise-grade AI features | https://github.com/features/copilot/copilot-business |
| Premium SupportEnterprise-grade 24/7 support | https://github.com/premium-support |
| Pricing | https://github.com/pricing |
| Search syntax tips | https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax |
| documentation | https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax |
|
Sign in
| https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F31021%2Ffiles |
|
Sign up
| https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=python%2Fcpython |
| Reload | https://github.com/python/cpython/pull/31021/files |
| Reload | https://github.com/python/cpython/pull/31021/files |
| Reload | https://github.com/python/cpython/pull/31021/files |
|
python
| https://github.com/python |
| cpython | https://github.com/python/cpython |
| Please reload this page | https://github.com/python/cpython/pull/31021/files |
|
Notifications
| https://github.com/login?return_to=%2Fpython%2Fcpython |
|
Fork
33.9k
| https://github.com/login?return_to=%2Fpython%2Fcpython |
|
Star
71.1k
| https://github.com/login?return_to=%2Fpython%2Fcpython |
|
Code
| https://github.com/python/cpython |
|
Issues
5k+
| https://github.com/python/cpython/issues |
|
Pull requests
2.1k
| https://github.com/python/cpython/pulls |
|
Actions
| https://github.com/python/cpython/actions |
|
Projects
31
| https://github.com/python/cpython/projects |
|
Security
Uh oh!
There was an error while loading. Please reload this page.
| https://github.com/python/cpython/security |
| Please reload this page | https://github.com/python/cpython/pull/31021/files |
|
Insights
| https://github.com/python/cpython/pulse |
|
Code
| https://github.com/python/cpython |
|
Issues
| https://github.com/python/cpython/issues |
|
Pull requests
| https://github.com/python/cpython/pulls |
|
Actions
| https://github.com/python/cpython/actions |
|
Projects
| https://github.com/python/cpython/projects |
|
Security
| https://github.com/python/cpython/security |
|
Insights
| https://github.com/python/cpython/pulse |
| Sign up for GitHub
| https://github.com/signup?return_to=%2Fpython%2Fcpython%2Fissues%2Fnew%2Fchoose |
| terms of service | https://docs.github.com/terms |
| privacy statement | https://docs.github.com/privacy |
| Sign in | https://github.com/login?return_to=%2Fpython%2Fcpython%2Fissues%2Fnew%2Fchoose |
| JelleZijlstra | https://github.com/JelleZijlstra |
| python:main | https://github.com/python/cpython/tree/main |
| mrahtz:pep646-typing | https://github.com/mrahtz/cpython/tree/pep646-typing |
|
Conversation
105
| https://github.com/python/cpython/pull/31021 |
|
Commits
35
| https://github.com/python/cpython/pull/31021/commits |
|
Checks
0
| https://github.com/python/cpython/pull/31021/checks |
|
Files changed
| https://github.com/python/cpython/pull/31021/files |
| Please reload this page | https://github.com/python/cpython/pull/31021/files |
|
bpo-43224: Implement PEP 646 changes to typing.py
| https://github.com/python/cpython/pull/31021/files#top |
|
Show all changes
35 commits
| https://github.com/python/cpython/pull/31021/files |
|
0a91264
PEP 646: Implement support in typing.py
mrahtz Jan 30, 2022
| https://github.com/python/cpython/pull/31021/commits/0a912642cb3b6305af904f8e44169f8bde35924b |
|
33dc1bf
Fix typo
mrahtz Jan 30, 2022
| https://github.com/python/cpython/pull/31021/commits/33dc1bfaa7b162422076cfcfaef9830481c4617a |
|
51ea1af
Remove unnecessary whitespace
mrahtz Jan 30, 2022
| https://github.com/python/cpython/pull/31021/commits/51ea1af41fee4b8014c8d10726992d2ff044ce06 |
|
fa133dd
Remove some old debug prints
mrahtz Jan 30, 2022
| https://github.com/python/cpython/pull/31021/commits/fa133dd33a931f97e7fe383196cfee93c9ac7e20 |
|
6d1126e
Re-implement Unpack using _SpecialForm
mrahtz Jan 30, 2022
| https://github.com/python/cpython/pull/31021/commits/6d1126e07979a77788bb9682120cfdc1cb40e693 |
|
51870e2
📜🤖 Added by blurb_it.
blurb-it[bot] Jan 30, 2022
| https://github.com/python/cpython/pull/31021/commits/51870e2b1f8f0a9ea915ebf57f3c30a77f06d1e2 |
|
bc12b49
Fix call to is_unpacked_typevartuple
mrahtz Feb 1, 2022
| https://github.com/python/cpython/pull/31021/commits/bc12b492a46ee259f852a6f90702f9938673481b |
|
4a647cf
Update docstring for Unpack to reflect that it isn't just for backwar…
mrahtz Feb 6, 2022
| https://github.com/python/cpython/pull/31021/commits/4a647cf59cef167761c491d5ede51a04a8eec9b2 |
|
e4e68a6
Fix _is_unpacked_typevartuple for argument of Unpack[tuple[...]]
mrahtz Feb 6, 2022
| https://github.com/python/cpython/pull/31021/commits/e4e68a670858492989661fd0d8e7f6c9814938e7 |
|
7fb4043
Add more tests for repr of variadic classes
mrahtz Feb 6, 2022
| https://github.com/python/cpython/pull/31021/commits/7fb404302efeafe833489e4f63e606c02a788e6f |
|
4b1b7f6
Add more tests to test_variadic_class_with_2_typevars_accepts_2_or_mo…
mrahtz Feb 6, 2022
| https://github.com/python/cpython/pull/31021/commits/4b1b7f61532cff27176dccaa90f8f7bb5029db7d |
|
c4351f9
test_typevar_substitution: Change to loop over test cases
mrahtz Feb 7, 2022
| https://github.com/python/cpython/pull/31021/commits/c4351f9a661079a996794dad8866c364372f084c |
|
2398387
Merge remote-tracking branch 'python/main' into pep646-typing
mrahtz Feb 7, 2022
| https://github.com/python/cpython/pull/31021/commits/2398387a7ab7d27ae7a10e3367114b218d315bbb |
|
95625d1
Fix problems after pulling from main
mrahtz Feb 8, 2022
| https://github.com/python/cpython/pull/31021/commits/95625d17d26f5af6570d8756d04637dd5b1849b0 |
|
89cbdeb
_determine_typevar_substitution: Change 'params' to 'args'
mrahtz Feb 8, 2022
| https://github.com/python/cpython/pull/31021/commits/89cbdeb866310b0eae1dcadb6be6fbd3cfd0e201 |
|
d4c487d
_determine_typevar_substitution: Add support for unpacked tuples
mrahtz Feb 8, 2022
| https://github.com/python/cpython/pull/31021/commits/d4c487dcb1606f1ccd47399bedd74f08f3cb7c4d |
|
ac4b5f9
Improve docstring for _BoundVarianceMixin
mrahtz Feb 14, 2022
| https://github.com/python/cpython/pull/31021/commits/ac4b5f988a63f83ab8ce46b3e68c681db0e096d1 |
|
fbf1a95
Remove arity checks for things involving a TypeVarTuple
mrahtz Feb 15, 2022
| https://github.com/python/cpython/pull/31021/commits/fbf1a95752fe8f914dfe8b91dfd5d5c42ef27f7d |
|
5e0fcab
Add basic __args__ tests
mrahtz Feb 15, 2022
| https://github.com/python/cpython/pull/31021/commits/5e0fcaba3c9203df8eb4d176cb717667b53a0594 |
|
6d86710
Merge branch 'main' into pep646-typing
mrahtz Feb 15, 2022
| https://github.com/python/cpython/pull/31021/commits/6d86710b4349a25f92057555c705ae0111ce5ad4 |
|
55f3a5d
fix lint in NEWS file
JelleZijlstra Feb 23, 2022
| https://github.com/python/cpython/pull/31021/commits/55f3a5d169add78807dc5bd5a099b8648f8f1849 |
|
5212108
Make repr(A[]) == A[()] instead of A[]
mrahtz Feb 26, 2022
| https://github.com/python/cpython/pull/31021/commits/5212108099b6573ce89be7b80ca80f8f8952f242 |
|
f2811a0
Add some extra repr tests
mrahtz Feb 26, 2022
| https://github.com/python/cpython/pull/31021/commits/f2811a07d3b915f1ac8d6b0f952625045c83cec5 |
|
f5f4440
Remove debug print
mrahtz Feb 26, 2022
| https://github.com/python/cpython/pull/31021/commits/f5f4440db92f77539401e65bf131d10208116bcd |
|
45ff353
Make a couple of simplifications
mrahtz Feb 26, 2022
| https://github.com/python/cpython/pull/31021/commits/45ff353901398eb8eeeb114f8b9bc418d27972b0 |
|
ba31d6e
Optimize is_typevar_like
mrahtz Feb 26, 2022
| https://github.com/python/cpython/pull/31021/commits/ba31d6ec98e0936d4714c01156e492576fefaf10 |
|
6789326
Refactor tests for variadic get_origin and get_origin into separate c…
mrahtz Feb 26, 2022
| https://github.com/python/cpython/pull/31021/commits/67893260ad5f0e2d5dd04064709075a537e8d55c |
|
caf435e
Remove test for a parameterization that's actually invalid
mrahtz Feb 26, 2022
| https://github.com/python/cpython/pull/31021/commits/caf435e4b1e16f9b8b11ebde6481bc96d3dac91b |
|
9835938
Move some tests from GetUtilitiesTestCase to TypeVarTupleTests
mrahtz Feb 26, 2022
| https://github.com/python/cpython/pull/31021/commits/98359384d1d912240083ae9fe4c5935c15849577 |
|
ad5b090
Merge branch 'main' into pep646-typing
JelleZijlstra Mar 4, 2022
| https://github.com/python/cpython/pull/31021/commits/ad5b09075ab73ce42b58ebff3ff21d3d082cba89 |
|
2604094
Remove accidental cosmetic change
mrahtz Mar 5, 2022
| https://github.com/python/cpython/pull/31021/commits/26040943c110b34994b772517fcff72963a96294 |
|
75cd9d0
Add some type annotations
mrahtz Mar 5, 2022
| https://github.com/python/cpython/pull/31021/commits/75cd9d04aa1409b6b9a447349d2dc34505cd75bc |
|
23b393b
Fix various things in Generic.__class_getitem__
mrahtz Mar 5, 2022
| https://github.com/python/cpython/pull/31021/commits/23b393bea7e3c317e15a66de4f08ef879984dbd7 |
|
f094905
Split up _determine_typevar_substitution
mrahtz Mar 5, 2022
| https://github.com/python/cpython/pull/31021/commits/f09490592544fe64f8b85e470f020c2232179513 |
|
b9b1c80
Cut out variadic type substitution logic
mrahtz Mar 5, 2022
| https://github.com/python/cpython/pull/31021/commits/b9b1c80913f1fbc21ea60257bed6562e18c49802 |
|
Clear filters
| https://github.com/python/cpython/pull/31021/files |
| Please reload this page | https://github.com/python/cpython/pull/31021/files |
| Please reload this page | https://github.com/python/cpython/pull/31021/files |
|
test_typing.py
| https://github.com/python/cpython/pull/31021/files#diff-04d29c98076c2d6bb75921ea9becb26a862544d39b71db87b6e354c759b9305d |
|
typing.py
| https://github.com/python/cpython/pull/31021/files#diff-ddb987fca5f5df0c9a2f5521ed687919d70bb3d64eaeb8021f98833a2a716887 |
|
2022-01-30-22-05-53.bpo-43224.E-eT22.rst
| https://github.com/python/cpython/pull/31021/files#diff-10f4866ee81ccbbeda7ac437c0223e09ee252cef9d8f8a6df38a7007067d7146 |
| Please reload this page | https://github.com/python/cpython/pull/31021/files |
|
| https://github.com |
| Terms | https://docs.github.com/site-policy/github-terms/github-terms-of-service |
| Privacy | https://docs.github.com/site-policy/privacy-policies/github-privacy-statement |
| Security | https://github.com/security |
| Status | https://www.githubstatus.com/ |
| Community | https://github.community/ |
| Docs | https://docs.github.com/ |
| Contact | https://support.github.com?tags=dotcom-footer |