History log of /expo/packages/expo-dev-launcher/plugin/src/withDevLauncher.ts (Results 1 – 25 of 27)
Revision Date Author Comments
# 04e66b12 26-Sep-2023 Gabriel Donadel Dall'Agnol <[email protected]>

[dev-launcher] Launch directly into previously opened project (#24614)

# Why

Closes ENG-10041

# How

In order to allow users to launch directly into previously opened
projects, this PR upda

[dev-launcher] Launch directly into previously opened project (#24614)

# Why

Closes ENG-10041

# How

In order to allow users to launch directly into previously opened
projects, this PR updates `startWithWindow` and `handleIntent` to try to
launch from the most recent URL of the RecentlyOpenedAppsRegistry. If
the bundle cannot be loaded, it falls back to the regular launcher.

This also refactors the existing dev-client and dev-launcher config
plugins adding a new `tryToLaunchLastOpenedBundle` parameter to the
Android and iOS plugin config types.

E.g.

```json
"plugins": [
[
"expo-dev-client",
{
"android": {
"tryToLaunchLastOpenedBundle": true
},
"ios": {
"tryToLaunchLastOpenedBundle": true
}
}
]
]
```

# Test Plan

Run dev-client through bare-expo on Android and iOS testing opening the
app directly, with and without "Recent Apps" and opening through deep
links

# Checklist


- [ ] Documentation is up to date to reflect these changes (eg:
https://docs.expo.dev and README.md).
- [ ] Conforms with the [Documentation Writing Style
Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
- [ ] This diff will work correctly for `npx expo prebuild` & EAS Build
(eg: updated a module plugin).

---------

Co-authored-by: Łukasz Kosmaty <[email protected]>

show more ...


# 7f9ebcf1 21-Sep-2023 Evan Bacon <[email protected]>

chore(expo-dev-menu): Drop support for configuring SDK 44 and below with Prebuild. (#24504)

# Why

Config plugins are versioned with versioned packages, meaning they
shouldn't need to be SDK vers

chore(expo-dev-menu): Drop support for configuring SDK 44 and below with Prebuild. (#24504)

# Why

Config plugins are versioned with versioned packages, meaning they
shouldn't need to be SDK versioned at all. Even if they were, SDK 44 is
pretty far back. On top of that, these checks don't support UNVERSIONED.

<!--
Please describe the motivation for this PR, and link to relevant GitHub
issues, forums posts, or feature requests.
-->

# How

<!--
How did you build this feature or fix this bug and why?
-->

# Test Plan

<!--
Please describe how you tested this change and how a reviewer could
reproduce your test, especially if this PR does not include automated
tests! If possible, please also provide terminal output and/or
screenshots demonstrating your test/reproduction.
-->

# Checklist

<!--
Please check the appropriate items below if they apply to your diff.
This is required for changes to Expo modules.
-->

- [ ] Documentation is up to date to reflect these changes (eg:
https://docs.expo.dev and README.md).
- [ ] Conforms with the [Documentation Writing Style
Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
- [ ] This diff will work correctly for `npx expo prebuild` & EAS Build
(eg: updated a module plugin).

---------

Co-authored-by: Expo Bot <[email protected]>

show more ...


# 435bbba8 25-Sep-2022 Brent Vatne <[email protected]>

Re-export config-plugins from expo package and update docs (#18855)


# c88b85cf 14-Sep-2022 Tomasz Sapeta <[email protected]>

[ios] Bump deployment target to 13.0 (#18873)


# ebbc3563 13-Apr-2022 Łukasz Kosmaty <[email protected]>

[dev-launcher][plugin] Remove dead code


# 87d8f67e 13-Apr-2022 Łukasz Kosmaty <[email protected]>

[dev-launcher][plugin] Remove error handling injection (#17025)

# Why

Closes ENG-4413.

# How

- Remove error handling automatic injection from a config plugin.

> Note:
The documentatio

[dev-launcher][plugin] Remove error handling injection (#17025)

# Why

Closes ENG-4413.

# How

- Remove error handling automatic injection from a config plugin.

> Note:
The documentation was changed a long time ago.


# Test Plan

- run plugin in new project ✅

show more ...


# ca2c0598 03-Mar-2022 Eric Samelson <[email protected]>

[expo-dev-launcher][expo-dev-menu] gate config plugin mods by SDK version (#16495)


# 996ec686 13-Jan-2022 Janic Duplessis <[email protected]>

[dev-launcher] Fix detecting import when using double quotes (#15898)

# Why

If using double quotes in index.js (enforced by prettier) it doesn't detect the import properly.

# How

Uses a reg

[dev-launcher] Fix detecting import when using double quotes (#15898)

# Why

If using double quotes in index.js (enforced by prettier) it doesn't detect the import properly.

# How

Uses a regex to find the import.

# Test Plan

Test by running expo prebuild and running different combinations of import style that should be supported.

show more ...


# 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 ...


# 8e1a8cc4 15-Dec-2021 Łukasz Kosmaty <[email protected]>

[config][dev-launcher] Fix compatibility with SDK 44 (#15562)


# 0a32265f 08-Dec-2021 Janic Duplessis <[email protected]>

[dev-launcher] Fix main activity when onNewIntent exists (#15459)

# Why

If another plugin adds `onNewIntent` the dev-launcher plugin will cause the method to be added twice and fail building.

[dev-launcher] Fix main activity when onNewIntent exists (#15459)

# Why

If another plugin adds `onNewIntent` the dev-launcher plugin will cause the method to be added twice and fail building.

# How

Separate adding the code in 2 steps, first check if the method exist and add it if it doesn't, second add the code inside the method.

# Test Plan

- Add tests for main activity
- Test in an app that has another plugin that adds code to onNewIntent.

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 ...


# 6a80d9fd 07-Oct-2021 Łukasz Kosmaty <[email protected]>

[dev-launcher][ios] Adjust config plugin for new bare template - SDK 43 (#14633)

# Why

Closes ENG-2077.

# How

Apply changes describe here: https://github.com/expo/expo/pull/14617.

# Test

[dev-launcher][ios] Adjust config plugin for new bare template - SDK 43 (#14633)

# Why

Closes ENG-2077.

# How

Apply changes describe here: https://github.com/expo/expo/pull/14617.

# Test Plan

- https://exponent-internal.slack.com/archives/C011V63429H/p1633039856117100 ✅
- added tests ✅

show more ...


# b96f6724 09-Sep-2021 Łukasz Kosmaty <[email protected]>

[dev-client][plugins] Link to installation instructions in config plugin error messages (#14307)

# Why

Closes ENG-1839.

# How

Add a link to the installation instructions in the error messag

[dev-client][plugins] Link to installation instructions in config plugin error messages (#14307)

# Why

Closes ENG-1839.

# How

Add a link to the installation instructions in the error message.

show more ...


# 35f78160 01-Sep-2021 Bartosz Kaszubowski <[email protected]>

[eslint-config] remove `arrowParens` overwrite, reformat files (#14232)


# 49ec0e5c 19-Aug-2021 Łukasz Kosmaty <[email protected]>

[dev-launcher][plugin] Fix config plugin is not idempotent (#14065)

# Why

Closes ENG-1800.

# How

Updated the plugin checks to handle cases where someone doesn't use `;` or imported `dev-lau

[dev-launcher][plugin] Fix config plugin is not idempotent (#14065)

# Why

Closes ENG-1800.

# How

Updated the plugin checks to handle cases where someone doesn't use `;` or imported `dev-launcher` already.

# Test Plan

- create a new project & run prebuild.

show more ...


# cbed40ab 16-Jul-2021 Eric Samelson <[email protected]>

[expo-dev-launcher][android] update plugin and docs to only initialize UpdatesDevLauncherController in debug builds (#13597)


# a4cd6899 30-Jun-2021 Łukasz Kosmaty <[email protected]>

[dev-launcher][plugin] Ensure that `withErrorHandling` is triggered on every platform (#13438)

# Why

Closes ENG-1442.

# How

If someone runs `expo run:ios`, the config plugin won't modify `i

[dev-launcher][plugin] Ensure that `withErrorHandling` is triggered on every platform (#13438)

# Why

Closes ENG-1442.

# How

If someone runs `expo run:ios`, the config plugin won't modify `index.js`, because `withDangerousMod` is tied to the platform.

# Test Plan

- run `expo run:ios` and check if the `index.js` was modified ✅
- run `expo eject` and check if the `index.js` was modified ✅

show more ...


# f1cbbb78 24-Jun-2021 Łukasz Kosmaty <[email protected]>

[dev-launcher][ios] Ensure error handler is initialized (#13384)


# 78926e28 24-Jun-2021 Ville Immonen <[email protected]>

[dev-client][plugin] Use Node module resolution to find package paths for Podfile (#13382)


# 2136ece3 18-Jun-2021 Eric Samelson <[email protected]>

[expo-dev-launcher] add updates integration to config plugin (#13198)


# 0ded9418 10-Jun-2021 Łukasz Kosmaty <[email protected]>

[dev-launcher] Improve error messages (#12934)

# Why

Closes ENG-1021.

# How

- Added global error handler - similar solution to the one used in the `expo-error-recovery`.
- Added `Possible

[dev-launcher] Improve error messages (#12934)

# Why

Closes ENG-1021.

# How

- Added global error handler - similar solution to the one used in the `expo-error-recovery`.
- Added `Possible solutions` to the error message if we can recognize the exception.
- Updated documentation.
- Updated the config plugin.

# Test Plan

- bare-expo ✅
- `npx crna -t with-dev-client` ✅

show more ...


# 5e3e8151 06-May-2021 Ville Immonen <[email protected]>

[expo-dev-launcher] Fix config plugin not including expo-dev-launcher in Podfile (#12828)


# 9b66912a 26-Apr-2021 Evan Bacon <[email protected]>

[dev-menu] Created versioned plugins (#12715)

* Created versioned plugins

* changelog


# d17a4a6e 22-Apr-2021 Evan Bacon <[email protected]>

[dev menu] add AppDelegate unit tests (#12651)

* Added tests for expo-dev-launcher AppDelegate plugin

* Added tests for expo-dev-menu AppDelegate plugin

* changelog


12