Skip to content
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

Upgrade React Native Dependency #1102

Open
ErikSin opened this issue May 29, 2023 · 4 comments
Open

Upgrade React Native Dependency #1102

ErikSin opened this issue May 29, 2023 · 4 comments

Comments

@ErikSin
Copy link
Contributor

ErikSin commented May 29, 2023

Upgrade React Native

Upgrade React Native to the latest stable version (v0.71.0). Currently Mapeo Mobile uses v0.66.5.

Changelog:

https://github.com/facebook/react-native/blob/main/CHANGELOG.md

@ErikSin
Copy link
Contributor Author

ErikSin commented May 29, 2023

Patch Package for React-Native

React Native Patch Package Needs to be upgraded for new react native version. According to ReadMe we are adding an environment variable.

@ErikSin ErikSin moved this to 🏗 In progress in Mapeo - Sprint 2023 (Archived) May 29, 2023
@ErikSin
Copy link
Contributor Author

ErikSin commented Jun 8, 2023

Moving to sprint 8: About a weeks worth of work until completion

@ErikSin
Copy link
Contributor Author

ErikSin commented Jun 22, 2023

Current problems that is holding up development.

Polyfill for text-encoder is not working. The upgrade of react-native necessitates an upgrade in react and react-dom versions. This upgrade means the text-encoder in react-dom/server is not working. React-dom/server is being used in ObservationShare.js. There is a polyfill for text-encoder, but that is not working. I have tried changing the polyfill to use polyfillGlobal from react-native/Libraries/Utilities/PolyfillFunctions and text-encoding-polyfill , and it did not fix the problem.

Just wanted to flag this and see if there are any other considerations before I put the work into changing the app code to not use react-dom/server. @gmaclennan @achou11

@ErikSin
Copy link
Contributor Author

ErikSin commented Jun 22, 2023

Maintenance Consideration

A minimum version of node 16 is required by react-native. Unfortunately the version (0.8.1) of nodejs-mobile-react-native that we use utilizes node 12. This leads to a problem with out e2e tests (and ci), as the backend needs to be built using node 12, but is using node 16 in the dev environment. The fix is to specify what version of node is being used in CI, rather then just defaulting to the dev version. This causes some upkeep issues as dev environment and ci environments are using different versions. This is possible to do, just worth mentioning

@ximenabb ximenabb moved this from 🏗 In progress to 👀 In review in Mapeo - Sprint 2023 (Archived) Jul 12, 2023
@ErikSin ErikSin moved this from 👀 In review to 🏗 In progress in Mapeo - Sprint 2023 (Archived) Jul 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: 🏗 In progress
Development

No branches or pull requests

2 participants