-
Notifications
You must be signed in to change notification settings - Fork 2.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[No QA] Upgrade React Native to 0.66 #6914
Conversation
This is the correct time to upgrade the RN-web as well. We will fix a couple of issues along with this. |
I was thinking we would upgrade RN first, then RN-web in a separate PR. Do you think we should do both in a single PR? |
It actually looks like we're pointing at our fork, which is several commits ahead of the upstream react-native-web. So I'm not sure there's anything to upgrade there. |
Ok. Sounds great. Even if we had to. It should definitely be a separate PR. |
I'm getting an infinite spinner trying to open the Plaid modal on Android. I wonder if I broke it or if I'm just holding something wrong for testing Plaid on dev. Would be best to get this working on dev, but I did double-check to verify that the Plaid bank account setup is covered by regression tests: https://expensify.slack.com/archives/C9YU7BX5M/p1640874804291700 |
Yeah, and also refactor our app to use |
I think this PR does that. Some of our dependencies will need to be upgraded for all these warnings to go away. |
Ahh, got Plaid working on Android. I needed a second ngrok tunnel for the web-secure API. |
# Conflicts: # ios/Podfile.lock # package.json
Taking this out of draft |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes look good to me, but I'm not super familiar with the gradle changes. Do you know someone else who is and can double check them?
Tagging in @Julesssss for.a second review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All you Jules
Regarding the Android build failure, @Julesssss did you try running |
Or at minimum, |
I tried |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Haven't been able to get android / ios to build, but I usually have to struggle to get those to build on my machine. @Julesssss feel free to merge if you can get both of those building for you
Wiping node_modules resolved the Android terminal issue. I struggled to build iOS from the terminal, but I'm pretty sure it's an issue with my local env as I was able to build from XCode. Merging! |
Actually, while I can build to iOS, I have been unable to fully verify iOS. When building to a physical device I get a connection error, and with simulator, I get an immidiate dyld crash (seems to be related to the RCTTextHeaders library). |
@Julesssss since you said "Merging!" I assumed you had just forgotten to merge this 😬 |
Bad timing on my part... |
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
Yeah... my fault. I started debugging and hadn't yet sent the above message |
Have you been able to verify iOS? If so I'm less worried as it seems to be issues on my end only. |
Well it's not deployed yet. I had no issues building to a simulator, logging in, etc..., but I admittedly did not test with a physical device. Let me try that next |
If you can log in with a physical device and simulator I think we're fine. I don't want to spend too much longer debugging this but will spend another 10 mins or so |
@roryabraham okay, I finally got it to work on an iOS simulator. Not exactly sure why, but after retargeting iOS 12 in XCode and a bunch of other things it works. It must have been something on my side. |
Thanks for working through it @Julesssss. I'm still going to try and run the app on a physical device |
Yeah, everything worked on a physical device too. As stated in Slack, I've had to build from XCode once and then everything starts working normally from the CLI |
🚀 Deployed to staging by @roryabraham in version: 1.1.26-2 🚀
|
🚀 Deployed to staging by @roryabraham in version: 1.1.27-0 🚀
|
🚀 Deployed to production by @roryabraham in version: 1.1.27-1 🚀
|
Details
This pull request upgrades the following packages:
0.64.1
to0.66.4
2.3.0-alpha.1
to2.3.1
^0.61.1
to^0.66.2
1.4.0
to1.4.5
7.1.0
to7.2.0
And adds the
react-native-clean-project
as a dev dependency, along with a usefulclean
script. More details on all that does here. Note that we're using an alpha version because it fixed this issue for me.Note: The React Native Upgrade Helper was used to guide some of these changes.
Note: We should follow-up with an issue to upgrade react-native-modal because it's throwing errors due to the deprecated
removeEventListener
function. This has been fixed in their latest version.Note: We should also follow-up with an issue to upgrade urbanairship-react-native, because it's throwing warnings like
new NativeEventEmitter() was called with a non-null argument without the required removeListeners method
Fixed Issues
Coming from #6898 (comment) and #6874 (comment)
Tests
npm run clean
to clean the projectnpm i && cd ios && pod install && cd ..
QA Steps
None, just regression testing.
Tested On
Screenshots
Web
Mobile Web
Desktop
iOS
Android