René's URL Explorer Experiment


Title: [3.10] gh-95778: CVE-2020-10735: Prevent DoS by very large int() by gpshead · Pull Request #96501 · python/cpython · GitHub

Open Graph Title: [3.10] gh-95778: CVE-2020-10735: Prevent DoS by very large int() by gpshead · Pull Request #96501 · python/cpython

X Title: [3.10] gh-95778: CVE-2020-10735: Prevent DoS by very large int() by gpshead · Pull Request #96501 · python/cpython

Description: Integer to and from text conversions via CPython's bignum int type is not safe against denial of service attacks due to malicious input. Very large input strings with hundred thousands of digits can consume several CPU seconds. This PR comes fresh from a pile of work done in our private PSRT security response team repo. This backports #96499 aka 511ca94 Signed-off-by: Christian Heimes [Red Hat] christian@python.org Tons-of-polishing-up-by: Gregory P. Smith [Google] greg@krypto.org Reviews via the private PSRT repo via many others (see the NEWS entry in the PR). Issue: gh-95778 I wrote up a one pager for the release managers.

Open Graph Description: Integer to and from text conversions via CPython's bignum int type is not safe against denial of service attacks due to malicious input. Very large input strings with hundred thousands of digit...

X Description: Integer to and from text conversions via CPython's bignum int type is not safe against denial of service attacks due to malicious input. Very large input strings with hundred thousands of d...

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

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:673717b2-9af7-5f1a-9d35-e5cf85e8352c
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idD9D4:26A866:110E754:17E5C63:696A39D7
html-safe-nonceecd3775498049e020318a33c670267c4adab620673dbc9a104b3a85346df9825
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJEOUQ0OjI2QTg2NjoxMTBFNzU0OjE3RTVDNjM6Njk2QTM5RDciLCJ2aXNpdG9yX2lkIjoiMzM0MDkwNTU3NDk5MDIzMjAyMyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac5820d820b4db341e1313cdb6fe6c4139bad3000a413ded47757054ddfb8e7766
hovercard-subject-tagpull_request:1044482512
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/96501/files
twitter:imagehttps://avatars.githubusercontent.com/u/68491?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/68491?s=400&v=4
og:image:altInteger to and from text conversions via CPython's bignum int type is not safe against denial of service attacks due to malicious input. Very large input strings with hundred thousands of digit...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None321736bfdb3f591415ae895a0459bec204b26a76caf47ba5c980634cfacc4538
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
release7a9163cefd1ea4bd06f8eb7c082f43e4e53f626f
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/python/cpython/pull/96501/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F96501%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%2F96501%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/96501/files
Reloadhttps://github.com/python/cpython/pull/96501/files
Reloadhttps://github.com/python/cpython/pull/96501/files
python https://github.com/python
cpythonhttps://github.com/python/cpython
Please reload this pagehttps://github.com/python/cpython/pull/96501/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/96501/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
gpsheadhttps://github.com/gpshead
python:3.10https://github.com/python/cpython/tree/3.10
gpshead:CVE-2020-10735-3.10backporthttps://github.com/gpshead/cpython/tree/CVE-2020-10735-3.10backport
Conversation 2 https://github.com/python/cpython/pull/96501
Commits 11 https://github.com/python/cpython/pull/96501/commits
Checks 0 https://github.com/python/cpython/pull/96501/checks
Files changed https://github.com/python/cpython/pull/96501/files
Please reload this pagehttps://github.com/python/cpython/pull/96501/files
[3.10] gh-95778: CVE-2020-10735: Prevent DoS by very large int() https://github.com/python/cpython/pull/96501/files#top
Show all changes 11 commits https://github.com/python/cpython/pull/96501/files
4631817 Backport to 3.10 from CVE-2020-10735-3.11backport. gpshead Aug 19, 2022 https://github.com/python/cpython/pull/96501/commits/4631817ae13b6873d317b27be39f3ab29f9d6645
0e84c7e doc patch fixup & missing help text blank line. gpshead Aug 19, 2022 https://github.com/python/cpython/pull/96501/commits/0e84c7eb995207c1517633021088af36f3b3d35a
7a19c64 Update attribution in Misc/NEWS.d gpshead Aug 25, 2022 https://github.com/python/cpython/pull/96501/commits/7a19c647b2aa6ab9f095cb117b6708a127679b6e
fe60b07 Manually add new field to abi file tiran Sep 1, 2022 https://github.com/python/cpython/pull/96501/commits/fe60b07c1b40d5bca468aa7fb7140af619c63b56
5e1ba25 Move the whatsnew text per review. gpshead Sep 1, 2022 https://github.com/python/cpython/pull/96501/commits/5e1ba255bcdd56b8adcb1da00a99a76af52a2484
bcd2ab0 Merge branch 'CVE-2020-10735-3.10backport' of github.com:python/psrt … gpshead Sep 1, 2022 https://github.com/python/cpython/pull/96501/commits/bcd2ab0e0a81fe2230661045054f71911422e64a
97b157d Make the doctest actually run & fix it. gpshead Sep 1, 2022 https://github.com/python/cpython/pull/96501/commits/97b157d4eab4c9002c6ad461322d285dde39894f
adab0bf Fix the docs build. gpshead Sep 2, 2022 https://github.com/python/cpython/pull/96501/commits/adab0bf3e8b455ef521899e17258749032e721df
059f402 Rename the news file to appease the Bedevere bot. gpshead Sep 2, 2022 https://github.com/python/cpython/pull/96501/commits/059f402a49b3bd862fec6bbbe41a1451d028da26
4d1f053 Merge branch '3.10' into CVE-2020-10735-3.10backport gpshead Sep 2, 2022 https://github.com/python/cpython/pull/96501/commits/4d1f0534d8815270c9b912b343813eedefe7cf4a
35c2d42 hexadecimal spelling =) gpshead Sep 2, 2022 https://github.com/python/cpython/pull/96501/commits/35c2d428df0522533aafdc5b7a5c4bffd2818e7d
Clear filters https://github.com/python/cpython/pull/96501/files
Please reload this pagehttps://github.com/python/cpython/pull/96501/files
Please reload this pagehttps://github.com/python/cpython/pull/96501/files
python3.10.abi https://github.com/python/cpython/pull/96501/files#diff-d28f9334b36aef5a0300f5e12bb38e96a7da2db1680bbdbd1a11a54eff92f5a1
functions.rst https://github.com/python/cpython/pull/96501/files#diff-6a7a07ac473fdd76734669b1b70626ad2176011129902f6add017810f54d0439
json.rst https://github.com/python/cpython/pull/96501/files#diff-31831534a45e7154ec80da9cec0fa478ffef9b129f8a8dbb45270ca45eebdc57
stdtypes.rst https://github.com/python/cpython/pull/96501/files#diff-08a31a70dd1f6d97aa8dacdce77db4de04c700d9949be1af611a595186aad5b3
sys.rst https://github.com/python/cpython/pull/96501/files#diff-26fe9050845b6be0f74760ffe9095874cfe2dfec55c22b18e7dba58f3978a418
test.rst https://github.com/python/cpython/pull/96501/files#diff-9c776940ef00f1a36f9b8acab3dee7d70f992af8a03fbe01f5973ff9e2bcd454
cmdline.rst https://github.com/python/cpython/pull/96501/files#diff-5f4de3bbf22aa3cc7412333ded7d7729ae0ac23703551daecac350869768b4ef
3.10.rst https://github.com/python/cpython/pull/96501/files#diff-a68d5b2117cfed2ddb0b199e367c22ce9c1427d4a016277eafddb551ca4f250c
pycore_initconfig.h https://github.com/python/cpython/pull/96501/files#diff-18955faf9bcc909d91ecdd289135e41643c0c499eb5039424c26ee6f18be53f7
pycore_interp.h https://github.com/python/cpython/pull/96501/files#diff-cb06b7ba43789a1d6ae5bef46baa8a255b72dbcd2b44bfec7f146ea4e94dbfa0
pycore_long.h https://github.com/python/cpython/pull/96501/files#diff-0817b8ffc6c3af36ea39ebabafe70c849d6ee7cb6621d3bda857f3ed25a37511
test_sidebar.py https://github.com/python/cpython/pull/96501/files#diff-8ba244944042d0a84a2030682a806bbb7e708e7a0046bdb5687adf32c84826fc
__init__.py https://github.com/python/cpython/pull/96501/files#diff-d925268c057737ba320c489ca302fd5125f14840d22e50cfe226bdb5bb88ba8d
test_ast.py https://github.com/python/cpython/pull/96501/files#diff-3f516b60719dd445d33225e4f316b36e85c9c51a843a0147349d11a005c55937
test_cmd_line.py https://github.com/python/cpython/pull/96501/files#diff-128fff16ea63b541718887f5c714e0c1a357414fe1146b4893ef699e8853e3b0
test_compile.py https://github.com/python/cpython/pull/96501/files#diff-c69ceae0611c40012b4691e3536bf17efacdb5b51b8e155eec9a939108e42e43
test_decimal.py https://github.com/python/cpython/pull/96501/files#diff-0bf3efdde952043078e322013c2459632397c6a9b312d49e70ae4a9791e2a1d8
test_int.py https://github.com/python/cpython/pull/96501/files#diff-18ccbdfd8076e3f5b7f84f250e7f312799c3db073d3c8e351f5ce4ad18d3c304
test_decode.py https://github.com/python/cpython/pull/96501/files#diff-bb9c9520a9c6971128d292b093d2ac0edce145a51e182d514b783d90cb25e8e2
test_sys.py https://github.com/python/cpython/pull/96501/files#diff-f3ae0e3fbb12fe0717e2d9d8801f5d9f3091c34254d1302b228422d7d07fdc5d
test_xmlrpc.py https://github.com/python/cpython/pull/96501/files#diff-81a998365ca0823c9f1129137fce9dc0258b080728b165bcb498f06af30cc7d0
2022-08-07-16-53-38.gh-issue-95778.ch010gps.rst https://github.com/python/cpython/pull/96501/files#diff-b43b52d1cb3cc2776e975eb3e4fdf44450f93ea09002ea3ef6ce4c982c8e9ac4
longobject.c https://github.com/python/cpython/pull/96501/files#diff-1a6e70e2beeecad88840c67284ac4d54a36998029244771fcc820e801390726a
pegen.c https://github.com/python/cpython/pull/96501/files#diff-ec9a9d08c5b1d518997db0f5b4795c528a41efc35507d6c2a384eee43f047cb7
sysmodule.c.h https://github.com/python/cpython/pull/96501/files#diff-54f7fc80092fe671aa23ebdff85d74508c67b6c5c15b8f0c3e95cba49da869ed
initconfig.c https://github.com/python/cpython/pull/96501/files#diff-bde30a9f2283aadeea54d703778ec8edf01c71bac3cfe6479035fc13ddc3296b
sysmodule.c https://github.com/python/cpython/pull/96501/files#diff-a3a5c73931235f7f344c072dc755d6508e13923db3f5d581c5e88652075871cb
Doc/data/python3.10.abihttps://github.com/python/cpython/pull/96501/files#diff-d28f9334b36aef5a0300f5e12bb38e96a7da2db1680bbdbd1a11a54eff92f5a1
View file https://github.com/gpshead/cpython/blob/35c2d428df0522533aafdc5b7a5c4bffd2818e7d/Doc/data/python3.10.abi
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/96501/{{ revealButtonHref }}
https://github.com/python/cpython/pull/96501/files#diff-d28f9334b36aef5a0300f5e12bb38e96a7da2db1680bbdbd1a11a54eff92f5a1
https://github.com/python/cpython/pull/96501/files#diff-d28f9334b36aef5a0300f5e12bb38e96a7da2db1680bbdbd1a11a54eff92f5a1
https://github.com/python/cpython/pull/96501/files#diff-d28f9334b36aef5a0300f5e12bb38e96a7da2db1680bbdbd1a11a54eff92f5a1
https://github.com/python/cpython/pull/96501/files#diff-d28f9334b36aef5a0300f5e12bb38e96a7da2db1680bbdbd1a11a54eff92f5a1
Doc/library/functions.rsthttps://github.com/python/cpython/pull/96501/files#diff-6a7a07ac473fdd76734669b1b70626ad2176011129902f6add017810f54d0439
View file https://github.com/gpshead/cpython/blob/35c2d428df0522533aafdc5b7a5c4bffd2818e7d/Doc/library/functions.rst
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/96501/{{ revealButtonHref }}
https://github.com/python/cpython/pull/96501/files#diff-6a7a07ac473fdd76734669b1b70626ad2176011129902f6add017810f54d0439
https://github.com/python/cpython/pull/96501/files#diff-6a7a07ac473fdd76734669b1b70626ad2176011129902f6add017810f54d0439
Doc/library/json.rsthttps://github.com/python/cpython/pull/96501/files#diff-31831534a45e7154ec80da9cec0fa478ffef9b129f8a8dbb45270ca45eebdc57
View file https://github.com/gpshead/cpython/blob/35c2d428df0522533aafdc5b7a5c4bffd2818e7d/Doc/library/json.rst
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/96501/{{ revealButtonHref }}
https://github.com/python/cpython/pull/96501/files#diff-31831534a45e7154ec80da9cec0fa478ffef9b129f8a8dbb45270ca45eebdc57
https://github.com/python/cpython/pull/96501/files#diff-31831534a45e7154ec80da9cec0fa478ffef9b129f8a8dbb45270ca45eebdc57
https://github.com/python/cpython/pull/96501/files#diff-31831534a45e7154ec80da9cec0fa478ffef9b129f8a8dbb45270ca45eebdc57
https://github.com/python/cpython/pull/96501/files#diff-31831534a45e7154ec80da9cec0fa478ffef9b129f8a8dbb45270ca45eebdc57
Doc/library/stdtypes.rsthttps://github.com/python/cpython/pull/96501/files#diff-08a31a70dd1f6d97aa8dacdce77db4de04c700d9949be1af611a595186aad5b3
View file https://github.com/gpshead/cpython/blob/35c2d428df0522533aafdc5b7a5c4bffd2818e7d/Doc/library/stdtypes.rst
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/96501/{{ revealButtonHref }}
https://github.com/python/cpython/pull/96501/files#diff-08a31a70dd1f6d97aa8dacdce77db4de04c700d9949be1af611a595186aad5b3
https://github.com/python/cpython/pull/96501/files#diff-08a31a70dd1f6d97aa8dacdce77db4de04c700d9949be1af611a595186aad5b3
https://github.com/python/cpython/pull/96501/files#diff-08a31a70dd1f6d97aa8dacdce77db4de04c700d9949be1af611a595186aad5b3
https://github.com/python/cpython/pull/96501/files#diff-08a31a70dd1f6d97aa8dacdce77db4de04c700d9949be1af611a595186aad5b3
Doc/library/sys.rsthttps://github.com/python/cpython/pull/96501/files#diff-26fe9050845b6be0f74760ffe9095874cfe2dfec55c22b18e7dba58f3978a418
View file https://github.com/gpshead/cpython/blob/35c2d428df0522533aafdc5b7a5c4bffd2818e7d/Doc/library/sys.rst
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/96501/{{ revealButtonHref }}
https://github.com/python/cpython/pull/96501/files#diff-26fe9050845b6be0f74760ffe9095874cfe2dfec55c22b18e7dba58f3978a418
https://github.com/python/cpython/pull/96501/files#diff-26fe9050845b6be0f74760ffe9095874cfe2dfec55c22b18e7dba58f3978a418
https://github.com/python/cpython/pull/96501/files#diff-26fe9050845b6be0f74760ffe9095874cfe2dfec55c22b18e7dba58f3978a418
https://github.com/python/cpython/pull/96501/files#diff-26fe9050845b6be0f74760ffe9095874cfe2dfec55c22b18e7dba58f3978a418
https://github.com/python/cpython/pull/96501/files#diff-26fe9050845b6be0f74760ffe9095874cfe2dfec55c22b18e7dba58f3978a418
https://github.com/python/cpython/pull/96501/files#diff-26fe9050845b6be0f74760ffe9095874cfe2dfec55c22b18e7dba58f3978a418
https://github.com/python/cpython/pull/96501/files#diff-26fe9050845b6be0f74760ffe9095874cfe2dfec55c22b18e7dba58f3978a418
https://github.com/python/cpython/pull/96501/files#diff-26fe9050845b6be0f74760ffe9095874cfe2dfec55c22b18e7dba58f3978a418
https://github.com/python/cpython/pull/96501/files#diff-26fe9050845b6be0f74760ffe9095874cfe2dfec55c22b18e7dba58f3978a418
https://github.com/python/cpython/pull/96501/files#diff-26fe9050845b6be0f74760ffe9095874cfe2dfec55c22b18e7dba58f3978a418
Doc/library/test.rsthttps://github.com/python/cpython/pull/96501/files#diff-9c776940ef00f1a36f9b8acab3dee7d70f992af8a03fbe01f5973ff9e2bcd454
View file https://github.com/gpshead/cpython/blob/35c2d428df0522533aafdc5b7a5c4bffd2818e7d/Doc/library/test.rst
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/96501/{{ revealButtonHref }}
https://github.com/python/cpython/pull/96501/files#diff-9c776940ef00f1a36f9b8acab3dee7d70f992af8a03fbe01f5973ff9e2bcd454
https://github.com/python/cpython/pull/96501/files#diff-9c776940ef00f1a36f9b8acab3dee7d70f992af8a03fbe01f5973ff9e2bcd454
Please reload this pagehttps://github.com/python/cpython/pull/96501/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.