-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
[HOLD for payment 2024-04-05] [HOLD for payment 2024-03-26] [Performance] Use Intl API from Hermes where possible #38447
Comments
Triggered auto assignment to @abekkala ( |
If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results. If a regression has occurred and you are the assigned CM follow the instructions here. If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future. |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.54-4 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue: If no regressions arise, payment will be issued on 2024-03-26. 🎊 |
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
|
This got reverted actually, so let's keep it open. But I don't think it needs a regression test |
PAYMENT SUMMARY FOR MAR 26No regression test needed - this can be closed on Mar 26 after waiting period has ended |
Just taking the action here - @abekkala has it all summarized 👍 |
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.57-5 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue: If no regressions arise, payment will be issued on 2024-04-05. 🎊 |
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
|
Coming from Slack cc @hurali97 please comment so I can assign you
### Problem
We have Intl polyfills in the codebase to provide for the missing JS APIs. While that’s not a bad thing, we can take advantage of Hermes supported Intl APIs and avoid polyfilling them. If we don’t do it, we add ~500 ms to the App Startup time on android on a heavy account.
Solution
Hermes has a list of Intl supported APIs and we can take advantage of them. On native platforms, we can remove the Intl APIs that are supported by Hermes and only polyfill the ones that are currently not supported/ worked on by Hermes.
We can safely remove the following polyfills from localize/index.native.ts:
Below is how things will look like after the removal:
With this, we only polyfill the APIs that are not supported/ worked on by hermes. Doing so, we save ~500 ms in the App Startup. Before and After Hermes trace screenshots are attached in the PR description.
Here’s the PR with the implementation.
The text was updated successfully, but these errors were encountered: