|
2 | 2 |
|
3 | 3 | ## Unreleased
|
4 | 4 |
|
5 |
| -### Fixes |
| 5 | +This release ships with a beta version of our new built-in Expo SDK 50 support, |
| 6 | +which replaces the deprecated `sentry-expo` package. To learn more, |
| 7 | +see [the Expo guide](https://docs.sentry.io/platforms/react-native/manual-setup/expo/). |
| 8 | + |
| 9 | +### Features |
| 10 | + |
| 11 | +- New `@sentry/react-native/expo` Expo config plugin ([#3429](https://github.com/getsentry/sentry-react-native/pull/3429)) |
| 12 | + |
| 13 | + ```js |
| 14 | + const { withSentry } = require('@sentry/react-native/expo'); |
| 15 | + |
| 16 | + const config = {...}; |
| 17 | + |
| 18 | + module.exports = withSentry(config, { |
| 19 | + url: 'https://www.sentry.io/', |
| 20 | + authToken: 'example-token', // Or use SENTRY_AUTH_TOKEN env |
| 21 | + project: 'project-slug', // Or use SENTRY_PROJECT env |
| 22 | + organization: 'org-slug', // Or use SENTRY_ORG env |
| 23 | + }); |
| 24 | + ``` |
| 25 | + |
| 26 | + - And `Sentry.init` in `App.js` |
| 27 | + |
| 28 | + ```js |
| 29 | + import * as Sentry from '@sentry/react-native'; |
| 30 | + |
| 31 | + Sentry.init({ |
| 32 | + dsn: '__DSN__', |
| 33 | + }); |
| 34 | + ``` |
6 | 35 |
|
| 36 | +- New `getSentryExpoConfig` for simple Metro configuration ([#3454](https://github.com/getsentry/sentry-react-native/pull/3454), [#3501](https://github.com/getsentry/sentry-react-native/pull/3501), [#3514](https://github.com/getsentry/sentry-react-native/pull/3514)) |
| 37 | + - This function is a drop in replacement for `getDefaultConfig` from `expo/metro-config` |
| 38 | + |
| 39 | + ```js |
| 40 | + // const { getDefaultConfig } = require("expo/metro-config"); |
| 41 | + const { getSentryExpoConfig } = require("@sentry/react-native/metro"); |
| 42 | + |
| 43 | + // const config = getDefaultConfig(__dirname); |
| 44 | + const config = getSentryExpoConfig(config, {}); |
| 45 | + ``` |
| 46 | + |
| 47 | +- New `npx sentry-expo-upload-sourcemaps` for simple EAS Update (`npx expo export`) source maps upload ([#3491](https://github.com/getsentry/sentry-react-native/pull/3491), [#3510](https://github.com/getsentry/sentry-react-native/pull/3510), [#3515](https://github.com/getsentry/sentry-react-native/pull/3515), [#3507](https://github.com/getsentry/sentry-react-native/pull/3507)) |
| 48 | + |
| 49 | + ```bash |
| 50 | + SENTRY_PROJECT=project-slug \ |
| 51 | + SENTRY_ORG=org-slug \ |
| 52 | + SENTRY_AUTH_TOKEN=super-secret-token \ |
| 53 | + npx sentry-expo-upload-sourcemaps dist |
| 54 | + ``` |
| 55 | + |
| 56 | +### Others |
| 57 | + |
| 58 | +- Update `sentry-xcode.sh` scripts with Node modules resolution ([#3450](https://github.com/getsentry/sentry-react-native/pull/3450)) |
| 59 | + - RN SDK and Sentry CLI are dynamically resolved if override is not supplied |
| 60 | +- Resolve Default Integrations based on current platform ([#3465](https://github.com/getsentry/sentry-react-native/pull/3465)) |
| 61 | + - Native Integrations are only added if Native Module is available |
| 62 | + - Web Integrations only for React Native Web builds |
| 63 | +- Remove Native Modules warning from platform where the absence is expected ([#3466](https://github.com/getsentry/sentry-react-native/pull/3466)) |
| 64 | +- Add Expo Context information using Expo Native Modules ([#3466](https://github.com/getsentry/sentry-react-native/pull/3466)) |
7 | 65 | - Errors from InternalBytecode.js are no longer marked as in_app ([#3518](https://github.com/getsentry/sentry-react-native/pull/3518))
|
8 | 66 |
|
9 | 67 | ## 5.16.0-alpha.4
|
|
0 commit comments