Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@bugsnag/delivery-expo

bugsnag41.3kMIT52.0.0

@bugsnag/expo delivery mechanism to send events and sessions from Expo, using the FileSystem API to cache and retry sending failed payloads

readme

Bugsnag error monitoring & reporting for Expo

Automatically detect JavaScript errors in Expo. Get cross-platform error detection for handled and unhandled errors with real-time error alerts and detailed diagnostic reports.


This repository contains our Expo client @bugsnag/expo, our Expo helper CLI bugsnag-expo-cli and dependent plugins. See packages for a full list of contents.

Getting started

  1. Create a Bugsnag account
  2. Complete the instructions in the integration guide
  3. Report handled exceptions using Bugsnag.notify()
  4. Customize your integration using the configuration options

Support

Contributing

Most updates to this repo will be made by Bugsnag employees. We are unable to accommodate significant external PRs such as features additions or any large refactoring, however minor fixes are welcome. See contributing for more information.

Development quick start

# Clone the repository
git clone git@github.com:bugsnag/bugsnag-expo.git
cd bugsnag-expo

# Install top-level dependencies
npm i

# Run the unit tests
npm run test:unit

# Run tests for a specific package
npm run test:unit -- --testPathPattern="packages/expo"

# Generate a code coverage report
npm run test:unit -- --coverage

# Run the linter
npm run test:lint

See contributing for more information.

License

All packages in this repository are released under the MIT License. See LICENSE.txt for details.

changelog

Changelog

[52.0.0] - 2024-11-28

This release adds support for Expo 52

Changed

  • (delivery-expo) Change "Redeliveryloop error" message to "An error occurred attempting to redeliver a payload" #193
  • (plugin-expo-app) Remove duplicate nativeBundleVersion and nativeVersionCode app metadata #204

[51.0.1] - 2024-08-29

Fixed

  • (plugin-expo-device) Do not use expo-secure-store on unsupported platforms #185
  • (plugin-expo-device, plugin-expo-app) Replace Constants.platform usage with Platform API #185

[51.0.0] - 2024-05-16

This release adds support for Expo 51

Breaking Changes

This release contains an additional peer dependency on expo-secure-store. See the upgrade guide for more information.

Changed

  • (plugin-expo-device) Replace Constants.installationId with a generated device id #181

[50.0.0] - 2024-02-07

This release adds support for expo 50

[49.0.2] - 2023-12-07

Added

  • (delivery-expo) Explicitly mark failed payloads >1MB as not retryable #65

Fixed

  • (plugin-expo-eas-sourcemaps) Ensure EAS sourcemap config plugin is idempotent #156

[49.0.1] - 2023-08-03

Fixed

  • Fix a crash in configuration when Constants.expoGoConfig is null #145

[49.0.0] - 2023-07-13

This release adds support for expo 49

Changed

  • Replace deprecated Constants.manifest #141

[48.1.0] - 2023-03-27

Added

  • (bugsnag-expo-cli) Updated bugsnag-expo-cli to support Typescript #98
  • Read API key and app version from Constants.expoConfig #119

Fixed

  • (plugin-expo-eas-sourcemaps) Reinstate API key in Android manifest #117
  • (plugin-expo-eas-sourcemaps) Support dynamic configuration files in EAS Build lifecycle hook #117

[48.0.0] - 2023-03-07

This release adds support for expo 48

Fixed

  • (bugsnag-expo-cli) CLI tool now installs a sourcemap plugin version that matches the Expo SDK version #111
  • (plugin-expo-eas-sourcemaps) Use EAS Build lifecycle hook for Android source map uploads #112

[47.1.1] - 2023-03-02

Fixed

  • (plugin-expo-eas-sourcemaps) Restrict Bugsnag Android Gradle Plugin dependency to v7 #104

[47.1.0] - 2023-01-09

Fixed

  • Fixed an issue with source map matching for standalone Android apps built using EAS Build #92

Added

  • Added app.versionCode (Android) and app.bundleVersion (iOS) metadata for standalone apps #92
  • Added codeBundleId configuration option #92

[47.0.0] - 2022-11-21

This release adds support for expo 47

[46.0.2] - 2022-11-21

Fixed

  • (bugsnag-expo-cli) Fix issue with automated installation when using app.config.js #71

[46.0.1] - 2022-09-22

Fixed

  • (bugsnag-expo-cli) Improve monorepo compatibility for plugin-expo-eas-sourcemaps installation #59

[46.0.0] - 2022-09-09

This release adds support for expo 46

[45.1.1] - 2022-08-04

Added

  • Added Bugsnag.isStarted() to check whether Bugsnag has initialized #34
  • (plugin-expo-eas-sourcemaps) Add minimum version check to sourcemap plugin #45

[45.1.0] - 2022-07-28

This release adds support for sourcemap uploads when using EAS Build

Added

  • Added new @bugsnag/plugin-expo-eas-sourcemaps plugin #40
  • Updated CLI tool to automate installation of sourcemap plugin #40

[45.0.0] - 2022-05-23

This release adds support for expo 45

[44.0.1] - 2022-05-12

Fixed

  • Fixed an issue in the bugsnag-expo-cli install script when reporting an unsupported version of expo #31

[44.0.0] - 2022-04-19

This release marks a change in the version scheme used by @bugsnag/expo and a move to its own repo, bugsnag-expo

From this version onwards, @bugsnag/expo will match the Expo SDK version number. For example, @bugsnag/expo v44 supports Expo SDK 44. When updating to a new Expo SDK version, you should also update @bugsnag/expo

Breaking Changes

  • @bugsnag/expo now uses peer dependencies for the Expo packages it depends on. Run the bugsnag-expo-cli to add these dependencies to your project:

      $ npx bugsnag-expo-cli install

    Alternatively, you can use expo install:

      $ expo install @react-native-community/netinfo expo-application expo-constants expo-crypto expo-device expo-file-system