PackageTrack

npm ยท #3758

@expo/metro-config

57.0.11expo/expo โ†—

A Metro config for running React Native projects with the Metro bundler

Release timeline

445 releases since 2020
202120222023202420252026

Releases

  1. 54.0.1218 Dec 2025

    Nothing published for this version

  2. 54.0.1111 Dec 2025

    Nothing published for this version

  3. 54.0.104 Dec 2025

    Nothing published for this version

  4. 54.0.97 Nov 2025

    Nothing published for this version

  5. 54.0.9-canary-20251031-b135dff31 Oct 2025pre-release

    Nothing published for this version

  6. 54.0.828 Oct 2025

    Nothing published for this version

  7. 54.0.8-canary-20251023-4c86f9523 Oct 2025pre-release

    Nothing published for this version

  8. 54.0.720 Oct 2025

    Nothing published for this version

  9. 54.0.7-canary-20251015-a6a127215 Oct 2025pre-release

    Nothing published for this version

  10. 54.0.7-canary-20251013-623c5a613 Oct 2025pre-release

    Nothing published for this version

  11. 54.0.7-canary-20251009-9919e089 Oct 2025pre-release

    Nothing published for this version

  12. 54.0.7-canary-20251008-f2d1b4a8 Oct 2025pre-release

    Nothing published for this version

  13. 54.0.7-canary-20251008-6acbc1c8 Oct 2025pre-release

    Nothing published for this version

  14. 54.0.7-canary-20251003-7b9d7ff3 Oct 2025pre-release

    Nothing published for this version

  15. 54.0.61 Oct 2025

    Nothing published for this version

  16. 54.0.6-canary-20250930-9dc59d330 Sept 2025pre-release

    Nothing published for this version

  17. 54.0.522 Sept 2025

    Nothing published for this version

  18. 54.0.5-canary-20250919-7a31b9619 Sept 2025pre-release

    Nothing published for this version

  19. 54.0.418 Sept 2025

    Nothing published for this version

  20. 54.0.312 Sept 2025

    Nothing published for this version

  21. 54.0.3-canary-20250912-b5ce2a812 Sept 2025pre-release

    Nothing published for this version

  22. 54.0.211 Sept 2025

    Nothing published for this version

  23. 54.0.110 Sept 2025

    Nothing published for this version

  24. 54.0.010 Sept 2025
    Release notes

    ๐Ÿ“š 3rd party library updates

    • expo-sqlite
    • expo-camera
      • [Android] Bumped MLKit barcode scanner to 17.3.0 for Android 16KB page size support. (#37454 by @kudo)

    ๐Ÿ›  Breaking changes

    • expo-notifications
    • expo-media-library
      • [Android] Fix getAssetsAsync loading performance, add resolveWithFullInfo option to control whether to load full EXIF data for images. This is a breaking change for Android apps, as it might break the orientation of images in some cases. (#37957 by @kosmydel).
    • expo-intent-launcher
    • expo-image-picker
      • [Web] Changed web uri to use blob URLs instead of base64 data URLs for better performance. The uri property will now be a blob URL instead of a base64 data URL, while the base64 property behavior remains unchanged. (#37447 by @hirbod)
      • [ios] The default for preferredAssetRepresentationMode is now .current instead of .automatic. This keeps the asset in its original container/codec (e.g. HEIC instead of JPEG) and is required for the new fast-path. Apps that relied on .automatic re-encoded output can pass preferredAssetRepresentationMode: '.automatic' to restore the old behaviour. (#37569 by @hirbod)
    • expo-font
      • [android] improve bitmap rendering for renderToImageAsync (#39118 by @vonovak)
    • expo-file-system
      • Make the modern filesystem API the default, move previous one to expo-file-system/legacy. (#38404 by @aleqsio)
    • expo-document-picker
      • [Web] getDocumentAsync() no longer returns base64 by default. The uri on web now always points to a Blob created via URL.createObjectURL(), which can be used for previews or appended to FormData for uploads. Selecting large files on web is now almost instant, since thereโ€™s no base64 conversion by default. If you still need base64, you can pass base64: true in the options. A new base64 field will then be included in the result. (#37443 by @hirbod)

    ๐ŸŽ‰ New features

    ๐Ÿ› Bug fixes

    • expo-task-manager
      • [android] add missing proguard-rules for expo-task-manager (#37833 by @chrfalch)
      • [iOS] Rethrow obj-c exception as swift error. (#38714 by @jakex7)
    • expo-sqlite
      • Fixed parallel issue for Statement.executeAsync. (#36674 by @kudo)
      • Fixed exceptions when SQLite session API returns empty buffer. (#37246 by @kudo)
      • Fixed minimum OS version support for libsql.xcframework. (#37130 by @kudo)
      • Added Android 16KB page size support. (#37446 by @kudo)
      • Fixed unnecessary database reopen from SQLiteProvider with same options. (#37872 by @kudo)
      • [Android] Fix nullability of binding params. (#37200 by @lukmccall)
      • Fixed :memory: path issue when building on Xcode 26. (#39511 by @kudo)
    • expo-speech
      • [Android] Fix calling getVoices before TTS initialization (#36664 by @jakex7)
    • expo-secure-store
      • [android] Reset isAuthenticating prompt flag when error is thrown (#38132 by @SYoder1)
      • [android] use more specific error messages in authentication prompt errors (#38340 by @SYoder1)
    • expo-screen-orientation
      • [iOS] Fix the app becoming unresponsive when the orientation listener is used in Split View on iPad. (#36667 by @alanjhughes)
      • [iOS] Call createRootViewController from the ExpoReactNativeFactoryDelegate. (#36787 by @alanjhughes)
    • expo-screen-capture
      • [Android] Fix permissions on Android 13.
      • [iOS] Fix issue with header flickering on screenshot prevention. (#38384 by @hryhoriiK97)
      • [Android] Prevent hard crash when we cannot access the event emitter. (#38869 by @alanjhughes)
    • expo-print
      • [Android] Use the last path segment of the uri as the job name. (#39133 by @ouwargui)
    • expo-notifications
      • [ios] ensure getLastNotificationResponseAsync does not return null when no response listener added (#36930 by @jmysliv)
      • [android] add missing proguard-rules for expo-notifications (#37833 by @chrfalch)
      • [iOS] Rethrow obj-c exception as swift error. (#38714 by @jakex7)
      • [ios] fix setBadgeCountAsync(0) also cleared notifications (#39009 by @vonovak)
      • refactor ExpoPushTokenManager promise handling (#39179 by @vonovak)
      • [android] do not send faulty duplicate TextInputNotificationResponse events (#39356 by @vonovak)
      • fix text response not present on some Android versions (#39350 by @vonovak)
      • [ios] fix race condition in setNotificationCategoryAsync (#39306 by @vonovak)
    • expo-modules-core
      • Fixed extraMavenRepos not applied on Gradle subprojects. (#36500 by @lukmccall)
      • [Android] Fix getSharedObjectId for devices running android 7 and below. (#36698 by @lukmccall)
      • [iOS] Fixed missing upload progress from XMLHttpRequest when network inspector is enabled. (#36715 by @kudo)
      • [iOS] Call createRootViewController from the ExpoReactNativeFactoryDelegate. (#36787 by @alanjhughes)
      • [iOS] Prevent crash on failed networked requests (#36896 by @adrum)
      • Added Android 16KB page size support. (#37446 by @kudo)
      • [Android] Fix Value is undefined, expected an Object in the JNIUtils::emitEventOnJSIObject. (#37778 by @lukmccall)
      • [Android] Mark either converters as non-trivial. (#37836 by @aleqsio)
      • [iOS] Fix view functions for SwiftUI views. (#38275 by @aleqsio)
      • [iOS] Fix missing CDP headers when using static frameworks. (#37448 by @alanjhughes)
      • [android] Fix android build without coreFeatures compose (#38153 by @Ubax)
      • [iOS] Fix ExpoRequestInterceptorProtocol to properly notify client about HTTP redirects. (#38078 by @kudo)
      • [Android] Conditionally register RuntimeHolder bindings. (#38345 by @alanjhughes)
      • [iOS] Fix null string conversion. (#38284 by @jakex7)
      • [Android] Fix invalid array buffer offset in typed arrays. (#38958 by @aleqsio)
      • [Android] Fix ErrorManager not receiving error/warning events on the JS side. (#39126 by @behenate)
      • [ios] Bring back correct scoping for Expo Go. (#39186 by @aleqsio)
      • Fix Color extension on macOS. (#39280 by @gabrieldonadel)
      • Fix ErrorManager not receiving events. (#39290 by @behenate)
      • [Android] Fix type check in the SharedRef converter. (#39446 by @lukmccall)
      • [Android] Fixes JNI detected error in application: obj == null in ExpoModulesHostObject::get. (#39523 by @lukmccall)
    • expo-media-library
    • expo-location
      • [Android] Fix shouldUseForegroundService being always true. (#35875 by @filipef101)
    • expo-linking
    • expo-mail-composer
      • [android] Replace LabeledIntent with Intent in composeAsync (#37624 by @Ubax)
      • [ios] Prevent duplicate values in LSApplicationQueriesSchemes (#37697 by @huextrat)
    • expo-image-manipulator
    • expo-image-picker
      • Prevent external applications from accessing the CropImageActivity (#37223 by @aladine)
      • [Web] Corrected camera capture attributes on web where front camera was using 'environment' and back camera was using 'user'. Reversed the values to ensure proper camera selection. (#37447 by @hirbod)
      • [ios]: Enhance image reading logic to prioritize cropped images and improve orientation handling (#37846 by @hirbod)
      • [android] Adjust video metadata extraction to account for rotation (#37849 by @hirbod)
      • [iOS] Fix wrong dimensions reported for portrait images (#39230 by @hirbod)
      • [ios] Avoid transcoding for .avif and .tiff like it works for .heic. This keeps the asset in its original container/codec (e.g. TIFF instead of JPEG) and is required for the new fast-path. Apps that relied on .automatic re-encoded output can pass preferredAssetRepresentationMode: '.automatic' to restore the old behaviour.(#39398 by @chocky335)
    • expo-font
    • expo-gl
      • Added Android 16KB page size support. (#37446 by @kudo)
    • expo-file-system
      • Fix the UploadTask.uploadAsync method's return type did not indicate that the method could resolve to null. (#36476 by @DoctorJohn)
      • Update exists logic to align with documentation (#37692 by @Wenszel)
      • Fix memory usage issue in getInfoAsync (#37417 by @Wenszel)
      • Improved type safety in the FileSystem module to support tsconfig setups with stricter rules than the default. (#37107 by @hirbod)
      • Added required modifiers in the FileSystem module to support tsconfig setups with stricter rules than the default. (#37467 (#37467 by)
      • Fixed type definition for textSync() to return string instead of Promise<string> (#38898 by @LeonDvlpmnt)
      • [iOS] Fix tvOS compile error. (#39345 by @douglowder)
      • Add minimal web stub to fix broken imports on web (#39400 by @LeonDvlpmnt)
    • expo-document-picker
      • [Android] avoid hard crash in case of an exception (#37110 by @vonovak)
    • expo-contacts
    • expo-constants
    • expo-calendar
    • expo-camera
      • [Android] Fix the scenario where switching apps results in the loss of the recording video by throwing an error. (#36854 by @ladeira1)
      • [Android] Fix barcode scanner coordinates to UI mapping. (#37198 by @alanjhughes)
      • [iOS] Fixes returning PictureRef objects.(#37393 by @alanjhughes)
      • Fix barcode options to correctly handle empty barcodeTypes (#38100 by @LeonDvlpmnt)
      • [Android] Add dismissScanner to module to prevent undefined error. (#38129 by @LeonDvlpmnt)
      • [Android] Correctly handle errors when using launchScanner. (#38322 by @alanjhughes)
      • [iOS] Fix videoQuality and pictureSize affecting modes they don't apply too. (#38757 by @alanjhughes)
      • [Android] Fix early tear down from onDetachedFromWindow. (#39119 by @alanjhughes)
      • [Android] Fix errors on devices that do not have Google Play Services installed. (#39455 by @alanjhughes)
    • expo-blur
      • [Android] Fix transition issues with react-native-screens when using dimezisBlurView blur method. (#37904 by @hannojg
    • expo-background-fetch
      • [iOS] Rethrow obj-c exception as swift error. (#38714 by @jakex7)
    • expo-av
      • Added Android 16KB page size support. (#37446 by @kudo)
    • expo-auth-session
      • Allow preferEphemeralSession in promptAsync method. (#35489 by @TJTorola)
    • expo-asset
      • [Android] fix file scheme handling in downloadAsync (#38227 by @vonovak)

    ๐Ÿ’ก Others

    • expo-video-thumbnails
      • Extracted the read permission check from FileSystemUtilities (#39210 by @kosmydel)
    • expo-task-manager
    • expo-sqlite
    • expo-speech
      • [Android] Change Constants to Constant/Property. (#38926 by @jakex7)
    • expo-sharing
      • Extracted the read permission check from FileSystemUtilities (#39210 by @kosmydel)
    • expo-secure-store
      • [iOS] Change Constants to Constant/Property. (#38926 by @jakex7)
    • expo-sensors
    • expo-screen-capture
    • expo-print
      • Mark uri option as supported on iOS and Android only. (#37312 by @aleqsio)
      • Change Constants to Constant/Property. (#38926 by @jakex7)
    • expo-notifications
    • expo-modules-core
      • Improved @expo/ui/swift-ui-primitives integrations. (#36937 by @kudo)
      • [iOS] Use dynamic type for AsyncFunction result conversion (#36986 by @jakex7)
      • Add package exports support. (#37302 by @EvanBacon)
      • [iOS] Cleaned up iOS header files for precompilation (#38441 by @chrfalch)
      • [Android] RN 0.81.0: patched some reflection issues after kotlin upgrade (#38451 by @chrfalch)
      • Restructure Jest polyfills to not import forbidden platform extension directly. (#37588 by @EvanBacon)
      • [Android] Improve time to retrieve the Expo module. (#37082 by @lukmccall)
      • [Android] Reduce the memory footprint of calling function from the native module. (#37080 by @lukmccall)
      • [Android] Changed how nullable types are converted. (#37055 by @lukmccall)
      • [Android] Reduce the number of conversions needed to call a function from the native module. (#37099 by @lukmccall)
      • Updated ExpoComposeView to support virtual view. (#36255 by @kudo)
      • [iOS] Support throwing errors in shared object constructor. (#37618 by @alanjhughes)
      • [iOS] Remove boilerplate from function factories. (#37884 by @alanjhughes)
      • [Android] Remove react-native 0.74 support files (#38216 by @gabrieldonadel)
      • Add missing peer dependencies for react and react-native (#38528 by @kitten)
      • Deprecate Constants in favor of Constant and Property. (#38748 by @jakex7)
      • Refactor typings to replace ExpoGlobal with namespace and to preserve type+value overlay on re-exported core globals (#38649 by @kitten)
      • Fixed internal JavaScriptValue and added props.globalEventDispatcher for expo-ui. (#38542 by @kudo)
      • [ios] Wrap system color references for dev client. (#38912 by @douglowder)
      • [Android] Update min, target, and compile SDK versions. (#38938 by @alanjhughes)
      • Fix JavaScriptRuntimeSpec tests (#39281 by @gabrieldonadel)
      • Added appContext to ExpoSwiftUI.ViewProps. (#39231 by @kudo)
      • requireOptionalNativeModule will now catch errors which occur while requiring a module. (#39290 by @behenate)
      • Use new LongLivedObject.h and CallbackWrapper.h headers namespace (#39344 by @gabrieldonadel)
      • [iOS] Added Color convertible support without passing AppContext. (#39183 by @aleqsio)
      • Extracted the read permission check from FileSystemUtilities (#39210 by @kosmydel)
      • [Android] Remove some usage of kotlin.reflect.full.*. (#39385 by @lukmccall)
      • improve startup performance by not relying on kotlin reflection. (#39389 by @ACHP)
    • expo-media-library
    • expo-local-authentication
    • expo-keep-awake
    • expo-location
    • expo-linking
    • expo-image-manipulator
      • Extracted the read permission check from FileSystemUtilities (#39210 by @kosmydel)
    • expo-image-picker
      • [ios] Images now use a fast-path if possible: the original file is copied once and its size is read from the header (no full decode / re-encode). This requires quality: 1, allowsEditing: false and preferredAssetRepresentationMode: .current (new default) (#37569 by @hirbod)
      • [ios] Videos picked with VideoExportPreset.Passthrough are no longer transcoded and are copied only once. (#37569 by @hirbod)
    • expo-font
      • [web] remove deprecated style 'type' attribute (#38114 by @vonovak)
      • Add missing react-native peer dependency (#38540 by @kitten)
      • Update remaining @expo/config-plugins in config plugin to expo/config-plugins (#38580 by @kitten)
      • Fix types and adjust platform checks. (#37302 by @EvanBacon)
    • expo-gl
      • Use pointerEvents style instead of prop for components on web. (#38023 by @EvanBacon)
      • Add missing optional react-dom and react-native-reanimated peer dependencies (#38569 by @kitten)
      • [Web] Remove findDOMNode usage. (#38800 by @alanjhughes)
    • expo-file-system
    • expo-document-picker
    • expo-device
    • expo-clipboard
    • expo-contacts
    • expo-cellular
    • expo-constants
    • expo-camera
    • expo-battery
    • expo-background-fetch
    • expo-av
    • expo-auth-session
    • expo-asset
      • Remove "Please" from warnings and errors (#36862 by @brentvatne)
      • [android] throw when loading empty font file (#38229 by @vonovak)
      • Update remaining @expo/config-plugins in config plugin to expo/config-plugins (#38580 by @kitten)
    • expo-application
    Open source โ†’
  25. 1.0.0-canary-20241021-c4b5a9321 Oct 2024pre-release

    Nothing published for this version

  26. 1.0.0-canary-20241021-7aba81321 Oct 2024pre-release

    Nothing published for this version

  27. 1.0.0-canary-20241018-ebd377a18 Oct 2024pre-release

    Nothing published for this version

  28. 1.0.0-canary-20241018-75a0b2518 Oct 2024pre-release

    Nothing published for this version

  29. 1.0.0-canary-20241018-4f8243a18 Oct 2024pre-release

    Nothing published for this version

  30. 1.0.0-canary-20241018-2a482e318 Oct 2024pre-release

    Nothing published for this version

  31. 0.21.118 Sept 2025

    Nothing published for this version

  32. 0.21.104 Sept 2025

    Nothing published for this version

  33. 0.21.93 Sept 2025

    Nothing published for this version

  34. 0.21.82 Sept 2025

    Nothing published for this version

  35. 0.21.731 Aug 2025

    Nothing published for this version

  36. 0.21.7-canary-20250830-81bb19930 Aug 2025pre-release

    Nothing published for this version

  37. 0.21.627 Aug 2025

    Nothing published for this version

  38. 0.21.6-canary-20250826-f47516626 Aug 2025pre-release

    Nothing published for this version

  39. 0.21.525 Aug 2025

    Nothing published for this version

  40. 0.21.421 Aug 2025

    Nothing published for this version

  41. 0.21.319 Aug 2025

    Nothing published for this version

  42. 0.21.217 Aug 2025

    Nothing published for this version

  43. 0.21.115 Aug 2025

    Nothing published for this version

  44. 0.21.013 Aug 2025

    Nothing published for this version

  45. 0.21.0-canary-20250729-d8899ae29 Jul 2025pre-release

    Nothing published for this version

  46. 0.21.0-canary-20250722-599a28f22 Jul 2025pre-release

    Nothing published for this version

  47. 0.21.0-canary-20250713-8f814f813 Jul 2025pre-release

    Nothing published for this version

  48. 0.21.0-canary-20250709-136b77f9 Jul 2025pre-release

    Nothing published for this version

  49. 0.21.0-canary-20250701-6a945c51 Jul 2025pre-release

    Nothing published for this version

  50. 0.21.0-canary-20250630-547cd8230 Jun 2025pre-release

    Nothing published for this version

  51. 0.20.1811 Dec 2025

    Nothing published for this version

  52. 0.20.173 Jul 2025

    Nothing published for this version

  53. 0.20.162 Jul 2025

    Nothing published for this version

  54. 0.20.1518 Jun 2025

    Nothing published for this version

  55. 0.20.15-canary-20250613-b29d67613 Jun 2025pre-release

    Nothing published for this version

  56. 0.20.15-canary-20250612-338ef5512 Jun 2025pre-release

    Nothing published for this version

  57. 0.20.15-canary-20250611-f0afe8011 Jun 2025pre-release

    Nothing published for this version

  58. 0.20.146 May 2025

    Nothing published for this version

  59. 0.20.133 May 2025

    Nothing published for this version

  60. 0.20.121 May 2025

    Nothing published for this version