Phillip Pan and Facebook GitHub Bot
833d589a68
setup test to use custom queue for RCTImageStoreManager operations instead of module queue ( #41178 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/41178
Changelog: [Internal]
in my quest to get rid of all synthesized `methodQueue`s, we have `RCTImageStoreManager` which uses this throughout. in this diff, i add a config that uses a queue that is managed by the module itself instead of the one generated by the infra.
Reviewed By: cipolleschi
Differential Revision: D50585904
fbshipit-source-id: a33f8a4844fe3ef861bf1c3a7b87a9ed4b24d13f
2023-10-24 14:54:04 -07:00
Ramanpreet Nara and Facebook GitHub Bot
7bc2b730a8
Interop: Introduce Bridge proxy
...
Summary:
The TurboModule interop layer on iOS will ship with a Bridge proxy.
The Bridge proxy is an object that will try to simulate the Bridge's APIs, whenever possible, by delegating to Bridgeless abstractions.
## Changes
This diff introduces the Bridge proxy.
This diff starts attaching the Bridge proxy on legacy native module objects.
## How did we polyfill the APIs
The polyfills can be classified into these categories:
- implemented
- custom warning
- custom error
- default error
- deleted
When there was a sane implementation (e.g: the API belonged to [RCTCallableJSModules](https://www.internalfb.com/code/fbsource/[534223aa13d33b595edcb777189618efe20dd167]/xplat/js/react-native-github/React/Base/RCTCallableJSModules.m?lines=11 ), [RCTModuleRegistry](https://www.internalfb.com/code/fbsource/[9a3ba2b3176b6d1a1f161e33cec51bf892815311]/xplat/js/react-native-github/React/Base/RCTModuleRegistry.m?lines=13 ), [RCTBundleManager](https://www.internalfb.com/code/fbsource/[91fa1f7f49731a16aedbcd5a6740647dc21ff727]/xplat/js/react-native-github/React/Base/RCTBundleManager.m?lines=13 ), or [RCTBundleManager](https://www.internalfb.com/code/fbsource/[91fa1f7f49731a16aedbcd5a6740647dc21ff727]/xplat/js/react-native-github/React/Base/RCTBundleManager.m?lines=13 )), it was implemented.
When it was safe to no-op the API (e.g: loading), it emit a custom warning.
When it was unsafe to call (i.e: we didn't want people calling the API) (e.g: RCTCxxBridge start), it emit a custom error.
All other APIs emit default errors.
Some APIs cannot emit errors because doing so makes the app not render: I put warnings and nooped those APIs.
I think we will have to tune these polyfills based off production crashes/results.
Reviewed By: mdvacca
Differential Revision: D46084318
fbshipit-source-id: c02535073956597a4bf91c14b1980f653cb6d3df
2023-06-15 18:05:55 -07:00