infinitered / ignite-andross

The original React Native boilerplate from Infinite Red - Redux, React Navigation, & more
https://infinite.red/ignite
MIT License
475 stars 151 forks source link

Upgrade to react native 0.60 #285

Open pa-bouly opened 5 years ago

pa-bouly commented 5 years ago

Hi, thanks for this great boilerplate! Do you plan to upgrade it with the last release of RN ?

jamonholmgren commented 5 years ago

Thanks for the kind words @pa-bouly ! We'd love a PR from the community, as we're focused on Bowser currently.

karimmorta commented 5 years ago

Thanks for the great work :) @jamonholmgren Any guidance on how to do that ?

jamonholmgren commented 5 years ago

@karimmorta Thank you!

I would start with the files located here: https://github.com/infinitered/ignite-andross/tree/master/boilerplate

Have those open, and ignite a new project like so:

ignite new MyAndross -b ../ignite-andross

Go through the steps of upgrading (possibly just react-native unlink && react-native upgrade ?)

Then, once it's upgraded, look at the diff (git diff) and apply those same changes to the files in the boilerplate directory. And then generate a new Andross project the same way as before and see if it compiles with 0.60 to check your changes.

It's a little tedious but it isn't hard!

yongloon commented 4 years ago

@karimmorta Thank you!

I would start with the files located here: https://github.com/infinitered/ignite-andross/tree/master/boilerplate

Have those open, and ignite a new project like so:

ignite new MyAndross -b ../ignite-andross

Go through the steps of upgrading (possibly just react-native unlink && react-native upgrade ?)

Then, once it's upgraded, look at the diff (git diff) and apply those same changes to the files in the boilerplate directory. And then generate a new Andross project the same way as before and see if it compiles with 0.60 to check your changes.

It's a little tedious but it isn't hard!

The app crash after upgrade to 0.60+

shaikhaffan commented 4 years ago

@nyl9488 i upgraded to latest version

yongloon commented 4 years ago

@nyl9488 i upgraded to latest version

how did u do it?

gavinangym commented 4 years ago

I took a stab at this and was able to get: ignite new MyProject -b ignite-andross to work with a couple of caveats:

  1. No react-native-i18n (anyway it has been deprecated)
  2. No react-native-vector-icons
  3. Need to add some code to the end of the Pod file to resolve an issue with react-native-config where the GeneratedDotEnv.h file cannot be found. this issue
  4. Need to run pod install after the project generation to resolve [this issue] (https://github.com/software-mansion/react-native-gesture-handler/issues/676) with gesture handler

For #1 and 2, I looked at the bowser boilerplate.js file and noticed that there is no option to add those 2 libraries anyway, so I think is safe to omit. If required, the solution should be the same as the solution to #3

3 I think I can use the ignite.patchInFile utility to include the necessary code in the Podfile, but the stumbling block is the running pod install part, which was supposed to be done by the final running of yarn after installing the boilerplate stuff, which doesn't really seem to work.

I'd be happy to contribute my stuff if I can get it to work seamlessly if anyone has any ideas

bencergazda commented 4 years ago

Andross already supports React Native 0.61.4