Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

expo-screen-capture

Package Overview
Dependencies
Maintainers
21
Versions
75
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

expo-screen-capture - npm Package Versions

1
67

2.0.0

Diff

Changelog

Source

52.0.0 — 2024-11-08

📚 3rd party library updates

  • Updated react-native-svg from 15.2.0 to 15.7.1. (#31567 by @lukmccall)

🛠 Breaking changes

  • unimodules-app-loader
  • expo-web-browser
  • expo-video-thumbnails
  • expo-task-manager
  • expo-store-review
  • expo-sqlite
  • expo-secure-store
  • expo-sms
  • expo-speech
  • expo-sensors
  • expo-screen-capture
  • expo-sharing
  • expo-print
  • expo-screen-orientation
  • expo-network
  • expo-notifications
  • expo-modules-core
  • expo-media-library
  • expo-mail-composer
  • expo-location
    • Remove deprecated code: geocoding using Google Maps API, old permission methods and related types. (#29961 by @Simek)
    • Bumped iOS deployment target to 15.1. (#30840, #30867 by @tsapeta)
  • expo-local-authentication
  • expo-localization
  • expo-linking
  • expo-keep-awake
  • expo-linear-gradient
    • stricter TS type of the colors prop. It now requires providing an array of least two values. Passing an empty array or an array with one value will fail to typecheck. (#27820 by @navignaw)
    • Bumped iOS and tvOS deployment target to 15.1. (#30840 by @tsapeta)
  • expo-image-manipulator
  • expo-image-picker
    • Remove READ_MEDIA_IMAGES and READ_MEDIA_VIDEO permissions. (#31902 by @aleqsio)
    • Bumped iOS deployment target to 15.1. (#30840 by @tsapeta)
    • The default value for quality option has been changed from 0.2 to 1.0 for better performance and to match the most common expectation. (#30896 by @tsapeta)
    • ImagePicker.MediaTypeOptions have been deprecated. Use a single MediaType or an array of MediaTypes instead. (#30957 by @behenate)
  • expo-gl
  • expo-face-detector
  • expo-image-loader
  • expo-haptics
  • expo-document-picker
  • expo-font
  • expo-device
  • expo-file-system
  • expo-contacts
  • expo-crypto
  • expo-constants
  • expo-clipboard
  • expo-cellular
  • expo-camera
  • expo-calendar
  • expo-brightness
  • expo-battery
  • expo-blur
  • expo-background-fetch
  • expo-av
  • expo-asset
  • expo-apple-authentication
  • expo-application

🎉 New features

  • expo-web-browser
  • expo-sqlite
  • expo-secure-store
  • expo-sensors
  • expo-network
  • expo-notifications
  • expo-modules-core
    • Added onKeyDown and onKeyLongPress to ReactActivityHandler on Android. (#28684 by @lukmccall)
    • [Android] Add support for onUserLeaveHint. (#32033 by @behenate)
    • [Web] Modules are now registered in global. (#29870 by @aleqsio)
    • [iOS] Add support for passing SharedObjects as a function parameter. (#30314 by @aleqsio)
    • Added support for startObserving and stopObserving on the web. (#28953 by @aleqsio)
    • Switched exported EventEmitter to the C++ implementation. (#28946 by @tsapeta)
    • [Android] OnStartObserving and OnStopObserving can now be attached to a specific event. (#29012 by @lukmccall)
    • [Android] Add the ability to change the name of the exported shared object. (#30040 by @lukmccall)
    • [Android] Supported returning of the SharedObject from functions. (#30426 by @lukmccall)
    • [iOS] Support implementing customizeRootView in ExpoAppDelegateSubscriber. (#30550 by @alanjhughes)
    • [Android] Added support for primitive arrays in functions. (#30657 by @lukmccall)
    • Implemented toJSON function on shared objects that includes dynamic properties defined in their prototype chain. (#30813 by @tsapeta)
    • [iOS] Added experimental support for rendering SwiftUI views. (#19888 by @tsapeta)
    • [Android] Introduced experimental converter to support a broader range of types that can be passed to the JS. (#30944 by @lukmccall)
    • [iOS] Add functions that are called before and after a shared object is removed from the registry. (#30949 by @alanjhughes)
    • [Android] Rewrite map converter to support a broader range of types that can be passed to the JS. (#31016 by @lukmccall)
    • [Android] EitherTypeConverter now can work with the Dynamic class. (#31074 by @lukmccall)
    • [iOS] Added a way to provide shared objects memory pressure to improve garbage collection of native objects retaining some heavy data. (#31168 by @tsapeta)
    • [Android] The single parameter now can be auto-cast to the list. (#31290 by @lukmccall)
    • [Android] SharedRef converter now checks the inner ref type. (#31441 by @lukmccall)
    • [Android] Added support for changing if functions are enumerable. (#31495 by @lukmccall)
    • Introduced a base class for all shared refs (expo.SharedRef). (#31513 & #31706 by @lukmccall) (#31513, #31706 by @lukmccall)
    • [Android] Add support for react-native 0.76 (#31580 by @gabrieldonadel)
    • [Android] Added onStartListeningToEvent and onStopListeningToEvent to the SharedObject. (#31385 by @lukmccall)
    • Added Apple shared app groups support. (#31519 by @kudo)
    • [Android] Added a way to provide shared objects memory pressure to improve garbage collection of native objects retaining some heavy data. (#31784 by @lukmccall)
    • Added nativeRefType to SharedRef. (#31776 by @lukmccall)
    • [Android] Added kotlin.time.Duration support. (#31858 by @lukmccall)
    • Return duration from logger timer block methods. (#31805 by @wschurman)
    • [iOS] Made CMTime from CoreMedia a convertible type. (#31967 by @tsapeta)
  • expo-media-library
    • [iOS] include more error information in native rejections (#30504 by @vonovak)
    • On Android 14+, when user gave only partial asset access, presentPermissionsPickerAsync() presents the permissions dialog to allow the user to change the selected assets. (#29882 by @vonovak)
  • expo-location
  • expo-local-authentication
  • expo-linking
  • expo-linear-gradient
  • expo-image-manipulator
    • [iOS][Web] Introduce a new API for image manipulation. (#30135, #30194 by @tsapeta)
    • [Android] Introduce a new API for image manipulation. (#30232 by @lukmccall)
    • [iOS] Added support for image refs in ImageManipulator.manipulate and useImageManipulator. (#32346 by @tsapeta)
    • [iOS][Web] Added support for image refs in ImageManipulator.manipulate and useImageManipulator. (#32346, #32354 by @tsapeta)
    • [Android] Added support for image refs in ImageManipulator.manipulate and useImageManipulator. (#32398 by @lukmccall)
  • expo-image-picker
    • [web] Include file object from input for server uploads. (#31788 by @EvanBacon)
    • [iOS] Add support for picking live photos from the library. (#30957 by @behenate)
  • expo-haptics
  • expo-font
    • Allow woff and woff2 format on iOS with the config plugin. (#30220 by @titozzz)
    • More detailed error messages for FontLoader native module rejections (#31104 by @vonovak)
    • Add getLoadedFonts() function (#30431 by @vonovak)
  • expo-device
    • [iOS] Added some missing entries for 2024 Apple devices. (#31970 by @fobos531)
  • expo-file-system
    • [expo-file-system][next] Add file permissions for expo go (#31594 by @aleqsio)
    • [expo-file-system][next] Add better error handling to delete (#31683 by @aleqsio)
    • [expo-file-system][next] Adjust copy/move functions to allow renaming folders. (#31636 by @aleqsio)
    • [expo-file-system][next] Add name property to files and directories. (#31545 by @aleqsio)
    • Add path joining in File and Directory constructors. (#31467 by @aleqsio)
    • [expo-file-system][next] Make move operation change file url. (#31544 by @aleqsio)
    • Change exists() function to a property. (#31522 by @aleqsio)
    • Add path utilities and parentDirectory, extension fields to the new file system module. (#31333 by @aleqsio)
    • Add listing directory contents to the new file system module. (#31121 by @aleqsio)
    • Add base64() new file system module. (#31357 by @aleqsio)
    • Add size and md5 properties to the new file system module. (#31301 by @aleqsio)
    • Add downloading to the new file system module. (#30841 by @aleqsio)
    • Add copying and moving files to the new file system module. (#30314 by @aleqsio)
    • Add new file system module. (#29995 by @aleqsio)
    • [iOS] Added Paths.appleSharedContainers to get the paths to the Apple App Groups shared containers. (#31525 by @IgorKhramtsov and @kudo) (#31525 by @IgorKhramtsov, @kudo)
  • expo-constants
  • expo-camera
    • Add autoFocus prop to allow setting the device focus mode. (#28650 by @alanjhughes)
    • On Android, add support for setting the aspect ratio of the camera. (#29822 by @alanjhughes)
    • Support mirroring the output of the front facing camera. (#30430 by @alanjhughes)
    • On Android, support mirroring video when using front facing camera. Control mirroring with a prop. Deprecate mirror option on takePictureAsync and recordAsync. (#30548 by @alanjhughes)
    • Support pausing and resuming the preview. (#30666 by @alanjhughes)
    • Add active prop to stop and start the camera session. Useful with navigation where the camera is can still be active on a previous screen. (#30802 by @alanjhughes)
    • Add shutterSound key to CameraPictureOptions, allowing users to disable the camera shutter sound when invoking takePictureAsync. (#31038) by @yuna5566 (#31038 by @yuna5566)
  • expo-calendar
    • Add new methods for managing events using the system-provided calendar UI (#30102 by @vonovak)
  • expo-av

🐛 Bug fixes

  • expo-web-browser
    • Add missing react-native peer dependencies for isolated modules. (#30490 by @byCedric)
  • expo-video-thumbnails
  • expo-task-manager
  • expo-store-review
    • Add missing react-native peer dependencies for isolated modules. (#30484 by @byCedric)
  • expo-sqlite
    • [Android] Reduce the number of global references to NativeStatementBinding. (#29937 by @lukmccall)
    • [iOS] Fixed <SQLiteProvider assetSource={{ assetId: require(...) }}> database always being overwrite on iOS 16 and lower. (#29945 by @kudo)
    • Fixed invalid characters for prepared statements on iOS. (#30579 by @kudo)
    • Fixed the "disk I/O error" on older Android devices. (#30718 by @kudo)
    • Add missing react and react-native peer dependencies for isolated modules. (#30483 by @byCedric)
    • Fixed build errors on iOS if other third-party libraries building with iOS system SQLite. (#30824 by @kudo)
    • Fixed build error when using incremental_installation mode in CocoaPods. (#30918 by @kudo)
    • Fixed prebuild error when app.json doesn't specify any plugin properties for expo-sqlite. (#31672 by @kudo)
    • Fixed SQLiteDatabase -> pathUtils -> SQLiteDatabase require cycle warning from metro. (#31956 by @kudo)
  • expo-secure-store
    • [iOS] Improve error message for unhandled errors (#29394 by @hassankhan)
    • [Android] Fix decryption errors after Android Auto Backup has restored expo-secure-store data. (#29943 by @behenate)
  • expo-speech
  • expo-sensors
  • expo-screen-capture
    • [Android] Fix ScreenCaptureModule was crashing in the dev-client when going back to the home screen. (#29694 by @lukmccall)
    • Add missing react peer dependencies for isolated modules. (#30480 by @byCedric)
    • [Android] Fix Screen capture callback was not called on Android 14 when API methods was not being called. (#31702 by @chrfalch)
  • expo-print
    • Add missing react-native peer dependencies for isolated modules. (#30479 by @byCedric)
  • expo-screen-orientation
    • Fix bug with weak var type causing dropped events. (#28677 by @aleqsio)
    • [Android] Fixed screen orientation change listener not firing. (#28832 by @lukmccall)
    • Add missing react-native peer dependencies for isolated modules. (#30481 by @byCedric)
  • expo-network
    • [Android] Fix java.lang.IllegalArgumentException: NetworkCallback was not registered. (#30185 by @lukmccall)
    • [iOS] Fix wired ethernet connection being reported as unknown type. (#30169 by @Simek)
    • [iOS] Fix getting IP address from wired ethernet connection interfaces. (#31223 by @matt-oakes)
    • Add missing react peer dependencies for isolated modules. (#30477 by @byCedric)
  • expo-notifications
    • [Android] fix response handling when app in background or not running. (#28883 by @douglowder)
    • [Android] Correctly map response in useLastNotificationResponse hook. (#28938 by @douglowder)
    • [Android] Fix FCMv1 icons and NPE. (#29204 by @douglowder)
    • [Android] Remove unneeded logging. (#29370 by @douglowder)
    • Remove console.log line. (#29443 by @douglowder)
    • [Android] Add default channel plugin prop, restore legacy icon and color. (#29491 by @douglowder)
    • [Android] fix getLastNotificationResponseAsync. (#30301 by @douglowder)
    • [Android] Fix serialization of vibration pattern. (#30495 by @douglowder)
    • [Android] Android 11 crash when click foreground notifications. (#30207 by @GrinZero)
    • Notification's textInput content would contain placeholder instead of the actual user input (#27479 by @Victor-FT)
    • [Android] map Expo and Firebase notifications correctly. (#30615 by @douglowder)
    • useLastNotificationResponse should have only one effect. (#30653 by @douglowder)
    • [Android] Eliminate unsupported types when processing notification intents from onCreate/onNewIntent. (#30750 by @douglowder)
    • [Android] Fix content.data in scheduled notifications surfaced to JS. (#31048 by @douglowder)
    • [Android] image was missing on android when in foreground (#31405 by @vonovak)
    • [Android] fix local notifications with null trigger. (#31157 by @douglowder)
    • [Android] Take channelId into account when presenting notifications. (#31201 by @vonovak)
    • [android] fix: allow data message to control notification appearance (#32162 by @vonovak)
    • [ios] fix crash if expo-update reload happens while Notifications.requestPermissionsAsync() is showing native dialog (#32096 by @mfazekas)
    • [android] createNotificationChannel could return incorrect channel information (#32000 by @vonovak)
    • [android] fix notifications with ChannelAwareTrigger not being presented (#31999 by @vonovak)
    • export PermissionStatus as value, not as type (#31968 by @vonovak)
    • throw improved error on invalid subscription in removeNotificationSubscription (#31842 by @vonovak)
    • [android] fix notifications actions not being presented (#31795 by @vonovak)
    • Add missing react and react-native peer dependencies for isolated modules. (#30478 by @byCedric)
    • [iOS] do not overwrite existing aps entitlement. (#31892 by @douglowder)
    • fix NotificationTrigger type (#32659 by @vonovak)
  • expo-modules-core
    • Fix expo-modules-core is broken on the server side. (#28764 by @alantoa)
    • [Android] Fixed No implementation found for com.facebook.jni.HybridData expo.modules.kotlin.jni.JavaScriptModuleObject.initHybrid. (#29513 by @lukmccall)
    • Fixed reload crash on Android. (#29593 by @kudo)
    • [Android] Fixed converting from null to Record sometimes didn't work as expected. (#29508 by @lukmccall)
    • Fixed resource leakage from ExpoRequestInterceptorProtocol. (#29798 by @kudo)
    • [Android] Reduce the number of global references to JSIContext. (#29936 by @lukmccall)
    • Fixed getPathPermissions permission error for local path with spaces on iOS 16 and older. (#29958 by @kudo)
    • [iOS] Fixed broken addUIBlock and executeUIBlock on New Architecture mode. (#30030 by @kudo)
    • Fixed RCTTriggerReloadCommandListeners not found build error on iOS. (#30014 by @kudo)
    • Fixed blocking SSE responses from network interceptor on Android. (#30062 by @kudo)
    • [iOS] Fix getExternalPathPermissions returns no read/write permissions. (#30540 by @dispelpowerone)
    • Fix support for macOS. (#31307 by @gabrieldonadel)
    • [Android] Fixed RNHeadlessAppLoader class for New Architecture support. (#32146 by @chrfalch)
    • [iOS] Fix using enums as optional arguments. (#32147 by @aleqsio)
    • [Android] Change JS return type for kotlin null to be null instead of undefined. (#31301 by @aleqsio)
    • [iOS] Swift Enumerables did not correctly convert to JS values. (#30191 by @vonovak)
    • [jest] Fix uuid mock in jest-expo. (#29840 by @EvanBacon)
    • [Android] Fix error: no viable constructor or deduction guide for deduction of template arguments of 'weak_ptr' (#29075 by @rafi16jan)
    • [Android] Fix getContext().getNativeModule(UIManagerModule.class) in Bridgeless. (#29203 by @arushikesarwani94)
    • [iOS] Fix data race in PersistentFileLogSpec.swift. (#28924 by @hakonk)
    • [Android] Fix the event emitter, which might crash during the reloads. (#29176 by @lukmccall)
    • [iOS] Fix random conversion errors when converting JavaScript floating point numbers to Swift.Float. (#29053 by @behenate)
    • Fixed a crash when the event listener throws an error. (#30065 by @tsapeta)
    • [Android] Fixed the record's constructor with default parameters were being ignored when converting from JavaScript to native. (#30217 by @lukmccall)
    • [iOS] Fixed returning already registered shared objects. (#30241 by @tsapeta)
    • [Android] Provide value in getName of ModuleRegistryReadyNotifier.java (#30358 by @WoLewicki)
    • [Android] When a SharedObject that was passed as an argument is returned, it no longer creates a new object. (#30231 by @lukmccall)
    • [Android] Fixed some types weren't correctly converted when using coroutines. (#30227 by @lukmccall)
    • [Android] Fixed not throwing when setting read-only properties. (#30428 by @lukmccall)
    • [Android] Fixed expo.modules.kotlin.jni.tests.RuntimeHolder class not found crash when R8 is enabled. (#30572 by @kudo)
    • [Android] Fixed Class declares 0 type parameters, but X were provided on Android when R8 is enabled. (#30659 by @lukmccall)
    • [Android] Fixed SharedObject class names are obfuscated when R8 is enabled. (#30948 by @lukmccall)
    • [Android] Fixed CodedException.getCode() crash when R8 is enabled. (#31392 by @kudo)
    • [Android] Fixed getter for the third parameter of Either. (#31443 by @lukmccall)
    • [Android] Fixed R8 build error Missing class expo.modules.kotlin.types.ExperimentalJSTypeConverter$URIConverter. on macOS host. (#31452 by @kudo)
    • [iOS] Fixed No space left on device when saving persistent log. (#31583 by @RodolfoGS)
    • Fixed iOS reload crash on New Architecture mode. (#31789 by @kudo)
    • [iOS] Fixed views using the incorrect AppContext instance. (#31897 by @lukmccall)
    • [iOS] Fixed crashes on the New Architecture when dispatching events during the props update. (#31971 by @tsapeta)
    • Fixed registerAdditionalModuleClasses deadlock issue on old architecture mode. (#32209 by @kudo)
    • [iOS] Removed window synthesis in EXAppDelegateWrapper to fix crashes caused by deallocated RCTFabricSurface. (#32233 by @tsapeta)
    • [iOS] Fix optionals conversion. (#32239 by @aleqsio)
    • Fixed retain cycle for ExpoRequestCdpInterceptor. (#32289 by @kudo)
    • Fixed updating props on SwiftUI views on the New Architecture. (#32381 by @tsapeta)
    • Fixed build error when use_frameworks!. (#32358 by @kudo)
    • [iOS] Fixed broken self-signed connections from network inspector. (#32670 by @kudo)
  • expo-media-library
    • On iOS, add back image loader to handle ph:// and assets-library:// schemes. (#29747 by @alanjhughes)
    • On iOS, getAssets crashed when result was is empty (#29969 by @vonovak)
    • On Android, throw an error when deleting an asset was unsuccessful. (#29777 by @mathieupost)
    • Add missing react-native peer dependencies for isolated modules. (#30476 by @byCedric)
    • On Android, adding an asset to an album containing another album would throw an exception. (#29777 by @nafeij) (#31027 by @Nafeij)
    • [Android] Fix exceptions when moving or deleting video assets. (#31424 by @behenate)
    • [iOS] Fixes asset types not returned correctly. (#32621 by @aleqsio)
  • expo-location
    • On iOS, fix an issue where if the user selects "Allow Once" for location permissions, we needed to request background permissions twice because the first time had effect. (#29272 by @alanjhughes)
  • expo-local-authentication
    • [iOS] isEnrolledAsync() returns correct value when biometry is locked out. (#30565 by @vonovak)
    • [Android] Fix authenticateAsync crash when disableDeviceFallback is true. (#32076 by @dcangulo)
  • expo-localization
    • Fix invalid regionCode response on iOS. (#32081 by @aleqsio)
    • Add missing react peer dependencies for isolated modules. (#30474 by @byCedric)
    • Only import from expo/config to follow proper dependency chains. (#30501 by @byCedric)
    • Only import from expo/config-plugins to follow proper dependency chains. (#30499 by @byCedric)
  • expo-linking
  • expo-keep-awake
    • Stop useKeepAwake calls deactivating each other by default. (#28884 by @macksal)
    • Add missing react peer dependencies for isolated modules. (#30470 by @byCedric)
  • expo-linear-gradient
    • Add missing react and react-native peer dependencies for isolated modules. (#30471 by @byCedric)
  • expo-image-manipulator
    • On iOS correctly handle urls coming from the users photo library. (#28777 by @alanjhughes)
  • expo-image-picker
    • [Android] Add support for granular permissions. (#28897 by @lukmccall)
    • Support removing microphone permissions through config plugin. (#29749 by @alanjhughes)
    • [iOS] Fix an issue where the app will crash when using the popover presentation style on iPad. (#29892 by @alanjhughes)
    • [iOS] Provide more image metadata in the result object. (#29648 by @vonovak)
    • Only import from expo/config-plugins to follow proper dependency chains. (#30499 by @byCedric)
    • [web] Return missing values from video selection. (#30966 by @entiendoNull)
    • [Android] Fix permissions on devices running Android 11 and 12. (#31396 by @alanjhughes)
    • Fix incorrect width/height reported with EXIF tags 5 and 7 (#32534 by @gaearon)
  • expo-gl
    • Add NULL check before releasing textureRef in EXGLCameraObject. (#29092 by @hakonk)
    • Add missing react and react-native peer dependencies for isolated modules. (#30468 by @byCedric)
    • Add missing react-native-web optional peer dependency for isolated modules. (#30689 by @byCedric)
    • Converted the native view from Objective-C to Swift to fix support for the New Architecture. (#32675 by @tsapeta)
  • expo-document-picker
  • expo-font
    • Fixed some vector icons not rendering correctly. (#28747 by @tsapeta)
    • [iOS] Fix font registration failing when font was in use. (#28989 by @aleqsio)
    • On iOS, store the font postscriptName instead of fullName which is what iOS will use to register the font. (#29502 by @alanjhughes)
    • On iOS, fix issues where fonts were removed when the app is backgrounded. (#30400 by @alanjhughes)
    • Fix support for macOS. (#31307 by @gabrieldonadel)
    • useFonts could previously attempt to set state on an unmounted component (#31143 by @vonovak)
    • On iOS loadAsync() will reject if font loading fails. (#31053 by @vonovak)
    • Add missing react peer dependencies for isolated modules. (#30467 by @byCedric)
    • Only import from expo/config to follow proper dependency chains. (#30501 by @byCedric)
  • expo-file-system
    • [iOS] fix: getFreeDiskStorageAsync returns result that's closer to the value reported by the system. (#29732 by @vonovak)
    • Add NULL check before dereferencing pointer to error pointer in EXFileSystemAssetLibraryHandler. (#29091 by @hakonk)
    • Add missing react-native peer dependencies for isolated modules. (#30466 by @byCedric)
    • [expo-file-system][next] Fix download function throwing an unexpected error if destination already exists. (#32626 by @aleqsio)
  • expo-contacts
    • Fixed an issue on iOS with presentFormAsync where dates were not displayed. (#31780 by @mlecoq)
    • Fixed an iOS issue where the contact's birthday isn't displayed when the year is set. (#31948 by @chrfalch)
    • Fixed an Android issue where creating a contact with a birthday was not saved. (#30131 by @Eric013)
    • Fixed an issue on android where phone number and email labels were ignored on contact creation. (#31309 by @mlecoq)
    • Fixed an issue where the requestPermissionsAsync promise throws when denying access to contacts on iOS. (#29529 by @jp1987)
    • Fixed an issue where the presentFormAsync promise doesn't resolve when the form is closed on Android. (#29201 by @jp1987)
    • Fixed an issue where the presentContactPickerAsync promise doesn't resolve when using the Android back button. (#29202 by @jp1987)
    • Fixed an issue where only paths of urls were stored in contacts and social profiles were only stored when all fields were filled. (#29199 by @mlecoq)
    • Fixed an iOS issue where the Cancel button is not visible on the unknown contact form. (#29555 by @Tug)
    • Add missing react-native peer dependencies for isolated modules. (#30465 by @byCedric)
    • [Android] Fix ContactQuery id field not accepting arrays. (#32651 by @behenate)
  • expo-constants
  • expo-clipboard
    • [iOS] fix ClipboardPasteButton asking for paste permission (#30623 by @vonovak)
    • Fixed issue when copying PNG images on Android. (#29629 by @weslley75)
    • Add missing react/react-native peer dependencies for isolated modules. (#30463 by @byCedric)
  • expo-cellular
  • expo-camera
  • expo-calendar
    • On iOS, workaround a bug in iOS 15 where an invalid EKCalendarType is returned in the calendar object when siri suggestions are enabled. (#28714 by @alanjhughes)
    • [iOS] Fix missing event info on update. (#28825 by @robertying)
    • Standardize getEventsAsync to return events sorted by start date (#28353 by @demfabris)
    • Add missing react-native peer dependencies for isolated modules. (#30461 by @byCedric)
    • Initialize EKEventStore as a singleton (#31847 by @JacquesLeupin)
  • expo-brightness
    • Add missing react-native peer dependencies for isolated modules. (#30460 by @byCedric)
  • expo-battery
    • Add missing react peer dependencies for isolated modules. (#30458 by @byCedric)
  • expo-blur
    • Add missing react and react-native peer dependencies for isolated modules. (#30459 by @byCedric)
  • expo-auth-session
  • expo-av
    • [Android] Fix events being sent using a wrong event emitter. (#28716 by @behenate)
    • [Web] Fix shouldCorrectPitch being ignored on web. (#28837 by @behenate)
    • [iOS] Fixed broken Video view on New Architecture mode. (#30030 by @kudo)
    • [iOS] loadAsync() promise never settled when given an invalid file uri (#30020 by @vonovak)
    • Fixed putting app to background stops non-mixable audio playback in other apps on iOS (#20380 by @de1acr0ix)
    • Fix unhandled promise rejection when start recording fails #29826 by @anirudhsama
    • Add missing react and react-native peer dependencies for isolated modules. (#30456 by @byCedric)
    • Add missing react-native-web optional peer dependency for isolated modules. (#30689 by @byCedric)
    • [Android] Fixed NullPointerException in the installJSIBindings function. (#31464 by @lukmccall)
    • [Android] Fixed crash when reloading an expo update with a video component mounted (#31540 by @AbijahKaj)
  • expo-asset
    • Fixed PlatformUtils.ts to have the correct export placeholders for react-native-web (#29791 by @Bram-dc)
    • Add missing react and react-native peer dependencies for isolated modules. (#30454 by @byCedric)
    • Add missing dependencies and follow proper dependency chains. (#30500 by @byCedric)
  • expo-apple-authentication

💡 Others

  • expo-web-browser
  • expo-video-thumbnails
    • [Android] Made sure that MediaMetadataRetriever is safely released. (#29015 by @lukmccall)
  • expo-task-manager
    • Keep using the legacy event emitter as the module is not fully migrated to Expo Modules API. (#28946 by @tsapeta)
    • [android] Added implementation in package to look up TaskService instance from expo-modules-core (#32300 by @chrfalch)
    • Correct the return type of TaskManagerTaskExecutor. (#32557 by @Simek)
  • expo-store-review
  • expo-sqlite
    • Removed redundant usage of EventEmitter instance. (#28946 by @tsapeta)
    • Replaced @testing-library/react-hooks with @testing-library/react-native. (#30742 by @byCedric)
    • Align web implementation exports as native to support DOM components when using @expo/dom-webview. (#31662 by @kudo)
    • Deprecated enableCRSQLite and show a warning if using this option. (#32117 by @kudo)
    • Renamed expo-sqlite/async-storage to expo-sqlite/kv-store. (#32699 by @kudo)
  • expo-secure-store
  • expo-sms
  • expo-speech
  • expo-sensors
    • Add timestamps to relevant sensor events. (#28761 by @jkaufman)
    • Fix incorrect event emitting tests. (#28953 by @aleqsio)
    • Removed redundant usage of EventEmitter instance. (#28946 by @tsapeta)
    • [Android] Remove usage of deprecated internal modules API. (#28715 by @lukmccall)
    • [iOS] Fix pedometer sensor when app goes to background then foreground. ([#29957]https://github.com/expo/expo/pull/29957) by @rlods)
  • expo-screen-capture
    • Removed redundant usage of EventEmitter instance. (#28946 by @tsapeta)
    • Updated hook from useScreenCapturePermissions to usePermissions in the example. (#30076 by @mrakesh0608)
    • Standardized Babel configuration to use expo-module-scripts. (#31915 by @reichhartd)
  • expo-screen-orientation
  • expo-notifications
  • expo-modules-core
    • [iOS] Refactored ExpoFabricView and remove the view wrapper for each native component. (#28829 by @kudo)
    • [iOS] Exposed Utilities class for Expo Modules common tasks. (#29945 by @kudo)
    • [iOS] Added customizeRootView: support to EXAppDelegateWrapper.createRCTRootViewFactory. (#30245 by @kudo)
    • Added documentation links to Record and Field implementations (#31997 by @vonovak)
    • Remove web hydration process.env type. (#31267 by @EvanBacon)
    • Added an async extension for OkHttp requests. (#30841 by @aleqsio)
    • Change sideEffects to use src folder. (#29964 by @EvanBacon)
    • [web] Use global crypto object for UUID. (#29828 by @EvanBacon)
    • [iOS] Send open url event to all matching subscribers. (#29645 by @aleqsio)
    • Use process.env.EXPO_OS for Platform.OS and Platform.select, when available. (#29429 by @EvanBacon)
    • [Android] Removed unneeded in-between function call when resolving promise without arguments. (#28944 by @lukmccall)
    • Exported some TypeScript declarations (e.g. EventEmitter) from expo-modules-core/types. (#28994 by @tsapeta)
    • [Android] Switch to the JS thread when sending an event. (#29753 by @lukmccall)
    • Moved process object declaration to global declaration. (#29745 by @tsapeta)
    • Use the src folder as the Metro target. (#29702 by @tsapeta)
    • Make it possible for TypeScript to infer EventEmitter's events map. (#29056 by @tsapeta)
    • [iOS] Stop throwing runtime errors when the promise is settled more than once. (#30000 by @tsapeta)
    • [iOS] Renamed pointer property in the SharedRef class to ref for parity with Android. (#30061 by @tsapeta)
    • [Android] Started using noexcept. (#30128 by @lukmccall)
    • [Android] Decouple the modules state from the AppContext (#30098 by @lukmccall)
    • Bumped Kotlin version to 1.9.24. (#30199 by @gabrieldonadel)
    • [Android] Bump Kotlin coroutines version to 1.7.3. (#30226 by @lukmccall)
    • [Android] Limit the number of "Current Activity is of incorrect class" log entries. (#30427 by @lukmccall)
    • [iOS] Refactor and expose URLSessionSessionDelegateProxy class. (#30173 by @kudo)
    • [Android] Supports passing Accept: text/event-stream header to bypass streaming requests from ExpoNetworkInspectOkHttpInterceptors. (#30219 by @kudo)
    • Replaced @testing-library/react-hooks with @testing-library/react-native. (#30742 by @byCedric)
    • Cleaned up the podspec and replaced RN_FABRIC_ENABLED flag with RCT_NEW_ARCH_ENABLED. (#31044 by @tsapeta)
    • JS values are now used directly instead of using shared pointers to improve the overall performance. (#31219 by @tsapeta)
    • [iOS] Use singletons for string and data dynamic types. (#31220 by @tsapeta)
    • [iOS] Fixed a bottleneck in the performance-critical code by getting away from enumerated function. (#31226 by @tsapeta)
    • [Android] Cached argument's type information to improve memory and startup time. (#31297 by @lukmccall)
    • [iOS] Make func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) open. (#31398 by @abulenok)
    • [Android] Expose RuntimeContext.eval() as JavaScriptRuntime.eval() on iOS. (#31445 by @kudo)
    • Removed all NativeModulesProxy occurrences. (#31496 by @reichhartd)
    • Align web implementation exports as native to support DOM components when using @expo/dom-webview. (#31662 by @kudo)
    • Removed expo_patch_react_imports! and align more stardard react-native project layout. (#31700 by @kudo)
    • Removed deprecated code for react-native 0.74.0. (#31740 by @kudo)
    • [Android] Improve error messages when converting the Either type. (#31787 by @lukmccall)
    • [iOS] Improved converting function results. (#31827 by @tsapeta)
    • [iOS] Disabled ExpoView recycling from the New Architecture. (#31841 by @tsapeta)
    • [Android] Renamed SharedObject.deallocate to SharedObject.sharedObjectDidRelease. (#31921 by @lukmccall)
    • [Android] Throws a descriptive error when trying to use a released SharedObject. (#31922 by @lukmccall)
    • Include error cause message in logger (#31929, #31953 by @wschurman)
    • [Android] Started using view's event dispatchers with the surfaceId. (#32227 by @lukmccall)
    • [android] Add enum event support to OnStartObserving and OnStopObserving. (#32251, #32287 by @wschurman)
    • Added a new dynamic type dedicated for Either types. (#32328 by @tsapeta)
    • [Android] Added shouldUseAndroidLayout flag to ExpoView. (#32446 by @lukmccall)
    • [android] Added helper for looking up TaskService instance used by expo-task-manager (#32300 by @chrfalch)
    • Made TypeScript declaration for process an interface. (#32464 by @tsapeta)
    • [Android] Fix ClassCastException in headless app loader under the old architecture. (#32390 by @robertying)
  • expo-media-library
    • Removed redundant usage of EventEmitter instance. (#28946 by @tsapeta)
  • expo-location
    • Added warning when using background location in Expo Go. (#31461 by @chrfalch)
    • Keep using the legacy event emitter as the module is not fully migrated to Expo Modules API. (#28946 by @tsapeta)
    • Rework package exports. (#29953 by @Simek)
    • Updated documentation for default LocationAccuracy (#31066 by @johnculviner)
  • expo-localization
    • Removed redundant usage of EventEmitter instance. (#28946 by @tsapeta)
  • expo-linking
  • expo-keep-awake
    • Use EventSubscription type instead of Subscription. (#28946 by @tsapeta)
    • Replaced @testing-library/react-hooks with @testing-library/react-native. (#30742 by @byCedric)
  • expo-image-manipulator
  • expo-image-picker
    • Refactored the code on iOS and made promise resolution faster. (#30896 by @tsapeta)
  • expo-gl
  • expo-haptics
    • Align web implementation exports as native to support DOM components when using @expo/dom-webview. (#31662 by @kudo)
    • Fixed bundling error on Web. (#32183 by @kudo)
  • expo-font
  • expo-file-system
    • [iOS] Validate folder/file type when operating on File/Folder instances in the new FS module. (#31316 by @aleqsio)
    • Use the src folder as the Metro target. (#31234 by @aleqsio)
    • Removed redundant usage of EventEmitter instance. (#28946 by @tsapeta)
  • expo-contacts
  • expo-constants
  • expo-clipboard
  • expo-cellular
  • expo-camera
  • expo-brightness
    • Removed redundant usage of EventEmitter instance. (#28946 by @tsapeta)
  • expo-battery
    • Removed redundant usage of EventEmitter instance. (#28946 by @tsapeta)
  • expo-auth-session
  • expo-av
    • Keep using the legacy event emitter as the module is not fully migrated to Expo Modules API. (#28946 by @tsapeta)
    • Added deprecation warning to the Video component. (#32267 by @tsapeta)
  • expo-asset
    • Pin @react-native subpackage versions to 0.74.83. (#29441 by @kudo)
    • Removed @react-native/assets-registry dependency. (#29541 by @kudo)
    • Remove unused pathJoin function. (#29963 by @EvanBacon)
    • Replaced @testing-library/react-hooks with @testing-library/react-native. (#30742 by @byCedric)
  • expo-apple-authentication

⚠️ Notices

tsapeta
published 1.1.1 •

bbarthec
published 1.1.0 •

tsapeta
published 1.0.1 •

tsapeta
published 1.0.0 •

Changelog

Source

51.0.0 — 2024-05-07

🛠 Breaking changes

  • expo-auth-session
  • expo-barcode-scanner
    • expo-barcode-scanner is now deprecated. Please use expo-camera instead. (#26025 by @alanjhughes)
  • expo-constants
    • Remove deprecated installationId, isDevice, nativeAppVersion, nativeBuildVersion, platform.platform, platform.systemVersion, platform.userInterfaceIdiom properties. (#26329 by @aleqsio)
  • expo-face-detector
  • expo-location
    • [Web] getPermissionsAsync no longer prompts the user for permission instead we use the new browser API navigator.permissions.query to check the permission status. (#26836 by @hems) (#26837 by @hems)
  • expo-local-authentication
    • SecurityLevel.BIOMETRIC has been deprecated in favour of SecurityLevel.BIOMETRIC_STRONG and SecurityLevel.BIOMETRIC_WEAK. Using SecurityLevel.BIOMETRIC might lead to unexpected behaviour. (#26768 by @behenate)
  • expo-modules-core
  • expo-sms
    • [web] sendSMSAsync now throws error code ERR_UNAVAILABLE instead of E_SMS_UNAVAILABLE. (#27437 by @EvanBacon)
  • expo-sqlite
    • Refactor expo-sqlite/next API to be more React idiomatic. (#25657 by @kudo)
    • Moved the previous default export as expo-sqlite/legacy and promoted expo-sqlite/next as the default. expo-sqlite/next import is still as-is for backward compatibility. (#28278 by @kudo)

🎉 New features

  • expo-barcode-scanner
    • BarCodeScannerResult now returns an additional raw field corresponding to the barcode value as it was encoded in the barcode without parsing. Will always be undefined on iOS. (#25391 by @ajacquierbret)
  • expo-blur
  • expo-asset
  • expo-camera
    • BarCodeAnalyzer now passes an additional raw field to its onComplete callback, corresponding to the barcode value as it was encoded in the barcode without parsing. Will always be undefined on iOS. (#25391 by @ajacquierbret)
    • Add ability to disable permissions in config plugin by passing false instead of permission messages. (#28107 by @EvanBacon)
    • Add pictureSize prop to CameraView component. (#27664 by @alanjhughes)
    • Allow user to remove NSMicrophoneUsageDescription and ignore the mute prop if they don't intend to use video. (#28156 by @alanjhughes)
    • Add animateShutter prop to provide feedback when a picture is taken. Also added shutter sound on android. (#28211 by @alanjhughes)
    • Support scanning barcodes from a provided image URL. (#28445 by @alanjhughes)
  • expo-constants
  • expo-crypto
  • expo-contacts
    • It is now possible to select contacts using OS-provided native contact pickers. (#27541 by @fobos531)
  • expo-font
    • Added support for macOS platform. (#26242 by @tsapeta)
    • [iOS] The native module has been simplified and rewritten to Swift. (#26380 by @tsapeta)
  • expo-file-system
  • expo-haptics
  • expo-image-picker
    • Add ability to disable permissions in config plugin by passing false instead of permission messages. (#28107 by @EvanBacon)
    • Add new legacy option to ImagePickerOptions to allow using the legacy image picker on android. (#28514 by @alanjhughes)
  • expo-image-manipulator
  • expo-linear-gradient
  • expo-keep-awake
  • expo-location
  • expo-localization
    • Added a forcesRTL manifest flag for forcing RTL to be on. (#28129 by @aleqsio)
  • expo-local-authentication
    • [Android] Add support for weak and strong biometric authentication. (#26768 by @behenate)
  • expo-network
  • expo-modules-core
    • Added support for returning shared refs from async functions. (#26341 by @aleqsio)
    • Added support for macOS platform. (#26186 by @tsapeta)
    • Add Date type converter. (#26148 by @alanjhughes)
    • Add timer capability to Logger. (#26454, #26477 by @wschurman)
    • Add iOS support for PlatformColor and DynamicColorIOS color props. (#26724 by @dlindenkreuz)
    • BarCodeScannerResult interface now declares an additional raw field corresponding to the barcode value as it was encoded in the barcode without parsing. Will always be undefined on iOS. (#25391 by @ajacquierbret)
    • [Web] Add createWebModule function to wrap web functionality with the NativeModule class. (#27739 by @aleqsio)
    • [Web] Add web implementations of event emitter and stubs of shared objects and native modules. (#27595 by @aleqsio)
    • Mark React client components with "use client" directives. (#27300 by @EvanBacon)
    • [iOS] Added basic filesystem module to decouple expo-file-system from other packages. (#27069 by @aleqsio)
    • [Android] Added syntactic sugar for defining a prop group. (#27004 by @lukmccall)
    • Introduced a base class for all shared objects (expo.SharedObject) with a simple mechanism to release native pointer from JS. (#27038 by @tsapeta & #27331 by @lukmccall) (#27038, #27331 by @tsapeta, @lukmccall)
    • [iOS] Added native implementation of the JS EventEmitter. (#27092 by @tsapeta)
    • [iOS] Allow for the export of views that conform to AnyExpoView (#27284 by @dominicstop)
    • [iOS] Added support for bridgeless mode in React Native 0.74 (#27242, #27289, #27531 by @tsapeta)
    • [iOS] Implemented sending events from native shared objects. (#27333 by @tsapeta)
    • Added support for startObserving and stopObserving in the new EventEmitter class. (#27393 by @tsapeta)
    • [Android] Implemented sending events from native shared objects. (#27523 by @lukmccall)
    • JS object of the native module is now an instance of the NativeModule class that inherits from EventEmitter. (#27510 by @tsapeta)
    • [iOS] Exposed a function on the runtime to schedule some work with synchronized access to JS. (#27567 by @tsapeta)
    • [iOS] OnStartObserving and OnStopObserving can now be attached to a specific event. (#27766 by @tsapeta)
    • [iOS] Provide Exception.code to JavaScript (as Error.code) for all types of functions. (#27960 by @cltnschlosser)
    • Introduced the reloadAppAsync to reload the app. (#28400 by @kudo)
  • expo-media-library
    • [Android] Add support for allowing access permissions to only selected photos. (#27749 by @behenate)
    • [Android] Add support for granular permissions. (#27729 by @behenate)
  • expo-screen-capture
    • Added getPermissionsAsync and requestPermissionsAsync methods. (#25849 by @behenate)
  • expo-secure-store
    • Add ability to disable permissions in config plugin by passing false instead of permission messages. (#28107 by @EvanBacon)
    • Add canUseBiometricAuthentication function. (#26767 by @behenate)
  • expo-store-review
    • StoreReview.isAvailableAsync() on iOS now resolves to false for apps distributed through TestFlight. (#25900 by @gabrieldonadel)
  • expo-sqlite
    • Added SQLiteStatement.executeForRawResultAsync() in expo-sqlite/next API which returns array based raw values than key-value based row value. (#26073 by @kudo)
    • [Android] Added expo.sqlite.customBuildFlags gradle property to support custom sqlite3 building flags. (#27385 by @kudo)
    • Added serializeAsync() and deserializeDatabaseAsync() to serialze and deserialize databases. (#27422 by @kudo)
    • Added SQLiteProvider.assetSource to import an existing database from assets. (#28291 by @kudo)
    • Bumped SQLite version to 3.45.3 and enabled the bytecodevtab feature. (#28358 by @kudo)

🐛 Bug fixes

  • expo-av
    • [Android] Add Events to AVModule to prevent event emitter warning. (#26434 by @alanjhughes)
    • [iOS] Improve precision for syncing two videos and updating new video position when user sets tolerances to 0 (#26018 by @jpudysz)
    • Tried to fix unused recording permission and getting rejected by store review. (#28236 by @kudo)
    • [Android] Fix recording audio on Android after converting to Expo Modules (#26657 by @jpudysz)
    • [Android] Fix memory leak connect with AVManager. (#28159 by @lukmccall)
    • [Android] Fix HashMap cannot be cast to ReadableNativeMap error on Android. (#28317 by @lukmccall)
  • expo-blur
  • expo-asset
    • Fix relative URLs and support for unstable_path in development. (#26084 by @EvanBacon)
    • Fixed "Tried to resolve a promise more than once" crash on iOS. (#27672 by @kudo)
    • Fix TypeError: (0, _ExpoAsset.downloadAsync) is not a function when loading assets using Expo Web. (#28405 by @jamiees2)
    • Fixed downloadAsync() does not support Android resources from release builds. (#28604 by @kudo)
  • expo-calendar
    • [iOS] Don't check calendar permissions for saving reminders, and fix missing details when saving calendar events. (#28265 by @robertying)
    • Fix the problem that stringifyDateValues is not compatible with simple type arrays. (#27147 by @XHFkindergarten)
  • expo-camera
    • Fix naming of web files. (#26505 by @alanjhughes)
    • On iOS, barcode types were not converted correctly causing the scanner to not start immediately. (#26704 by @alanjhughes)
    • On iOS, fix maxDuration timescale on videos. (#26882 by @alanjhughes)
    • Set a higher resolution for barcode scans to allow scanning of high resolution barcodes. (#26886) by @byudaniel) (#26886 by @byudaniel) (#26886, #26886 by @byudaniel, @byudaniel)
    • Fix barcode types casing errors. (#26888 by @byudaniel)
    • On Android, fix the camera not being released when the view is destroyed. (#27086 by @alanjhughes)
    • On iOS, fix the orientation value in onResponsiveOrientationChanged when exif is set to true. (#27314 by @alanjhughes)
    • On Android, fix empty qualities being passed to QualitySelector (#27126 by @leonhh)
    • On web, prevent creating a webworker when rendering on the server (#27222 by @marklawlor)
    • On iOS, fix method call on an optional variable. (#27235 by @alanjhughes)
    • Fix scanned frame bounds when scanning a barcode. (#27207 by @tamagokun)
    • Fix incorrect prop name flash being passed to native. (#27394 by @alanjhughes)
    • Ensure mute prop is passed to native so it is correctly initialiased even when not provided from JS. (#27546 by @alanjhughes)
    • On iOS, fix camera orientation on initial render. (#27545 by @alanjhughes)
    • On iOS, fix an issue where the configuration can be interuppted when the dev menu is presented on intial launch. (#27572 by @alanjhughes)
    • On iOS, fix getAvailablePictureSizes in the legacy package. (#27642 by @alanjhughes)
    • Allow users using xcode 14 to still build when including camera. (#27873 by @alanjhughes)
    • Fix an issue where the permission functions were being imported from the wrong file. (#27988 by @alanjhughes)
    • Fix an issue on iOS where the barcode types did not match the typescript representation. Also enabled scanning upc_a codes on iOS. (#28233 by @alanjhughes)
    • On iOS, fixed regression where recording a video captures dark frames. Reduced frequency of camera initialization. (#28427 by @alanjhughes)
  • expo-constants
  • expo-contacts
    • Fixed an issue where contacts could not be edited on either platform. (#27703 by @alanjhughes)
  • expo-device
  • expo-font
  • expo-file-system
  • expo-gl
  • expo-image-picker
    • On Android fileSize was named filesize which did not match the docs & typescript definition. (#27293 by @WookieFPV) (#27293 by @wookieFPV)
    • Fixed an issue where cropped images were not returning file size and file name on Android. (#28352 by @fobos531)
    • Fixed type exports for isolatedModules option in typescript (#28499 by @megacherry)
    • On Android, fixed an issue where multiple pickers could be opened, causing a crash. (#28509 by @haileyok)
  • expo-intent-launcher
    • On Android, intent number extras are converted to double. However, it must be int. (#26164 by @Alperengozum)
  • expo-location
    • [Android] Fix the module requiring the expo-task-manager module for methods that don't use it. (#26200 by @behenate)
    • [Android] Fixed: NullPointerException: it must not be null. (#26688 by @lukmccall)
    • On Android, prevent location service from starting when permission is not in the manifest. (#27355 by @alanjhughes)
  • expo-localization
    • [iOS] Add privacy manifest describing required reason API usage. (#27770 by @aleqsio)
    • [Android] Fix es-419 locale returning empty list. (#27250 by @aleqsio)
  • expo-modules-core
    • [Android] Fixed OnCreate was called before the React instance was ready. (#25866 by @lukmccall)
    • [iOS] Fixed SharedObjectRegistry crash for accessing internal data structures from multi-threads. (#25997 by @kudo)
    • Fixed splash screen view flickering in dark mode on iOS. (#26015, #26029 by @kudo)
    • Fixed SharedObject leakage on Android. (#25995 by @kudo)
    • Adjust proguard rules to prevent issues with types implementing Enumerable. (#26108 by @alanjhughes)
    • Fix proguard rules so Serializable types are not obfuscated. (#26545 by @alanjhughes)
    • [Android] Thrown an exception when nested types can't be converted instead of crashing the app. (#27449 by @lukmccall)
    • [Android] Ensured that onCreate before OnActivityEntersForeground event. (#26944 by @lukmccall)
    • [Android] Fixed activity contract registration after host destruction. (#26881 by @lukmccall)
    • Fixed breaking changes from React-Native 0.74. (#26357 by @kudo)
    • Fixed breaking changes from React-Native 0.74. (#26357, #26587 by @kudo)
    • [Android] Unit converter now ignores nullability. It will always return unit regardless of whether the input value is null or not. (#27591 by @lukmccall)
    • Fixed RCTHost is not retained on iOS bridgeless mode. (#27715 by @kudo)
    • Fixed errors on Android when running on bridgeless mode. (#27725 by @kudo)
    • Fixed breaking changes from React Native 0.75. (#27773 by @kudo)
    • Fixed crash from reloading on iOS and bridgeless mode. (#27928 by @kudo)
    • Fixed SharedRef class names are obfuscated when R8 is enabled. (#27965 by @kudo)
    • [iOS] Fix recreateRootViewWithBundleURL parameters. (#27989 by @gabrieldonadel)
    • Fixed ExpoBridgeModule.installModules() is broken on Android and bridgeless mode. (#28065 by @kudo)
    • [Android] Fixed segfaults in expo::MethodMetadata::convertJSIArgsToJNI. (#28163 by @lukmccall)
    • Fixed random TypeError: Cannot read property 'NativeModule' of undefined exceptions on Android. (#28200 by @kudo)
    • Fixed white screen flickering when using expo-updates with longer fallbackToCacheTimeout. (#28227 by @kudo)
    • [iOS] Fixed random crashes when reloads and EXJavaScriptObject accesses to dangling pointers. (#28262 by @kudo)
    • Fixed AppContext.onHostResume() sometimes getting null currentActivity on Android. (#28338 by @kudo)
    • Fixed backward compatibility in the build.gradle from third party Expo modules. (#28359 by @kudo)
    • [Android] Fixes SEGFAULTs caused by std::shared_ptr<JavaCalllback::CallbackContext>::__on_zero_shared. (#28483 by @lukmccall)
    • [Android] Fixed gziped payload does not correctly shown in network inspector. (#28486 by @kudo)
    • [Android] Fixed crashes during the deallocation of shared objects. (#28491 by @lukmccall)
    • [iOS] Fix accessing the view registry to avoid infinite loop crash. (#28531 by @tsapeta)
    • [Android] Fix field operation on NULL object when reloading the app. (#28555 by @lukmccall)
    • Fixed building error when use_frameworks on new architecture. (#28451 by @kudo)
  • expo-media-library
  • expo-notifications
    • [Android] Fix expo-notifications requiring the expo-task-manager module to start. (#26227 by @behenate)
    • Throw UnavailabilityError when trying to use setNotificationCategoryAsync on web. (#26511 by @marklawlor)
    • Remove .native hardcoded platform imports (#26511 by @marklawlor)
    • On Android, added events to module definition to clear warnings. (#26654 by @alanjhughes)
    • [Android] Fix notifications events were using an incorrect event emitter. (#28207 by @lukmccall)
  • expo-screen-capture
  • expo-screen-orientation
  • expo-sensors
    • On Android, add event name to definition in the DeviceMotionModule. (#26679 by @alanjhughes)
    • Prevent unnecessary permissions check when moving app to background (Would crash with certain configs). (#28045 by @cltnschlosser)
    • Fix barometer updates not starting on iOS 17.4. (#28253 by @alanjhughes)
  • expo-store-review
    • fixes incorrect scene when multiple windowscenes opened, while requesting a review. (#28577 by @dylancom)
  • expo-task-manager
  • expo-sqlite
    • Fixed NativeStatementBinding leakage on Android. (#25996 by @kudo)
    • Fixed building error on Windows. (#26296 by @kudo)
    • Fixed a write query being executed twice when using SQLiteDatabase.getAllAsync() in expo-sqlite/next API. (#26344 by @kudo)
    • Fixed expo-sqlite/next cannot be imported from an ESM project. (#27423 by @kudo)
    • Enabled FTS and FTS5 for SQLite. (#27738 by @kudo)
    • Fixed NullPointerException on Android when opening the same database multiple times. (#27748 by @kudo)
  • expo-video-thumbnails
    • [Android] Enhanced resource management in VideoThumbnails module by ensuring closure of ParcelFileDescriptor and releasing MediaMetadataRetriever post-use. (#26100 by @hirbod)
  • expo-web-browser
    • On iOS, fix an issue where rapidly opening and closing the browser would leave the module in a bad state, preventing opening the browser again. (#28452 by @alanjhughes)

💡 Others

  • expo-application
    • [iOS] Add privacy manifest describing required reason API usage. (#27770 by @aleqsio)
    • drop unused web name property. (#27437 by @EvanBacon)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-av
    • Replace deprecated com.facebook.react:react-native:+ Android dependency with com.facebook.react:react-android. (#26237 by @kudo)
    • Prevent config plugin from writing permissions until prebuild. (#28107 by @EvanBacon)
    • drop unused web name property. (#27437 by @EvanBacon)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-background-fetch
  • expo-auth-session
  • expo-battery
  • expo-brightness
  • expo-barcode-scanner
  • expo-blur
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-asset
    • Create native module for iOS and Android. Migrate downloadAsync to a native implementation. (#27369 by @aleqsio)
    • Remove MD5 checksum verification for remote assets. This does not change method signatures nor require changes to your application code, and should not affect any apps in practice since this behavior was used only for apps that used Classic Updates, support for which ended with SDK 50. (#25614 by @ide)
    • [expo-updates] Migrate to requireNativeModule/requireOptionalNativeModule. (#25648 by @wschurman)
    • Clean up some asset stuff. (#26310 by @wschurman)
    • Remove most of Constants.appOwnership. (#26313 by @wschurman)
    • Remove assetUrlOverride and assetMapOverride. (#26314 by @wschurman)
    • Improve updates types and clarity in expo-asset. (#26337 by @wschurman)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
    • Update mocks for SDK51. (#28424 by @aleqsio)
  • expo-calendar
  • expo-cellular
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-camera
  • expo-clipboard
  • expo-constants
    • [iOS] Add privacy manifest describing required reason API usage. (#27770 by @aleqsio)
    • [expo-updates] Migrate to requireNativeModule/requireOptionalNativeModule. (#25648 by @wschurman)
    • Remove most of Constants.appOwnership. (#26313 by @wschurman)
    • Improve updates types and clarity in expo-asset. (#26337 by @wschurman)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-crypto
    • drop unused web name property. (#27437 by @EvanBacon)
    • Update error message to reflect that web crypto works on web with a localhost hostname and often doesn't require https. (#26729 by @EvanBacon)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
    • Update mocks for SDK51. (#28424 by @aleqsio)
  • expo-contacts
  • expo-device
    • [iOS] Add privacy manifest describing required reason API usage. (#27770 by @aleqsio)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-document-picker
  • expo-font
  • expo-face-detector
  • expo-file-system
    • [iOS] Add privacy manifest describing required reason API usage. (#27770 by @aleqsio)
    • drop unused web name property. (#27437 by @EvanBacon)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-gl
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-haptics
  • expo-image-loader
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-image-picker
    • drop unused web name property. (#27437 by @EvanBacon)
    • Convert WEBP to PNG instead JPEG when selecting an item in the Media Library with editing enabled. (#26419 by @NikitaDudin)
    • Receiving a correct file extension for WEBP files instead .jpeg in the ImagePicker result. (#26419 by @NikitaDudin)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-intent-launcher
  • expo-image-manipulator
  • expo-linear-gradient
  • expo-keep-awake
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-location
  • expo-localization
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-local-authentication
  • expo-mail-composer
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-network
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-modules-core
    • [Android] Bump Kotlin version from 1.8.10 to 1.8.22. (#25945 by @lukmccall)
    • Replace deprecated com.facebook.react:react-native:+ Android dependency with com.facebook.react:react-android. (#26237 by @kudo)
    • Deprecated expo.modules.core.Promise. (#27471 by @aleqsio)
    • Removed deprecated global.ExpoModules. (#26027 by @tsapeta)
    • Remove most of Constants.appOwnership. (#26313 by @wschurman)
    • Added an alternative way of installing the JSI bindings. (#26691 by @lukmccall)
    • ObjectDeallocator is now a native state instead of a host object. (#26906 by @tsapeta)
    • Moved away from SharedObjectRegistry being a singleton. (#27032 by @tsapeta)
    • Moved and added more JSI utils to the common C++ codebase. (#27045 by @tsapeta)
    • Introduce EXCreateReactBindingRootView to create correct React Native setup for New Architecture mode. (#27216 by @kudo)
    • Set bridge on AppContext in ExpoBridgeModule. (#27378 by @alanjhughes)
    • Added TypeScript declarations and documentation for global JSI bindings. (#27465 by @tsapeta)
    • [iOS] Added bridgeless support on ExpoReactDelegate. (#27601, #27689 by @kudo)
    • [Android] Added bridgeless support on ReactNativeHostHandler. (#27629 by @kudo)
    • Refactored out EXReactRootViewFactory.createDefaultReactRootView: to RCTAppDelegate.recreateRootViewWithBundleURL: category. (#27945 by @kudo)
    • Added ReactNativeHostHandler.onReactInstanceException() for client to listen for exceptions on Android. (#27815 by @kudo)
    • Removed the legacy interfaces for font processors as they are no longer used by expo-font and nothing else depends on them. (#26380 by @tsapeta)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
    • Bumped Kotlin version to 1.9.23. (#28088 by @kudo)
    • Introduced onDidCreateDevSupportManager handler to support error recovery from expo-updates. (#28177 by @kudo)
    • Dropped support for custom type converters on Android. (#28252 by @lukmccall)
    • Introduced ExpoReactDelegateHandler.bundleURL for clients to override newer bundleURL. (#28256 by @kudo)
  • expo-media-library
    • Prevent config plugin from writing permissions until prebuild. (#28107 by @EvanBacon)
    • [iOS] Add privacy manifest describing required reason API usage. (#27770 by @aleqsio)
    • drop unused web name property. (#27437 by @EvanBacon)
    • [iOS] Migrate to expo modules. (#25587 by @alanjhughes)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
    • The ACCESS_MEDIA_LOCATION Android permission should not pulled into by default and should be pulled through Config Plugins. (#28230 by @kudo)
  • expo-notifications
    • [iOS] Add privacy manifest describing required reason API usage. (#27770 by @aleqsio)
    • drop unused web name property. (#27437 by @EvanBacon)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-screen-capture
    • drop unused web name property. (#27437 by @EvanBacon)
    • Native module on iOS is now written in Swift using the Sweet API. (#26103 by @fobos531)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-print
  • expo-random
  • expo-screen-orientation
  • expo-sharing
  • expo-secure-store
  • expo-sms
  • expo-speech
  • expo-sensors
  • expo-store-review
  • expo-task-manager
    • [iOS] Add privacy manifest describing required reason API usage. (#27770 by @aleqsio)
    • drop unused web name property. (#27437 by @EvanBacon)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-sqlite
    • Remove onDatabaseChange event from legacy API as it is not supported natively. (#26655 by @alanjhughes)
    • drop unused web name property. (#27437 by @EvanBacon)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • expo-video-thumbnails
  • expo-web-browser
    • Updated androidx.browser:browser to 1.6.0 #26619 by @zoontek
    • drop unused web name property. (#27437 by @EvanBacon)
    • Update error message to reflect that web crypto works on web with a localhost hostname and often doesn't require https. (#26729 by @EvanBacon)
    • Remove compare-urls and url dependencies in favor of built-in URL support. (#26702 by @EvanBacon)
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
  • unimodules-app-loader
    • Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
1
67
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc