7 hours ago
fresco

v3.7.0

Highlights

  • Adds client-side AVIF transcoding (a19f4cd5a745fa06ebbefc4ef12751a4fadf3ef5)
  • Adds intermediateImageBitmapTransformation API to Fresco (ad877d58d6bb52cb4ef689fa027a3bd7ebcc2626)
  • Adds a quality-aware BitmapTransformation API and default transformation for intermediate images (de4f23c336b58748551b6f30ea58ea151952f4ad)
  • Adds SimilarImageLookup interface and wires it into ImagePipelineConfig (d04a77de3391c72c0ff6180a9dfb4a104da860b8)
  • Adds UnifiedCacheKeyFactory with a pluggable UriNormalizer (55ad40a9a2767923b9dd5b2e94383855617d7f0b)
  • Adds EfficientPlatformDecoder and a RawBitmapDecoder interface for unified byte-array-to-Bitmap decoding (cd773ee521f5db8a843411e2dddbc709e88cecc8)
  • Adds ZoomableVitoView to the zoomable library (e6ce122ac04565f98d3dadeb2a510d985b4b033d)
  • Adds DrawableResImageSource, RetainingImageSource, and ColorImageSource image sources (0b41741251705a3b7faedba9fe735e1b7cc1c2fe)
  • Adds ScaleType.DISABLED and a new MatrixScaleType (8cf25386a360a202a12cc5c67f1dd121ad68368d)
  • Adds loop-count control and static-thumbnail fallback for animated images (8cbe47096cf9a32a0d55d586bde5786901d7a2bc)
  • Adds an API to delete all files from a disk cache (209d705677edb3b5bab0abebd259c10815f63939)
  • Adds the ability to specify a custom cache key on ImageRequest/ImageRequestBuilder (2da616f686ed2ebb2ca98897b949aa6bf519d825)
  • Adds a circuit breaker for consecutive frame-drop failures in animations (1d3adb69512d01032b42e682309add584b1fda75)
  • (Breaking) Removes the unused MultiUri class (0eb4503febf0a3dde92f20ca9f619a8a977f4c63)
  • (Breaking) Removes the legacy GingerbreadPurgeableDecoder and HoneycombBitmapFactory (1d801a7217a43ad382914c344455934975d3091f)
  • (Breaking) Removes PoolSizeViolationException and ignoreHardCap (537cd77fe80783b83a07ed1fd2a6683926e49075)
  • Replaces deprecated setDownsampleEnabled() with setDownsampleMode() (fd2b68410754bd15c270270a42847477a9b87b67)
  • Bumps Kotlin to 2.2.0 (6a14e114e5854f5a7dfb3e71e78ec8beb3311396)
  • Hardens native decoding against OOB reads, use-after-free, integer overflow, and a GIF-parsing memory leak in webp_bitmapfactory (63287810684f32d237b9f7b1ad6f2c10d22fee5f)
  • Removes CallerContext from cache keys to prevent caller-context leaks (d14c122db80250e4a4be81737035e593f99a5009)
  • Fixes an ANR by preventing synchronous network fetches on Litho layout threads (45a60ceeb94b9b20223a56d653b4792d45ee38f1)
  • Fixes recycled-bitmap crashes via an isRecycled() check in DefaultDrawableFactory (a122b06169f269f95e16ee716ddb0dfe16569113)
  • Fixes a postprocessor not being applied during decoded-image prefetch (6544cc65710c5ccf1f0b73713e62b3a6245a4f13)
  • Fixes image info being fetched after drawable creation to avoid IllegalStateException (#2839) (64f3ca9bebdb76838e569daaf47a120ea1eb1f36)
  • Fixes the loop variable in DropFramesFrameScheduler (#2850) (4ed6d91aa0ae49535af2a6ae73dd4a61b3073cd6)

Full Changelog: https://github.com/facebook/fresco/compare/v3.6.0...v3.7.0

3 days ago
ImageToolbox

4.0.0-beta04

What's Changed

  • Possible fix for ASCII art by #2826
  • Fixed image desaturation in cropper by #2827
  • Added ability to control X/Y position in image stacking tool by #2825
  • Fixed screenshot tile by #2836
  • Fixed compare screen modes
  • Added undo/redo to 14 basic tools
  • Optimized performance and Improved UI

Full Changelog: https://github.com/T8RIN/ImageToolbox/compare/4.0.0-beta03...4.0.0-beta04

3 days ago
react-native

0.86.0

Added

  • Accessibility: AccessibilityInfo: added missing tests for Promise based methods, align null checks and error message code style (8fc503d780 by @chicio)
  • Animated: Suspense tests for the Animation Backend (8101fc776d by Bartlomiej Bloniarz)
  • Animated: Use weak_ptr when calling pullAnimationMutations in a callback scheduled with the Animation Backend (42d98b5830 by Bartlomiej Bloniarz)
  • Dev Server: Call methods on global.__BUNDLE_LOADER_REPORTER__, if given, during dev-mode bundler loads from Metro (1e0c1f886b by @robhogan)
  • React Native DevTools: Add new custom track for React Native Renderer operations in React Native DevTools performance traces (0b1def9ce5, 29bc8f1acb, 9130df6773, c26a4875ea by @rubennorte)
  • React Native DevTools: Add support for light/dark mode emulation via Emulation.setEmulatedMedia (11a5432cb2 by @huntie)
  • Runtime: Add unstable_getViewTransitionInstance to UIManagerBinding (d8820a403b by @zeyap)
  • Runtime: Add UIManagerViewTransitionDelegate interface and View Transition APIs (cdad57d8f1 by @zeyap)
  • Runtime: Add viewport size to LayoutContext (d38c756529 by @paradowstack)
  • Runtime: ViewTransitionModule for React Native View Transitions (f81f73e5a0 by @zeyap)
  • Text: Add E2E tests for Text boxShadow and textWithLinkRole (b172f46f0d by @NickGerleman)
  • View: Add E2E tests for Filter blur-with-overflow, drop-shadow, and animated-blur (66975aa3d5 by @NickGerleman)
  • View: Add mixBlendMode plus-lighter (aaa0684045 by @bigcupcoffee)

Android specific

  • Events: Channel play/pause hardware events. (5087aa0dba by Nishil Shah)
  • Events: Pass event object to BackHandler hardwareBackPress events to access timeStamp from native event. (bf277cb6d4 by @rubennorte)
  • LogBox: Allow LogBox notification toasts and inspector overlay to be dismissed via Android back button (6530092162 by @Abbondanzo)
  • Pressable: android_ripple now accepts PlatformColor (60d8b282ea by @adrcotfas)
  • Runtime: Add ExtraWindowEventListener interface to allow native modules to react to window creation / destruction (e.g. Modal dialogs) (58fec1fa8d by @zoontek)
  • Runtime: Add test for synchronous mount props override behavior (a25e0fdddf by @zeyap)
  • Text: Add E2E tests for Text visual examples (batch 1) (b53b228673 by @NickGerleman)
  • Text: Add E2E tests for Text visual examples (batch 2) (d5a271dd05 by @NickGerleman)
  • TextInput: Add extended Android TextInput autoComplete autofill hint support and bump androidx.autofill to 1.3.0. (ac598aff2b by @radko93)
  • View: Add E2E tests for Filter static visual examples (d18d9a4046 by @NickGerleman)

iOS specific

  • Build: Add privacy manifest to declare the use of mach_absolute_time() API in the React-timing module (2ae6c8940d by @rubennorte)
  • Dev Server: Introduce isPackagerRunningAsync that does not block the UI thread waiting on the request to DevServer ("Packager") validating that it is running (dd056d9b4c by @vzaidman)
  • Image: Add E2E tests for Image visual examples (48b6f2dcc9 by @NickGerleman)
  • Networking: Add RCTSetCustomMultipartDataTaskRequestInterceptor API to allow custom modification of multipart data task requests before they are sent (59b8886bb8 by @cipolleschi)

Changed

  • Build: Update Metro to ^0.84.2 (57d4b6b350 by @robhogan)
  • Dev Server: LoadBundleFromServer test: remove legacy Jest timers, increased coverage and improved assertions (a19d98e542 by @chicio)
  • Hermes: Bump hermes-compiler dependency (031168013e by @robhogan)
  • Hermes: Bump hermes version (89a2a20739 by @robhogan)
  • LogBox: Migrated LogBoxData tests to Jest modern timers (dea2136a49 by @chicio)
  • React: Make React Native consume 250829098.0.11 (26953d8343 by @alanleedev)
  • React Native DevTools: Derive WebSocket scheme and port from dev server URL for React DevTools connections, supporting HTTPS dev servers (ca4173701d by @cipolleschi)
  • Runtime: Measure node instance during applyViewTransitionName (d17ecca3c9 by @zeyap)
  • Runtime: Move ViewTransition APIs not for react reconciler to its own TurboModule (0e65df9152 by @zeyap)
  • Runtime: Setting reportErrorsAsExceptions to anything other than false no longer does anything. (Previously, setting it to a falsey value would be similar to setting it to false.) (f0748a6387 by @yungsters)
  • Runtime: Use getNullableViewState in SurfaceMountingManager::updateProps and log a soft exception instead (bbf7004935 by Bartlomiej Bloniarz)
  • TurboModules: Move DefaultTurboModules::get to end of TurboModuleManager (6b32971f46 by @zeyap)

Android specific

  • Animated: AnimationBackendChoreographer doesn't guard the ReactChoreographer post/remove with synchronized(paused) (22d327595d by Bartlomiej Bloniarz)
  • Build: Changed foojay-resolver-convention version to 1.0.0 (664acaf441 by @TheNerdGuyLulu)
  • NavigationBar: Respect theme enforceNavigationBarContrast attribute (dfddcc9796 by @zoontek)

iOS specific

Deprecated

  • JavaScript API: Deprecated second argument for hook function passed to AppRegistry.setComponentProviderInstrumentationHook as it's not usable by apps. Passed stub that warns when used. (64116117c0 by @rubennorte)

Fixed

  • Accessibility: Fix AccessibilityInfo.isDarkerSystemColorsEnabled unresolved (never ending) promise (8fbf2fab47 by @chicio)
  • Accessibility: Fix AccessibilityInfo.isHighTextContrastEnabled unresolved (never ending) promise (5c9a5717c1 by @chicio)
  • Accessibility: Fix AccessibilityInfo.prefersCrossFadeTransitions unresolved (never ending) promise (57c073f0d7 by @chicio)
  • Animated: Fix 1-frame latency in C++ NativeAnimatedNodesManager for event-driven animations by processing the animation graph synchronously on every scroll event, matching the Java implementation behavior (0517fb552d by Mark Verlingieri)
  • Animated: Fix typo "interpolation" to "interpolate" and add missing space in AnimatedInterpolation error messages (a8b39a237c by @Nedunchezhiyan-M)
  • Babel: Prevent errors by handling contexts where the Babel API object is not provided (63796a9160 by On Saint Tiong)
  • Build: Fix incorrect package name and output filename in scripts/js-api/README.md (d823f5b1cc by @Nedunchezhiyan-M)
  • Codegen: Respect enum values for TurboModule c++ codegen (56129fedcb by @akawrykow)
  • Documentation: Correct the v0.85.0 changelog entry for the removal of StyleSheet.absoluteFillObject. (fdbe0d0b63 by @jingjing2222)
  • Modal: Forward style prop to Modal's inner container View with correct precedence so consumer styles are applied without overriding transparent or backdropColor (f8fa76f94c by @AnuMessi10)
  • React Native DevTools: Add exponential backoff and exception handling to InspectorPackagerConnection reconnect loop to prevent heap fragmentation crashes (32d3eafdc4 by @shubhamksavita)
  • React Native DevTools: Bump Hermes V1 to 250829098.0.14 to fix missing JavaScript samples in the Performance panel timeline on Apple platforms (cd5b3b5fa5 by @fabriziocucci)
  • Runtime: Add missing VIEW_EVENT_CASE entries in BaseViewProps::setProp for Click, PointerDown, PointerUp, GotPointerCapture, LostPointerCapture and their Capture variants (offsets 30-37) (8d5482dd94 by Harini Malothu)
  • Runtime: Fix crash in Performance API when sorting entries (81c99682a4 by @Abbondanzo)
  • Runtime: Fix event timestamp injection overriding native timestamps with lowercase property name (68debb27ff by @fkgozali)
  • Runtime: Fix event timestamp propagation from host platforms to JS (aa51746b87 by @rubennorte)
  • Runtime: Link VirtualView component (de78906391 by @j-piasecki)
  • Runtime: PerformanceObserver: observe({type: 'event'}) now correctly defaults durationThreshold to 104ms per the W3C Event Timing spec instead of reporting all events. (65c561e195 by @rubennorte)
  • Runtime: Prevent Scheduler use-after-free crash when surfaces tear down with pending rendering updates (aadbe96579 by @fkgozali)
  • Runtime: Prevent updates to mounted flag on the React revision (7ee893d3be by @j-piasecki)
  • Runtime: Support multiple old pseudo elements for same name but different source node (370606dc5b by @zeyap)
  • Runtime: Use relevant revision as base for mounted flag updates (4b954e14c8 by @j-piasecki)
  • Runtime: Views with a non-invertible transform (e.g. scaleX: 0 or scaleY: 0) no longer receive touches on Android or iOS. (1e8e182410 by @qflen)
  • TurboModules: Bring back C++ Turbo Module example in RN Tester (1c2cddad1a by @christophpurrer)
  • VirtualizedList: Improve render area change with initialScrollIndex non zero test in VirtualizedList to avoid magic numbers timers (9b966d1d8f by @chicio)
  • Yoga: Fixed Yoga node ownership when display: contents is used in absolutely positioned subtrees (f2f92098dd by @j-piasecki)

Android specific

  • Accessibility: Guard ReactViewGroup.addChildrenForAccessibility against transient non-descendant accessibility traversal crashes. (e681736e18 by @erickreutz)
  • Build: Fix build regression by using rootProject.file (8a8f1b801c by @etodanik)
  • Hermes: Fix HermesSamplingProfiler.disable() JNI registration calling enable() instead of disable() (7f2a58e46c by @elirangoshen)
  • Hermes: Use Hermes V1 stable release instead of legacy nightly to fix startup crash caused by JSI ABI mismatch (45ceacc08f by @cipolleschi)
  • Image: Fix image content disappearing on API 24 (Nougat) when antialiased border radius clipping is applied (fdd6ca5bb1 by @Abbondanzo)
  • Image: Image.getSize and Image.getSizeWithHeaders now return the true source dimensions instead of Fresco's downsampled values (8823a8009b by @zoontek)
  • Image: Make sure view width and height are non 0 before calling createBitmap() (c20a58ab6b by @zeyap)
  • Legacy Architecture: Fix onHostPause crash in ReactInstanceManager without feature flag (3aa8a043de by @shubhamksavita)
  • LogBox: Fixed activity context memory leak in LogBoxDialogSurfaceDelegate when using bridgeless mode (f10cded1f8 by Ilya Kovalyov)
  • Networking: Blob content provider did not work in new arch (05ea94c441 by @javache)
  • Networking: Catch OutOfMemoryError in NetworkingModule response processing to prevent app crashes (0c153e2971 by @shubhamksavita)
  • Networking: WebSocketModule no longer strips a Cookie header passed via the WebSocket constructor's headers option (24b51db75b by @psjostrom)
  • Runtime: Fix Dimensions window values on Android < 15 when edge-to-edge is enabled (44a4b1ba5d by @zoontek)
  • Runtime: Fix KeyboardAvoidingView on Android 15+ / with edgeToEdgeEnabled (4a6c933cce by @zoontek)
  • Runtime: Fix measureInWindow returning incorrect coordinates when edge-to-edge is enabled (9d183675e9 by @zoontek)
  • Runtime: Fix crash from stale preallocated view registry after concurrent render cancellation (97cf2202ee by @javache)
  • Runtime: Gate diagnostic printMountItem calls in MountItemDispatcher error handlers behind enableFabricLogs() to prevent OOM crash (7a546f98a7 by @JakobFelixJulius)
  • Runtime: Handle edge-to-edge when it's not enabled by the edgeToEdgeEnabled gradle property but enforced by the OS (Android 15+) (c2280e3201 by @zoontek)
  • Runtime: Register HeadlessJsTaskSupportModule in CoreReactPackage (2d78a39b3e by 贾太滨)
  • Runtime: Schedule React revision merge to happen on DISPATCH_UI choreographer queue, before dispatching events (b63efbfc6b by @j-piasecki)
  • ScrollView: Dispatch FPS performance events for mouse wheel and trackpad scroll interactions in ScrollView (e0a453c603 by @Abbondanzo)
  • ScrollView: Fix FPS performance listener being cleared on ScrollView recycle (59ac1db76e by @Abbondanzo)
  • StatusBar: StatusBar configuration now applies to Modal windows, fixing visual inconsistencies (6614fe7f2b by @zoontek)
  • Text: Fix 1px text wrapping in absolutely positioned elements caused by fractional Yoga widths (90c2c595da by @clocksarestupid)
  • Text: Fix BoringLayout crash when isBoring() returns negative width (d527f2d663 by @NickGerleman)
  • Text: Fix crash when measuring text in a stopped surface (f71ec1a24e by @NickGerleman)
  • TextInput: Fix setAutoCapitalize stripping numeric TextInput flags (TYPE_NUMBER_FLAG_SIGNED/DECIMAL), affecting minus sign input on Samsung keyboards (863f76bd49 by @lukeharvey)
  • TextInput: KeyboardAvoidingView and TextInput auto-scroll not responding to IME height changes (e.g., when toggling emoji panel or predictive bar) (ee1d067692 by @alanleedev)
  • View: Fixed a crash when clearing zIndex with props 2.0 enabled (93b37350af by @hannojg)
  • View: Fixed crash when enabling props 2.0 and setting borderStyle to undefined (9e058db4c8 by @hannojg)
  • View: Unsupported background size value leading to crash (fe046dc782 by @intergalacticspacehighway)

iOS specific

  • Build: Addressed -Wunreachable-code-return violations (9172bfe647 by @ingridwang)
  • Build: Addressing -Wunreachable-code-return issues. (722623aaeb by @ingridwang)
  • Build: Fixed escaping local file URIs for unicode paths in ruby scripts (9563cb5b5a by @chrfalch)
  • Build: Fixing unreachable-code-break (795d902270 by @ingridwang)
  • Build: Made ReactInternal compatible with Swift (fc5cc2821f by @rmaz)
  • Build: Persist PODFILE_DIR as $(SRCROOT)-relative so project.pbxproj is portable across machines (44bb83bd84 by @zoontek)
  • Build: Removing unused ivars (3d2d14df16 by @ingridwang)
  • CocoaPods: Fix Pod install checksum drifting (814ebb12b6 by @chrfalch)
  • CocoaPods: Fix REACT_NATIVE_PATH resolution when Pods/ is a symlink (ea383822b7 by @huntie)
  • CocoaPods: Fix React-CoreModules failing to compile with use_frameworks! due to missing React-featureflags header path (fb0d28c6fd by @radko93)
  • CocoaPods: Load RCTDefines.h first in the prebuilt React umbrella and drop the module * submodule wildcard so RCT_* macros propagate to consumer pods under use_frameworks!. (90c303fafb by @wneel)
  • CocoaPods: Preserve Expo-generated React-use-frameworks.modulemap across replace-rncore-version.js runs (ada39220a0 by @Insik-Han)
  • Dev Server: Fix iOS dev-support IPv6 handling for packager and inspector connections. (4a59f90c22 by @hannojg)
  • Hermes: Fix compilation error in createJSRuntimeFactory and skip Hermes pods when USE_THIRD_PARTY_JSC is enabled (2d8143794d by @tux2nicolae)
  • Networking: Fix crash in RCTWebSocketModule when delegate callbacks fire after module invalidation (587ef059a2 by @lukeharvey)
  • React Native DevTools: Fix inspector server host resolution for HTTPS bundle URLs by omitting default port (3582a8b2b5 by @cipolleschi)
  • TextInput: Fix NSRangeException crash in RCTBackedTextInputDelegateAdapter when text range is out of bounds (19350b1c8c by @lukeharvey)
  • View: Fixes crash when changing the value of removeClippedSubviews (91e3f773b7 by @javache)

Security


Hermes dSYMS:

Hermes V1 dSYMS:

ReactNativeDependencies dSYMs:

ReactNative Core dSYMs:


You can file issues or pick requests against this release here.


To help you upgrade to this version, you can use the Upgrade Helper ⚛️.


View the whole changelog in the CHANGELOG.md file.

3 days ago
react-native

0.86.0

Added

  • Accessibility: AccessibilityInfo: added missing tests for Promise based methods, align null checks and error message code style (8fc503d780 by @chicio)
  • Animated: Suspense tests for the Animation Backend (8101fc776d by Bartlomiej Bloniarz)
  • Animated: Use weak_ptr when calling pullAnimationMutations in a callback scheduled with the Animation Backend (42d98b5830 by Bartlomiej Bloniarz)
  • Dev Server: Call methods on global.__BUNDLE_LOADER_REPORTER__, if given, during dev-mode bundler loads from Metro (1e0c1f886b by @robhogan)
  • React Native DevTools: Add new custom track for React Native Renderer operations in React Native DevTools performance traces (0b1def9ce5, 29bc8f1acb, 9130df6773, c26a4875ea by @rubennorte)
  • React Native DevTools: Add support for light/dark mode emulation via Emulation.setEmulatedMedia (11a5432cb2 by @huntie)
  • Runtime: Add unstable_getViewTransitionInstance to UIManagerBinding (d8820a403b by @zeyap)
  • Runtime: Add UIManagerViewTransitionDelegate interface and View Transition APIs (cdad57d8f1 by @zeyap)
  • Runtime: Add viewport size to LayoutContext (d38c756529 by @paradowstack)
  • Runtime: ViewTransitionModule for React Native View Transitions (f81f73e5a0 by @zeyap)
  • Text: Add E2E tests for Text boxShadow and textWithLinkRole (b172f46f0d by @NickGerleman)
  • View: Add E2E tests for Filter blur-with-overflow, drop-shadow, and animated-blur (66975aa3d5 by @NickGerleman)
  • View: Add mixBlendMode plus-lighter (aaa0684045 by @bigcupcoffee)

Android specific

  • Events: Channel play/pause hardware events. (5087aa0dba by Nishil Shah)
  • Events: Pass event object to BackHandler hardwareBackPress events to access timeStamp from native event. (bf277cb6d4 by @rubennorte)
  • LogBox: Allow LogBox notification toasts and inspector overlay to be dismissed via Android back button (6530092162 by @Abbondanzo)
  • Pressable: android_ripple now accepts PlatformColor (60d8b282ea by @adrcotfas)
  • Runtime: Add ExtraWindowEventListener interface to allow native modules to react to window creation / destruction (e.g. Modal dialogs) (58fec1fa8d by @zoontek)
  • Runtime: Add test for synchronous mount props override behavior (a25e0fdddf by @zeyap)
  • Text: Add E2E tests for Text visual examples (batch 1) (b53b228673 by @NickGerleman)
  • Text: Add E2E tests for Text visual examples (batch 2) (d5a271dd05 by @NickGerleman)
  • TextInput: Add extended Android TextInput autoComplete autofill hint support and bump androidx.autofill to 1.3.0. (ac598aff2b by @radko93)
  • View: Add E2E tests for Filter static visual examples (d18d9a4046 by @NickGerleman)

iOS specific

  • Build: Add privacy manifest to declare the use of mach_absolute_time() API in the React-timing module (2ae6c8940d by @rubennorte)
  • Dev Server: Introduce isPackagerRunningAsync that does not block the UI thread waiting on the request to DevServer ("Packager") validating that it is running (dd056d9b4c by @vzaidman)
  • Image: Add E2E tests for Image visual examples (48b6f2dcc9 by @NickGerleman)
  • Networking: Add RCTSetCustomMultipartDataTaskRequestInterceptor API to allow custom modification of multipart data task requests before they are sent (59b8886bb8 by @cipolleschi)

Changed

  • Build: Update Metro to ^0.84.2 (57d4b6b350 by @robhogan)
  • Dev Server: LoadBundleFromServer test: remove legacy Jest timers, increased coverage and improved assertions (a19d98e542 by @chicio)
  • Hermes: Bump hermes-compiler dependency (031168013e by @robhogan)
  • Hermes: Bump hermes version (89a2a20739 by @robhogan)
  • LogBox: Migrated LogBoxData tests to Jest modern timers (dea2136a49 by @chicio)
  • React: Make React Native consume 250829098.0.11 (26953d8343 by @alanleedev)
  • React Native DevTools: Derive WebSocket scheme and port from dev server URL for React DevTools connections, supporting HTTPS dev servers (ca4173701d by @cipolleschi)
  • Runtime: Measure node instance during applyViewTransitionName (d17ecca3c9 by @zeyap)
  • Runtime: Move ViewTransition APIs not for react reconciler to its own TurboModule (0e65df9152 by @zeyap)
  • Runtime: Setting reportErrorsAsExceptions to anything other than false no longer does anything. (Previously, setting it to a falsey value would be similar to setting it to false.) (f0748a6387 by @yungsters)
  • Runtime: Use getNullableViewState in SurfaceMountingManager::updateProps and log a soft exception instead (bbf7004935 by Bartlomiej Bloniarz)
  • TurboModules: Move DefaultTurboModules::get to end of TurboModuleManager (6b32971f46 by @zeyap)

Android specific

  • Animated: AnimationBackendChoreographer doesn't guard the ReactChoreographer post/remove with synchronized(paused) (22d327595d by Bartlomiej Bloniarz)
  • Build: Changed foojay-resolver-convention version to 1.0.0 (664acaf441 by @TheNerdGuyLulu)
  • NavigationBar: Respect theme enforceNavigationBarContrast attribute (dfddcc9796 by @zoontek)

iOS specific

Deprecated

  • JavaScript API: Deprecated second argument for hook function passed to AppRegistry.setComponentProviderInstrumentationHook as it's not usable by apps. Passed stub that warns when used. (64116117c0 by @rubennorte)

Fixed

  • Accessibility: Fix AccessibilityInfo.isDarkerSystemColorsEnabled unresolved (never ending) promise (8fbf2fab47 by @chicio)
  • Accessibility: Fix AccessibilityInfo.isHighTextContrastEnabled unresolved (never ending) promise (5c9a5717c1 by @chicio)
  • Accessibility: Fix AccessibilityInfo.prefersCrossFadeTransitions unresolved (never ending) promise (57c073f0d7 by @chicio)
  • Animated: Fix 1-frame latency in C++ NativeAnimatedNodesManager for event-driven animations by processing the animation graph synchronously on every scroll event, matching the Java implementation behavior (0517fb552d by Mark Verlingieri)
  • Animated: Fix typo "interpolation" to "interpolate" and add missing space in AnimatedInterpolation error messages (a8b39a237c by @Nedunchezhiyan-M)
  • Babel: Prevent errors by handling contexts where the Babel API object is not provided (63796a9160 by On Saint Tiong)
  • Build: Fix incorrect package name and output filename in scripts/js-api/README.md (d823f5b1cc by @Nedunchezhiyan-M)
  • Codegen: Respect enum values for TurboModule c++ codegen (56129fedcb by @akawrykow)
  • Documentation: Correct the v0.85.0 changelog entry for the removal of StyleSheet.absoluteFillObject. (fdbe0d0b63 by @jingjing2222)
  • Modal: Forward style prop to Modal's inner container View with correct precedence so consumer styles are applied without overriding transparent or backdropColor (f8fa76f94c by @AnuMessi10)
  • React Native DevTools: Add exponential backoff and exception handling to InspectorPackagerConnection reconnect loop to prevent heap fragmentation crashes (32d3eafdc4 by @shubhamksavita)
  • React Native DevTools: Bump Hermes V1 to 250829098.0.14 to fix missing JavaScript samples in the Performance panel timeline on Apple platforms (cd5b3b5fa5 by @fabriziocucci)
  • Runtime: Add missing VIEW_EVENT_CASE entries in BaseViewProps::setProp for Click, PointerDown, PointerUp, GotPointerCapture, LostPointerCapture and their Capture variants (offsets 30-37) (8d5482dd94 by Harini Malothu)
  • Runtime: Fix crash in Performance API when sorting entries (81c99682a4 by @Abbondanzo)
  • Runtime: Fix event timestamp injection overriding native timestamps with lowercase property name (68debb27ff by @fkgozali)
  • Runtime: Fix event timestamp propagation from host platforms to JS (aa51746b87 by @rubennorte)
  • Runtime: Link VirtualView component (de78906391 by @j-piasecki)
  • Runtime: PerformanceObserver: observe({type: 'event'}) now correctly defaults durationThreshold to 104ms per the W3C Event Timing spec instead of reporting all events. (65c561e195 by @rubennorte)
  • Runtime: Prevent Scheduler use-after-free crash when surfaces tear down with pending rendering updates (aadbe96579 by @fkgozali)
  • Runtime: Prevent updates to mounted flag on the React revision (7ee893d3be by @j-piasecki)
  • Runtime: Support multiple old pseudo elements for same name but different source node (370606dc5b by @zeyap)
  • Runtime: Use relevant revision as base for mounted flag updates (4b954e14c8 by @j-piasecki)
  • Runtime: Views with a non-invertible transform (e.g. scaleX: 0 or scaleY: 0) no longer receive touches on Android or iOS. (1e8e182410 by @qflen)
  • TurboModules: Bring back C++ Turbo Module example in RN Tester (1c2cddad1a by @christophpurrer)
  • VirtualizedList: Improve render area change with initialScrollIndex non zero test in VirtualizedList to avoid magic numbers timers (9b966d1d8f by @chicio)
  • Yoga: Fixed Yoga node ownership when display: contents is used in absolutely positioned subtrees (f2f92098dd by @j-piasecki)

Android specific

  • Accessibility: Guard ReactViewGroup.addChildrenForAccessibility against transient non-descendant accessibility traversal crashes. (e681736e18 by @erickreutz)
  • Build: Fix build regression by using rootProject.file (8a8f1b801c by @etodanik)
  • Hermes: Fix HermesSamplingProfiler.disable() JNI registration calling enable() instead of disable() (7f2a58e46c by @elirangoshen)
  • Hermes: Use Hermes V1 stable release instead of legacy nightly to fix startup crash caused by JSI ABI mismatch (45ceacc08f by @cipolleschi)
  • Image: Fix image content disappearing on API 24 (Nougat) when antialiased border radius clipping is applied (fdd6ca5bb1 by @Abbondanzo)
  • Image: Image.getSize and Image.getSizeWithHeaders now return the true source dimensions instead of Fresco's downsampled values (8823a8009b by @zoontek)
  • Image: Make sure view width and height are non 0 before calling createBitmap() (c20a58ab6b by @zeyap)
  • Legacy Architecture: Fix onHostPause crash in ReactInstanceManager without feature flag (3aa8a043de by @shubhamksavita)
  • LogBox: Fixed activity context memory leak in LogBoxDialogSurfaceDelegate when using bridgeless mode (f10cded1f8 by Ilya Kovalyov)
  • Networking: Blob content provider did not work in new arch (05ea94c441 by @javache)
  • Networking: Catch OutOfMemoryError in NetworkingModule response processing to prevent app crashes (0c153e2971 by @shubhamksavita)
  • Networking: WebSocketModule no longer strips a Cookie header passed via the WebSocket constructor's headers option (24b51db75b by @psjostrom)
  • Runtime: Fix Dimensions window values on Android < 15 when edge-to-edge is enabled (44a4b1ba5d by @zoontek)
  • Runtime: Fix KeyboardAvoidingView on Android 15+ / with edgeToEdgeEnabled (4a6c933cce by @zoontek)
  • Runtime: Fix measureInWindow returning incorrect coordinates when edge-to-edge is enabled (9d183675e9 by @zoontek)
  • Runtime: Fix crash from stale preallocated view registry after concurrent render cancellation (97cf2202ee by @javache)
  • Runtime: Gate diagnostic printMountItem calls in MountItemDispatcher error handlers behind enableFabricLogs() to prevent OOM crash (7a546f98a7 by @JakobFelixJulius)
  • Runtime: Handle edge-to-edge when it's not enabled by the edgeToEdgeEnabled gradle property but enforced by the OS (Android 15+) (c2280e3201 by @zoontek)
  • Runtime: Register HeadlessJsTaskSupportModule in CoreReactPackage (2d78a39b3e by 贾太滨)
  • Runtime: Schedule React revision merge to happen on DISPATCH_UI choreographer queue, before dispatching events (b63efbfc6b by @j-piasecki)
  • ScrollView: Dispatch FPS performance events for mouse wheel and trackpad scroll interactions in ScrollView (e0a453c603 by @Abbondanzo)
  • ScrollView: Fix FPS performance listener being cleared on ScrollView recycle (59ac1db76e by @Abbondanzo)
  • StatusBar: StatusBar configuration now applies to Modal windows, fixing visual inconsistencies (6614fe7f2b by @zoontek)
  • Text: Fix 1px text wrapping in absolutely positioned elements caused by fractional Yoga widths (90c2c595da by @clocksarestupid)
  • Text: Fix BoringLayout crash when isBoring() returns negative width (d527f2d663 by @NickGerleman)
  • Text: Fix crash when measuring text in a stopped surface (f71ec1a24e by @NickGerleman)
  • TextInput: Fix setAutoCapitalize stripping numeric TextInput flags (TYPE_NUMBER_FLAG_SIGNED/DECIMAL), affecting minus sign input on Samsung keyboards (863f76bd49 by @lukeharvey)
  • TextInput: KeyboardAvoidingView and TextInput auto-scroll not responding to IME height changes (e.g., when toggling emoji panel or predictive bar) (ee1d067692 by @alanleedev)
  • View: Fixed a crash when clearing zIndex with props 2.0 enabled (93b37350af by @hannojg)
  • View: Fixed crash when enabling props 2.0 and setting borderStyle to undefined (9e058db4c8 by @hannojg)
  • View: Unsupported background size value leading to crash (fe046dc782 by @intergalacticspacehighway)

iOS specific

  • Build: Addressed -Wunreachable-code-return violations (9172bfe647 by @ingridwang)
  • Build: Addressing -Wunreachable-code-return issues. (722623aaeb by @ingridwang)
  • Build: Fixed escaping local file URIs for unicode paths in ruby scripts (9563cb5b5a by @chrfalch)
  • Build: Fixing unreachable-code-break (795d902270 by @ingridwang)
  • Build: Made ReactInternal compatible with Swift (fc5cc2821f by @rmaz)
  • Build: Persist PODFILE_DIR as $(SRCROOT)-relative so project.pbxproj is portable across machines (44bb83bd84 by @zoontek)
  • Build: Removing unused ivars (3d2d14df16 by @ingridwang)
  • CocoaPods: Fix Pod install checksum drifting (814ebb12b6 by @chrfalch)
  • CocoaPods: Fix REACT_NATIVE_PATH resolution when Pods/ is a symlink (ea383822b7 by @huntie)
  • CocoaPods: Fix React-CoreModules failing to compile with use_frameworks! due to missing React-featureflags header path (fb0d28c6fd by @radko93)
  • CocoaPods: Load RCTDefines.h first in the prebuilt React umbrella and drop the module * submodule wildcard so RCT_* macros propagate to consumer pods under use_frameworks!. (90c303fafb by @wneel)
  • CocoaPods: Preserve Expo-generated React-use-frameworks.modulemap across replace-rncore-version.js runs (ada39220a0 by @Insik-Han)
  • Dev Server: Fix iOS dev-support IPv6 handling for packager and inspector connections. (4a59f90c22 by @hannojg)
  • Hermes: Fix compilation error in createJSRuntimeFactory and skip Hermes pods when USE_THIRD_PARTY_JSC is enabled (2d8143794d by @tux2nicolae)
  • Networking: Fix crash in RCTWebSocketModule when delegate callbacks fire after module invalidation (587ef059a2 by @lukeharvey)
  • React Native DevTools: Fix inspector server host resolution for HTTPS bundle URLs by omitting default port (3582a8b2b5 by @cipolleschi)
  • TextInput: Fix NSRangeException crash in RCTBackedTextInputDelegateAdapter when text range is out of bounds (19350b1c8c by @lukeharvey)
  • View: Fixes crash when changing the value of removeClippedSubviews (91e3f773b7 by @javache)

Security


Hermes dSYMS:

Hermes V1 dSYMS:

ReactNativeDependencies dSYMs:

ReactNative Core dSYMs:


You can file issues or pick requests against this release here.


To help you upgrade to this version, you can use the Upgrade Helper ⚛️.


View the whole changelog in the CHANGELOG.md file.

8 days ago
imageviewer

2.2.0

Gradle 9.5.1 + AGP 9.2.1 + Java 17

10 days ago
react-native

0.86.0-rc.3

Fixed

  • React Native DevTools: Bump Hermes V1 to 250829098.0.14 to fix missing JavaScript samples in the Performance panel timeline on Apple platforms (cd5b3b5fa5 by @fabriziocucci)

Hermes dSYMS:

Hermes V1 dSYMS:

ReactNativeDependencies dSYMs:

ReactNative Core dSYMs:


You can file issues or pick requests against this release here.


To help you upgrade to this version, you can use the Upgrade Helper ⚛️.


View the whole changelog in the CHANGELOG.md file.

10 days ago
react-native

0.86.0-rc.3

Fixed

  • React Native DevTools: Bump Hermes V1 to 250829098.0.14 to fix missing JavaScript samples in the Performance panel timeline on Apple platforms (cd5b3b5fa5 by @fabriziocucci)

Hermes dSYMS:

Hermes V1 dSYMS:

ReactNativeDependencies dSYMs:

ReactNative Core dSYMs:


You can file issues or pick requests against this release here.


To help you upgrade to this version, you can use the Upgrade Helper ⚛️.


View the whole changelog in the CHANGELOG.md file.

10 days ago
ImageToolbox

4.0.0-beta03

What's Changed

  • Regress: fix shader studio for release
  • Optimized draw tool transition
  • Added image resolution info in media selector
  • Added Help & Tips section in app settings
  • Improved UI

Full Changelog: https://github.com/T8RIN/ImageToolbox/compare/4.0.0-beta02...4.0.0-beta03

11 days ago
ImageToolbox

4.0.0-beta02

What's Changed

  • Regress: fix NTSC filter for armeabi-v7a by #2789
  • Added YOLO segmentation background remover
  • Added ability to enable animated emojis
  • Fixed color picker crash by #2793
  • Added ability to show current line angle in draw tool by #2792
  • Added ability to save image in the original folder by #2798
  • Added shader studio to create and apply fragment shaders by #2806
  • Added filter to apply fragment shaders created in ImageToolbox
  • Added ability to use PaddleOCR as alternative to Tesseract in text recognition tool by #2811
  • Added setting to always clear EXIF by #2814
  • Fixed healing brush preview resetting after configuration changes by #2815
  • Fixed crashes with large PDF documents by #2819
  • Various performance optimizations and UI improvements

Full Changelog: https://github.com/T8RIN/ImageToolbox/compare/3.9.1-alpha02...4.0.0-beta02

16 days ago
GestureViews

v2.10.0

  • Added configurable zoom-out effect for scroll-to-dismiss gesture.
  • Target Java version bumped from 8 to 11.