-
Notifications
You must be signed in to change notification settings - Fork 24.4k
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
[Hermes] Bump Hermes #45220
[Hermes] Bump Hermes #45220
Conversation
b2e22b4
to
d818083
Compare
void queueMicrotask(const jsi::Function& callback) override { | ||
return plain().queueMicrotask(callback); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
facebook/hermes@0a632b7 adds this change in JSI. We need it in React Native as well
@@ -544,6 +547,10 @@ class WithRuntimeDecorator : public RuntimeDecorator<Plain, Base> { | |||
Around around{with_}; | |||
return RD::evaluatePreparedJavaScript(js); | |||
} | |||
void queueMicrotask(const Function& callback) override { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
facebook/hermes@0a632b7 adds this change in JSI. We need it in React Native as well
/// its event loop implementation. | ||
/// | ||
/// \param callback a function to be executed as a microtask. | ||
virtual void queueMicrotask(const jsi::Function& callback) = 0; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
facebook/hermes@7bda0c2 adds this change in JSI. We need it in React Native as well
Summary: Changelog: [internal] ## Context We want to enable the new React Native event loop by default for all users on the new RN architecture (on the bridgeless initialization path more concretely), which requires support for microtasks in all the JS engines that the support (Hermes already has it, JSC doesn't). ## Changes This adds initial support for microtasks in JSC, so we can schedule and execute microtasks in this runtime. One limitation about this approach is that, AFAIK, the public API for JSC doesn't allow us to customize its internal microtask queue or specify the method to be used by its built-in `Promise` or native `async function`, so we're forced to continue using a polyfill in that case (which uses `setImmediate` that will be mapped to `queueMicrotask`). Reviewed By: NickGerleman Differential Revision: D54302534 fbshipit-source-id: 47f71620344a81bc6624917f77452106ffbf55a3
Base commit: 9833338 |
Summary:
This PR bumps hermes in 0.74. This is needed because we need the microTask queue that has been shipped in Hermes
Changelog:
[Internal] - Bump Hermes
Test Plan:
CCI is green again for
build_android