react-native icon indicating copy to clipboard operation
react-native copied to clipboard

RangeError: Maximum call stack size exceeded, js engine: hermes when upgrading to 0.64 from 0.63.4

Open aprilmintacpineda opened this issue 4 years ago • 5 comments

Please provide all the information requested. Issues that do not follow this format are likely to stall.

Description

I have upgraded following https://react-native-community.github.io/upgrade-helper/?from=0.63.4&to=0.64.0 but when I run on real devices, I got:

 WARN  Require cycle: node_modules/core-js/internals/microtask.js -> node_modules/core-js/internals/microtask.js

Require cycles are allowed, but can result in uninitialized values. Consider refactoring to remove the need for a cycle.
 WARN  Require cycle: node_modules/rn-fetch-blob/index.js -> node_modules/rn-fetch-blob/polyfill/index.js -> node_modules/rn-fetch-blob/polyfill/Blob.js -> node_modules/rn-fetch-blob/index.js

Require cycles are allowed, but can result in uninitialized values. Consider refactoring to remove the need for a cycle.
 WARN  Require cycle: node_modules/rn-fetch-blob/index.js -> node_modules/rn-fetch-blob/polyfill/index.js -> node_modules/rn-fetch-blob/polyfill/XMLHttpRequest.js -> node_modules/rn-fetch-blob/index.js

Require cycles are allowed, but can result in uninitialized values. Consider refactoring to remove the need for a cycle.
 WARN  Require cycle: node_modules/rn-fetch-blob/index.js -> node_modules/rn-fetch-blob/polyfill/index.js -> node_modules/rn-fetch-blob/polyfill/Fetch.js -> node_modules/rn-fetch-blob/index.js

Require cycles are allowed, but can result in uninitialized values. Consider refactoring to remove the need for a cycle.
 ERROR  RangeError: Maximum call stack size exceeded, js engine: hermes
 LOG  Running "my_app" with {"rootTag":1,"initialProps":{}}
 ERROR  Invariant Violation: "my_app" has not been registered. This can happen if:
* Metro (the local dev server) is run from the wrong folder. Check if Metro is running, stop it and restart it in the current project.
* A module failed to load due to an error and `AppRegistry.registerComponent` wasn't called., js engine: hermes

This happens both on iOS and Android. I am not sure what's causing the errors. I have cleaned, reinstalled everything, but the error persists.

React Native version:

Please see above

Steps To Reproduce

Still not sure as I have simply upgraded to latest version.

Expected Results

Should still work as it did with 0.63.4

Snack, code example, screenshot, or link to a repository:

N/A

aprilmintacpineda avatar Mar 17 '21 03:03 aprilmintacpineda

I have same when I run react native storybook on Hermes engine on iOS/Android. If I disable Hermes and rebuild app everything is OK

oleksandr-dziuban avatar Mar 22 '21 21:03 oleksandr-dziuban

I'm having the same error when using react-native-calendars with hermes. If I disable hermes app runs correctly.

GoktuqCan avatar Jun 06 '21 19:06 GoktuqCan

Disabling the inlineRequires at metro.config, fixed this for me on Android, but I still need to test on iOS. (Testing with rn 0.66.0)

MateusAndrade avatar Oct 13 '21 16:10 MateusAndrade

Do you have a js file in your code that has too many exports, e.g 500 exports?

halaei avatar Dec 05 '21 13:12 halaei

We just encountered this issue as well when enabling hermes with react native "0.70.3". We don't have js files with a lot of exports, but we also have warnings due to "Require cycles" in luxon and aws-amplify.

liebharc avatar Oct 22 '22 17:10 liebharc

Has anyone found the solution? I am also getting the same error in only Android OS.

Screenshot_1684315281

aurangs7 avatar May 17 '23 09:05 aurangs7

We got this fixed in our case by fixing the required cycles.

More concretely the cycles were within aws-amplify and we could prevent them by never importing aws-amplify but use e.g. @aws-amplify/auth instead.

I could imagine that the exact cause might be different for you @aurangs7 , so it might require some investigation.

liebharc avatar May 17 '23 10:05 liebharc

@liebharc According to your comment I fixed all the required cycles but still getting that error, it seems related to the babel. it's been 4 days no clue why this happening. debugging it.....

aurangs7 avatar May 17 '23 15:05 aurangs7

We had this issue on updating from RN0.66.5 to 0.72.4 and affecting Android only.

The error we were seeing on launching the App once the bundled had loaded was:

ERROR Warning: React instrumentation encountered an error: RangeError: Maximum call stack size exceeded

We found that the cause was a legacy call to the Babel Polyfill package which was present only in our index.android.js

import '@babel/polyfill';

So we removed this line and following that we no longer hit the error on App launch.

julianD77 avatar Sep 21 '23 13:09 julianD77

This issue is stale because it has been open 180 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar Mar 20 '24 05:03 github-actions[bot]

This issue was closed because it has been stalled for 7 days with no activity.

github-actions[bot] avatar Mar 27 '24 05:03 github-actions[bot]