Skip to content
Navigation Menu
Sign in
Appearance settings
Platform
AI CODE CREATION
GitHub Copilot
Write better code with AI
GitHub Copilot app
Direct agents from issue to merge
MCP Registry
Integrate external tools
DEVELOPER WORKFLOWS
Actions
Automate any workflow
Codespaces
Instant dev environments
Issues
Plan and track work
Code Review
Manage code changes
Code Quality
Enforce quality at merge
APPLICATION SECURITY
GitHub Advanced Security
Find and fix vulnerabilities
Code security
Secure your code as you build
Secret protection
Stop leaks before they start
EXPLORE
Why GitHub
Documentation
Blog
Changelog
Marketplace
View all features
Solutions
BY COMPANY SIZE
Enterprises
Small and medium teams
Startups
Nonprofits
BY USE CASE
App Modernization
DevSecOps
DevOps
CI/CD
View all use cases
BY INDUSTRY
Healthcare
Financial services
Manufacturing
Government
View all industries
View all solutions
Resources
EXPLORE BY TOPIC
AI
Software Development
DevOps
Security
View all topics
EXPLORE BY TYPE
Customer stories
Events & webinars
Ebooks & reports
Business insights
GitHub Skills
SUPPORT & SERVICES
Documentation
Customer support
Community forum
Trust center
Partners
View all resources
Open Source
COMMUNITY
GitHub Sponsors
Fund open source developers
PROGRAMS
Security Lab
Maintainer Community
Accelerator
GitHub Stars
Archive Program
REPOSITORIES
Topics
Trending
Collections
Enterprise
ENTERPRISE SOLUTIONS
Enterprise platform
AI-powered developer platform
AVAILABLE ADD-ONS
GitHub Advanced Security
Enterprise-grade security features
Copilot for Business
Enterprise-grade AI features
Premium Support
Enterprise-grade 24/7 support
Pricing
Type
/
to search
Sign in
Sign up
Appearance settings
You signed in with another tab or window.
Reload
to refresh your session.
You signed out in another tab or window.
Reload
to refresh your session.
You switched accounts on another tab or window.
Reload
to refresh your session.
Dismiss alert
{{ message }}
Uh oh!
There was an error while loading.
Please reload this page
.
microsoft
/
TypeScript
Public
Notifications
You must be signed in to change notification settings
Fork
13.7k
Star
110k
Code
Issues
5k+
Pull requests
29
Actions
Projects
Wiki
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Actions
Projects
Wiki
Security and quality
Insights
Optimize path mapping lookups
- #59048
#59048
Merged
Daniel Rosenwasser (DanielRosenwasser)
merged 14 commits into
main
microsoft/TypeScript:main
from
binarySearchAndSetsForPatterns
microsoft/TypeScript:binarySearchAndSetsForPatterns
Copy head branch name to clipboard
Aug 29, 2024
Conversation
Commits
14
(14)
Checks
Files changed
Merged
Optimize path mapping lookups
#59048
Daniel Rosenwasser (DanielRosenwasser)
merged 14 commits into
main
microsoft/TypeScript:main
from
binarySearchAndSetsForPatterns
microsoft/TypeScript:binarySearchAndSetsForPatterns
Copy head branch name to clipboard
Commits
Commits on Jun 27, 2024
Use a `Set` and a binary search to find longest-prefix matches more quickly.
Show description for 9de8ff3
Daniel Rosenwasser (DanielRosenwasser)
committed
9de8ff3
View commit details
Copy full SHA for 9de8ff3
Browse repository at this point
Cache more than one input array at a time to avoid redoing work in a ping/pong situation.
Daniel Rosenwasser (DanielRosenwasser)
committed
347908c
View commit details
Copy full SHA for 347908c
Browse repository at this point
Format
Daniel Rosenwasser (DanielRosenwasser)
committed
5b0c17e
View commit details
Copy full SHA for 5b0c17e
Browse repository at this point
Cache calculated `pathPatterns` to avoid recreating them.
Daniel Rosenwasser (DanielRosenwasser)
committed
4a88ba6
View commit details
Copy full SHA for 4a88ba6
Browse repository at this point
Commits on Jun 28, 2024
Move caching to `tryParsePatterns`, avoid creating an intermediate array entirely.
Daniel Rosenwasser (DanielRosenwasser)
committed
123b7c3
View commit details
Copy full SHA for 123b7c3
Browse repository at this point
Format.
Daniel Rosenwasser (DanielRosenwasser)
committed
3d4bc20
View commit details
Copy full SHA for 3d4bc20
Browse repository at this point
Avoid leaning on the WeakMap when we can cache on `ConfigFileSpecs`.
Daniel Rosenwasser (DanielRosenwasser)
committed
8919029
View commit details
Copy full SHA for 8919029
Browse repository at this point
Revert "Avoid leaning on the WeakMap when we can cache on `ConfigFileSpecs`."
Show description for 75835bb
Daniel Rosenwasser (DanielRosenwasser)
committed
75835bb
View commit details
Copy full SHA for 75835bb
Browse repository at this point
Swap conditions.
Daniel Rosenwasser (DanielRosenwasser)
committed
12d1a11
View commit details
Copy full SHA for 12d1a11
Browse repository at this point
Always do a linear search.
Daniel Rosenwasser (DanielRosenwasser)
committed
012259e
View commit details
Copy full SHA for 012259e
Browse repository at this point
Commits on Jul 11, 2024
Just separate patterns into exact strings and maches. Remove all sorting logic.
Daniel Rosenwasser (DanielRosenwasser)
committed
94b522a
View commit details
Copy full SHA for 94b522a
Browse repository at this point
Commits on Aug 14, 2024
Addressed feedback.
Daniel Rosenwasser (DanielRosenwasser)
authored
5342b46
View commit details
Copy full SHA for 5342b46
Browse repository at this point
Commits on Aug 28, 2024
Merge remote-tracking branch 'origin/main' into binarySearchAndSetsForPatterns
Daniel Rosenwasser (DanielRosenwasser)
committed
7e508d0
View commit details
Copy full SHA for 7e508d0
Browse repository at this point
Format.
Daniel Rosenwasser (DanielRosenwasser)
committed
88c76ad
View commit details
Copy full SHA for 88c76ad
Browse repository at this point
You can’t perform that action at this time.