[WIP] Upgrade react-native to version 0.69#10238
Closed
roryabraham wants to merge 4 commits intomainfrom
Closed
Conversation
roryabraham
commented
Aug 4, 2022
| @@ -0,0 +1,172 @@ | |||
| #import "AppDelegate.h" | |||
Contributor
Author
There was a problem hiding this comment.
Probably want to review this with extra care – it was renamed from AppDelegate.m to AppDelegate.mm as RN migrated it from Objective-C to Objective-C++. However, we had a fair amount of custom code in AppDelegate.m that I ported over to this file manually.
roryabraham
commented
Aug 4, 2022
| @@ -79,12 +79,12 @@ | |||
| "react-collapse": "^5.1.0", | |||
| "react-content-loader": "^6.1.0", | |||
| "react-dom": "^17.0.2", | |||
Contributor
Author
There was a problem hiding this comment.
You'll notice I intentionally did not update to React 18. In order to do so, we must first enable the new architecture.
Member
|
There is another PR doing the same thing #9841. |
92 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR upgrades NewDot to react-native 0.69 without enabling React 18 and the new architecture. This is going to be a requirement to point our app at https://github.com/Expensify/react-native in order to utilize the bidirectional pagination features we're implementing in there.
Details
npx react-native upgradeand resolving conflicts. This applied a diff to many files and auto-generated some others, most notably the wholeandroid/app/src/main/jnidirectory@rnx-kit/dep-check(as advised by the upgrade helper) to upgrade other dependencies that, according to thedep-checklibrary, would have issues in RN 0.69 if we did not upgrade them. After I was done I removed thedep-checkdev dependency.npm run clean && npm i && cd ios && pod install && cd ..Fixed Issues
$ (partial) #7925
Tests
npm run cleannpm run ios. Sign in and verify that the app works as expected.npm run android. Sign in and verify that the app works as expected.PR Review Checklist
Contributor (PR Author) Checklist
### Fixed Issuessection aboveTestssectionQA stepssectiontoggleReportand notonIconClick)src/languages/*filesSTYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)/** comment above it */displayNamepropertythisproperly so there are no scoping issues (i.e. foronClick={this.submit}the methodthis.submitshould be bound tothisin the constructor)thisare necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);ifthis.submitis never passed to a component event handler likeonClick)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)Avataris modified, I verified thatAvataris working as expected in all cases)PR Reviewer Checklist
The Contributor+ will copy/paste it into a new comment and complete it after the author checklist is completed
### Fixed Issuessection aboveTestssectionQA stepssectiontoggleReportand notonIconClick).src/languages/*filesSTYLE.md) were followedAvatar, I verified the components usingAvatarhave been tested & I retested again)/** comment above it */displayNamepropertythisproperly so there are no scoping issues (i.e. foronClick={this.submit}the methodthis.submitshould be bound tothisin the constructor)thisare necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);ifthis.submitis never passed to a component event handler likeonClick)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)Avataris modified, I verified thatAvataris working as expected in all cases)QA Steps
Screenshots
Web
Mobile Web
Desktop
iOS
Android