-
Notifications
You must be signed in to change notification settings - Fork 1.6k
react-native 0.60 support and documentation #1625
Description
The release of react-native v0.60 brings with it lots of changes to the way in which 3rd party dependencies such as react-native-code-push are linked and consumed. react-native-code-push needs to update it's project files to support the new autolinking structure and update it's documentation to reflect the installation steps.
Reference Links:
https://facebook.github.io/react-native/blog/2019/07/03/version-60
https://github.com/react-native-community/cli/blob/master/docs/autolinking.md
https://github.com/react-native-community/cli/blob/master/docs/dependencies.md
iOS
Because react-native-code-push already has a podspec defined, I had hoped that autolinking would work for the current version OOB. Attempting to do so and build on iOS, however, results in xcode raising an error about duplicate symbols. The error message encountered is the same as listed in Issue #1597 .
At this time I'm forced to disable autolinking of the module and link it manually.
Android
I have not yet tested the autolinking capability on Android. Based on the information in Issue #1462 it appears the react-native-code-push does not have any direct depdencies on the deprecated android support library.
I believe that this means react-native-code-push should have no problem working with the switch to AndroidX that came with the latest react-native version.
I'll add comments to this issue with any problems I encounter when I begin testing the Android build.
Documentation
The react-native-code-push documentation does not currently contain any mention of the new react-native version or the setup process with autolinking.
Update:
(Related to Issue #1626)
With the release of react-native 0.60.2 the android build process now has an opt in option for using Hermes as the javascript engine on android. See https://facebook.github.io/react-native/docs/hermes
The documentation update should also include any relevant details regarding Hermes support. e.g. Does it have to be disabled to use react-native-code-push? If not, are there any additional setup steps required to make it work?
Deprecated rnpm configuration
Using rnpm configuration settings has been deprecated and will be removed in the next release. A warning is raised during packaging about dependencies still using the old config format. The config values need to be moved into a react-native-config.js file.
The full migration details are documented here: https://github.com/react-native-community/cli/blob/master/docs/configuration.md#migration-guide