René's URL Explorer Experiment


Title: Only check constraints in final phase of type inference by ahejlsberg · Pull Request #29647 · microsoft/TypeScript · GitHub

Open Graph Title: Only check constraints in final phase of type inference by ahejlsberg · Pull Request #29647 · microsoft/TypeScript

X Title: Only check constraints in final phase of type inference by ahejlsberg · Pull Request #29647 · microsoft/TypeScript

Description: TypeScript is a superset of JavaScript that compiles to clean JavaScript output. - Only check constraints in final phase of type inference by ahejlsberg · Pull Request #29647 · microsoft/TypeScript

Open Graph Description: This PR tweaks our inference logic to only check type parameter constraints in the final phase of type argument inference (and specifically not in the phase where contextually sensitive arguments a...

X Description: This PR tweaks our inference logic to only check type parameter constraints in the final phase of type argument inference (and specifically not in the phase where contextually sensitive arguments a...

Opengraph URL: https://github.com/microsoft/TypeScript/pull/29647

X: @github

direct link

Domain: github.com

route-pattern/_view_fragments/voltron/pull_requests/show/:user_id/:repository/:id/pull_request_layout(.:format)
route-controllervoltron_pull_requests_fragments
route-actionpull_request_layout
fetch-noncev2:107964a4-fbed-aa83-4da5-7ea8188d1521
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idD50A:187399:7DF10F:B43ED4:6A637998
html-safe-nonce5c71a4b6a2ca0d048fd2e24fcb7fa2bd5d0b60dc41f67148c77a0be8cc038fa5
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJENTBBOjE4NzM5OTo3REYxMEY6QjQzRUQ0OjZBNjM3OTk4IiwidmlzaXRvcl9pZCI6IjcyNTIzMTIzMDMzMDc4MTY4IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmac1f732927e4460f163d2157752675ed303499a6a3f71b71e84db4b7b15fb2eb39
hovercard-subject-tagpull_request:248950711
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///voltron/pull_requests_fragments/pull_request_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/voltron/pull_requests/show/microsoft/TypeScript/29647/pull_request_layout
twitter:imagehttps://opengraph.githubassets.com/2229ee6e13fe2b66a34c9731a34c8150a784851879d79b997b69deb7fe576f2b/microsoft/TypeScript/pull/29647
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/2229ee6e13fe2b66a34c9731a34c8150a784851879d79b997b69deb7fe576f2b/microsoft/TypeScript/pull/29647
og:image:altThis PR tweaks our inference logic to only check type parameter constraints in the final phase of type argument inference (and specifically not in the phase where contextually sensitive arguments a...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernameahejlsberg
hostnamegithub.com
expected-hostnamegithub.com
None4c1de337de00c7969335f8866af41463301071379a3a15fba12e9b85aa6378d6
turbo-cache-controlno-cache
go-importgithub.com/microsoft/TypeScript git https://github.com/microsoft/TypeScript.git
octolytics-dimension-user_id6154722
octolytics-dimension-user_loginmicrosoft
octolytics-dimension-repository_id20929025
octolytics-dimension-repository_nwomicrosoft/TypeScript
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id20929025
octolytics-dimension-repository_network_root_nwomicrosoft/TypeScript
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releasea4df32552e4c631011bdcd4c81cc3d7408664a8b
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/microsoft/TypeScript/pull/29647#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fmicrosoft%2FTypeScript%2Fpull%2F29647
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
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
Code QualityEnforce quality at mergehttps://github.com/features/code-quality
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
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/accelerator
GitHub Starshttps://stars.github.com
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/enterprise/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%2Fmicrosoft%2FTypeScript%2Fpull%2F29647
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%2Fvoltron%2Fpull_requests_fragments%2Fpull_request_layout&source=header-repo&source_repo=microsoft%2FTypeScript
Reloadhttps://github.com/microsoft/TypeScript/pull/29647
Reloadhttps://github.com/microsoft/TypeScript/pull/29647
Reloadhttps://github.com/microsoft/TypeScript/pull/29647
Please reload this pagehttps://github.com/microsoft/TypeScript/pull/29647
microsoft https://github.com/microsoft
TypeScripthttps://github.com/microsoft/TypeScript
Notifications https://github.com/login?return_to=%2Fmicrosoft%2FTypeScript
Fork 13.6k https://github.com/login?return_to=%2Fmicrosoft%2FTypeScript
Star 110k https://github.com/login?return_to=%2Fmicrosoft%2FTypeScript
Code https://github.com/microsoft/TypeScript
Issues 5k+ https://github.com/microsoft/TypeScript/issues
Pull requests 21 https://github.com/microsoft/TypeScript/pulls
Actions https://github.com/microsoft/TypeScript/actions
Projects https://github.com/microsoft/TypeScript/projects
Models https://github.com/microsoft/TypeScript/models
Wiki https://github.com/microsoft/TypeScript/wiki
Security and quality 0 https://github.com/microsoft/TypeScript/security
Insights https://github.com/microsoft/TypeScript/pulse
Code https://github.com/microsoft/TypeScript
Issues https://github.com/microsoft/TypeScript/issues
Pull requests https://github.com/microsoft/TypeScript/pulls
Actions https://github.com/microsoft/TypeScript/actions
Projects https://github.com/microsoft/TypeScript/projects
Models https://github.com/microsoft/TypeScript/models
Wiki https://github.com/microsoft/TypeScript/wiki
Security and quality https://github.com/microsoft/TypeScript/security
Insights https://github.com/microsoft/TypeScript/pulse
ahejlsberghttps://github.com/ahejlsberg
masterhttps://github.com/microsoft/TypeScript/tree/master
noConstraintsDuringInferencehttps://github.com/microsoft/TypeScript/tree/noConstraintsDuringInference
Conversationhttps://github.com/microsoft/TypeScript/pull/29647
Commits6 (6)https://github.com/microsoft/TypeScript/pull/29647/commits
Checkshttps://github.com/microsoft/TypeScript/pull/29647/checks
Files changedhttps://github.com/microsoft/TypeScript/pull/29647/files
Only check constraints in final phase of type inferencehttps://github.com/microsoft/TypeScript/pull/29647#top
ahejlsberghttps://github.com/ahejlsberg
masterhttps://github.com/microsoft/TypeScript/tree/master
noConstraintsDuringInferencehttps://github.com/microsoft/TypeScript/tree/noConstraintsDuringInference
https://github.com/ahejlsberg
ahejlsberghttps://github.com/ahejlsberg
Jan 30, 2019https://github.com/microsoft/TypeScript/pull/29647#issue-404864621
#29520https://github.com/microsoft/TypeScript/issues/29520
Please reload this pagehttps://github.com/microsoft/TypeScript/pull/29647
ahejlsberghttps://github.com/ahejlsberg
January 30, 2019 06:38https://github.com/microsoft/TypeScript/pull/29647#commits-pushed-7a31706
https://github.com/ahejlsberg
Only check constraints after type argument inference is completehttps://github.com/microsoft/TypeScript/pull/29647/commits/7a31706a9ff01cacd58ca7b5a7601940845b0439
7a31706https://github.com/microsoft/TypeScript/pull/29647/commits/7a31706a9ff01cacd58ca7b5a7601940845b0439
https://github.com/ahejlsberg
Accept new baselineshttps://github.com/microsoft/TypeScript/pull/29647/commits/e0082f6bfc44c3a8c340274d8c9fc9658ab7946a
e0082f6https://github.com/microsoft/TypeScript/pull/29647/commits/e0082f6bfc44c3a8c340274d8c9fc9658ab7946a
https://github.com/ahejlsberg
Add regression testhttps://github.com/microsoft/TypeScript/pull/29647/commits/caa89cafde7a5d53f14b123630e2b3530caa4f2d
caa89cahttps://github.com/microsoft/TypeScript/pull/29647/commits/caa89cafde7a5d53f14b123630e2b3530caa4f2d
https://github.com/ahejlsberg
Accept new baselineshttps://github.com/microsoft/TypeScript/pull/29647/commits/390f20f4fc722bd1f96a625f4f33f59f1b2670be
390f20fhttps://github.com/microsoft/TypeScript/pull/29647/commits/390f20f4fc722bd1f96a625f4f33f59f1b2670be
https://github.com/ahejlsberg
ahejlsberghttps://github.com/ahejlsberg
DanielRosenwasserhttps://github.com/DanielRosenwasser
RyanCavanaughhttps://github.com/RyanCavanaugh
weswighamhttps://github.com/weswigham
January 30, 2019 16:51https://github.com/microsoft/TypeScript/pull/29647#event-2107108803
https://github.com/weswigham
weswighamhttps://github.com/weswigham
Jan 30, 2019 https://github.com/microsoft/TypeScript/pull/29647#pullrequestreview-198229189
View reviewed changes https://github.com/microsoft/TypeScript/pull/29647/files/390f20f4fc722bd1f96a625f4f33f59f1b2670be
tests/baselines/reference/spreadOfParamsFromGeneratorMakesRequiredParams.errors.txthttps://github.com/microsoft/TypeScript/pull/29647/files/390f20f4fc722bd1f96a625f4f33f59f1b2670be#diff-9cb015c99adaa95e4a653b12cd9bdffe77faf46b88fdd82c87f69c9b6098ad3a
weswighamhttps://github.com/weswigham
Jan 30, 2019https://github.com/microsoft/TypeScript/pull/29647#discussion_r252375798
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/microsoft/TypeScript/pull/29647
ahejlsberghttps://github.com/ahejlsberg
Jan 30, 2019https://github.com/microsoft/TypeScript/pull/29647#discussion_r252382666
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/microsoft/TypeScript/pull/29647
weswighamhttps://github.com/weswigham
Jan 30, 2019https://github.com/microsoft/TypeScript/pull/29647#discussion_r252383756
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/microsoft/TypeScript/pull/29647
ahejlsberghttps://github.com/ahejlsberg
January 31, 2019 15:32https://github.com/microsoft/TypeScript/pull/29647#commits-pushed-2a91e7a
https://github.com/ahejlsberg
Revert previous changes, use flag to disable fixing during constraint…https://github.com/microsoft/TypeScript/pull/29647/commits/2a91e7aab2bcf5cf322eb1172c9909a0c8162ab7
2a91e7ahttps://github.com/microsoft/TypeScript/pull/29647/commits/2a91e7aab2bcf5cf322eb1172c9909a0c8162ab7
https://github.com/ahejlsberg
Accept new baselineshttps://github.com/microsoft/TypeScript/pull/29647/commits/51ccfb1201c970691437b039709a540ffd29fda2
51ccfb1https://github.com/microsoft/TypeScript/pull/29647/commits/51ccfb1201c970691437b039709a540ffd29fda2
https://github.com/ahejlsberg
ahejlsberghttps://github.com/ahejlsberg
Jan 31, 2019https://github.com/microsoft/TypeScript/pull/29647#issuecomment-459549072
Please reload this pagehttps://github.com/microsoft/TypeScript/pull/29647
https://github.com/ahejlsberg
ahejlsberghttps://github.com/ahejlsberg
Jan 31, 2019https://github.com/microsoft/TypeScript/pull/29647#issuecomment-459551016
Please reload this pagehttps://github.com/microsoft/TypeScript/pull/29647
https://github.com/RyanCavanaugh
RyanCavanaughhttps://github.com/RyanCavanaugh
Feb 1, 2019 https://github.com/microsoft/TypeScript/pull/29647#pullrequestreview-199217212
View reviewed changes https://github.com/microsoft/TypeScript/pull/29647/files/51ccfb1201c970691437b039709a540ffd29fda2
https://github.com/ahejlsberg
ahejlsberghttps://github.com/ahejlsberg
8827bedhttps://github.com/microsoft/TypeScript/commit/8827bed0e78db5618adb30f8bdf09ef0ddc20080
Feb 1, 2019https://github.com/microsoft/TypeScript/pull/29647#event-2112974041
https://github.com/ahejlsberg
ahejlsberghttps://github.com/ahejlsberg
February 1, 2019 18:54https://github.com/microsoft/TypeScript/pull/29647#event-2112974255
https://github.com/microsoft
microsofthttps://github.com/microsoft
Oct 21, 2025https://github.com/microsoft/TypeScript/pull/29647#event-20415891308
https://github.com/typescript-bot
typescript-bothttps://github.com/typescript-bot
ahejlsberghttps://github.com/ahejlsberg
Oct 21, 2025https://github.com/microsoft/TypeScript/pull/29647#event-20415891824
https://github.co/hiddenchars
https://github.com/microsoft/TypeScript/pull/{{ revealButtonHref }}
Sign up for freehttps://github.com/join?source=comment-repo
Sign inhttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fmicrosoft%2FTypeScript%2Fpull%2F29647
https://github.com/weswigham
weswigham https://github.com/weswigham
https://github.com/microsoft/TypeScript/pull/29647/files/390f20f4fc722bd1f96a625f4f33f59f1b2670be
https://github.com/RyanCavanaugh
RyanCavanaugh https://github.com/RyanCavanaugh
https://github.com/microsoft/TypeScript/pull/29647/files/51ccfb1201c970691437b039709a540ffd29fda2
https://github.com/DanielRosenwasser
DanielRosenwasser https://github.com/DanielRosenwasser
https://github.com/ahejlsberg
ahejlsberg https://github.com/ahejlsberg
Arrow functions treated differently than functions and methods https://github.com/microsoft/TypeScript/issues/29520
Please reload this pagehttps://github.com/microsoft/TypeScript/pull/29647
https://github.com/ahejlsberg
https://github.com/weswigham
https://github.com/RyanCavanaugh
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.