-
Notifications
You must be signed in to change notification settings - Fork 4.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Experiment: Use modified version of rememo that uses a tree of Maps #51772
Conversation
Size Change: -789 B (0%) Total Size: 1.7 MB
ℹ️ View Unchanged
|
b12152a
to
1600356
Compare
Rebasing this as I can't remember what the Performance Tests job said. |
Flaky tests detected in 1600356. 🔍 Workflow run URL: https://github.com/WordPress/gutenberg/actions/runs/7635948839
|
|
Nothing mind-blowing. That settles that then! |
Temporarily overrides Gutenberg's
rememo
dependency with a built local copy of https://github.com/noisysocks/rememo/tree/try/map-tree-instead-of-linked-list. This allows us to quickly run the Performance Tests action.The
try/map-tree-instead-of-linked-list
branch makes it so that the cache inrememo
uses a tree ofMap
s instead of a linked list. Basically we cache the result ofselector( foo, bar, baz )
inmap.get( foo ).get( bar ).get( baz )
. This makes cache lookups grow in complexity with the number of arguments (constant) rather than the number of cache entries (linear).