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

Package detail

expo-updates

expo1.5mMIT0.27.4TypeScript support: included

Fetches and manages remotely-hosted assets and updates to your app's JS bundle.

react-native, expo, updates

readme

expo sdk

Expo

Expo SDK version Chat or ask a question License: MIT Downloads

Try Expo in the Browser  •  Read the Documentation  •  Learn more on our blog  •  Request a feature

Follow us on

Expo on X   Expo on GitHub   Expo on Reddit   Expo on LinkedIn   Expo on LinkedIn

Introduction

Expo is an open-source platform for making universal native apps that run on Android, iOS, and the web. It includes a universal runtime and libraries that let you build native apps by writing React and JavaScript.

This repository includes the Expo SDK, Modules API, Go app, CLI, Router, documentation, and various other supporting tools. Expo Application Services (EAS) is a platform of hosted services that are deeply integrated with Expo open source tools. EAS helps you build, ship, and iterate on your app as an individual or a team.

Read the Expo Community Guidelines before interacting in the repository. Thank you for helping keep the Expo community open and welcoming!

Table of contents

📚 Documentation

Learn about building and deploying universal apps in our official docs!

🗺 Project Layout

  • packages All the source code for Expo modules, if you want to edit a library or just see how it works this is where you'll find it.
  • apps This is where you can find Expo projects which are linked to the development modules. You'll do most of your testing in here.
  • apps/expo-go This is where you can find the source code for Expo Go.
  • apps/expo-go/ios/Exponent.xcworkspace is the Xcode workspace. When developing iOS, always open this instead of Exponent.xcodeproj because the workspace also loads the CocoaPods dependencies.
  • docs The source code for https://docs.expo.dev
  • templates The template projects you get when you run npx create-expo-app
  • react-native-lab This is our fork of react-native used to build Expo Go.
  • guides In-depth tutorials for advanced topics like contributing to the client.
  • tools contain build and configuration tools.
  • template-files contains templates for files that require private keys. They are populated using the keys in template-files/keys.json.
  • template-files/ios/dependencies.json specifies the CocoaPods dependencies of the app.

🏅 Badges

Let everyone know your app can be run instantly in the Expo Go app!

runs with Expo Go

runs with Expo Go

[![runs with Expo Go](https://img.shields.io/badge/Runs%20with%20Expo%20Go-000.svg?style=flat-square&logo=EXPO&labelColor=f3f3f3&logoColor=000)](https://expo.dev/client)

[![runs with Expo Go](https://img.shields.io/badge/Runs%20with%20Expo%20Go-4630EB.svg?style=flat-square&logo=EXPO&labelColor=f3f3f3&logoColor=000)](https://expo.dev/client)

👏 Contributing

If you like Expo and want to help make it better then check out our contributing guide! Check out the CLI package to work on the Expo CLI.

❓ FAQ

If you have questions about Expo and want answers, then check out our Frequently Asked Questions!

If you still have questions you can ask them on our Discord and Forums or X @expo.

💙 The Team

Curious about who makes Expo? Here are our team members!

License

The Expo source code is made available under the MIT license. Some of the dependencies are licensed differently, with the BSD license, for example.

Star the Expo repo on GitHub to support the project

changelog

Changelog

Unpublished

🛠 Breaking changes

🎉 New features

🐛 Bug fixes

💡 Others

0.27.4 — 2025-03-18

🎉 New features

0.27.3 — 2025-03-11

🐛 Bug fixes

  • Pass through the package version to config plugin sync utilities (#35372 by @brentvatne)

0.27.2 — 2025-02-26

💡 Others

0.27.1 — 2025-02-21

🎉 New features

🐛 Bug fixes

  • Fixed build error on iOS Expo Go. (#34485 by @kudo)
  • Fixed Android unit test errors in BuilDataTest. (#34510 by @kudo)

0.26.19 — 2025-02-19

💡 Others

  • Fixed incorrect error log on Android. (#34785 by @kudo)

0.26.18 — 2025-02-12

🐛 Bug fixes

0.26.17 — 2025-02-06

This version does not introduce any user-facing changes.

0.26.16 — 2025-02-04

🐛 Bug fixes

  • Removed Apache Commons IO dependency and fixed crash issue on Android 7. (#34638 by @kudo)

0.26.15 — 2025-01-31

🐛 Bug fixes

  • Fix issue where syncing codesigning config for bare projects would clobber existing Expo.plist config (#34597 by @brentvatne)

0.26.14 — 2025-01-31

This version does not introduce any user-facing changes.

0.26.13 — 2025-01-19

This version does not introduce any user-facing changes.

0.26.12 — 2025-01-10

This version does not introduce any user-facing changes.

0.26.11 — 2025-01-08

🐛 Bug fixes

  • Fix an issue where launchFallbackUpdateFromDisk is called from a foreground thread leading to ANRs. (#33693 by @alanjhughes)

0.26.10 — 2024-12-05

🐛 Bug fixes

  • Fix black screen appearing instead of the splashscreen on launch. (#33432 by @alanjhughes)

0.26.9 — 2024-11-22

🐛 Bug fixes

  • Fixed Inconsistent JVM-target compatibility error when building with JDK 21. (#33148 by @kudo)

💡 Others

  • Introduced ReactNativeFeatureFlags compat to fix React Native 0.77 breaking changes. (#33077 by @kudo)

0.26.8 — 2024-11-20

This version does not introduce any user-facing changes.

0.26.7 — 2024-11-14

This version does not introduce any user-facing changes.

0.26.6 — 2024-11-13

💡 Others

0.26.5 — 2024-11-07

This version does not introduce any user-facing changes.

0.26.4 — 2024-11-04

🐛 Bug fixes

0.26.3 — 2024-10-31

This version does not introduce any user-facing changes.

0.26.2 — 2024-10-24

🐛 Bug fixes

💡 Others

  • Use enum event in OnStartObserving and OnStopObserving. (#32252 by @wschurman)

0.26.1 — 2024-10-22

🐛 Bug fixes

  • Fixed Android launch crash when R8 is enabled. (#32226 by @kudo)

💡 Others

0.26.0 — 2024-10-22

🛠 Breaking changes

🎉 New features

  • Automatically write an app.json when attempting to modify a config and no file exists. (#30026 by @EvanBacon)
  • Add launchDuration constant (#31805 by @wschurman)

🐛 Bug fixes

  • Fix expo update getting disabled in custom debug configurations. (#30159 by @matinzd)
  • Fix data race in AppLauncherWithDatabaseMock.swift. (#28924 by @hakonk)
  • Add missing react peer dependencies for isolated modules. (#30488 by @byCedric)
  • Use relative entry point from @expo/config/paths with support for server root. (#30633 by @byCedric)
  • [iOS] Rollback to system SQLite3 and fix incompatible issue when any third-party library uses iOS system SQLite3. (#30826 by @kudo)
  • Use expo-updates as source of truth for runtime version in dev client (#31453 by @wschurman)
  • Fixed iOS reload crash on New Architecture mode. (#31789 by @kudo)
  • [cli] Disable console during runtime and fingeprint evaluation (#31874 by @wschurman)
  • Refactor state machine event emitting and initial state (#31819 by @wschurman)
  • Re-emit state on every observer observe event (#32103 by @wschurman)

💡 Others

⚠️ Notices

0.25.25 - 2024-09-20

🐛 Bug fixes

  • [ios] Store strong references to long-lived objects created in procedures (#31599 by @wschurman)

0.25.24 - 2024-08-23

This version does not introduce any user-facing changes.

0.25.22 - 2024-08-07

💡 Others

  • Re-exported @expo/fingerprint as expo-updates/fingerprint. (#30757 by @kudo)

0.25.21 - 2024-07-22

This version does not introduce any user-facing changes.

0.25.20 - 2024-07-15

This version does not introduce any user-facing changes.

0.25.19 - 2024-07-11

This version does not introduce any user-facing changes.

0.25.18 - 2024-06-27

This version does not introduce any user-facing changes.

0.25.17 - 2024-06-13

💡 Others

  • Improved stability of E2E testing. (#29402 by @kudo)
  • Improved JS event performance on Android and stability of E2E testing. (#29593 by @kudo)

0.25.16 - 2024-06-06

This version does not introduce any user-facing changes.

0.25.15 — 2024-05-29

🐛 Bug fixes

  • Fixed launch crash when using fingerprint runtime version policy on Android with expo-dev-client. (#28912 by @kudo)

0.25.14 — 2024-05-16

This version does not introduce any user-facing changes.

0.25.13 — 2024-05-15

This version does not introduce any user-facing changes.

0.25.12 — 2024-05-14

This version does not introduce any user-facing changes.

0.25.11 — 2024-05-09

This version does not introduce any user-facing changes.

0.25.10 — 2024-05-09

🐛 Bug fixes

  • Fixed loading error when both expo-dev-client and expo-updates installed but no runtimeVersion configured. (#28662 by @kudo)

0.25.9 — 2024-05-07

This version does not introduce any user-facing changes.

0.25.8 — 2024-05-04

💡 Others

  • Suppressed Error: Cannot find module 'expo-dev-client/package.json' from pod install on iOS. (#28611 by @kudo)

0.25.7 — 2024-05-02

🐛 Bug fixes

  • Fixed Gradle Plugin build error when no specified entryFile in android/app/build.gradle. (#28546 by @kudo)

0.25.6 — 2024-05-01

🐛 Bug fixes

0.25.5 — 2024-04-24

This version does not introduce any user-facing changes.

0.25.4 — 2024-04-24

🐛 Bug fixes

  • Fix CLI VCS detection in CLI and add workflow override ability. (#28403 by @wschurman)

0.25.3 — 2024-04-24

This version does not introduce any user-facing changes.

0.25.2 — 2024-04-23

This version does not introduce any user-facing changes.

0.25.1 — 2024-04-22

🎉 New features

💡 Others

  • Bumped the underlying SQLite version to 3.45.3 on iOS. (#28358 by @kudo)
  • Fixed error recovery E2E test on iOS. (#28372 by @kudo)

0.25.0 — 2024-04-18

🛠 Breaking changes

  • Deprecated UpdatesController.initialize(Context, Map) and replaced with UpdatesController.overrideConfiguration() method to prevent ANR when overriding the UpdatesConfiguration on Android. #26093 by @kudo)
  • Remove deprecated APIs: useUpdateEvents(), addListener(), and UpdateEvent type. (#27882 by @douglowder)
  • Remove the support for configurable expo.modules.updates.AUTO_SETUP in AndroidManifest.xml and EXUpdatesAutoSetup in Expo.plist. (#27996 by @kudo)
  • Update fingerprintExperimental -> fingerprint runtime version policy. (#28220 by @wschurman)

🎉 New features

🐛 Bug fixes

  • Fix development status for modern updates. (#26042 by @wschurman)
  • [Android] Fix case where launch wait ms timeout is greater than okhttp default timeout. (#26731 by @wschurman)
  • Make error messages consistent across platforms for dev client and disabled controllers. (#26988 by @wschurman)
  • Fixed ANR issue from Detox testing on Android. (#27031 by @kudo)
  • Fix inconsistent hashes for autolinking for fingerprint policy. (#27390 by @wschurman)
  • Fixed launch crash when running on a project without expo-dev-client and debug build. (#27780 by @kudo)
  • Fixed bridgeless error recovery support for launch errors on Android. (#27815 by @kudo)
  • Fixed error recovery on Android. (#28177 by @kudo)
  • Fixed Updates.reloadAsync() not working on iOS. (#28256 by @kudo)

💡 Others

0.24.12 - 2024-03-13

💡 Others

  • [iOS] Moved expo-dev-client + expo-updates interop setup out from application:willFinishLaunchingWithOptions:. (#27477 by @kudo)

0.24.11 - 2024-02-16

This version does not introduce any user-facing changes.

0.24.10 - 2024-02-06

🎉 New features

🐛 Bug fixes

0.24.9 - 2024-01-26

🐛 Bug fixes

  • [Android] correct drawable types in updates embedded manifest. (#26676 by @douglowder)

0.24.8 - 2024-01-18

This version does not introduce any user-facing changes.

0.24.7 - 2024-01-10

🎉 New features

  • Added AppController.overrideConfiguration() to override the UpdatesConfig on iOS. (#26093 by @kudo)

🐛 Bug fixes

  • Fix metro asset call in embedded manifest creation step. (#26307 by @wschurman)
  • [expo-updates] dev launcher updates controller should not read embedded manifest. (#26336 by @douglowder)

💡 Others

  • Replace deprecated com.facebook.react:react-native:+ Android dependency with com.facebook.react:react-android. (#26237 by @kudo)

0.24.5 - 2023-12-21

This version does not introduce any user-facing changes.

0.24.4 - 2023-12-19

🐛 Bug fixes

0.24.3 — 2023-12-15

This version does not introduce any user-facing changes.

0.18.18 — 2023-12-15

🐛 Bug fixes

0.24.2 — 2023-12-13

🐛 Bug fixes

0.24.1 — 2023-12-12

This version does not introduce any user-facing changes.

0.24.0 — 2023-12-12

🛠 Breaking changes

🎉 New features

🐛 Bug fixes

  • [Android] Fix interaction between reload JS API and ErrorRecovery. (#25651 by @wschurman)
  • [Android] Fix wait notify bug in launch asset when enabled. (#25676 by @wschurman)

💡 Others

0.23.0 — 2023-11-14

🛠 Breaking changes

🎉 New features

🐛 Bug fixes

💡 Others

⚠️ Notices

  • Deprecated useUpdateEvents() and addListener() in favor of the new useUpdates() API. (#25345 by @douglowder)

0.18.17 — 2023-10-25

🐛 Bug fixes

  • [Android] Simplify UpdatesUtils.parseDateString, fix UpdatesLoggingTest. (#24951 by @douglowder)

0.22.0 — 2023-10-17

🐛 Bug fixes

💡 Others

0.18.16 — 2023-10-05

🐛 Bug fixes

0.18.14 — 2023-09-27

This version does not introduce any user-facing changes.

0.21.1 — 2023-09-18

This version does not introduce any user-facing changes.

0.18.13 — 2023-09-15

🐛 Bug fixes

0.21.0 — 2023-09-15

🎉 New features

🐛 Bug fixes

💡 Others

0.20.0 — 2023-09-04

🛠 Breaking changes

🎉 New features

🐛 Bug fixes

  • [Android] completely fix node execution on Windows (#24116 by @weykon)
  • [Android] Fixed the node execution on Windows. (#23983 by @kudo)
  • Bare update manifest non-nullability parity. (#23166 by @wschurman)
  • Support importing assets from out of the project root when working in monorepos. (#24090 by @EvanBacon)
  • Prevent failed updates from passing checkForUpdateAsync(). (#24112 by @douglowder)

0.19.1 — 2023-08-02

💡 Others

  • Update API documentation to clarify channel behavior in Expo Go/ development builds. (#23783 by @keith-kurak)

0.19.0 — 2023-07-28

🎉 New features

🐛 Bug fixes

💡 Others

0.18.11 - 2023-07-23

💡 Others

  • [Android] EX_UPDATES_ANDROID_DELAY_LOAD_APP settable by env. (#23479 by @douglowder)

0.18.10 - 2023-07-12

🐛 Bug fixes

0.18.9 - 2023-07-10

🐛 Bug fixes

0.18.8 - 2023-07-04

This version does not introduce any user-facing changes.

0.18.7 - 2023-06-30

🐛 Bug fixes

0.18.6 - 2023-06-29

🐛 Bug fixes

  • Support discriminated unions for JS API method result types. (#23173 by @wschurman)

0.18.5 — 2023-06-28

💡 Others

0.18.4 — 2023-06-27

🐛 Bug fixes

0.18.3 — 2023-06-24

🐛 Bug fixes

0.18.2 — 2023-06-23

🐛 Bug fixes

0.18.1 — 2023-06-22

This version does not introduce any user-facing changes.

0.18.0 — 2023-06-22

This version does not introduce any user-facing changes.

0.17.1 — 2023-06-21

📚 3rd party library updates

🎉 New features

  • [Android] Load updates in background thread and prevent ANR from initial launch. (#20273 by @kudo)
  • Added support for React Native 0.72. (#22588 by @kudo)
  • Added the Brotli compression support for EAS Update on Android. (#22982 by @kudo)
  • [Android][ios] State machine implementation. (#22845 by @douglowder)

🐛 Bug fixes

  • [Android] Resolve up the project root when creating production manifest. (#22044 by @EvanBacon)
  • Fixed Android build warnings for Gradle version 8. (#22537, #22609 by @kudo)
  • Fixed broken create-manifest-android.gradle on Android Gradle version 8. (#22538 by @kudo)

0.17.0 — 2023-05-08

🛠 Breaking changes

  • Updated setup documentation to reflect that setup should include changing the entry from index to .expo/.virtual-metro-entry which is only available in SDK 49 @expo/metro-config. (#21643 by @EvanBacon)
  • [android] Add support for version 1 of the protocol. (#20275 by @wschurman)
  • Add support for version 1 of the protocol. (#20275, #21652 by @wschurman)

🎉 New features

🐛 Bug fixes

💡 Others

0.16.4 - 2023-04-03

🐛 Bug fixes

  • Change arg in gradle .execute() call to null to inherit env variables from user's env (#21712 by @phoenixiguess)
  • [Android] Fix missing manifest for build flavor variants. (#21813 by @douglowder)

0.16.3 - 2023-02-22

🎉 New features

🐛 Bug fixes

💡 Others

0.16.2 - 2023-02-21

This version does not introduce any user-facing changes.

0.16.1 — 2023-02-09

💡 Others

0.16.0 — 2023-02-03

🐛 Bug fixes

💡 Others

0.15.5 - 2022-11-14

🎉 New features

0.15.4 — 2022-11-03

🐛 Bug fixes

  • Fixed another app.manifest occasionally missing from build outputs on Android. (#19809 by @kudo)

0.15.3 — 2022-10-30

This version does not introduce any user-facing changes.

0.15.2 — 2022-10-28

This version does not introduce any user-facing changes.

0.15.1 — 2022-10-28

🐛 Bug fixes

  • Fixed the app.manifest occasionally missing from build outputs on Android. (#19731 by @kudo, @kudo)

0.15.0 — 2022-10-25

🛠 Breaking changes

  • Drop support for logUrl which sent console logs to the legacy expo-cli. (#18596 by @EvanBacon)
  • [plugin] Upgrade minimum runtime requirement to Node 14 (LTS). (#18204 by @EvanBacon)
  • Bumped iOS deployment target to 13.0 and deprecated support for iOS 12. (#18873 by @tsapeta)

🎉 New features

  • [iOS] New logger and log reader for unifying logging support in expo-updates. (#18284 by @douglowder)
  • [Android] New logger and log reader for unifying logging support in expo-updates. (#18318 by @douglowder)
  • Add JS methods to read and clear client logs. (#18390 by @douglowder)
  • Add Logger support for writing logs to a file; add Logger and associated classes to Android. (#18513 by @douglowder)
  • Make extra header processing code consistent between manifests and assets. (#18564 by @wschurman)
  • Type UpdateCheckResult and UpdateFetchResult to reflect when manifest is defined or not. (#18577 by @SimenB)

🐛 Bug fixes

  • Fix small race condition in recovery code on Android where in very rare scenarios, a bundle could be downloaded twice. (#18377 by @esamelson)
  • Fixed with-node.sh doesn't keep quotes when passing arguments to Node.js and caused build errors when there are spaces in target name. (#18741 by @kudo)

💡 Others

  • [plugin] Migrate import from @expo/config-plugins to expo/config-plugins and @expo/config-types to expo/config. (#18855 by @brentvatne)
  • Update doc block link for manifests. (#18981 by @EvanBacon)
  • Drop @expo/config-plugins dependency in favor of peer dependency on expo. (#18595 by @EvanBacon)
  • Log various errors with the new Updates logger; add E2E tests for the logger. (#18810 by @douglowder)
  • [iOS] Flag to enable native debugging of updates. (#19292 by @douglowder)
  • [Android] Flag to enable native debugging of updates. (#19441 by @douglowder)

⚠️ Notices

  • Added support for React Native 0.70.x. (#19261 by @kudo)

0.14.3 — 2022-07-25

🐛 Bug fixes

  • Deprecated the unreliable source-login-scripts.sh and sourcing the Node.js binary path from .xcode.env and .xcode.env.local. (#18330 by @kudo)

0.14.2 — 2022-07-16

This version does not introduce any user-facing changes.

0.14.1 — 2022-07-11

This version does not introduce any user-facing changes.

0.14.0 — 2022-07-07

🐛 Bug fixes

💡 Others

0.13.0 — 2022-04-21

🐛 Bug fixes

💡 Others

  • Add current and embedded update headers to manifest requests. (#17033 by @esamelson)
  • Fix return value in AppDelegateSubscriber (used with expo-dev-client). (#17111 by @esamelson)

0.12.0 — 2022-04-18

🛠 Breaking changes

  • Remove okhttp and okio backward compatible workaround and drop react-native 0.64 support. (#16446 by @kudo)

🎉 New features

🐛 Bug fixes

  • Update fbemitter to v3. (#16245 by @SimenB)
  • Allow non-codesigned manifests for Expo Go (Android). (#16649 by @wschurman)
  • Allow non-codesigned manifests for Expo Go (iOS). (#16682 by @wschurman)
  • Fix issue where default values for primitive-typed configuration values were not correctly set. (#16644 by @esamelson)
  • Fixed iOS script phase build error when extendedglob is enabled in zsh config. (#17024 by @kudo)

💡 Others

  • Updated @expo/config-plugins from 4.0.2 to 4.0.14, @expo/config from ^6.0.6 to ^6.0.14 and @expo/metro-config from ~0.2.6 to ~0.3.7 (#15621 by @EvanBacon)
  • Swap out Cloudfront CDN for classic-assets.eascdn.net. (#15781) by @quinlanj
  • Add ability for expo-dev-launcher to launch a specific update through UpdatesDevLauncherController. (#16865 by @esamelson)

⚠️ Notices

  • On Android bump compileSdkVersion to 31, targetSdkVersion to 31 and Java version to 11. (#16941 by @bbarthec)

📚 3rd party library updates

  • Upgrade Android Room library version to 2.4.2. (#16970 by @kudo)

0.11.7 — 2022-03-07

🐛 Bug fixes

  • Fix iOS issue where splash screen wouldn't show when using expo-updates and expo-splash-screen (#16163) by @hannojg

💡 Others

0.11.6 - 2022-02-01

🐛 Bug fixes

  • Fix iOS launch crash when app.json expo.updates.enabled is false. (#15997 by @kudo)
  • Fix Plugin with id 'maven' not found build error from Android Gradle 7. (#16080 by @kudo)

0.11.5 — 2022-01-20

🐛 Bug fixes

  • Fix build errors on React Native 0.66 caused by okio and okhttp. (#15632 by @kudo)
  • Fix the PhaseScriptExecution build errors when the source_login_scripts.sh failed to load. (#15890 by @kudo)

0.11.4 — 2022-01-13

🐛 Bug fixes

  • Fix IllegalThreadStateException that occurred when creating an event to send to React Native early in the app lifecycle. (#15880 by @esamelson)
  • Ensure we return early when updates are disabled on Android. (#15882 by @esamelson)

0.11.3 — 2021-12-22

🐛 Bug fixes

  • Fix the view does not update from screen rotation on iOS devices. (#15608 by @kudo)
  • Fix building error on AArch64 JDK. (#15669 by @kudo)

0.11.2 — 2021-12-15

🐛 Bug fixes

  • Add missing @JvmStatic annotation to UpdatesDevLauncherController.initialize. (#15561 by @esamelson)

0.11.2-rc.0 — 2021-12-13

🎉 New features

  • Added Updates.channel and Updates.runtimeVersion constant export. (#15469 by @jkhales)

0.11.1 — 2021-12-08

🎉 New features

0.11.0 — 2021-12-03

🛠 Breaking changes

🎉 New features

  • Add error recovery manager on iOS. (#14397 by @esamelson)
  • Hook up error recovery manager to rest of module on iOS. (#14398 by @esamelson)
  • Move persisted error log to EXUpdatesErrorRecovery on iOS. (#14399 by @esamelson)
  • Add native EXUpdatesCheckOnLaunch: ERROR_RECOVERY_ONLY setting on iOS. (#14673 by @esamelson)
  • Small fixes for error recovery manager on iOS. (#15223 by @esamelson)
  • Add native checkOnLaunch: ERROR_RECOVERY_ONLY setting on Android. (#15219 by @esamelson)
  • Enhance node binary resolution for Xcode build phases scripts by the vendoring source-login-scripts.sh. (#15336 by @kudo)
  • Add android support for multipart manifest responses. (#15401 by @wschurman)
  • Add iOS support for multipart manifest responses. (#15426 by @wschurman)
  • Add android support for code signing. (#15514 by @wschurman)

🐛 Bug fixes

  • Fix auto setup EXUpdatesAppDelegate breaking reanimated installation. (#14755 by @kudo)
  • Fix support for react.entryFile gradle config. (#14934 by @EvanBacon)
  • Fix Android app.manifest not generated when in OneSignal gradle plugin integration. (#14938 by @kudo)
  • Fix Android app.manifest not generated from #14938 regression. (#14953 by @kudo)
  • Fix iOS app.manifest generation error in eas build --local mode. (#14956 by @kudo)
  • Fix handling of unexpectedly missing assets on iOS. (#15008 by @esamelson)
  • Fix issue with assets that are duplicated in the local SQLite db being reaped when they are still in use. (#15049 by @esamelson)
  • Retain embedded asset fields when merging existing asset entities on Android. (#15123 by @esamelson)
  • Fix RCTBridge initialized twice on startup. (#15142 by @kudo)

💡 Others

0.10.9 — 2021-10-29

This version does not introduce any user-facing changes.

0.10.8 — 2021-10-29

🐛 Bug fixes

  • Fix Android app.manifest not generated from #14938 regression. (#14953 by @kudo)
  • Fix iOS app.manifest generation error in eas build --local mode. (#14956 by @kudo)

0.10.7 — 2021-10-29

This version does not introduce any user-facing changes.

0.10.6 — 2021-10-28

🐛 Bug fixes

  • Fix Android app.manifest not generated when in OneSignal gradle plugin integration. (#14938 by @kudo)

0.10.5 — 2021-10-21

This version does not introduce any user-facing changes.

0.10.4 — 2021-10-15

🐛 Bug fixes

  • Fix auto setup EXUpdatesAppDelegate breaking reanimated installation. (#14755 by @kudo)

0.10.3 — 2021-10-12

🐛 Bug fixes

  • Fix Updates.reloadAsync behavior in bare apps when a new update is available (downloaded). (#14706 by @esamelson)

0.10.2 — 2021-10-01

🐛 Bug fixes

  • Fix expo-screen-orientation breaking for expo-updates + expo-splash-screen integration. (#14519 by @kudo)

0.10.1 — 2021-09-28

🎉 New features

0.10.0 — 2021-09-28

🐛 Bug fixes

  • Fix building errors from use_frameworks! in Podfile. (#14523 by @kudo)

💡 Others

  • Updated @expo/config, @expo/webpack-config, @expo/metro-config (#14443 by @EvanBacon)

0.9.3 — 2021-09-16

This version does not introduce any user-facing changes.

0.9.2 — 2021-09-16

🛠 Breaking changes

🐛 Bug fixes

  • Fixing app.manifest does not generated from Xcode build phase script. (#14438 by @kudo)

0.9.1 — 2021-09-09

This version does not introduce any user-facing changes.

0.9.0 — 2021-09-09

🎉 New features

🐛 Bug fixes

  • Fix PROJECT_ROOT path resolution in create-manifest-ios.sh and in createManifest.js (#13439 by @ajsmth)
  • Fix erroneous manifest JSON direct access. (#13906 by @wschurman)
  • Fixed userInterfaceStyle not being applied when only set in root expo options and not in expo.android options. (#13959 by @mrousavy)

0.8.5 — 2021-09-02

💡 Others

  • Skip running build scripts during iOS debug builds and add support for SKIP_BUNDLING/FORCE_BUNDLING environment variables. (#14116 by @fson)

0.8.4 — 2021-08-06

🐛 Bug fixes

  • Fix config plugin to properly set the updates URL based on getAccountUsername from @expo/config. (#13909 by @brentvatne)
  • Fixed issue with dev-launcher integration where configuration was not set at the correct time, which caused issues when trying to open multiple different published apps. (#13926 by @esamelson)

0.8.3 — 2021-07-28

🛠 Breaking changes

0.8.2 — 2021-07-13

🐛 Bug fixes

  • Remove usage of deprecated [RCTBridge reload] method. (#13501 by @esamelson)
  • Remove side effects from UpdatesDevLauncherController.initialize() method. (#13555 by @esamelson)

0.8.1 — 2021-07-08

This version does not introduce any user-facing changes.

0.8.0 — 2021-06-24

🛠 Breaking changes

0.7.3 — 2021-06-24

This version does not introduce any user-facing changes.

0.7.2 — 2021-06-23

This version does not introduce any user-facing changes.

0.7.1 — 2021-06-22

🐛 Bug fixes

  • Improve behavior of dev client (with updates integration) when developer is logged out of expo-cli. (#13310 by @esamelson)

0.7.0 — 2021-06-16

🎉 New features

0.7.0-rc.2 — 2021-06-10

🛠 Breaking changes

  • Renamed the iOS protocol in expo-updates-interface to EXUpdatesExternalInterface. (#13214 by @esamelson)

0.7.0-rc.1 — 2021-06-08

🐛 Bug fixes

  • Fixed prebuild issues with missing imports.

0.7.0-rc.0 — 2021-06-08

🛠 Breaking changes

  • Rename new manifest field updateMetadata to metadata (#12831 by @jkhales)
  • Save asset with a key that does not include an extension. This introduces an implicit dependency on expo-asset@8.3.2 or above. (#12734 by @jkhales)
  • Add last_accessed column to updates table schema, and rename metadata -> manifest. (#12768 by @esamelson)
  • Add non-destructive database migration for the above change. (#12820 by @esamelson)
  • Add new manifest2 field and make existing field optional. (#12817 by @wschurman)

🎉 New features

🐛 Bug fixes

💡 Others

0.6.0 — 2021-04-13

🛠 Breaking changes

  • (android) remove UPDATES_CONFIGURATION_USES_LEGACY_MANIFEST_KEY constant and start respecting cache-control headers for all manifest responses. Please ensure your server defined cache-control headers are configured correctly if you are self-hosted to avoid issues such as #13872 (#12181 by @jkhales)
  • (ios) remove EXUpdatesUsesLegacyManifest Plist constant and start respecting cache-control headers for all manifest responses Please ensure your server defined cache-control headers are configured correctly if you are self-hosted to avoid issues such as #13872 (#12249 by @jkhales)
  • crash if EXUpdatesRequestHeaders is not a dictionary (ios). (#12457 by @jkhales)

🎉 New features

🐛 Bug fixes

  • Fixed Updates module methods in Android Expo Go by refactoring FileDownloader to have mostly instance methods rather than static methods.
  • Fixed local assets URIs on Android to be compliant with File URI specification. Now file URI takes the form of file:///* instead of file:/*. (#12428 by @tsapeta)
  • Fixed Updates module methods not rejecting properly in iOS managed workflow apps where updates are disabled.
  • Fixed uncaught exception in parseDateString on Android API 21-23. (#12492 by mrs2296)
  • Improved error message in createManifest script when there is an error getting the project's metro config.

0.5.3 — 2021-03-30

This version does not introduce any user-facing changes.

0.5.2 — 2021-03-23

🎉 New features

  • Updated @expo/metro-config with deprecated .expo.* extension support and improved error stack traces. (#12252 by @EvanBacon)
  • Wrap native bundle script error in regex. (#12185 by @EvanBacon)

0.5.1 — 2021-03-11

🐛 Bug fixes

  • Add prebuilt xcframework

0.5.0 — 2021-03-10

⚠️ Notices

🛠 Breaking changes

🎉 New features

🐛 Bug fixes

  • Removed fbjs dependency (#11396 by @cruzach)
  • On iOS, use default NSURLCache for manifest public key rather than caching it manually.
  • Use console.warn message rather than hard crashing if neither runtime nor SDK version are configured (requires a corresponding update to the expo package) (#11367 by @esamelson)
  • Fixed discrepancies across platforms regarding required fields in manifests (#11562 by @esamelson)
  • Improved support for assetUrlOverride in legacy self-hosted apps (#11601)
  • Stop expecting data and publicManifest root level keys for EAS manifests (#11613 by @esamelson)
  • Stop overriding cache-control headers for non-legacy manifests (#11875 by @esamelson)
  • Remove peerDependencies and unimodulePeerDependencies from Expo modules. (#11980 by @brentvatne)

0.4.2 - 2020-02-16

🎉 New features

  • Keep current update and one older update, for safety and to make rollbacks faster (#11449 by @esamelson)

🐛 Bug fixes

0.4.1 — 2020-11-25

🛠 Breaking changes

  • This version adds an internal database migration, which means that when a user's device upgrades from an app with `expo-updates@0.3.xto an app withexpo-updates@0.4.x`, any updates they had previously downloaded will no longer be accessible.
    • For managed workflow apps, this is inconsequential as this upgrade will be part of a major SDK version upgrade. You do not need to do anything if your app is made using the managed workflow.
    • For bare workflow apps, this means updates downloaded on clients running `expo-updates@0.3.xwill need to be redownloaded in order to run after those clients are upgraded toexpo-updates@0.4.x. We recommend incrementing your runtime/SDK version after updating toexpo-updates@0.4.x`, and republishing any OTA updates that you do not intend to distribute embedded in your application binary.

0.4.0 — 2020-11-17

🛠 Breaking changes

  • On iOS enabled use_frameworks! usage by replacing React dependency with React-Core. (#11057 by @bbarthec)

🐛 Bug fixes

  • Fixed issue in managed workflow where reloadAsync doesn't reload the app if called immediately after the app starts. (#10917 and #10918 by @esamelson)

0.3.5 — 2020-10-02

This version does not introduce any user-facing changes.

0.3.4 — 2020-09-22

🐛 Bug fixes

  • Fixed NSInvalidArgumentException being thrown in bare applications on iOS (unrecognized selector appLoaderTask:didFinishBackgroundUpdateWithStatus:update:error: sent to instance of EXUpdatesAppController). (#10289 by @sjchmiela)

0.3.3 — 2020-09-21

This version does not introduce any user-facing changes.

0.3.2 — 2020-09-16

This version does not introduce any user-facing changes.

0.3.1 — 2020-08-26

This version does not introduce any user-facing changes.

0.3.0 — 2020-08-18

🎉 New features

  • Easier to follow installation instructions by moving them to the Expo documentation (#9145).

0.2.12 — 2020-07-24

🐛 Bug fixes

  • Fetch asset manifest through programmatic CLI interface instead of depending on a running React Native CLI server, so ./gradlew :app:assembleRelease works as expected without needing to run react-native start beforehand. (#9372).

0.2.11 — 2020-06-29

🐛 Bug fixes

  • Fixed an issue where the publish workflow was broken on Android. Note that the publish workflow will not be supported in a future version of expo-updates, so we recommend switching to the no-publish workflow.

0.2.10 — 2020-06-23

🐛 Bug fixes

  • Fixed reading the expo.modules.updates.ENABLED setting from AndroidManifest.xml.
  • Improved the error message logged when an embedded manifest cannot be found.

0.2.9 — 2020-06-15

🐛 Bug fixes

  • Fixed issue where launch screen on iOS doesn't show whilst updates are being retrieved if it is contained within a storyboard instead of a nib. (#8750 by @MattsTheChief)
  • Fixed an issue where the REACT_NATIVE_PACKAGER_HOSTNAME env var was not respected in the build scripts for iOS or Android.

0.2.8 — 2020-05-29

This version does not introduce any user-facing changes.

0.2.7 - 2020-05-27

🐛 Bug fixes

  • Added a better error message to the create-manifest-ios.sh script in case the Xcode shell cannot find the node binary.
  • Added an optional bundleIn${targetName} field to Gradle build script config. (#8464 by @rickysullivan)
  • Fixed a bug on iOS with bundling assets from outside the project root.

0.2.6 — 2020-05-27

This version does not introduce any user-facing changes.

0.2.5

🐛 Bug fixes

  • Fixed broken Android builds on Windows.

0.2.4

🐛 Bug fixes

  • Support monorepos (#8419 by @janicduplessis)
  • Support entry file configuration in Xcode/gradle build scripts (#8415 and #8418 by @janicduplessis)
  • Added a more helpful error message when trying to run a build without the packager server running.

0.2.3

🐛 Bug fixes

  • Temporarily vendor filterPlatformAssetScales method from @react-native-community/cli in order to fix builds when npm was used to install dependencies (rather than yarn).
  • Fixed an issue on iOS where calling the JS module methods in development mode, after publishing at least one update, would crash the app.

0.2.2

🐛 Bug fixes

  • Fixed an issue on iOS where expo-updates expected more assets to be embedded than actually are by the React Native CLI.
  • Added a better error message on iOS when embedded assets are missing.

0.2.1

🐛 Bug fixes

  • Added a better error message to the createManifest script when project does not have the hashAssetFiles plugin configured.

0.2.0

🎉 New features

  • Added support for the no-publish workflow. In this workflow, release builds of both iOS and Android apps will create and embed a new update at build-time from the JS code currently on disk, rather than embedding a copy of the most recently published update. For more information, along with upgrade instructions if you're upgrading from 0.1.x and would like to use the no-publish workflow, read this blog post.
  • Added Updates.updateId and Updates.releaseChannel constant exports

🐛 Bug fixes

  • Fixed an issue with recovering from an unexpectedly deleted asset on iOS.
  • Fixed handling of invalid EXPO_UDPATE_URL values on Android.
  • Updates Configuration Conditional From Equal To Prefix Check. (#8225 by @thorbenprimke)

0.1.3

🐛 Bug fixes

  • Fixed some issues with runtimeVersion on Android for apps using expo export.

0.1.2

🐛 Bug fixes

0.1.1

🐛 Bug fixes

  • Fixed 'unable to resolve class GradleVersion' when using Gradle 5. (#7577 by @IjzerenHein)

0.1.0

Initial public beta 🎉