dev-resources.site
for different kinds of informations.
Expo SDK 40 beta is now available
Learn about the changes, how to try it out, and how to give feedback.
As promised, our first-ever beta SDK release is now available! The beta period will last approximately one week, and it is an opportunity for developers to ensure that the new release does not introduce any regressions for their particular system and app configurations.
SDK 40 beta includes React Native 0.63, the same version as SDK 39. The full release notes won't be available until the final release, but you can browse the changes in the expo/expo CHANGELOG to learn more about the scope of the release and any breaking changes.
A few changes to be aware of
-
AppLoading
has been removed from theexpo
package. If you use it, you shouldexpo install expo-app-loading
and importAppLoading
from its own package (possibly before first running your app with SDK 40 if you'd like to head off an error screen). Import it usingimport AppLoading from 'expo-app-loading'
. - If you use React Navigation and
react-native-screens
, you will want to update to React Navigation v5 or silence the related warning fromreact-native-screens
. - If you use background location features on Android, you will need to manually add
"ACCESS_BACKGROUND_LOCATION"
to the list of permissions inandroid.permissions
in your app configuration file (app.json
orapp.config.js
) if you haven't done so already. Background location is now an opt-in permission on Android (#10989). -
@expo/vector-icons
has been updated to track the latest icon sets from[email protected]
(the previously tracked version was6.6.0
). Updated icon sets: MaterialCommunityIcons to 5.3.45, MaterialIcons to 4.0.0, FontAwesome 5 to 5.13.0, and Feather to 4.28.0.
How to try out the beta release
You will be able to opt in to using the SDK 40 beta by setting the EXPO_BETA
environment variable to 1
(or some truthy value).
On macOS and Linux, you can set this per command with EXPO_BETA=1 expo <command>
. On Windows, you can do the same with cross-env: npx cross-env EXPO_BETA=1 expo <command>
. Below we have listed in the commands in their more concise form.
-
Install the latest version of expo-cli:
-
npm i -g expo-cli
(SDK 40 requires[email protected]
or greater)
-
-
Initialize a new project with SDK 40 beta:
EXPO_BETA=1 expo init
-
Upgrade an existing project:
EXPO_BETA=1 expo upgrade
-
Install the latest Expo client app for iOS:
- To your simulator:
EXPO_BETA=1 expo client:install:ios
outside of an Expo project or inside of an SDK 40 project - To your physical device: use this TestFlight open beta link.
- To your simulator:
-
Install the latest Expo client app for Android:
-
EXPO_BETA=1 expo client:install:android
outside of an Expo project or inside of an SDK 40 project.
-
- Other commands will work as expected without the
EXPO_BETA
environment variable, includingbuild:{android,ios}
. -
Use the beta release on Snack by adding a query parameter:
- http://snack.expo.io/?sdkVersion=40.0.0. Note that the in-browser simulators do not yet support SDK 40.
- Read the documentation by selecting it from the version selector in the API reference section (or clicking here).
How to report issues
- Create an issue on https://github.com/expo/expo/issues and be sure to fill out the template.
- Figuring out the underlying causes of issues is super helpful.
- Let us know that you are using the SDK 40 beta so we can prioritize the issue.
Thank you for helping us with testing the release, we look forward to shipping it soon! π
Featured ones: