| e94611e1 | 15-Dec-2021 |
Eric Samelson <[email protected]> |
[expo-dev-launcher] take 2 at SDK 44 plugin compatibility (#15570)
Co-authored-by: Łukasz Kosmaty <[email protected]># Why
when testing #15562 on the sdk-44 branch I found there were s
[expo-dev-launcher] take 2 at SDK 44 plugin compatibility (#15570)
Co-authored-by: Łukasz Kosmaty <[email protected]># Why
when testing #15562 on the sdk-44 branch I found there were still a few issues -- (1) some expo-modules stuff would be inadvertently removed from AppDelegate, even though the project would build, and (2) tests were failing.
# How
(commit 1) added the correct logic for SDK 44's `initializeReactNativeApp` function (these regexes are getting so messy, we can't move to expo module initialization soon enough ), and added tests with a corresponding SDK 44 AppDelegate.m.
(commit 2) fixed wrong string constant that was causing failures for SDK 43 and below
(commit 3) fixed tests on the Android side that were logging warnings. @lukmccall is it correct to say that this config plugin cannot handle projects where `createReactActivityDelegate` isn't already overridden in MainActivity? I modified the tests as such, but if that isn't the case, [this warning](https://github.com/expo/expo/blob/4ca5ff72ef3abcc30cb7936eaf9c4b97fed9a5ad/packages/expo-dev-launcher/plugin/src/withDevLauncher.ts#L205-L209) needs to be changed.
# Test Plan
All tests pass. Manually tested in a blank SDK 44 app; cherry picked these commits onto sdk-44 and then used patch-package to patch entire the expo-dev-launcher package to match sdk-44 HEAD. Ran expo prebuild, saw no errors, eyeballed the code changes, and tested the following scenarios:
✅ project builds on iOS and Android
✅ iOS: can open app served by `expo start --dev-client`
✅ iOS: can open app served by `expo start --dev-client --force-manifest-type=expo-updates`
✅ Android: can open app served by `expo start --dev-client`
✅ Android: can open app served by `expo start --dev-client --force-manifest-type=expo-updates`
✅ expo install [email protected], expo prebuild --clean, project builds
✅ iOS (with expo-updates integration): can open app served by `expo start --dev-client`
✅ iOS (with expo-updates integration): can open app served by `expo start --dev-client --force-manifest-type=expo-updates`
✅ iOS (with expo-updates integration): can open published app
✅ Android (with expo-updates integration): can open app served by `expo start --dev-client`
✅ Android (with expo-updates integration): can open app served by `expo start --dev-client --force-manifest-type=expo-updates`
✅ Android (with expo-updates integration): can open published app
show more ...
|
| b728e010 | 07-Oct-2021 |
Łukasz Kosmaty <[email protected]> |
[dev-launcher][android] Adjust config plugin steps for new bare template - SDK 43 (#14635)
# Why
Closes ENG-2076.
# How
Fixed critical bug in regex - in some cases, the regex can't find a m
[dev-launcher][android] Adjust config plugin steps for new bare template - SDK 43 (#14635)
# Why
Closes ENG-2076.
# How
Fixed critical bug in regex - in some cases, the regex can't find a match and will be stuck in the loop.
Added an ungreedy flag to be sure it will stop on the first match.
# Test Plan
- app with new template ✅
- app with old template ✅
show more ...
|