Update tsconfigs to node 18 (current LTS) (#24471)# Why Expo supports Node.js LTS, this is currently Node 18. This PR updates from 14 to 18. <!-- Please describe the motivation for this PR,
Update tsconfigs to node 18 (current LTS) (#24471)# Why Expo supports Node.js LTS, this is currently Node 18. This PR updates from 14 to 18. <!-- Please describe the motivation for this PR, and link to relevant GitHub issues, forums posts, or feature requests. --> --------- Co-authored-by: Expo Bot <[email protected]>
show more ...
feat(cli): add `add` command as alias for `install` (#22510)# Why - Coming from `yarn add` to `npx expo add` feels more natural. We also had this alias in the legacy CLI. --------- Co-aut
feat(cli): add `add` command as alias for `install` (#22510)# Why - Coming from `yarn add` to `npx expo add` feels more natural. We also had this alias in the legacy CLI. --------- Co-authored-by: Expo Bot <[email protected]>
[cli] update doctor recommendation to use npx expo-doctor (#21931)# Why Point versioned CLI users towards new doctor. After this, we would backport to SDK 48. # How Update the recommendatio
[cli] update doctor recommendation to use npx expo-doctor (#21931)# Why Point versioned CLI users towards new doctor. After this, we would backport to SDK 48. # How Update the recommendation # Test Plan <img width="657" alt="image" src="https://user-images.githubusercontent.com/8053974/229210734-ec4fdc29-7734-47e9-b587-60bff6ed58aa.png"> # 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 `expo prebuild` & EAS Build (eg: updated a module plugin).
feat(cli)!: use Expo CLI to bundle production apps (#21396)# Why Most of our new Metro bundler features won't work unless we use Expo CLI for every bundler operation (ex: [aliases](https://git
feat(cli)!: use Expo CLI to bundle production apps (#21396)# Why Most of our new Metro bundler features won't work unless we use Expo CLI for every bundler operation (ex: [aliases](https://github.com/expo/expo/pull/21262)). Right now this is the case when building for production on both platforms or building for development on iOS. > Using `npx expo start` when building from Xcode will be added in another PR. # How This PR introduces a new "export:embed" command which is hidden from the `--help` prompt. `npx expo export:embed` accepts the same arguments as `npx react-native bundle` and passes them to the same internal function, but it ensures we use the correct variation of Metro before doing such. This change (and `start` PR) will add more steps for migrating to "Expo CLI" but it will also remove the need for us to generate the `metro.config.js` file in the project on `npx expo prebuild` since we can now reliably default to `@expo/metro-config`. The change should only apply to Metro bundler features (all application code could be affected), but it won't obstruct Expo Modules Core or using Expo CLI. <!-- How did you build this feature or fix this bug and why? --> # Test Plan - All of our existing E2E tests should use the new command, if they contain features like aliases then they'll work. - Copied the changes from `@expo/cli` into a new project's node_modules, added template changes: - Built for production from Android Studio and Xcode. <!-- 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 `expo prebuild` & EAS Build (eg: updated a module plugin). --------- Co-authored-by: Expo Bot <[email protected]> Co-authored-by: James Ide <[email protected]>
feat(cli)!: set node and babel env for CLI commands (#21337)# Why - User's may want to dynamically configure Metro or their Expo Config file to work differently when bundling for production env
feat(cli)!: set node and babel env for CLI commands (#21337)# Why - User's may want to dynamically configure Metro or their Expo Config file to work differently when bundling for production environments, they can now do this by utilizing the standard `NODE_ENV` environment variable. We've been doing this with Webpack since it was introduced. <!-- Please describe the motivation for this PR, and link to relevant GitHub issues, forums posts, or feature requests. --> # How - Set `NODE_ENV` and `BABEL_ENV` environment variables to `development` or `production` in `start`, `export`, `customize`, `install`, `run:ios`, `run:android`, `config`, `prebuild` commands based on the input mode. - This can be overwritten by setting `NODE_ENV` and `BABEL_ENV` manually before running. `BABEL_ENV` will be set to `NODE_ENV` if defined. - Most commands can safely default to assuming `development`. - Only thing that this doesn't cover is `npx react-native bundle` and `npx react-native start` (building from Xcode/Android Studio). We'll need to change these commands in the future but it shouldn't be blocking for this PR. <!-- 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 `expo prebuild` & EAS Build (eg: updated a module plugin). --------- Co-authored-by: Expo Bot <[email protected]>
feat(cli): add telemetry event tracking a command run (#17948)* add telemetry event tracking a command run * Ensure user authenticated * Update rudderstackClient.ts * Update rudderstackCli
feat(cli): add telemetry event tracking a command run (#17948)* add telemetry event tracking a command run * Ensure user authenticated * Update rudderstackClient.ts * Update rudderstackClient.ts * Update CHANGELOG.md
fix(cli): ensure `expo build:web` recommends running `expo export:web` (#18312)* Ensure `expo build:web` recommends running `expo export:web` in the migration warning. * Update cli.ts * Upda
fix(cli): ensure `expo build:web` recommends running `expo export:web` (#18312)* Ensure `expo build:web` recommends running `expo export:web` in the migration warning. * Update cli.ts * Update packages/@expo/cli/CHANGELOG.md Co-authored-by: Expo Bot <[email protected]> Co-authored-by: Expo Bot <[email protected]>
fix(cli): add mock `--non-interactive` flag to hide `eas update` errors (#18299)
feat(cli): added migration warning for old commands (#17882)* Added migration warning for old commands * Update packages/@expo/cli/CHANGELOG.md Co-authored-by: Expo Bot <34669131+expo-bot@use
feat(cli): added migration warning for old commands (#17882)* Added migration warning for old commands * Update packages/@expo/cli/CHANGELOG.md Co-authored-by: Expo Bot <[email protected]> Co-authored-by: Expo Bot <[email protected]>
feat(cli): automatically enable `DEBUG` when `EXPO_DEBUG` is enabled (#17856)* automatically enable `DEBUG` when `EXPO_DEBUG` is enabled * Update CHANGELOG.md * Update packages/@expo/cli/CHAN
feat(cli): automatically enable `DEBUG` when `EXPO_DEBUG` is enabled (#17856)* automatically enable `DEBUG` when `EXPO_DEBUG` is enabled * Update CHANGELOG.md * Update packages/@expo/cli/CHANGELOG.md Co-authored-by: Expo Bot <[email protected]> * Update cli.ts Co-authored-by: Expo Bot <[email protected]>
feat(cli): add `customize` command (#17186)* feat(cli): add `customize` command * Update packages/@expo/cli/CHANGELOG.md Co-authored-by: Expo Bot <[email protected]>
feat(cli): add `customize` command (#17186)* feat(cli): add `customize` command * Update packages/@expo/cli/CHANGELOG.md Co-authored-by: Expo Bot <[email protected]> * Update customizeAsync.ts * Update customizeAsync.ts * Update index-test.ts * Refactor * refactor and test * Improve help * Added e2e tests * Update packages/@expo/cli/src/customize/generate.ts Co-authored-by: Cedric van Putten <[email protected]> * Update export-web-test.ts Co-authored-by: Expo Bot <[email protected]> Co-authored-by: Cedric van Putten <[email protected]>
feat(cli): add `export:web` command (#17363)* feat(cli): add `export:web` command * Update index-test.ts * Update packages/@expo/cli/CHANGELOG.md Co-authored-by: Expo Bot <34669131+expo-bo
feat(cli): add `export:web` command (#17363)* feat(cli): add `export:web` command * Update index-test.ts * Update packages/@expo/cli/CHANGELOG.md Co-authored-by: Expo Bot <[email protected]> * Clean up and test Update exportWebAsync.ts * remove webpack-dev-server dep * Generalize progress bar CI check * use progress bar wrapper everywhere Co-authored-by: Expo Bot <[email protected]>
feat(cli): add `run:ios` command (#16662)* [wip] Added expo run:ios command * Clean up run:ios * feat(cli): add headless server mode * fix(cli): fix run:ios logic issues * Update CHANGE
feat(cli): add `run:ios` command (#16662)* [wip] Added expo run:ios command * Clean up run:ios * feat(cli): add headless server mode * fix(cli): fix run:ios logic issues * Update CHANGELOG.md * Update packages/expo/CHANGELOG.md Co-authored-by: Expo Bot <[email protected]> * clean up * refine fixture * refactor and test code signing * Update resolveOptionsAsync.ts * fix merge * added new impl * Update AppleDevice.ts * Added more tests * fixed e2e tests * lint fix * Update index-test.ts Co-authored-by: Expo Bot <[email protected]>
feat(cli): add `run:android` command (#17187)* feat(cli): add `run:android` command * added partial e2e test * fix platforms showing up in terminal ui * fix launching by link * Update p
feat(cli): add `run:android` command (#17187)* feat(cli): add `run:android` command * added partial e2e test * fix platforms showing up in terminal ui * fix launching by link * Update packages/@expo/cli/CHANGELOG.md Co-authored-by: Expo Bot <[email protected]> * fix platforms showing up in terminal ui fix launching by link fixup tests Delete resolveArgs-test.ts.snap * revert changes * Update index-test.ts Update WebpackBundlerDevServer.ts Update WebpackBundlerDevServer.ts Update WebpackBundlerDevServer.ts Update PlatformManager.ts * Update index-test.ts * update structure Co-authored-by: Expo Bot <[email protected]>
feat(cli): redesign cli help interface (#17223)* redesign cli help interface * Update CHANGELOG.md * Update index.ts * Update packages/@expo/cli/CHANGELOG.md Co-authored-by: Expo Bot <3
feat(cli): redesign cli help interface (#17223)* redesign cli help interface * Update CHANGELOG.md * Update index.ts * Update packages/@expo/cli/CHANGELOG.md Co-authored-by: Expo Bot <[email protected]> * Updated export * updated the export Co-authored-by: Expo Bot <[email protected]>
feat(cli): add `export` command (#17034)* feat(cli): add export command * Update CHANGELOG.md * update tests * Update packages/@expo/cli/CHANGELOG.md Co-authored-by: Expo Bot <34669131+
feat(cli): add `export` command (#17034)* feat(cli): add export command * Update CHANGELOG.md * update tests * Update packages/@expo/cli/CHANGELOG.md Co-authored-by: Expo Bot <[email protected]> * reduce interface * refactor refactor refactor * refactor * remove all merging code * drop aliases * Added asset saving tests * refactor export code up * Update env.ts * Drop unused * added e2e tests * Dropped --quiet flag * PR Feedback * fix tests * fix export tests * Update export-test.ts Co-authored-by: Expo Bot <[email protected]>
feat(cli): add `npx expo install` command (#16756)* feat: add `expo install` command * test: improve test coverage * chore: improved testing * Updated e2e tests * Update CHANGELOG.md
feat(cli): add `npx expo install` command (#16756)* feat: add `expo install` command * test: improve test coverage * chore: improved testing * Updated e2e tests * Update CHANGELOG.md * Update packages/@expo/cli/CHANGELOG.md Co-authored-by: Expo Bot <[email protected]> * Update getVersionedPackages.ts * lint fix * Update getVersionedPackages-test.ts * Delete index-test.ts * Update index-test.ts * improve documentation * Update args.ts Co-authored-by: Expo Bot <[email protected]>
chore: refactor `expo/cli` to `@expo/cli` package (#16717)* chore: refactor `expo/cli` to `@expo/cli` package * Update CODEOWNERS * fix linking * fix lint script * fix build file * f
chore: refactor `expo/cli` to `@expo/cli` package (#16717)* chore: refactor `expo/cli` to `@expo/cli` package * Update CODEOWNERS * fix linking * fix lint script * fix build file * fix e2e tests * lint before build * use mock version