| #
9b1b5ec6 |
| 09-Sep-2023 |
Evan Bacon <[email protected]> |
Add support for bun as a package manager. (#24344)
# Why
- Follow up for https://github.com/expo/expo/pull/24168 adding support
for install, prebuild, etc. to use bun as well.
---------
Co
Add support for bun as a package manager. (#24344)
# Why
- Follow up for https://github.com/expo/expo/pull/24168 adding support
for install, prebuild, etc. to use bun as well.
---------
Co-authored-by: Expo Bot <[email protected]>
show more ...
|
| #
4690f8cd |
| 27-Jun-2023 |
Kudo Chien <[email protected]> |
[cli] remove --dev-client prebuild side effect (#23121)
# Why
the `--dev-client` is deprecated in sdk 49
# How
remove the side effect of adding `--dev-client` when prebuild
# Test Plan
[cli] remove --dev-client prebuild side effect (#23121)
# Why
the `--dev-client` is deprecated in sdk 49
# How
remove the side effect of adding `--dev-client` when prebuild
# Test Plan
ci pass
show more ...
|
| #
4149568c |
| 17-May-2023 |
Evan Bacon <[email protected]> |
Remove entry file modification/index.js generation from `expo prebuild` (#22044)
# Why
- Possible since https://github.com/expo/expo/pull/21643
- Arbitrary entry files in development only work w
Remove entry file modification/index.js generation from `expo prebuild` (#22044)
# Why
- Possible since https://github.com/expo/expo/pull/21643
- Arbitrary entry files in development only work when using
`expo-dev-client` or `.expo/.virtual-metro-entry` (SDK +49).
<!--
Please describe the motivation for this PR, and link to relevant GitHub
issues, forums posts, or feature requests.
-->
# Test Plan
- TBD
<!--
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: Aman Mittal <[email protected]>
show more ...
|
| #
bbb610b5 |
| 17-May-2023 |
Evan Bacon <[email protected]> |
Drop `metro.config.js` copy step in `expo prebuild` (#22045)
# Why
- Possible since https://github.com/expo/expo/issues/21396
- If the `metro.config.js` is missing, then the default,
`@expo/met
Drop `metro.config.js` copy step in `expo prebuild` (#22045)
# Why
- Possible since https://github.com/expo/expo/issues/21396
- If the `metro.config.js` is missing, then the default,
`@expo/metro-config`, will be used.
- Drop `metro.config.js` copy step in `expo prebuild` in favor of `expo
export:embed` and the new Xcode start script using Expo CLI--this only
works when using Expo CLI for all bundling (SDK +49).
- Maybe we could add a metro linting step to `npx expo-doctor` in the
future.
# Test Plan
- tbd
# 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: Aman Mittal <[email protected]>
show more ...
|
| #
4067174d |
| 05-Apr-2023 |
Will Schurman <[email protected]> |
[cli] Fix e2e tests (#22005)
# Why
These are failing in main:
https://github.com/expo/expo/actions/workflows/cli.yml?query=branch%3Amain
Blame seems to be 8fd977ade89c14fcf9229c10eb19590a3c52
[cli] Fix e2e tests (#22005)
# Why
These are failing in main:
https://github.com/expo/expo/actions/workflows/cli.yml?query=branch%3Amain
Blame seems to be 8fd977ade89c14fcf9229c10eb19590a3c52c80b. No idea why
that changes these or what these are testing but meh.
# How
Update tests.
# Test Plan
`yarn test:e2e`
# 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).
show more ...
|
| #
b6b91c50 |
| 06-Mar-2023 |
Evan Bacon <[email protected]> |
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]>
show more ...
|
| #
e1bb5bdf |
| 17-Jan-2023 |
Kudo Chien <[email protected]> |
[2/3] upgrade react native 0.71 (#20832)
# Why
follow up #20799 for react-native 0.71 upgrade. this pr aims for jest upgrade and fix all broken tests.
close ENG-7192
# How
- upgrade packag
[2/3] upgrade react native 0.71 (#20832)
# Why
follow up #20799 for react-native 0.71 upgrade. this pr aims for jest upgrade and fix all broken tests.
close ENG-7192
# How
- upgrade packages
- `jest: ^26.0.24 -> ^29.2.1`
- `jest-watch-typeahead: 0.6.4 -> 2.2.1`
- `@types/jest: ^26.0.24 -> ^29.2.1`
- `babel-jest: ^26.6.3 -> ^29.2.1`
- `@jest/create-cache-key-function: ^27.0.1 -> ^29.2.1`
- `@babel/preset-env: ^7.12.9 -> ^7.14.0`
- `eslint: ^8.20.0 -> ^8.29.0`
- add `jest-environment-jsdom` because new jest does not include it by default
- [core] fix `SyntheticPlatformEmitter` type error. originally it refers to `react-native/Libraries/EventEmitter/RCTDeviceEventEmitter` internal file which has incorrect type setup in 0.71. we could use the `react-native.DeviceEventEmitter` instead.
- [expo-linking]: remove the deprecated `Linking.removeEventListener` (which is also removed from upstream)
- [firebase-recaptcha] remove broken web test because firebase ESM which is not supported by jest. this pr simply remove the test case because the package is deprecated.
- [jest-expo-enzyme] remove this package and move to [the archived repo](https://github.com/expo/jest-expo-enzyme). enzyme cannot upgrade to jest 29.
- remove `@types/react-native` and the versioned cli package check. because 0.71 ships the types directly.
- [ncl] workaround `@react-native-community/slider`, `@react-native-segmented-control/segmented-control`, and `@react-native-masked-view/masked-view` type errors in the `react-native-71-fix.d.ts`.
- for other details, please check the commit histories one by one.
# Test Plan
- ci passed
- for test-suite ios ci error, i've mentioned in #20799
show more ...
|
| #
7977e438 |
| 28-Oct-2022 |
Evan Bacon <[email protected]> |
revert #18381 (#19712)
|
| #
22b45c56 |
| 28-Sep-2022 |
Kudo Chien <[email protected]> |
Upgrade react-native 0.70 (#19261)
# Why
update react-native to 0.70 for sdk 47
# How
- update package versions
- `react` 18.0.0 -> 18.1.0
- `react-native` 0.69.5 -> 0.70.1
- `reac
Upgrade react-native 0.70 (#19261)
# Why
update react-native to 0.70 for sdk 47
# How
- update package versions
- `react` 18.0.0 -> 18.1.0
- `react-native` 0.69.5 -> 0.70.1
- `react-native-web` ~0.18.7 -> ~0.18.9
- `react-test-renderer` 18.0.0 -> 18.1.0
- `metro-react-native-babel-preset` ~0.70.3 -> ~0.72.1
- `react-native-reanimated` 2.9.1 -> 2.10.0 (because 2.9 doesn't support react-native 0.70)
- [NCL] remove unused react-native-redash
- [NCL] `@react-navigation/native` ~5.8.9 -> ~5.9.8 (fixed the deprecated Linking.removeEventListener)
- migrate templates based on [rn-upgrade helper](https://react-native-community.github.io/upgrade-helper/?from=0.69.5&to=0.70.1). one exception is that we still use jsc by default in sdk 47.
- expo-template-bare-minimum
- bare-expo
- bare-sandbox
- fabric-tester
- native-tests
- android (expo go)
- ios (expo go)
- update our react-native fork to 0.70 based
- [android] use ReactAndroid directly from _react-native-lab/react-native/ReactAndroid_ without copying a lot of files to expo/expo to increase the repo size. close ENG-4562. i will remove _android/ReactAndroid_ and _android/ReactCommon_ in a separate commit.
- toward this, i also change the prebuiltHermes support in this pr. the target react-native hermes version is in `react-native-lab/react-native/sdks/.hermesversion` and the cached hermes is now in `android/prebuiltHermes/.hermesversion`.
- [tools] update-rn: support running transformer directly in _react-native-lab/react-native_
- [ios] backport folly version to previous versioned code
- [0.70 breaking change] fix skia build error for `jsi::detail::throwJSError`. use `throw jsi::JSError` instead as upstream latest code.
- [0.70 breaking change][updates] `NativeModuleCallExceptionHandler -> JSExceptionHandler`. change from https://github.com/facebook/react-native/commit/b6f7689d701d0409c23ab364356aeb95710c20fa
# Test Plan
- ✅ android expo go + unversioned NCL
- ✅ ios expo go + unversioned NCL
- ✅ android bare-expo
- ✅ ios bare-expo
- ✅ android fabric-tester
- ✅ ios fabric-tester
- ✅ ci passed
- android client - eas build is broken on main. #19270 may address the issue.
- updates e2e is broken on main. the root cause should come from #18653 when proguard is enabled, the app will crash. will follow up in separated pr.
Co-authored-by: Tomasz Sapeta <[email protected]>
show more ...
|
| #
6e1af36d |
| 29-Aug-2022 |
Evan Bacon <[email protected]> |
feat(cli)!: Auto resolve project entry point in `expo prebuild` (#18381)
* feat: drop requirement for index.js on iOS by using expo entry resolution.
- The Android version of this was added in #1
feat(cli)!: Auto resolve project entry point in `expo prebuild` (#18381)
* feat: drop requirement for index.js on iOS by using expo entry resolution.
- The Android version of this was added in #14964
* feat(cli)!: Drop support for copying `index.js` and removing `main` field in `package.json` during `expo prebuild`
* Update packages/@expo/cli/CHANGELOG.md
Co-authored-by: Expo Bot <[email protected]>
* Update copyTemplateFiles.ts
* updated tests
* Update migrating.md
* Update docs/pages/build-reference/migrating.md
Co-authored-by: Aman Mittal <[email protected]>
* Update templates/expo-template-bare-minimum/ios/HelloWorld.xcodeproj/project.pbxproj
* Update project.pbxproj
* Update createManifest.js
* Update project.pbxproj
* Update project.pbxproj
* Update create-manifest-ios.sh
Co-authored-by: Expo Bot <[email protected]>
Co-authored-by: Aman Mittal <[email protected]>
show more ...
|
| #
441f9e27 |
| 11-Aug-2022 |
Evan Bacon <[email protected]> |
fix(cli): update prebuild e2e tests (#18612)
* fix(cli): update prebuild e2e tests
* Update packages/@expo/cli/CHANGELOG.md
Co-authored-by: Expo Bot <[email protected]
fix(cli): update prebuild e2e tests (#18612)
* fix(cli): update prebuild e2e tests
* Update packages/@expo/cli/CHANGELOG.md
Co-authored-by: Expo Bot <[email protected]>
Co-authored-by: Expo Bot <[email protected]>
show more ...
|
| #
6c8d1802 |
| 29-Jul-2022 |
Evan Bacon <[email protected]> |
chore(cli): use latest bare template in e2e tests (#18384)
|
| #
fa5d5955 |
| 21-Jun-2022 |
Evan Bacon <[email protected]> |
chore(cli): update test fixtures to SDK 45 (#17934)
* chore(cli): update test fixtures to SDK 45
* updated tests
* Update packages/@expo/cli/CHANGELOG.md
Co-authored-by: Expo Bot <34669131+
chore(cli): update test fixtures to SDK 45 (#17934)
* chore(cli): update test fixtures to SDK 45
* updated tests
* Update packages/@expo/cli/CHANGELOG.md
Co-authored-by: Expo Bot <[email protected]>
* Update start-test.ts
Co-authored-by: Expo Bot <[email protected]>
show more ...
|
| #
6caf5755 |
| 12-May-2022 |
Evan Bacon <[email protected]> |
feat(cli): add `--pnpm` option to `install` and `prebuild` command (#17366)
* feat(cli): add `--pnpm` option to `install` command
* Added pnpm support to prebuild command
* Update resolveOptio
feat(cli): add `--pnpm` option to `install` and `prebuild` command (#17366)
* feat(cli): add `--pnpm` option to `install` command
* Added pnpm support to prebuild command
* Update resolveOptions-test.ts
* Update packages/@expo/cli/CHANGELOG.md
Co-authored-by: Expo Bot <[email protected]>
* Update resolveOptions-test.ts
* update help
Co-authored-by: Expo Bot <[email protected]>
show more ...
|
| #
83d464dc |
| 27-Apr-2022 |
Evan Bacon <[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]>
show more ...
|
| #
8d307f52 |
| 23-Mar-2022 |
Evan Bacon <[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
show more ...
|