|
| 1 | +# Migration to the New Architecture |
| 2 | + |
| 3 | +This file is a tracker for what has been done to work on the migration of this library and to keep also track of the various todo: |
| 4 | + |
| 5 | +## TODO |
| 6 | + |
| 7 | +- [] Write JS spec in Flow for the New Architecture |
| 8 | +- [] Implent the new Native Code on iOS |
| 9 | +- [] Implent the new Native Code on Android |
| 10 | +- [] Test on OldArch app (iOS) |
| 11 | +- [] Test on OldArch app (Android) |
| 12 | +- [] Test on NewArch app (iOS) |
| 13 | +- [] Test on NewArch app (Android) |
| 14 | +- [] Open PR |
| 15 | + |
| 16 | +## Done |
| 17 | + |
| 18 | +### Setup |
| 19 | +1. Forked and cloned the repo |
| 20 | +1. Checked the list of APIs to migrate. |
| 21 | +1. Created an `OldArch` app (0.70) configured for the Old Architecture. |
| 22 | +1. Run the app to make sure that it works properly. |
| 23 | +1. Created a `NewArch` app (0.70) configured for the New Architecture. |
| 24 | +1. Switched the flags for iOS and Android to have the new arch enabled by default |
| 25 | +1. Run the app to make sure that it works properly. |
| 26 | +1. Moved the apps in the `examples` folder |
| 27 | + |
| 28 | +### Installing blob-utils |
| 29 | +1. Move to `OldArch` |
| 30 | +1. Run `yarn add ../..` to install the blob utils. |
| 31 | +1. `cd ios` |
| 32 | +1. `bundle install && bundle exec pod install` |
| 33 | +1. `cd ..` |
| 34 | +1. `npx react-native run-ios` |
| 35 | +1. Copy the app JS code from `examples/ReactNativeBlobUtil/App.js` to `examples/OldArch/App.js` |
| 36 | +1. Fixed various JS issues |
| 37 | +1. The app depends on the `Picker`. *Note:* It does not support the New Arch, we need to figure out another way to choose. |
| 38 | + 1. run `yarn add @react-native-picker/picker` |
| 39 | + 1. run `bundle exec pod install` from the iOS folder |
| 40 | + 1. re-run the app |
| 41 | +1. Repeat the above steps for `NewArch` |
0 commit comments