Upgrading is one of those big issues, that you will face dealing with React Native, I want to share my experience, some issues I had and how I did solve them in simple words, this Story (by Garrett McCullough) already has good recommendation for upgrading, I am just going to tackle common issues, so make sure to commit your Code, create new Branch and let the fun begin. (not really ! Good luck my man)

First things first, I did use React Native Upgrade Helper which is code comparison code between your actual version to desired version, so you need to follow which changes to the code you need to make, here when troubles began for me, when I saw ios/Podfile if you do already use Cocoapods then you are good to go skip to next Step, otherwise you will need to in order because auto-linking is out there, install run to install Cocoapods

$ sudo gem install cocoapods

Now add new Podfile to your project using this command :

$ cd ios && Pods init

maybe consider reading more about Cocoapods before continuing it will save you time if you run into issues installing on iOS

Update your ios/Podfile to match the one from React Native Upgrade Helper.

to match the one from React Native Upgrade Helper. Check for dependencies support : you will need to check if every dependency you are using is supporting desired React Native Version otherwise you will need to upgrade to newer version that does.

After upgrading dependencies make sure that you are following the proper implementation of the newer version, some times you will have to remove old instructions you applied and make new changes corresponding to the new version. don’t forget $ cd ios && Pods install to install via Cocoapods

to install via So far project should run on Android after synchronizing gradle ☃️, turn for iOS easy steps ;) .