René's URL Explorer Experiment


Title: bpo-39481: Implementation for PEP 585 by gvanrossum · Pull Request #18239 · python/cpython · GitHub

Open Graph Title: bpo-39481: Implementation for PEP 585 by gvanrossum · Pull Request #18239 · python/cpython

X Title: bpo-39481: Implementation for PEP 585 by gvanrossum · Pull Request #18239 · python/cpython

Description: I consider this a finished prototype now. We've got everything working, and then some (e.g. pickle), and while we found a fair number of minor issues with PEP 585, the main conclusion is that the PEP is quite reasonable to implement. A number of suggestions for changes PEP 585 that have basically been vetted by @ambv can be found in python/peps#1289. There are a few places where I still disagree with @ambv. In particular, I don't think it makes sense to even allow isinstance(x, list[int]) and issubclass(C, list[int]) -- IMO these should just raise TypeError, and that's what this PR implements. (If @ambv convinces me to change my mind, it's easy to revert that.) [UPDATE: @ambv agrees and has updated the PEP.] There are also a few things that ought to be changed: We should add a nice docstring to GenericAlias. We made io.IOBase generic. This was a misunderstanding, and we'll revert that. The __parameters__ attribute can and probably should be computed lazily the first time it's needed. Maybe we still need a cache, like typing.py uses? Where should the code live? For now I put it in descrobject.c, but that's debatable (it was just convenient). https://bugs.python.org/issue39481

Open Graph Description: I consider this a finished prototype now. We've got everything working, and then some (e.g. pickle), and while we found a fair number of minor issues with PEP 585, the main conclusion is that t...

X Description: I consider this a finished prototype now. We've got everything working, and then some (e.g. pickle), and while we found a fair number of minor issues with PEP 585, the main conclusion is th...

Opengraph URL: https://github.com/python/cpython/pull/18239

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:2aaaa8b8-4bbb-3b4d-6212-15adc20229d9
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-id991C:2A6639:D5562D:1155CDD:696B2A76
html-safe-nonce7de8477a58a33270b1bdbcb11bd0d9384ff123f1b69f52e526480cdabce68426
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5OTFDOjJBNjYzOTpENTU2MkQ6MTE1NUNERDo2OTZCMkE3NiIsInZpc2l0b3JfaWQiOiIzNzQwMDU0OTg5MDk0NzI2MjYyIiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmac1a71ffacff7ef584b5bddf1e0ae4a55bf682905f7f58438c46361835af6174af
hovercard-subject-tagpull_request:368083803
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/python/cpython/pull/18239/files
twitter:imagehttps://avatars.githubusercontent.com/u/2894642?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/2894642?s=400&v=4
og:image:altI consider this a finished prototype now. We've got everything working, and then some (e.g. pickle), and while we found a fair number of minor issues with PEP 585, the main conclusion is that t...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None5f99f7c1d70f01da5b93e5ca90303359738944d8ab470e396496262c66e60b8d
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/python/cpython git https://github.com/python/cpython.git
octolytics-dimension-user_id1525981
octolytics-dimension-user_loginpython
octolytics-dimension-repository_id81598961
octolytics-dimension-repository_nwopython/cpython
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id81598961
octolytics-dimension-repository_network_root_nwopython/cpython
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release82560a55c6b2054555076f46e683151ee28a19bc
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/python/cpython/pull/18239/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F18239%2Ffiles
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://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%2F18239%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
Reloadhttps://github.com/python/cpython/pull/18239/files
Reloadhttps://github.com/python/cpython/pull/18239/files
Reloadhttps://github.com/python/cpython/pull/18239/files
python https://github.com/python
cpythonhttps://github.com/python/cpython
Please reload this pagehttps://github.com/python/cpython/pull/18239/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 pagehttps://github.com/python/cpython/pull/18239/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 servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Fpython%2Fcpython%2Fissues%2Fnew%2Fchoose
gvanrossumhttps://github.com/gvanrossum
python:masterhttps://github.com/python/cpython/tree/master
gvanrossum:pep585https://github.com/gvanrossum/cpython/tree/pep585
Conversation 85 https://github.com/python/cpython/pull/18239
Commits 78 https://github.com/python/cpython/pull/18239/commits
Checks 0 https://github.com/python/cpython/pull/18239/checks
Files changed https://github.com/python/cpython/pull/18239/files
Please reload this pagehttps://github.com/python/cpython/pull/18239/files
bpo-39481: Implementation for PEP 585 https://github.com/python/cpython/pull/18239/files#top
Show all changes 78 commits https://github.com/python/cpython/pull/18239/files
d557a64 PEP 585 step 2: Write a Py_GenericAlias() function that returns origin gvanrossum Jan 27, 2020 https://github.com/python/cpython/pull/18239/commits/d557a64a4cc82230a8a0368404a3862996effc3e
da33267 PEP 585 step 3: Add Py_GenericAlias() as __class_getitem__ to tuple, … gvanrossum Jan 27, 2020 https://github.com/python/cpython/pull/18239/commits/da332673eccb81a3e5f173f02e33871930ad7d64
447fbe9 PEP 585 step 4: Write some tests gvanrossum Jan 27, 2020 https://github.com/python/cpython/pull/18239/commits/447fbe9308de63b15d99c2c3e6c6c5b960eeb801
83e2ba2 Define a GenericAlias (proxy) object (with lots of TODOs still) gvanrossum Jan 27, 2020 https://github.com/python/cpython/pull/18239/commits/83e2ba25481768d867d0534d2aa7a66fc45b37a7
fb3e8d3 More tests gvanrossum Jan 28, 2020 https://github.com/python/cpython/pull/18239/commits/fb3e8d389394660b35673d084c056b58fde2e0bf
235180b PEP 585 steps 5-6: Finish basic GenericAlias object and test gvanrossum Jan 28, 2020 https://github.com/python/cpython/pull/18239/commits/235180b767f5f455873c8638f1b39c377aa2254e
70f3abc Fix bug with class methods gvanrossum Jan 28, 2020 https://github.com/python/cpython/pull/18239/commits/70f3abc1609305f8d37fe47638d6bbd9da38a9ce
e4d1356 Define tp_new instead of tp_init gvanrossum Jan 28, 2020 https://github.com/python/cpython/pull/18239/commits/e4d1356edfd758387fc838a87f03628c201c2aae
8f7a55e Test that list[int][int] fails gvanrossum Jan 28, 2020 https://github.com/python/cpython/pull/18239/commits/8f7a55e31f97d0bc7e82394a5d17244f59e31bf3
f2ba2e5 Test that class L(list): pass; L[int] works gvanrossum Jan 28, 2020 https://github.com/python/cpython/pull/18239/commits/f2ba2e53c09be858736e866c05b2acd671fa6176
0af74d1 Implement PEP 585 for collections.deque and ... (#2) emmatyping Jan 28, 2020 https://github.com/python/cpython/pull/18239/commits/0af74d105b66621ee666b8dcaf2a518fb7ea2d30
b264294 Respond to Serhiy's code review gvanrossum Jan 28, 2020 https://github.com/python/cpython/pull/18239/commits/b2642948cd0de776cd2315119b366847c3ad5735
0ddea56 📜🤖 Added by blurb_it. blurb-it[bot] Jan 28, 2020 https://github.com/python/cpython/pull/18239/commits/0ddea5628af6f799e98a02886fbe3c46ce43c4a7
91edf1c PEP 585 steps 7-8: Implement repr for GenericAlias (#1) emmatyping Jan 29, 2020 https://github.com/python/cpython/pull/18239/commits/91edf1c6b22f2ff94ad7b6fe7490068a619b19e0
6b1a218 Add static keyword to ga_repr_item (#3) emmatyping Jan 29, 2020 https://github.com/python/cpython/pull/18239/commits/6b1a218162e45e83de7be8e6bfaa4984b3963e66
ce21a96 Add GenericAlias to types.py gvanrossum Jan 29, 2020 https://github.com/python/cpython/pull/18239/commits/ce21a96d2c32718550af45f8279bbb47013cf40a
dbe67d0 Add test for types.py gvanrossum Jan 29, 2020 https://github.com/python/cpython/pull/18239/commits/dbe67d0b995adbafffc3f11f2bbbb5522bba6899
15697f0 Fix tests that were sensitive to the presence of __class_getitem__ gvanrossum Jan 29, 2020 https://github.com/python/cpython/pull/18239/commits/15697f09c9674763d493b683c3f193334c1b3a73
da15d43 Fix crash in repr(tuple[...]) -- call PyErr_Clear() gvanrossum Jan 29, 2020 https://github.com/python/cpython/pull/18239/commits/da15d43335abb002b6c36332881c3af4b25bb3d8
647cda8 Make re.Match, re.Pattern, and io.IOBase generic (#4) emmatyping Jan 29, 2020 https://github.com/python/cpython/pull/18239/commits/647cda8fab6cc18a7dbbec1ffc51513231d5a427
3824954 Restore parity between _io._IOBase and _pyio.IOBase gvanrossum Jan 29, 2020 https://github.com/python/cpython/pull/18239/commits/382495476ffe1efd03f790c043c4d2adb6b4aa03
8aec6ae Make contextlib.Abstract*ContextManager generic, with tests gvanrossum Jan 29, 2020 https://github.com/python/cpython/pull/18239/commits/8aec6ae15063388bd4902c45500042522da4744d
58af183 WIP: Tweak test_typing.py to pass with the new definition of __orig_c… gvanrossum Jan 29, 2020 https://github.com/python/cpython/pull/18239/commits/58af1834d51c27b21132173509f07714887822a9
8da0a08 Rename __parameters__ to __args__ gvanrossum Jan 29, 2020 https://github.com/python/cpython/pull/18239/commits/8da0a089f5a3561438bed0fff5dbac6b87ae262c
eaecacb Rename parameters to args gvanrossum Jan 29, 2020 https://github.com/python/cpython/pull/18239/commits/eaecacb060805df0223b2123d04d9f91b8b3a3b3
98d479f Properly implement __parameters__ as the tuple of args that are type … gvanrossum Jan 29, 2020 https://github.com/python/cpython/pull/18239/commits/98d479fc198281ab84b79a6fd8ea257e2923fb14
82bc806 Set __orig_class__ if possible when instantiating gvanrossum Jan 29, 2020 https://github.com/python/cpython/pull/18239/commits/82bc8060b378c842e9af24a3cbc4bb1d4d39cfb1
2567ce3 WIP: Implement ga_getitem so list[T][int] -> list[int] gvanrossum Jan 30, 2020 https://github.com/python/cpython/pull/18239/commits/2567ce37a5f910ff7be570e69eca90eea03bf7d5
4f2ced6 Exclude duplicates from __parameters__ gvanrossum Jan 30, 2020 https://github.com/python/cpython/pull/18239/commits/4f2ced6b4e61d23fa487cfabe0ce3a459e0b3f49
2c25fb0 Implement ga_getitem properly, with tests gvanrossum Jan 31, 2020 https://github.com/python/cpython/pull/18239/commits/2c25fb0b4cf78836d471094a10142633573411d5
9ed17ef Implement == and != for GA gvanrossum Jan 31, 2020 https://github.com/python/cpython/pull/18239/commits/9ed17ef14738dd71b65c50394e438350f26f20b0
bb9a11f Make collections.abc.* generic (#5) emmatyping Jan 31, 2020 https://github.com/python/cpython/pull/18239/commits/bb9a11ffd15b2002f7077ac6dbff7f09b62e63c3
6d3f535 Make isinstance and issubclass error for GenericAlias (#6) emmatyping Jan 31, 2020 https://github.com/python/cpython/pull/18239/commits/6d3f5357d322ef705fda36b8bbb97af31a627dd9
4b3ecf2 Fix two more AssertIs calls in test_typing.py gvanrossum Jan 31, 2020 https://github.com/python/cpython/pull/18239/commits/4b3ecf287c70017d2001b34677fcf90749db3d2b
2df602b Admit defeat -- comment out two expected TypeErrors in test_extended_… gvanrossum Jan 31, 2020 https://github.com/python/cpython/pull/18239/commits/2df602bca7a68fe8bf8c979d71e614e341691b76
eede65a Fix whitespace to satisfy patchcheck.py gvanrossum Jan 31, 2020 https://github.com/python/cpython/pull/18239/commits/eede65a1eeb6a23072ef7c7c214d669a62125cd2
2b22f6e Fix test_site.py gvanrossum Jan 31, 2020 https://github.com/python/cpython/pull/18239/commits/2b22f6e75618f8327ee1a65681e1b3d2fcbcb945
065a032 Better way to fix test_site.py: don't import types from collections gvanrossum Jan 31, 2020 https://github.com/python/cpython/pull/18239/commits/065a032653b547a2a98890736b52db7765f7edcd
baf9b32 Use Py_ssize_t instead of int for indexing (#8) emmatyping Jan 31, 2020 https://github.com/python/cpython/pull/18239/commits/baf9b32218e19b35d63f6225771244df6491f9ff
9915ba2 GenericAlias pickle support (#9) emmatyping Feb 5, 2020 https://github.com/python/cpython/pull/18239/commits/9915ba2bea0c1eb6b2f5838521dbebcaf8c5c19b
4e1da19 Make type generic (#7) emmatyping Feb 5, 2020 https://github.com/python/cpython/pull/18239/commits/4e1da193e3b36cc62c2113a37ebf329431348acc
8926f7a Remove a completed TODO comment gvanrossum Feb 5, 2020 https://github.com/python/cpython/pull/18239/commits/8926f7aa1131d4805c9a9174c05e38d7cbcff8ce
7b1ad20 Remove extraneous whitespace. (#10) emmatyping Feb 5, 2020 https://github.com/python/cpython/pull/18239/commits/7b1ad200849e09293b0283633193211731e9396a
a05d9ae Do not make IOBase generic (#11) emmatyping Feb 7, 2020 https://github.com/python/cpython/pull/18239/commits/a05d9ae1da8e8137e0881fe51226cc08cb195be1
d4a372b Remove __class_getitem__ from _pyio.py too; and don't test for IOBase gvanrossum Feb 7, 2020 https://github.com/python/cpython/pull/18239/commits/d4a372bbc77f9506a6332ae5b4875d5855b271ec
c534f67 Merge branch 'master' into pep585 gvanrossum Feb 10, 2020 https://github.com/python/cpython/pull/18239/commits/c534f67b703527e61d4e41fd3de28e91491b2f7e
2f94a36 Make types.MappingProxyType generic (#13) emmatyping Feb 25, 2020 https://github.com/python/cpython/pull/18239/commits/2f94a36df0fe1ff7d738f5daea438fae0c2cad2d
3da2797 Reword isinstance/subclass checks (#12) emmatyping Feb 25, 2020 https://github.com/python/cpython/pull/18239/commits/3da279795e5eab8da47eeb2ce34b9925f07bdf5c
13d8d6d Fix test_types (mappingproxy now has a __class_getitem__ method) gvanrossum Feb 25, 2020 https://github.com/python/cpython/pull/18239/commits/13d8d6d32e36affb7ae9491a9bea5381b1c6c17e
43a97b9 Merge remote-tracking branch 'upstream/master' into pep585 gvanrossum Feb 25, 2020 https://github.com/python/cpython/pull/18239/commits/43a97b9b17ddcd931cdaa1faa6e14f824f956206
4783c2e Convert some already generic things to GenericAlias to be consistent … emmatyping Feb 25, 2020 https://github.com/python/cpython/pull/18239/commits/4783c2e8a92fa8e73b8a770f3af8ec43626a23fd
e50136d Make __parameters__ lazy (#15) emmatyping Feb 25, 2020 https://github.com/python/cpython/pull/18239/commits/e50136dd92c4a8f18932613dcd738a001ac513b9
0192986 Fix failing test_doctest -- we now find 821 tests gvanrossum Feb 25, 2020 https://github.com/python/cpython/pull/18239/commits/01929866fe2278d37c632c0c108f4ef20aed4d79
b80b077 Don't import types in os.py -- it breaks test_site.py gvanrossum Feb 25, 2020 https://github.com/python/cpython/pull/18239/commits/b80b0770268424174b2a6605bd7def923694b0b2
3bc4e12 Move GenericAlias definition to its own file gvanrossum Mar 14, 2020 https://github.com/python/cpython/pull/18239/commits/3bc4e127cc1807100c4cd68a6815c91c32c2289a
f658a64 Add a hash function to GenericAlias gvanrossum Mar 14, 2020 https://github.com/python/cpython/pull/18239/commits/f658a64f94e16ee543e03fb335d51f0dfaec522b
bfd6342 Make Union[list[T], int] work gvanrossum Mar 15, 2020 https://github.com/python/cpython/pull/18239/commits/bfd6342c0ee4b3c83e6235efad2200b9ff3aa607
7919fa2 Add GenericAlias to Windows build (#16) emmatyping Mar 16, 2020 https://github.com/python/cpython/pull/18239/commits/7919fa24526bb014a183563c848865bc869c1ddd
854fa99 Merge remote-tracking branch 'upstream/master' into pep585 gvanrossum Mar 16, 2020 https://github.com/python/cpython/pull/18239/commits/854fa9971934cebe58f52a4c4971684a0f4d547a
728084a Run CI on PRs for pep585 branch gvanrossum Mar 18, 2020 https://github.com/python/cpython/pull/18239/commits/728084a49bc62b46217d9accbf9a2011bb6ffb88
29130ab Merge branch 'master' into pep585 gvanrossum Mar 29, 2020 https://github.com/python/cpython/pull/18239/commits/29130ab4c2a3fa441e60ff6a98562d8755489a4c
ddbce27 Add docstring for GenericAlias (#17) emmatyping Mar 30, 2020 https://github.com/python/cpython/pull/18239/commits/ddbce27bc8716e8fc0acbae0907691b0d41b3cae
4db065d Remove unneeded _GenericAlias definition from collections/__init__.py gvanrossum Mar 31, 2020 https://github.com/python/cpython/pull/18239/commits/4db065d9662b003047450f10e5b8184fd5e4e647
e14625f Make is_typevar() harder to fool gvanrossum Apr 5, 2020 https://github.com/python/cpython/pull/18239/commits/e14625fa30d74a872f2f6af390ce2564c6b3e1b5
76c0805 Rewrite ga_repr_item() to honor exceptions gvanrossum Apr 5, 2020 https://github.com/python/cpython/pull/18239/commits/76c080534dc282ca42c0d7ccbb920b914afe887b
128aacb Use __class_getitem__ = classmethod(GenericAlias) gvanrossum Apr 5, 2020 https://github.com/python/cpython/pull/18239/commits/128aacb965ddd7a130b29053ec8fd75fd95221fc
94f4095 Update Objects/genericaliasobject.c gvanrossum Apr 5, 2020 https://github.com/python/cpython/pull/18239/commits/94f4095f82f59d705f09db641c265fcc32a590e4
79f4170 Apply suggestions from code review gvanrossum Apr 5, 2020 https://github.com/python/cpython/pull/18239/commits/79f41704bb153f7e7b2acedf70885b8b9fed753f
f6f5b81 Use PyTuple_GET_SIZE gvanrossum Apr 5, 2020 https://github.com/python/cpython/pull/18239/commits/f6f5b810fd1df1c81770080815893f3a62350e6c
99cac83 Use PyErr_SetString correctly gvanrossum Apr 5, 2020 https://github.com/python/cpython/pull/18239/commits/99cac832a106ac3a4105bb853369278dc3d938d6
6044934 Fix test failure (setattr may raise TypeError) gvanrossum Apr 5, 2020 https://github.com/python/cpython/pull/18239/commits/604493486829f7ec12c89c24f34f5a8ae97367bb
355d267 Propagate errors from is_typevar() gvanrossum Apr 6, 2020 https://github.com/python/cpython/pull/18239/commits/355d2675370649a794f007bedc2ed39e06a005f0
95b3c2a Use PyObject_Str(qualname) gvanrossum Apr 6, 2020 https://github.com/python/cpython/pull/18239/commits/95b3c2a94873e862b06261fe69a030b27405c26e
13d3742 Merge remote-tracking branch 'upstream/master' into pep585 gvanrossum Apr 6, 2020 https://github.com/python/cpython/pull/18239/commits/13d3742fd897e1ea77060547de6d8445877e820e
d3839ea Delete mention of pep585 branch in GitHub workflow gvanrossum Apr 6, 2020 https://github.com/python/cpython/pull/18239/commits/d3839eabb23970163ca1234f6c1a3d434c23f9ab
31fd842 Move Py_GenericAlias* to genericaliasobject.h gvanrossum Apr 7, 2020 https://github.com/python/cpython/pull/18239/commits/31fd842170661521d3ccb55fbacaccdc06084e75
6bad315 Merge remote-tracking branch 'upstream/master' into pep585 gvanrossum Apr 7, 2020 https://github.com/python/cpython/pull/18239/commits/6bad31542b60aa217dcd47c041dad352bc8eac5e
cdb46c3 Add Py_GenericAlias[Type] to PC/python3.ref gvanrossum Apr 7, 2020 https://github.com/python/cpython/pull/18239/commits/cdb46c3d80f5e80e681a6fcc06a39637d8c26277
Clear filters https://github.com/python/cpython/pull/18239/files
Please reload this pagehttps://github.com/python/cpython/pull/18239/files
Please reload this pagehttps://github.com/python/cpython/pull/18239/files
Python.h https://github.com/python/cpython/pull/18239/files#diff-f60ef9db994347493c9ad11a939d46272a5b9a3d03e9aa22f186a87dd9ce8769
genericaliasobject.h https://github.com/python/cpython/pull/18239/files#diff-29ef95a163b359e3d0333b2df366c17875399713bdf0051c18a982ae9cf97246
_collections_abc.py https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
contextlib.py https://github.com/python/cpython/pull/18239/files#diff-e00601a380ba6c916ba4333277fe6ea43d2477804002ab1ae64480f80fec8e3a
os.py https://github.com/python/cpython/pull/18239/files#diff-d2e8ad2f4746ac5fb230fa5a7345fd4332c56818489a2246472d38893aa82431
subprocess.py https://github.com/python/cpython/pull/18239/files#diff-619941af4b328b6abf2dc02c54e774fc17acc1ac4172c14db27d6097cbbff92a
tempfile.py https://github.com/python/cpython/pull/18239/files#diff-6553a99f3ae04c9fc9c2349ac27037bfe3b274d5ca54d5800d9c5b5f11e29d21
test_descrtut.py https://github.com/python/cpython/pull/18239/files#diff-1ea3df472d80208543d6efe39d25f4e0b5c4636c5f0e33b652d2ab46e46fe831
test_doctest.py https://github.com/python/cpython/pull/18239/files#diff-2752e009dea2759fb0a5a0866446e8bbd3f5ed30c030b26d252d7a1178b413e7
test_genericalias.py https://github.com/python/cpython/pull/18239/files#diff-8e29b27c5ead543d31b10d6fa2991d5640e6d60c36ac7b7aa873712c4fe2f944
test_os.py https://github.com/python/cpython/pull/18239/files#diff-5007f0845419916c8b0294481e2ee212ca36661d9843f86338ec42254645edfc
test_subprocess.py https://github.com/python/cpython/pull/18239/files#diff-5825be1d1a8e2c68a9321c3d4d04980a72bd4354e35e70bd2407e5e28460c782
test_tempfile.py https://github.com/python/cpython/pull/18239/files#diff-cbc50394ff35aa5553e84fa01cfdda48f5215fcb60cd1ee84a0ee9682d908983
test_types.py https://github.com/python/cpython/pull/18239/files#diff-d5154ccf7a97612e4a8b06a6f0f48f15554e426e72e698f246d17d3dd8e3a75a
test_typing.py https://github.com/python/cpython/pull/18239/files#diff-04d29c98076c2d6bb75921ea9becb26a862544d39b71db87b6e354c759b9305d
types.py https://github.com/python/cpython/pull/18239/files#diff-14c8ad728bd63143566c2c1e5a85a7b20cebc910278ac9202978e845dc63f215
typing.py https://github.com/python/cpython/pull/18239/files#diff-ddb987fca5f5df0c9a2f5521ed687919d70bb3d64eaeb8021f98833a2a716887
Makefile.pre.in https://github.com/python/cpython/pull/18239/files#diff-1f0a8db227d22005511b0d90f5339b97db345917b863954b3b3ccb9ec308767c
2020-01-28-17-19-18.bpo-39481.rqSeGl.rst https://github.com/python/cpython/pull/18239/files#diff-2abd8503d883dfe3d44be8a73626fce33157b00d9e771a973a0bed5ae915bf83
_collectionsmodule.c https://github.com/python/cpython/pull/18239/files#diff-bfedaecb4a5a92b4dc78b96a753ae08600be7f0acab82383abcc6799aa47084c
_sre.c https://github.com/python/cpython/pull/18239/files#diff-aaff088141c53a1b4b5f0d9d35d0bbd0406bac50c73be47328df26f46c9fe41c
abstract.c https://github.com/python/cpython/pull/18239/files#diff-d2c90d06d281ca8dd7ac8b90109fc26755f7319dd209b5f9416efdecfa56e289
descrobject.c https://github.com/python/cpython/pull/18239/files#diff-7952643fe36a8662b3e4be2c6478b06b1af5b5754fc25eaf3eb4b46569659264
dictobject.c https://github.com/python/cpython/pull/18239/files#diff-b08a47ddc5bc20b2e99ac2e5aa199ca24a56b994e7bc64e918513356088c20ae
genericaliasobject.c https://github.com/python/cpython/pull/18239/files#diff-828d12085a29364c67442b193bb62906e3469fbe21367499fd62817f98190014
listobject.c https://github.com/python/cpython/pull/18239/files#diff-67a42c5c0990c7aceea040ffc07905299aab97d64dc49adb256f85340b2c7e81
setobject.c https://github.com/python/cpython/pull/18239/files#diff-537c6127e75079330edcb3775b0b9c2e4aeb34530dfe224ef2c96c3acb42111f
tupleobject.c https://github.com/python/cpython/pull/18239/files#diff-1c580282bd10a8157cc81dd4a4658d4bb47f75ea476cd433bc7435913b33eb77
python3.def https://github.com/python/cpython/pull/18239/files#diff-a047a3ba52889584c613807fad7e2aa6797b2694868f756dd5bc05667f013497
pythoncore.vcxproj https://github.com/python/cpython/pull/18239/files#diff-4295039788386c2986b811f2a6b59cf088be59822b24b4f1243c9e9b184f65fb
Include/Python.hhttps://github.com/python/cpython/pull/18239/files#diff-f60ef9db994347493c9ad11a939d46272a5b9a3d03e9aa22f186a87dd9ce8769
View file https://github.com/gvanrossum/cpython/blob/cdb46c3d80f5e80e681a6fcc06a39637d8c26277/Include/Python.h
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/18239/{{ revealButtonHref }}
https://github.com/python/cpython/pull/18239/files#diff-f60ef9db994347493c9ad11a939d46272a5b9a3d03e9aa22f186a87dd9ce8769
https://github.com/python/cpython/pull/18239/files#diff-f60ef9db994347493c9ad11a939d46272a5b9a3d03e9aa22f186a87dd9ce8769
Include/genericaliasobject.hhttps://github.com/python/cpython/pull/18239/files#diff-29ef95a163b359e3d0333b2df366c17875399713bdf0051c18a982ae9cf97246
View file https://github.com/gvanrossum/cpython/blob/cdb46c3d80f5e80e681a6fcc06a39637d8c26277/Include/genericaliasobject.h
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/18239/{{ revealButtonHref }}
Lib/_collections_abc.pyhttps://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
View file https://github.com/gvanrossum/cpython/blob/cdb46c3d80f5e80e681a6fcc06a39637d8c26277/Lib/_collections_abc.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/18239/{{ revealButtonHref }}
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
https://github.com/python/cpython/pull/18239/files#diff-2044b2b16b4875063072f171fbaa695fab71ffa10976692286bc7f5e0fb4b545
Lib/contextlib.pyhttps://github.com/python/cpython/pull/18239/files#diff-e00601a380ba6c916ba4333277fe6ea43d2477804002ab1ae64480f80fec8e3a
View file https://github.com/gvanrossum/cpython/blob/cdb46c3d80f5e80e681a6fcc06a39637d8c26277/Lib/contextlib.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/18239/{{ revealButtonHref }}
https://github.com/python/cpython/pull/18239/files#diff-e00601a380ba6c916ba4333277fe6ea43d2477804002ab1ae64480f80fec8e3a
https://github.com/python/cpython/pull/18239/files#diff-e00601a380ba6c916ba4333277fe6ea43d2477804002ab1ae64480f80fec8e3a
https://github.com/python/cpython/pull/18239/files#diff-e00601a380ba6c916ba4333277fe6ea43d2477804002ab1ae64480f80fec8e3a
https://github.com/python/cpython/pull/18239/files#diff-e00601a380ba6c916ba4333277fe6ea43d2477804002ab1ae64480f80fec8e3a
Lib/os.pyhttps://github.com/python/cpython/pull/18239/files#diff-d2e8ad2f4746ac5fb230fa5a7345fd4332c56818489a2246472d38893aa82431
View file https://github.com/gvanrossum/cpython/blob/cdb46c3d80f5e80e681a6fcc06a39637d8c26277/Lib/os.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/18239/{{ revealButtonHref }}
https://github.com/python/cpython/pull/18239/files#diff-d2e8ad2f4746ac5fb230fa5a7345fd4332c56818489a2246472d38893aa82431
Please reload this pagehttps://github.com/python/cpython/pull/18239/files
https://github.com/python/cpython/pull/18239/files#diff-d2e8ad2f4746ac5fb230fa5a7345fd4332c56818489a2246472d38893aa82431
https://github.com/python/cpython/pull/18239/files#diff-d2e8ad2f4746ac5fb230fa5a7345fd4332c56818489a2246472d38893aa82431
https://github.com/python/cpython/pull/18239/files#diff-d2e8ad2f4746ac5fb230fa5a7345fd4332c56818489a2246472d38893aa82431
Lib/subprocess.pyhttps://github.com/python/cpython/pull/18239/files#diff-619941af4b328b6abf2dc02c54e774fc17acc1ac4172c14db27d6097cbbff92a
View file https://github.com/gvanrossum/cpython/blob/cdb46c3d80f5e80e681a6fcc06a39637d8c26277/Lib/subprocess.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/18239/{{ revealButtonHref }}
https://github.com/python/cpython/pull/18239/files#diff-619941af4b328b6abf2dc02c54e774fc17acc1ac4172c14db27d6097cbbff92a
https://github.com/python/cpython/pull/18239/files#diff-619941af4b328b6abf2dc02c54e774fc17acc1ac4172c14db27d6097cbbff92a
https://github.com/python/cpython/pull/18239/files#diff-619941af4b328b6abf2dc02c54e774fc17acc1ac4172c14db27d6097cbbff92a
https://github.com/python/cpython/pull/18239/files#diff-619941af4b328b6abf2dc02c54e774fc17acc1ac4172c14db27d6097cbbff92a
https://github.com/python/cpython/pull/18239/files#diff-619941af4b328b6abf2dc02c54e774fc17acc1ac4172c14db27d6097cbbff92a
https://github.com/python/cpython/pull/18239/files#diff-619941af4b328b6abf2dc02c54e774fc17acc1ac4172c14db27d6097cbbff92a
Lib/tempfile.pyhttps://github.com/python/cpython/pull/18239/files#diff-6553a99f3ae04c9fc9c2349ac27037bfe3b274d5ca54d5800d9c5b5f11e29d21
View file https://github.com/gvanrossum/cpython/blob/cdb46c3d80f5e80e681a6fcc06a39637d8c26277/Lib/tempfile.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/18239/{{ revealButtonHref }}
https://github.com/python/cpython/pull/18239/files#diff-6553a99f3ae04c9fc9c2349ac27037bfe3b274d5ca54d5800d9c5b5f11e29d21
https://github.com/python/cpython/pull/18239/files#diff-6553a99f3ae04c9fc9c2349ac27037bfe3b274d5ca54d5800d9c5b5f11e29d21
https://github.com/python/cpython/pull/18239/files#diff-6553a99f3ae04c9fc9c2349ac27037bfe3b274d5ca54d5800d9c5b5f11e29d21
https://github.com/python/cpython/pull/18239/files#diff-6553a99f3ae04c9fc9c2349ac27037bfe3b274d5ca54d5800d9c5b5f11e29d21
Lib/test/test_descrtut.pyhttps://github.com/python/cpython/pull/18239/files#diff-1ea3df472d80208543d6efe39d25f4e0b5c4636c5f0e33b652d2ab46e46fe831
View file https://github.com/gvanrossum/cpython/blob/cdb46c3d80f5e80e681a6fcc06a39637d8c26277/Lib/test/test_descrtut.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/18239/{{ revealButtonHref }}
https://github.com/python/cpython/pull/18239/files#diff-1ea3df472d80208543d6efe39d25f4e0b5c4636c5f0e33b652d2ab46e46fe831
https://github.com/python/cpython/pull/18239/files#diff-1ea3df472d80208543d6efe39d25f4e0b5c4636c5f0e33b652d2ab46e46fe831
Lib/test/test_doctest.pyhttps://github.com/python/cpython/pull/18239/files#diff-2752e009dea2759fb0a5a0866446e8bbd3f5ed30c030b26d252d7a1178b413e7
View file https://github.com/gvanrossum/cpython/blob/cdb46c3d80f5e80e681a6fcc06a39637d8c26277/Lib/test/test_doctest.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/18239/{{ revealButtonHref }}
https://github.com/python/cpython/pull/18239/files#diff-2752e009dea2759fb0a5a0866446e8bbd3f5ed30c030b26d252d7a1178b413e7
https://github.com/python/cpython/pull/18239/files#diff-2752e009dea2759fb0a5a0866446e8bbd3f5ed30c030b26d252d7a1178b413e7
Please reload this pagehttps://github.com/python/cpython/pull/18239/files
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.