René's URL Explorer Experiment


Title: gh-130094: Fix race conditions in `importlib` by colesbury · Pull Request #130101 · python/cpython · GitHub

Open Graph Title: gh-130094: Fix race conditions in `importlib` by colesbury · Pull Request #130101 · python/cpython

X Title: gh-130094: Fix race conditions in `importlib` by colesbury · Pull Request #130101 · python/cpython

Description: Entries may be added or removed from sys.meta_path concurrently. For example, setuptools temporarily adds and removes the distutils finder from the beginning of the list. The local copy ensures that we don't skip over any entries. Some packages modify sys.modules during import. For example, collections inserts the entry for collections.abc into sys.modules during import. We need to ensure that we re-check sys.modules after the parent module is fully initialized. Issue: gh-130094

Open Graph Description: Entries may be added or removed from sys.meta_path concurrently. For example, setuptools temporarily adds and removes the distutils finder from the beginning of the list. The local copy ensures tha...

X Description: Entries may be added or removed from sys.meta_path concurrently. For example, setuptools temporarily adds and removes the distutils finder from the beginning of the list. The local copy ensures tha...

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

X: @github

direct link

Domain: github.com

react-profiling0
react-import-mapreact,react-dom,react-dom/client,react-dom/profiling,react-is,react-reconciler,react/compiler-runtime,react/jsx-dev-runtime,react/jsx-runtime,scheduler@d5750093facf
route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:d3096464-a7d1-3f4d-484f-c138dff3ab97
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idB7E4:9EF81:4879AA:5E3D29:6AED2405
html-safe-nonce8d28e1e31b1d1377d15373451d970086eca1645915f5dd58c42558e914958e90
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCN0U0OjlFRjgxOjQ4NzlBQTo1RTNEMjk6NkFFRDI0MDUiLCJ2aXNpdG9yX2lkIjoiOTE3MzAyNjI0MTk5MTg5NTA5IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmacec6b26829a055ba8c88568cde3dd9cb919f382dad308c50a6b2892a78679d4d0
hovercard-subject-tagpull_request:2334978461
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/130101/files
twitter:imagehttps://avatars.githubusercontent.com/u/655866?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/655866?s=400&v=4
og:image:altEntries may be added or removed from sys.meta_path concurrently. For example, setuptools temporarily adds and removes the distutils finder from the beginning of the list. The local copy ensures tha...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
Nonee3e0f7f63e50c6fe879198a93a0a023a648ecc0a5e9bc3b5e033ac57172237e6
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
release707a24b346ac8a82878b9c084efaa38a997660cb
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/python/cpython/pull/130101/files#start-of-content
https://github.com/
Sign inhttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F130101%2Ffiles
GitHubRepository hosting, code review, and collaborationhttps://github.com/platform
CopilotAI coding agent for tasks, projects, and automated workhttps://github.com/features/copilot
ActionsCI/CD and automationhttps://github.com/features/actions
Code QualityQuality analysis, fixes, and enforcementhttps://github.com/features/code-quality
CodespacesCloud development environmentshttps://github.com/features/codespaces
Code SecurityVulnerability detection and remediationhttps://github.com/security/advanced-security/code-security
Secret ProtectionSecret scanning and leak preventionhttps://github.com/security/advanced-security/secret-protection
All Featureshttps://github.com/features
Documentationhttps://docs.github.com/en
Traininghttps://learn.github.com/skills
Certificationshttps://learn.github.com/credentials
Build with Copilothttps://github.com/features/ai
Customize Copilothttps://docs.github.com/en/copilot/how-tos/copilot-on-github/customize-copilot/customize-copilot-overview
Integrationshttps://github.com/marketplace
Trending reposhttps://github.com/trending
GitHub Sponsorshttps://github.com/open-source/sponsors
Developer articleshttps://github.com/resources/articles
ChangelogYour source for the latest features, improvements, and fixes across GitHub products, all in one place.https://github.blog/changelog/
Enterpriseshttps://github.com/enterprise
Teamhttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
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
See all industrieshttps://github.com/solutions/industry
Why GitHubhttps://github.com/why-github
Customer Storieshttps://github.com/customer-stories
Business insightshttps://github.com/solutions/executive-insights
Trust Centerhttps://github.com/trust-center
GitHub Advanced SecurityEnterprise-grade code securityhttps://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/enterprise/premium-support
Documentationhttps://docs.github.com/en
Resource centerhttps://github.com/resources
Bloghttps://github.blog/
Events & webinarshttps://github.com/resources/events
Community Forumhttps://github.com/orgs/community/discussions
Customer Storieshttps://github.com/customer-stories
Integrationshttps://github.com/marketplace
Customer supporthttps://help.github.com/
Traininghttps://learn.github.com/skills
GitHub Statushttps://www.githubstatus.com/
Abouthttps://github.com/about
Partnershttps://github.com/partners
Changeloghttps://github.blog/changelog/
GitHub UniverseThe event for developers, by developers — talks, workshops, and what’s next for GitHub.https://githubuniverse.com/
Pricinghttps://github.com/pricing
Sign inhttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F130101%2Ffiles
Sign uphttps://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/130101/files
Reloadhttps://github.com/python/cpython/pull/130101/files
Reloadhttps://github.com/python/cpython/pull/130101/files
pythonhttps://github.com/python
cpythonhttps://github.com/python/cpython
Codehttps://github.com/python/cpython
Issues5k+ (5k+)https://github.com/python/cpython/issues
Pull requests2.3k (2.3k)https://github.com/python/cpython/pulls
Actionshttps://github.com/python/cpython/actions
Projectshttps://github.com/python/cpython/projects
Security and qualityhttps://github.com/python/cpython/security
Insightshttps://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
colesburyhttps://github.com/colesbury
python:mainhttps://github.com/python/cpython/tree/main
colesbury:gh-130094-sys-meta-pathhttps://github.com/colesbury/cpython/tree/gh-130094-sys-meta-path
Conversation 11 https://github.com/python/cpython/pull/130101
Commits 6 https://github.com/python/cpython/pull/130101/commits
Checks 4 https://github.com/python/cpython/pull/130101/checks
Files changed https://github.com/python/cpython/pull/130101/files
Please reload this pagehttps://github.com/python/cpython/pull/130101/files
gh-130094: Fix race conditions in importlib https://github.com/python/cpython/pull/130101/files#top
Show all changes 6 commits https://github.com/python/cpython/pull/130101/files
194beca gh-130094: Fix race condition in `_find_spec` colesbury Feb 14, 2025 https://github.com/python/cpython/pull/130101/commits/194beca4474ccf381d88f0797f9d6a0a85c41cd0
5c2a6d7 Update blurb colesbury Feb 14, 2025 https://github.com/python/cpython/pull/130101/commits/5c2a6d7aa1e13631c97931506ddf495dd7488970
d5bdf6a Update test_frozenmain.h colesbury Feb 14, 2025 https://github.com/python/cpython/pull/130101/commits/d5bdf6a2060bd70f2ee6842d6619a5d997985b29
76fd124 Fix another race condition colesbury Feb 14, 2025 https://github.com/python/cpython/pull/130101/commits/76fd124377903bf4faf6c30cc37c559f01773eb5
905549a Re-add removed check colesbury Feb 14, 2025 https://github.com/python/cpython/pull/130101/commits/905549ade8a22d197bfefe9f8a9b926933a51423
0725f90 Update Lib/importlib/_bootstrap.py colesbury Feb 18, 2025 https://github.com/python/cpython/pull/130101/commits/0725f905cf719e7d6d291cb3f0f83b240962c571
Clear filters https://github.com/python/cpython/pull/130101/files
Please reload this pagehttps://github.com/python/cpython/pull/130101/files
Please reload this pagehttps://github.com/python/cpython/pull/130101/files
_bootstrap.py https://github.com/python/cpython/pull/130101/files#diff-dba786ae26d5505c4c367a93b1179c2f80f2433d983b84bacb9001fb552f0761
2025-02-14-00-32-52.gh-issue-130094.m3EF9E.rst https://github.com/python/cpython/pull/130101/files#diff-d14ea55c962837068f59a603c4c2f07afb7e92655a4d9eecee3703b6ed36b7ea
https://github.com/python/cpython/blob/main/.github/CODEOWNERS#L261
Lib/importlib/_bootstrap.pyhttps://github.com/python/cpython/pull/130101/files#diff-dba786ae26d5505c4c367a93b1179c2f80f2433d983b84bacb9001fb552f0761
View file https://github.com/colesbury/cpython/blob/0725f905cf719e7d6d291cb3f0f83b240962c571/Lib/importlib/_bootstrap.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/130101/{{ revealButtonHref }}
https://github.com/python/cpython/pull/130101/files#diff-dba786ae26d5505c4c367a93b1179c2f80f2433d983b84bacb9001fb552f0761
https://github.com/python/cpython/pull/130101/files#diff-dba786ae26d5505c4c367a93b1179c2f80f2433d983b84bacb9001fb552f0761
https://github.com/python/cpython/pull/130101/files#diff-dba786ae26d5505c4c367a93b1179c2f80f2433d983b84bacb9001fb552f0761
https://github.com/python/cpython/pull/130101/files#diff-dba786ae26d5505c4c367a93b1179c2f80f2433d983b84bacb9001fb552f0761
https://github.com/python/cpython/pull/130101/files#diff-dba786ae26d5505c4c367a93b1179c2f80f2433d983b84bacb9001fb552f0761
Misc/NEWS.d/next/Core_and_Builtins/2025-02-14-00-32-52.gh-issue-130094.m3EF9E.rsthttps://github.com/python/cpython/pull/130101/files#diff-d14ea55c962837068f59a603c4c2f07afb7e92655a4d9eecee3703b6ed36b7ea
View file https://github.com/colesbury/cpython/blob/0725f905cf719e7d6d291cb3f0f83b240962c571/Misc/NEWS.d/next/Core_and_Builtins/2025-02-14-00-32-52.gh-issue-130094.m3EF9E.rst
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/130101/{{ revealButtonHref }}
Please reload this pagehttps://github.com/python/cpython/pull/130101/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.