Polyfills for React Native.
Last release today
26 Aug 2026
Ships on a steady schedule
a new release about every 8 days
Nearly every release is documented
notes for 59 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
4 years old
1136 releases · first in 2022
Release timeline
1136 releases since 2022Releases
- 0.88.0-nightly-20260826-ea06a319126 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260825-5a29c68af25 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260824-0c7f63a4e24 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260823-0c7f63a4e23 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260822-091ac613c22 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260821-26f70745221 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260820-6c4cf296820 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260819-4338af05119 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260818-11f9a7f4418 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260817-376b99ff117 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260816-d07bd6f8316 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260815-d07bd6f8315 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260814-88043334e14 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260813-a4733b1ca13 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260812-22cfb5cae12 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260810-8415753e210 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260809-db662caea9 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260808-85a81818c8 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260807-5fb3ebce17 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260806-65008fcdd6 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260805-f2188610c5 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260804-3a95e0e934 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260803-63e9c15443 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260802-8e995e8da2 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260801-c7d62a1251 Aug 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260730-8e744641230 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260729-ca750feef29 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260728-6f6efed3e28 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260727-c1843c4db27 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260726-c1843c4db26 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260725-f46ace87825 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260724-a8f68dac724 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260723-e46189e1e23 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260722-eb4d3892a22 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260721-7bb31ff7b21 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260720-e6402786520 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260719-9f3108d6119 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260718-b587763f418 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260717-b33de750b17 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260716-dd5dc6b2316 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260715-ef54f74de15 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260714-a016e94b514 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260713-b31ba29d213 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260712-1790c61ac12 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260711-042833e6911 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260710-102fde7b610 Jul 2026pre-release
Nothing published for this version
- 0.88.0-nightly-20260709-24e4b2cae9 Jul 2026pre-release
Nothing published for this version
- 0.87.126 Aug 2026
Release notes
Open source →Added
iOS specific
- SwiftPM: Added hard fail and clear error message when an autolinking plugin host is referenced as a dependency (90a539c92d by @chrfalch)
Changed
- Hermes: Bump hermes-v1 to 250829098.0.17 (861e2d0bde by @cipolleschi)
Fixed
- Animated:
Animated.Value.addListener()types its callback payload as{value: number}rather thanany(3eab03df4c by @huntie) - Animated:
Animated.event()is typed as an event handler rather thanany(3eb330a365 by @huntie)
iOS specific
- Cocoapods: Keep the quotes on header search paths containing spaces in
add_rn_third_party_dependencies(71c6bfbfdc by @Kudo) - SwiftPM: Reject colliding or invalid spm.modules names instead of silently dropping a module from the build (39cd1dfc4c by @chrfalch)
- SwiftPM: Resolve Swift manifest naming collisions (962aeec5e5 by @chrfalch)
- SwiftPM: Fixed not reading spm.name from react-native.config.js when scaffolding the Swift manifest (482acee824 by @chrfalch)
- SwiftPM: Removed unused field spm.modules.publicHeaderFiles from react-native.config.js's spm section (5168f5f831 by Christian Falch)
- SwiftPM: SwiftPM pipeline now reads react-native.config.js with default exports correctly (ed76640ba6 by @chrfalch)
- SwiftPM: Created constants for internal SwiftPM packages so that we can create guards to avoid collisions (d36aa4961d by @chrfalch)
- SwiftPM: Set SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG when injecting SPM (4433cdbe62 by @radoslawrolka)
- SwiftPM: Recover React-Core-prebuilt configuration swaps that were interrupted before the marker was updated (a772a7ca16 by @adityasingh2400)
- SwiftPM: Fix Hermes runtime/compiler version mismatch causing "Wrong bytecode version" crashes in SwiftPM Release builds (ead93778a1 by @nduaarte)
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.
Additional notes
Open source →Added
iOS specific
- SwiftPM: Added hard fail and clear error message when an autolinking plugin host is referenced as a dependency (90a539c92d by @chrfalch)
Changed
- Hermes: Bump hermes-v1 to 250829098.0.17 (861e2d0bde by @cipolleschi)
Fixed
- Animated:
Animated.Value.addListener()types its callback payload as{value: number}rather thanany(3eab03df4c by @huntie) - Animated:
Animated.event()is typed as an event handler rather thanany(3eb330a365 by @huntie)
iOS specific
- Cocoapods: Keep the quotes on header search paths containing spaces in
add_rn_third_party_dependencies(71c6bfbfdc by @Kudo) - SwiftPM: Reject colliding or invalid spm.modules names instead of silently dropping a module from the build (39cd1dfc4c by @chrfalch)
- SwiftPM: Resolve Swift manifest naming collisions (962aeec5e5 by @chrfalch)
- SwiftPM: Fixed not reading spm.name from react-native.config.js when scaffolding the Swift manifest (482acee824 by @chrfalch)
- SwiftPM: Removed unused field spm.modules.publicHeaderFiles from react-native.config.js's spm section (5168f5f831 by Christian Falch)
- SwiftPM: SwiftPM pipeline now reads react-native.config.js with default exports correctly (ed76640ba6 by @chrfalch)
- SwiftPM: Created constants for internal SwiftPM packages so that we can create guards to avoid collisions (d36aa4961d by @chrfalch)
- SwiftPM: Set SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG when injecting SPM (4433cdbe62 by @radoslawrolka)
- SwiftPM: Recover React-Core-prebuilt configuration swaps that were interrupted before the marker was updated (a772a7ca16 by @adityasingh2400)
- SwiftPM: Fix Hermes runtime/compiler version mismatch causing "Wrong bytecode version" crashes in SwiftPM Release builds (ead93778a1 by @nduaarte)
- 0.87.011 Aug 2026
Release notes
Open source →
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.
Additional notes
Open source →
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.
Additional notes
Open source →Breaking
- Appearance: Fix return type of
useColorScheme()hook (nowColorSchemeName | null) (ef6463c25d by @huntie) - Appearance:
useColorScheme()no longer returns'unspecified'(this was always the case, but is a breaking type change) (8ac88f481a by @huntie) - CLI: The
react-native/core-cli-utilspackage is no longer published. It remains available in the React Native repo as a reference implementation. (9c3fddf9cd by @huntie) - Hermes: Remove Legacy Hermes from C++ code (f9476256bd by @cipolleschi)
- JavaScript API: Deep imports to
'react-native/src/private/...'have been restricted, and are no longer visible to TypeScript. These subpaths still exist, but do not have type coverage. (142b6172a9 by @huntie) - JavaScript API: The
NativeDialogManagerAndroidexport is removed. (a793d21a7e by @huntie) - JavaScript API: The
Touchableroot export (undocumented) is removed. If you are extendingTouchableas a type, please useViewPropsinstead. (6fbf3062f9 by @huntie) - JavaScript API:
react-native/rn-get-polyfillsis removed — please usereact-native/js-polyfills(package) (b6a535afee by @huntie) - Jest:
react-native/jest-presetis removed — all projects must now migrate toreact-native/jest-preset(package) (9ee21ddd9b by @huntie) - Legacy Architecture: Compile out RuntimeScheduler_Legacy under RCT_REMOVE_LEGACY_ARCH (d205267a5f by @christophpurrer)
- LogBox: Set max font scaling in
LogBoxto avoid layout breaking (4aef2b0126 by @pchalupa) - Node: Require Node.js >= 22.13.0 (a0d39e7a9c by @huntie)
- React Native DevTools: Remove support for connecting to the standalone
react-devtoolspackage via WebSocket. Use React Native DevTools instead. (f1971caa44 by @huntie) - Renderer: Remove RawPropsKey prefix and suffix (67381e157f by @javache)
- Runtime: Remove the
SceneTrackermodule fromLibraries/Utilities, stop setting the active scene fromAppRegistry.runApplication, and pass the app key as an optional second argument toWrapperComponentProvider(bbb5be9b41 by @rubennorte) - ScrollView: Remove deprecated boolean values support for
ScrollViewkeyboardShouldPersistTaps(5bf3e38db2 by @zoontek) - StatusBar: Remove deprecated
StatusBarbackgroundColor/translucent/networkActivityIndicatorVisibleprops andsetBackgroundColor/setTranslucent/setNetworkActivityIndicatorVisiblemethods (6b45e579d6 by @zoontek) - Strict TypeScript API: Remove legacy
NativeMethodsandNativeMethodsMixintypes (b724611aec by @huntie) - Strict TypeScript API: React Native's default JavaScript API is now the Strict TypeScript API. Use
customConditions: ["react-native-legacy-deep-imports"]to opt out. (c948b61c05 by @huntie)
Android specific
- AGP: Adopt AGP v9 (abb071b135 by @hurali97)
iOS specific
- Build: [0.87] Pick SwiftPM support chain (#57442, #57332, #57564) (486df8d410 by @cipolleschi)
- Build: Ship a version-stamped ReactNativeVersion.h in the prebuilt iOS core artifacts instead of the 1000.0.0 dev sentinel (95df50034b by @chrfalch)
- Legacy Architecture: Remove depracted legacy architecture protocol APIs (ad9936faf6 by @christophpurrer)
- Legacy Architecture: Remove unused legacy architecture RCTAppSetupUtils methods (40b16dca9f by @christophpurrer)
- Legacy Architecture: Remove RCTBridge Functions from RCTReactNativeFactory Header (75eaff4c03 by @christophpurrer)
- Legacy Architecture: Remove unused bridge-based RCTTurboModuleManager initializer (cb74b82309 by @christophpurrer)
- Legacy Architecture: RNTester / RCTReactNativeFactory remove unused new architecture flags and RCTArchConfiguratorProtocol (2148f15db5 by @christophpurrer)
- Legacy Architecture: Remove 6 empty Objective-C stub headers (23ce90bd3b by @christophpurrer)
- Legacy Architecture: Remove legacy architecture code guarded by RCT_REMOVE_LEGACY_ARCH from RN iOS (86350ab988 by @christophpurrer)
- Legacy Architecture: Removing further legacy arch symbols such as RCTCxxBridge (c65281581d by @javache)
Added
- Animated: Support native driven AnimatedValue interpolation easing (57ce6bc585 by @zeyap)
- Animated: Remove
useNativeDriverunder featureflag animatedForceNativeDriver (9cf30b6e4b by @zeyap) - Animated: Remove
useNativeDriverunder featureflag animatedForceNativeDriver (cffe14ff57 by @zeyap) - Animated: Add
optimizedAnimatedPropUpdatesfeature flag (ed96b22af2 by Bartlomiej Bloniarz) - Assets: Introduce
react-native/asset-utilspackage (relocates Android path utils for libraries/frameworks) (41d52189e2 by @huntie) - JavaScript API: Deprecate
'react-native/Libraries/Core/InitializeCore'. Use'react-native/setup-env'instead. (bfa679f0ea by @huntie) - Legacy Architecture: Gate shared C++ and Android Java/Kotlin legacy view manager interop behind
RCT_REMOVE_LEGACY_COMPONENT_INTEROP(9885fe95ef by @christophpurrer) - Legacy Architecture: Gate legacy view manager interop behind
RCT_REMOVE_LEGACY_COMPONENT_INTEROP(8b959b46ea by @christophpurrer) - Legacy Architecture: Gate legacy TurboModule interop behind
RCT_REMOVE_LEGACY_MODULE_INTEROP(3278f309e2 by @christophpurrer) - MapBuffer: Add
IntBufferandDoubleBufferentry types to MapBuffer for compact homogeneous int/double arrays (e7cadaf9f3 by @javache) - Performance: Add
Systrace.tracehelper that wraps a function with begin/end events using try/finally (e6c7a269d2 by @rubennorte) - React Native DevTools: Implement the
Page.addScriptToEvaluateOnNewDocumentandPage.removeScriptToEvaluateOnNewDocumentCDP methods in the modern inspector (bc20ec88eb by @GijsWeterings) - RNTester: Add All Animated Props example to the rn-tester Animation Backend section (e2e655385c by Bartlomiej Bloniarz)
- RNTester: Add Performance Test example to the rn-tester Animation Backend section (09e55cb7c6 by Bartlomiej Bloniarz)
- StatusBar: Support
barStyle="auto"to follow the current color scheme (61c8b040bf by @zoontek) - Strict TypeScript API: Component and API doc comment coverage has been significantly improved (701de4ec3d by @huntie)
- Strict TypeScript API: Export
Animated.Numeric(6206b0b01f by @huntie) - Strict TypeScript API: Add
*Instanceref types for all built-in components (a3827f32f4 by @huntie) - Text: Add support for
textAlign: 'start'andtextAlign: 'end'. (ca29d38537 by @SJvaca30) - Text: Text decorations honor
textDecorationStyle(solid,double,dotted,dashed,wavy) (87184c8fba by @quantizor) - TurboModules: Add
ArrayBuffersupport to C++ TurboModules (226ef2e7c5 by @paradowstack) - TypeScript: Add
selectiontoTextInputChangeEventDatain TypeScript types (e745c41a6b by @nsbarsukov) - TypeScript: Export
AccessibilityActionInfo,ImageResizeMode,EdgeInsetsProp, andTextInputBlurEventtypes (ee36c67a27 by @huntie) - TypeScript: Add
Promise.try+Promise.withResolverstypescript types (b99ddaf606 by @retyui) - TypeScript: Add TypeScript support for Error
causeproperty (abcb7821b1 by @gimi-anders) - Yoga: Add CSS Flexbox §4.5 automatic minimum sizing. Opt in by clearing the new
YGErrataMinSizeUndefinedInsteadOfAutoerrata bit onYGConfig. (b766986387 by @adityasharat) - Yoga: Add CSS Flexbox §4.5 automatic minimum sizing. Opt in by clearing the new
YGErrataMinSizeUndefinedInsteadOfAutoerrata bit onYGConfig. AddsYGNodeSetMinContentWidth/Heightfor static contributions andYGMinContentMeasureFuncfor dynamic ones.' (7f396d1116 by @adityasharat)
Android specific
- Android SDK: Update
compileSdkandbuildToolsto 37 (3e8dfb1e64 by @alanjhughes) - MapBuffer: Add a dedicated
MapBufferListtype toMapBufferfor ordered lists of nestedMapBuffers (6a957746f6 by @javache) - Permissions: Add
ACCESS_LOCAL_NETWORKtoPermissionsAndroidand request it so the dev server stays reachable on Android 17 (SDK 37) (2bc2c8d7e6 by @alanjhughes) - Runtime: Add
ReactContext.getRuntimeExecutor()(dc9043e940 by @javache) - ScrollView: Added an entry point that allows changing whether the scrollable React Native containers should delay pressed state in children views (91b2537f8a by @j-piasecki)
- View: Use software snapshot capture unless featureflag (ba204faa75 by @zeyap)
iOS specific
- Build: Fail closed with an actionable error when the SwiftPM autolinking config command fails, instead of silently emitting an empty Autolinked package (a7ba4ce522 by @chrfalch)
- i18n: Added comment to clarify why i18nManager.isRTL may not return the expected value (e4a5ed3c6d by @scarlac)
- Native Modules: Export
RCTDidInitializeModuleNotificationModuleKeyconstant forRCTDidInitializeModuleNotificationuserInfo (217ee52d4f by Eapen George) - Text: Add
enableIOSCompressedTextFrameAdjustmentfeature flag forTextrendering adjustments. (b933d45276 by @sbuggay) - Text:
textDecorationStyle: 'dotted'and'dashed'for<Text>render with custom CoreGraphics paths instead of UIKit pattern bits, matching browser geometry more closely (9d037509bf by @quantizor) - TurboModules: Add ArrayBuffer support to ObjC TurboModules (54b88d9dea by @paradowstack)
Changed
- Animated: Enable Animated flush-queue debouncing (
animatedShouldDebounceQueueFlush) by default (5c197fb303 by @zeyap) - Animated: Flip cxxNativeAnimatedEnabled featureflag default to true (fc7dc741d2 by @zeyap)
- Animated: Xplat/js/react-native-github/packages/react-native/ReactCommon/react/renderer/animated/drivers/DecayAnimationDriver.cpp (69b58f308e by generatedunixname1563563004708334)
- Build: Fix missing VERSION_NATIVE_FB in commit artifacts (c6f29a2173 by @javache)
- C++: Xplat/js/react-native-github/packages/react-native/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp (ce057d6554 by generatedunixname1563563004708334)
- Dependencies: Replace
abort-controllerwith fork version from react-native (6f3375a140 by @retyui) - Documentation: Clarify Android AppState background API documentation. (b09fce6db5 by @federicobartoli)
- DOM API: Make
EventTargetmethods enumerable by spec (25c25b3c7c by @retyui) - Flow: Turn on
experimental.instance_t_objkit_fixacross fbsource roots (71fee907fb by @SamChou19815) - Flow: Transform readonly in xplatjs (5fce2de800 by @marcoww6)
- Flow: Fix a few readonly 10/n (09fc0432d1 by @marcoww6)
- Flow: Codemod
in/out(9f558a4d6a by @marcoww6) - Hermes: Change default transform profile to 'hermes-stable' (a2cd37f828 by @retyui)
- Hermes: Simplified build JS Hermes infrastructure for the Release (d49aac6b65 by @cipolleschi)
- Hermes: Bump Hermes V1 to 250829098.0.13 (0175449606 by @robhogan)
- IntersectionObserver: Expose
IntersectionObserverEntryas a global (4deb32a507 by @rubennorte) - Metro: Metro to 0.86.0 (2b0107e0aa by @robhogan)
- Metro: Bump Metro to 0.87.0 (0565bcdbab by @robhogan)
- React Native DevTools: Expose new options in the app menu (24e370096e by @huntie)
- React Native DevTools: Add macOS 26/27 app icon (fa371d156d by @huntie)
- Runtime: Make the
windowglobal non-writable and non-configurable, and thenavigatorglobal non-writable (347f8d081e by @rubennorte) - Strict TypeScript API: Additional component props types are now
interfacedeclarations, enabling module augmentation by libraries like Uniwind (preserve compatibility) (2574863642 by @huntie) - Strict TypeScript API: Select component props types are now
interfacedeclarations, enabling module augmentation by libraries like NativeWind and Expo (preserve compatibility) (db89600b56 by @huntie) - StyleSheet: Make
flattenStyleavoid extra intermediate objects when flattening nested style arrays. (d26f7b338d by @tarikfp) - StyleSheet: Remove
experimental_prefix frombackgroundImage(58688bf176 by @intergalacticspacehighway) - TurboModules: The default value of the
useTurboModulesReactNativeFeatureFlags flag is nowtrue(db4c6ee3b6 by @mdvacca) - VirtualizedList: Speed up VirtualizedList render-mask creation for large lists by avoiding the old backward sticky-header scan when sticky headers are missing or sparse. (fe53279889 by @tarikfp)
- Yoga: Mark parent dirty when child is freed (4adca58f4c by @harsha-cpp)
Android specific
- Android SDK: Set minCompileSdk to 34, libraries will have to specify a compileSdk of >= 34 in order to work with React Native (29e5f954c7 by @cortinico)
- Build: Add license header to ProGuard files (b3c0f3ce30 by @helfper)
- Gradle: Gradle to 9.4.1 (c0ee408c16 by @leotm)
- i18n: Translation auto-update for batch 3/64 on master (9299204523 by Intl Scheduler)
- i18n: Translation auto-update for batch 3/64 on master (10ec4ad01a by Intl Scheduler)
- i18n: Translation auto-update for batch 2/64 on master (a902d7402c by Intl Scheduler)
- Kotlin: Convert
ReactHorizontalScrollViewfrom Java to Kotlin (5c680995bd by @cortinico) - Kotlin: Convert
ReactScrollViewandReactNestedScrollViewfrom Java to Kotlin (9d65e6c497 by @cortinico) - Kotlin: Migrate
ReactShadowNodeinterface from Java to Kotlin (f07c7cceee by @cortinico) - Kotlin: Migrate
UIManagerModulefrom Java to Kotlin (21dfc2a855 by @cortinico) - Kotlin: Migrate
UIViewOperationQueuefrom Java to Kotlin (7a8344c037 by @cortinico) - Kotlin: Migrate
BridgeReactContextfrom Java to Kotlin (6720760faf by @cortinico) - Kotlin: Migrate
ReactNativeHostfrom Java to Kotlin (no behavioral changes) (7eb11331b6 by @cortinico) - Kotlin: Bumped min Kotlin version to 2.0+ (ec1e1ae054 by @cortinico)
- Kotlin: Bump Kotlin to 2.2.0 (cb04956cde by @cortinico)
- Kotlin: Daily
arc lint --take KTFMT(f9ba09d60e by generatedunixname1430061942044674) - Kotlin: Make CustomEventNamesResolver a fun interface for SAM conversion (df4cadc126 by @cortinico)
- Kotlin: Migrate YogaWrap enum to Kotlin (6e262624fc by @cortinico)
- Kotlin: Migrate YogaUnit enum to Kotlin (97cf21dd41 by @cortinico)
- Kotlin: Migrate YogaPositionType enum to Kotlin (d181829b9c by @cortinico)
- Kotlin: Migrate YogaOverflow enum to Kotlin (14c1d164d5 by @cortinico)
- Kotlin: Migrate YogaNodeType enum to Kotlin (bb137aa028 by @cortinico)
- Kotlin: Migrate YogaMeasureMode enum to Kotlin (b7801f29c5 by @cortinico)
- Kotlin: Migrate YogaLogLevel enum to Kotlin (5d5350b1e4 by @cortinico)
- Kotlin: Migrate YogaJustify enum to Kotlin (084a77631f by @cortinico)
- Kotlin: Migrate YogaGutter enum to Kotlin (26862a0251 by @cortinico)
- Kotlin: Migrate YogaGridTrackType enum to Kotlin (f1b488f5da by @cortinico)
- Kotlin: Migrate YogaFlexDirection enum to Kotlin (984621b212 by @cortinico)
- Kotlin: Migrate YogaExperimentalFeature enum to Kotlin (70ebd43a1a by @cortinico)
- Kotlin: Migrate YogaErrata enum to Kotlin (d695a5cff4 by @cortinico)
- Kotlin: Migrate YogaEdge enum to Kotlin (2be96e8d92 by @cortinico)
- Kotlin: Migrate YogaDisplay enum to Kotlin (9580a54273 by @cortinico)
- Kotlin: Migrate YogaDimension enum to Kotlin (2d2b9924e3 by @cortinico)
- Kotlin: Migrate YogaBoxSizing enum to Kotlin (fe154568e5 by @cortinico)
- ViewManagers: Corrected nullability of
ViewManager#measure(63683f091c by @javache)
iOS specific
- Build: Prebuilt-deps mode: serve third-party headers from the ReactNativeDependencies pod itself and resolve community
s.dependencyon RCT-Folly/glog/boost/etc. via dependency-only facade pods (a8156acf8b by @chrfalch) - Build: Remove the Clang VFS overlay from prebuilt React Native Core; resolve headers via React.xcframework + a new headers-only ReactNativeHeaders.xcframework (376bd0e464 by @chrfalch)
- Native Modules: Native modules listed in
unstableModulesRequiringMainQueueSetupare now always initialized eagerly on the main queue during React Native init; the previousenableEagerMainQueueModulesOnIOSopt-in flag has been removed. (36bec56b0b by @javache) - Renderer: Drain React-revision merges from a
BeforeWaitingmain run loop observer instead of dispatching each merge as a separate main-queue block (d80377cd60 by @j-piasecki) - Runtime:
RCTUnsafeExecuteOnMainQueueSyncand bridgeless sync runtime-thread calls now always use the coordinator implementation that pumps UI tasks while waiting for JS, eliminating a class of deadlocks. The previous opt-in flag has been removed. (eaf770433a by @javache)
Deprecated
- Appearance:
Appearance.setColorScheme('unspecified')is deprecated, use'auto'instead. (91702e50fe by @huntie) - Assets: Deprecate
react-native/assets-registry. UseAssetRegistryfromreact-nativeandreact-native/asset-utilsinstead. (715eeaad69 by @huntie) - Image: Deprecate
ImageBackground, use aViewwith an absolutely positionedImageinstead (2361189716 by @zoontek) - JavaScript API: Mark undocumented
UTFSequencemodule as deprecated (549e4e2d8d by @retyui) - JavaScript API: Mark undocumented
UTFSequencemodule as deprecated (fd49bf2e2c by @retyui) - TypeScript: The
NativeMethodsinterface is deprecated. UseHostInstanceinstead. (19f5691e39 by @huntie) - Yoga: Fix CQS signal modernize-deprecated-headers in xplat/yoga/yoga [B] [A] (61db78db0b by generatedunixname1587093422349604)
Android specific
- APIs: Deprecate
DrawerLayoutAndroid, usereact-native-drawer-layoutinstead (5c5e6cd8ce by @zoontek) - New Architecture: DefaultReactActivityDelegate's constructor taking new arch flags are deprecated (935f8e5b7d by @javache)
- UIManager: Deprecate
UIBlockinterface andUIManagerModule.addUIBlock/prependUIBlockmethods. UseUIManagerListeneror View Commands instead. (29a76918a9 by @cortinico)
Removed
- C++: Removed RCTDefaultCxxLogFunction (2b6f605b3c by @javache)
- Feature Flags: Remove unused
enableVirtualViewDebugFeaturesfeature flag and the associatedFlingItemOverlay/FlingDebugItemOverlaydebug surfaces. (083fd99ba4 by @javache) - Feature Flags: Remove the experimental native View prop transformation feature flag. (2c2cd9ef54 by @sammy-SC)
- Feature Flags: Removed the unused
disableMaintainVisibleContentPositionfeature flag from ReactNativeFeatureFlags (661ce06e02 by generatedunixname1608173377072046) - Feature Flags: Remove unused
useLISAlgorithmInDifferentiatorfeature flag and LIS algorithm code from the Differentiator (9f4513c751 by @javache) - InteractionManager: Remove deprecated
InteractionManager(userequestIdleCallbackinstead) (ed893f7d98 by @rubennorte) - Modal: Remove deprecated
Modalanimatedprop (fd10410d51 by @zoontek) - Strict TypeScript API: Remove deprecated
PublicScrollViewInstanceandPublicModalInstancetypes. UseScrollViewInstanceandModalInstanceinstead. (74fdfd1eab by @huntie) - TurboModules: Remove the
useTurboModulesfeature flag. TurboModules are now always enabled. (b4a715ca1f by @mdvacca)
Android specific
- Dev Server: Remove unused
DevServerHelper.websocketProxyURLproperty (legacy remote JS debugger) (9cb2e63c87 by @huntie) - DeviceInfo: Remove
DisplayMetricsHolder.getWindowDisplayMetrics,setWindowDisplayMetrics, andgetDisplayMetricsWritableMap(82536f230f by @zoontek) - Hermes: Remove hermesV1Enabled and simplify the code (0a5c8c6b4b by @cipolleschi)
- Legacy Architecture: Remove legacy architecture stub
UIImplementation. This class was already non-functional (all methods were empty stubs). (cf28e6b73c by @cortinico) - Legacy Architecture: Remove legacy architecture stub
UIImplementation. This class was already non-functional (all methods were empty stubs). (0825f21171 by @cortinico) - Performance: Deprecate
logMarkerBridgelessandlogTaggedMarkerBridgelessin favor oflogMarkerandlogTaggedMarker(319610d328 by @javache)
iOS specific
- Hermes: Remove the RCT_HERMES_V1_ENABLED from Cocoapods (940ee8ae0d by @cipolleschi)
- Legacy Architecture: Legacy arch removal: RCTCxxMethod and DispatchMessageQueueThread (3b764745c4 by @javache)
- Native Modules: Deprecate
TimingModule; will be removed in a future React Native release (b0a6386995 by @christophpurrer)
Fixed
- Animated: Fix a surface-stop race in the C++ Animated shared backend that could permanently leak per-surface animated state (d9d2502b61 by Bartlomiej Bloniarz)
- Animated: Fix a race in the C++ Animated render-callback lifecycle that could leave stale callbacks running on every frame (e442c496b7 by Bartlomiej Bloniarz)
- Animated: Sync JS-side
Animated.Valuewith the post-animation value before invokingAnimated.timing(...).start({finished})callbacks so reads from inside the callback (or from React re-renders it triggers) observe the post-animation value rather than the pre-animation value. Gated behind a new JS-only feature flag,animatedShouldSyncValueBeforeStartCallback, defaulting totrue(set tofalseto opt out). (ee6958a9f4 by @fabriziocucci) - Assets:
react-native/Libraries/Image/AssetRegistryis removed. Please use theAssetRegistryAPI (apps/library code) and/or thereact-native/asset-registryentrypoint (Metro/build configs). (6cfde8f296 by @huntie) - Blob: Fix
Blob.slice()for negative start offsets and inverted ranges (b29dc966a4 by @durvesh1992) - Documentation: Removed wrong changelog entry in 0.83.2 (ef38ba4050 by @chrfalch)
- DOM API: Make
AbortSignal.any()process its input signals in multiple passes to match the DOM specification (1136e41bd8 by @rubennorte) - DOM API: Fix
parentNode/parentElementreturning the document instead of the containing element for<Modal>and other nested root host views, which severed capture/bubble event propagation to ancestors rendered above them (e410ff5471 by @rubennorte) - Events: Fix use-after-free data race in EventEmitter.cpp (5dea3b5e6c by generatedunixname1383054420177565)
- FileReader: Set
FileReaderreadyStatetoLOADINGduring a read soabort()correctly emitsabort/loadend(c00813c6ee by @durvesh1992) - Image: Parse Image srcSet density descriptors consistently (e4cf0a1cc3 by @ya-nsh)
- JavaScript API: Extensionless
react-native/scripts/*imports are now mandated; explicit.jsimport specifiers are rejected. (97727ba67f by @huntie) - MapBuffer: Avoid
memcpy(_, nullptr, 0)UB inMapBufferBuilder::buildfor empty / scalar-only MapBuffers (34ccf4f331 by @javache) - Networking: Base64-encode binary (arraybuffer/blob) response bodies in the C++ NetworkingModule so they are not corrupted when delivered to JS (1127e54d53 by @sathoshik)
- Pressable: Fix hover out timeout stored in wrong variable in Pressability (74b1a4d026 by @w3di)
- React Native DevTools: React Native DevTools will no longer briefly flash in the system dock/taskbar when starting Metro (6aa7e35ec3 by @huntie)
- React Native DevTools: Add null check on JNI return value in
JCxxInspectorPackagerConnectionDelegateImpl::connectWebSocketto prevent null dereference (fa05b8c88b by @shubhamksavita) - ReactHost: Fixed a regression that causes crashes on reload for
ReactCxxPlatform'sReactHost(ac81869f05 by @etodanik) - Renderer: Fixed potential revision drop during merge (c65845cde2 by @j-piasecki)
- Renderer: Several view, text, scrollview, and accessibility props that the iterator-setter path silently dropped now propagate correctly through
setProp:automaticallyAdjustKeyboardInsets,dynamicTypeRamp,writingDirection,experimental_accessibilityOrder,transformOrigin, and the fullborderCurvescascaded set. (15b1f5529a by @javache) - Runtime: Fix missing format specifier in renderApplication invariant (bc1a31fb16 by @w3di)
- Runtime: Fix apps failing to boot ("... not registered as callable") caused by core init not running. (08c323346b by @zeyap)
- Runtime: Fix app failing to initialize (
HMRClient.setup()redbox) because the environment setup module was dropped from the bundle (eb987ef550 by @cipolleschi) - Strict TypeScript API: Add missing
textAlignVerticalprop on<TextInput>(e04ff69ab3 by @huntie) - Strict TypeScript API: Add missing
pointerEventsprop toTextcomponent (a2e042f76a by @huntie) - Strict TypeScript API: Update
getNativeScrollRefreturn type across ScrollView, FlatList, and SectionList (535b844680 by @huntie) - Strict TypeScript API: Optional property types are now widened to explicitly include
| undefinedforexactOptionalPropertyTypescompatibility (0fc76bb527 by @zeyap) - Testing: Fix asyncArrayBufferBorrowNativeBackedTest unconditional skip on Hermes (9d54391814 by @christophpurrer)
- Testing: Re-enabled VirtualizedList "retains batch render region when an item is appended" tes (c0bf1549c2 by @chicio)
- Text: Fix text measurements being incorrectly reused across pixel density changes (d53c7b52a6 by @jehartzog)
- Touch Handling: Suppress
React.Fragmentstyle warning when used as a child ofTouchableHighlight(d7b5314bd8 by @qflen) - TypeScript: Preserve doc comments on root API symbols in the generated TypeScript types (642273788b by @huntie)
- TypeScript: Add eventCount to TextInputKeyPressEventData type (886faee2d1 by @pchalupa)
- TypeScript: Add missing pointer event handler types (
onPointerOver,onPointerOut,onGotPointerCapture,onLostPointerCapture, and their*Capturevariants) to the TypeScript types (20931fe975 by @ahmdshrif) - TypeScript: Update ImageSource.d.ts see reference URL to reflect current repository structure (6eb07a813d by @ergenekonyigit)
- TypeScript: Expose Modal native ref prop in TypeScript declarations (7cc8c76e83 by @ya-nsh)
- TypeScript: Align TypeScript accessibility role definitions with supported React Native accessibility roles (75e1f06b66 by @ya-nsh)
- TypeScript: Change
FlatList.getNativeScrollRefreturn type definition to allow accessing the underlyingHostInstance. (5162816e03 by @janpe) - TypeScript: Fix missing and incorrect types in
AccessibilityInfoTypeScript definitions (4255f9bd89 by @huntie) - Yoga: Include a node's padding and border in its automatic minimum size when it has a measure function (91886f7c88 by @adityasharat)
- Yoga: Crash: YogaLayoutableShadowNode.cpp: function layout: assertion failed (YGNodeGetOwner(childYogaNode) == &yogaNode_) https://github.com/react/react-native/issues/52349 (6fa330693f by @5ZYSZ3K)
Android specific
- Accessibility: Issue when clearing accessibilityLabelledBy (63dec777d9 by @rozele)
- Accessibility: Screen reader behavior for accessibilityState expanded (fafcfcd5f6 by @rozele)
- Animated: Prevent "Mapped property node does not exist" crash in
PropsAnimatedNode.updateViewwhen a mapped node is removed during an in-flight native animation (53369ed321 by @shashank-bhatotia) - Animated: Fix deadlock between the UI and JS threads when native animations start while a synchronous VirtualView mode-change event is dispatched (b96b626297 by @coado)
- Build: Guard missing autolinked JNI directories in generated CMake during native clean/model configuration. (948835d944 by @Phecda)
- Dev Menu: Fix Dev Menu Settings crash in debugOptimized builds (2fb4f13fbf by @Phecda)
- Dev Server: Reduced memory usage during JS bundle downloads by eliminating intermediate buffer copies (57eb56fbf5 by @DorianMazur)
- Gradients: Fix incorrect color stop positions in gradients when a positioned stop is immediately followed by an unpositioned stop (cb63782554 by @nduaarte)
- Image: Fix
Image.getSize()failing for local drawable resource URIs including VectorDrawables (aea8785d66 by @Abbondanzo) - Image: Source props in image headers in Android (eeb17badf6 by @humaidk2)
- PointerEvents: Register pointer capture event handlers in the Android base view config (74382cacd8 by @yaminyassin)
- React Native DevTools: Show request body preview for FormData and file uploads in DevTools Network tab (48fe6df3d2 by @HarshitMadhav)
- Renderer: Avoid crash in SurfaceMountingManager when sendAccessibilityEvent or setJSResponder is called for a missing or deleted view state. (8eb4240d36 by @ManasGuptaSprinklr)
- Renderer: Fix crash in Scheduler::animationTick when uiManager_ is null. (e73592ba51 by @shubhamksavita)
- Renderer: Fix commit branching dropping updates when
enableAccumulatedUpdatesInRawPropsAndroidis not enabled. (bcadedaba4 by @j-piasecki) - Runtime: Use explicit
ReactInstanceManager.mHasStartedDestroyingLockinstead of usingReactInstanceManager.mHasStartedDestroying(f500f4239c by @Yqwed) - Runtime: JSModule method without args are correctly dispatched (949b8049df by @javache)
- ScrollView: Catch IllegalArgumentException in ScrollView.onTouchEvent to prevent crashes from a known Android framework multi-touch bug (d672c96445 by @tomekzaw)
- StatusBar: Prevent
IllegalArgumentExceptioncrash instatusBarShow/statusBarHidewhen the window decorView is detached (a54b04e94b by @alanleedev) - StatusBar: Prevent
IllegalArgumentExceptioncrash inStatusBarModulewhen activity is destroyed before the UI thread runnable executes (732b848a8e by @alanleedev) - StyleSheet: Correct logical border radius mapping for
borderEndStartRadiusandborderStartEndRadius. (ad2cf4d1d7 by @nikhilpakhloo) - StyleSheet: Fix crash in SkewMatrixHelper (9e3a0df61e by @javache)
- StyleSheet: SkewX / skewY transforms now render correctly on Android Q+. (62903bc3e2 by @qflen)
- Text: Prevent descenders from being clipped when Android text lineHeight matches fontSize (bb3c121073 by @TorinAsakura)
- Text: Account for Android Bold text font weight adjustment when measuring Text. (d833014948 by @TorinAsakura)
- Text: Fix text decoration line thickness regression on Android (9f20cde724 by @cortinico)
- Text: Fix text decoration color not matching foreground color when
textDecorationColoris not set (2da0244c16 by @cortinico) - TextInput: Fix ClassCastException crash on Android 9 and below when an IME submit action races the unmount of a TextInput (97aa7ad272 by @shahidrogers)
- TextInput: Fix
TextInputplaceholder staying on multiple lines aftermultilineis toggled fromtrueback tofalse(df6de4f758 by @Abbondanzo) - TextInput: Preserve secure TextInput password character reveal timing when JS state echoes the same text. (08731165f5 by @sorinc03)
- Touch Handling: Prevent React Native containers from delaying native touches (d8f71837f8 by @j-piasecki)
- TurboModules: Fix pure C++ turbo modules not working without
includesGeneratedCode: true(c789880517 by @satya164) - ViewManagers: Fix NullPointerException in
ReactProgressBarViewManager.measure()when invoked with nulllocalDataorstate(for example, from the upcoming CSS Flexbox §4.5 auto-min-size probe in Yoga). (ef683f7010 by @adityasharat)
iOS specific
- Build: Fix React-RCTAnimatedModuleProvider build by adding the missing Yoga dependency and a missing space between compiler flags (08ef7b18d2 by [@zoontek](htt
- Appearance: Fix return type of
- 0.87.0-rc.44 Aug 2026pre-release
Release notes
Open source →
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.
Additional notes
Open source →
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.
- 0.87.0-rc.327 Jul 2026pre-release
Release notes
Open source →
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.
Additional notes
Open source →
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.
- 0.87.0-rc.220 Jul 2026pre-release
Release notes
Open source →
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.
Additional notes
Open source →
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.
- 0.87.0-rc.115 Jul 2026pre-release
Release notes
Open source →
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.
Additional notes
Open source →
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.
- 0.87.0-rc.07 Jul 2026pre-release
Release notes
Open source →[!WARNING] This is a release candidate. It is not intended for production use.
Changelog
Install:
npm install [email protected]Report issues: https://github.com/react/react-native/issues
Additional notes
Open source →Warning
This is a release candidate. It is not intended for production use.
Changelog
Install:
npm install [email protected]
Report issues: https://github.com/react/react-native/issues
Additional notes
Open source →Breaking
- Remove deprecated
StatusBarbackgroundColor/translucent/networkActivityIndicatorVisibleprops andsetBackgroundColor/setTranslucent/setNetworkActivityIndicatorVisiblemethods (6b45e579d6 by @zoontek) - Remove deprecated boolean values support for
ScrollViewkeyboardShouldPersistTaps(5bf3e38db2 by @zoontek) - Set max font scaling in
LogBoxto avoid layout breaking (4aef2b0126 by @pchalupa) - Remove RawPropsKey prefix and suffix (67381e157f by @javache)
- Deep imports to
'react-native/src/private/...'have been restricted, and are no longer visible to TypeScript. These subpaths still exist, but do not have type coverage. (142b6172a9 by @huntie) - Compile out RuntimeScheduler_Legacy under RCT_REMOVE_LEGACY_ARCH (d205267a5f by @christophpurrer)
- Strict TypeScript API: Remove legacy
NativeMethodsandNativeMethodsMixintypes (b724611aec by @huntie) - The
NativeDialogManagerAndroidexport is removed. (a793d21a7e by @huntie) - The
react-native/core-cli-utilspackage is no longer published. It remains available in the React Native repo as a reference implementation. (9c3fddf9cd by @huntie) - Remove support for connecting to the standalone
react-devtoolspackage via WebSocket. Use React Native DevTools instead. (f1971caa44 by @huntie) - Require Node.js >= 22.13.0 (a0d39e7a9c by @huntie)
- Remove Legacy Hermes from C++ code (f9476256bd by @cipolleschi)
- Fix return type of
useColorScheme()hook (nowColorSchemeName | null) (ef6463c25d by @huntie) useColorScheme()no longer returns'unspecified'(this was always the case, but is a breaking type change) (8ac88f481a by @huntie)
Android specific
- Adopt AGP v9 (abb071b135 by @hurali97)
iOS specific
- Remove depracted legacy architecture protocol APIs (ad9936faf6 by @christophpurrer)
- Remove unused legacy architecture RCTAppSetupUtils methods (40b16dca9f by @christophpurrer)
- Remove RCTBridge Functions from RCTReactNativeFactory Header (75eaff4c03 by @christophpurrer)
- Remove unused bridge-based RCTTurboModuleManager initializer (cb74b82309 by @christophpurrer)
- RNTester / RCTReactNativeFactory remove unused new architecture flags and RCTArchConfiguratorProtocol (2148f15db5 by @christophpurrer)
- Remove 6 empty Objective-C stub headers (23ce90bd3b by @christophpurrer)
- Remove legacy architecture code guarded by RCT_REMOVE_LEGACY_ARCH from RN iOS (86350ab988 by @christophpurrer)
- Removing further legacy arch symbols such as RCTCxxBridge (c65281581d by @javache)
Added
- Introduce
react-native/asset-utilspackage (relocates Android path utils for libraries/frameworks) (41d52189e2 by @huntie) - Add
IntBufferandDoubleBufferentry types to MapBuffer for compact homogeneous int/double arrays (e7cadaf9f3 by @javache) - Add support for
textAlign: 'start'andtextAlign: 'end'. (ca29d38537 by @SJvaca30) - Strict TypeScript API: Component and API doc comment coverage has been significantly improved (701de4ec3d by @huntie)
- Add
selectiontoTextInputChangeEventDatain TypeScript types (e745c41a6b by @nsbarsukov) - Strict TypeScript API: Export
Animated.Numeric(6206b0b01f by @huntie) - Export
AccessibilityActionInfo,ImageResizeMode,EdgeInsetsProp, andTextInputBlurEventtypes (ee36c67a27 by @huntie) - Support native driven AnimatedValue interpolation easing (57ce6bc585 by @zeyap)
- Remove
useNativeDriverunder featureflag animatedForceNativeDriver (9cf30b6e4b by @zeyap) - Implement the
Page.addScriptToEvaluateOnNewDocumentandPage.removeScriptToEvaluateOnNewDocumentCDP methods in the modern inspector (bc20ec88eb by @GijsWeterings) - Remove
useNativeDriverunder featureflag animatedForceNativeDriver (cffe14ff57 by @zeyap) - Add
Promise.try+Promise.withResolverstypescript types (b99ddaf606 by @retyui) - Gate shared C++ and Android Java/Kotlin legacy view manager interop behind
RCT_REMOVE_LEGACY_COMPONENT_INTEROP(9885fe95ef by @christophpurrer) - Text decorations honor
textDecorationStyle(solid,double,dotted,dashed,wavy) (87184c8fba by @quantizor) - Gate legacy view manager interop behind
RCT_REMOVE_LEGACY_COMPONENT_INTEROP(8b959b46ea by @christophpurrer) - Add CSS Flexbox §4.5 automatic minimum sizing. Opt in by clearing the new
YGErrataMinSizeUndefinedInsteadOfAutoerrata bit onYGConfig. (b766986387 by @adityasharat) - Strict TypeScript API: Add
*Instanceref types for all built-in components (a3827f32f4 by @huntie) -
Changelog: [GENERAL][ADDED] Gate legacy TurboModule interop behind
RCT_REMOVE_LEGACY_MODULE_INTEROP(3278f309e2 by @christophpurrer) - Add CSS Flexbox §4.5 automatic minimum sizing. Opt in by clearing the new
YGErrataMinSizeUndefinedInsteadOfAutoerrata bit onYGConfig. AddsYGNodeSetMinContentWidth/Heightfor static contributions andYGMinContentMeasureFuncfor dynamic ones.' (7f396d1116 by @adityasharat) - StatusBar: support
barStyle="auto"to follow the current color scheme (61c8b040bf by @zoontek) - Add TypeScript support for Error
causeproperty (abcb7821b1 by @gimi-anders) - Add
Systrace.tracehelper that wraps a function with begin/end events using try/finally (e6c7a269d2 by @rubennorte) - Add
ArrayBuffersupport to C++ TurboModules (226ef2e7c5 by @paradowstack) - Add All Animated Props example to the rn-tester Animation Backend section (e2e655385c by Bartlomiej Bloniarz)
- Add Performance Test example to the rn-tester Animation Backend section (09e55cb7c6 by Bartlomiej Bloniarz)
- Add
optimizedAnimatedPropUpdatesfeature flag (ed96b22af2 by Bartlomiej Bloniarz)
Android specific
- Added an entry point that allows changing whether the scrollable React Native containers should delay pressed state in children views (91b2537f8a by @j-piasecki)
- Add a dedicated
MapBufferListtype toMapBufferfor ordered lists of nestedMapBuffers (6a957746f6 by @javache) - Request
ACCESS_LOCAL_NETWORKso the dev server stays reachable on Android 17 (SDK 37)[Android] [Added] - AddACCESS_LOCAL_NETWORKtoPermissionsAndroid(2bc2c8d7e6 by @alanjhughes) - Update
compileSdkandbuildToolsto 37 (3e8dfb1e64 by @alanjhughes) - Add
ReactContext.getRuntimeExecutor()(dc9043e940 by @javache) - Use software snapshot capture unless featureflag (ba204faa75 by @zeyap)
iOS specific
- Add
enableIOSCompressedTextFrameAdjustmentfeature flag forTextrendering adjustments. (b933d45276 by @sbuggay) - Add ArrayBuffer support to ObjC TurboModules (54b88d9dea by @paradowstack)
- Export
RCTDidInitializeModuleNotificationModuleKeyconstant forRCTDidInitializeModuleNotificationuserInfo (217ee52d4f by Eapen George) - Added comment to clarify why i18nManager.isRTL may not return the expected value (e4a5ed3c6d by @scarlac)
textDecorationStyle: 'dotted'and'dashed'for<Text>render with custom CoreGraphics paths instead of UIKit pattern bits, matching browser geometry more closely (9d037509bf by @quantizor)
Changed
- Make the
windowglobal non-writable and non-configurable, and thenavigatorglobal non-writable (347f8d081e by @rubennorte) - Metro to 0.86.0 (2b0107e0aa by @robhogan)
- Change default transform profile to 'hermes-stable' (a2cd37f828 by @retyui)
- React Native DevTools: Expose new options in the app menu (24e370096e by @huntie)
- Replace
abort-controllerwith fork version from react-native (6f3375a140 by @retyui) - Fix missing VERSION_NATIVE_FB in commit artifacts (c6f29a2173 by @javache)
- React Native DevTools: Add macOS 26/27 app icon (fa371d156d by @huntie)
- Enable Animated flush-queue debouncing (
animatedShouldDebounceQueueFlush) by default (5c197fb303 by @zeyap) - Make
EventTargetmethods enumerable by spec (25c25b3c7c by @retyui) - Speed up VirtualizedList render-mask creation for large lists by avoiding the old backward sticky-header scan when sticky headers are missing or sparse. (fe53279889 by @tarikfp)
- Flip cxxNativeAnimatedEnabled featureflag default to true (fc7dc741d2 by @zeyap)
- Make
flattenStyleavoid extra intermediate objects when flattening nested style arrays. (d26f7b338d by @tarikfp) - Remove
experimental_prefix frombackgroundImage(58688bf176 by @intergalacticspacehighway) - Mark parent dirty when child is freed (4adca58f4c by @harsha-cpp)
- Expose
IntersectionObserverEntryas a global (4deb32a507 by @rubennorte) - The default value of the
useTurboModulesReactNativeFeatureFlags flag is nowtrue(db4c6ee3b6 by @mdvacca) - Strict TypeScript API: Additional component props types are now
interfacedeclarations, enabling module augmentation by libraries like Uniwind (preserve compatibility) (2574863642 by @huntie) - Strict TypeScript API: Select component props types are now
interfacedeclarations, enabling module augmentation by libraries like NativeWind and Expo (preserve compatibility) (db89600b56 by @huntie) - Clarify Android AppState background API documentation. (b09fce6db5 by @federicobartoli)
- Simplified build JS Hermes infrastructure for the Release (d49aac6b65 by @cipolleschi)
- Bump Hermes V1 to 250829098.0.13 (0175449606 by @robhogan)
Android specific
- Set minCompileSdk to 34, libraries will have to specify a compileSdk of >= 34 in order to work with React Native (29e5f954c7 by @cortinico)
- Gradle to 9.4.1 (c0ee408c16 by @leotm)
- Convert
ReactHorizontalScrollViewfrom Java to Kotlin (5c680995bd by @cortinico) - Convert
ReactScrollViewandReactNestedScrollViewfrom Java to Kotlin (9d65e6c497 by @cortinico) - Corrected nullability of
ViewManager#measure(63683f091c by @javache) - Migrate
ReactShadowNodeinterface from Java to Kotlin (f07c7cceee by @cortinico) - Migrate
UIManagerModulefrom Java to Kotlin (21dfc2a855 by @cortinico) - Migrate
UIViewOperationQueuefrom Java to Kotlin (7a8344c037 by @cortinico) - Migrate
BridgeReactContextfrom Java to Kotlin (6720760faf by @cortinico) - Migrate
ReactNativeHostfrom Java to Kotlin (no behavioral changes) (7eb11331b6 by @cortinico) - Bumped min Kotlin version to 2.0+ (ec1e1ae054 by @cortinico)
- Bump Kotlin to 2.2.0 (cb04956cde by @cortinico)
iOS specific
RCTUnsafeExecuteOnMainQueueSyncand bridgeless sync runtime-thread calls now always use the coordinator implementation that pumps UI tasks while waiting for JS, eliminating a class of deadlocks. The previous opt-in flag has been removed. (eaf770433a by @javache)- Native modules listed in
unstableModulesRequiringMainQueueSetupare now always initialized eagerly on the main queue during React Native init; the previousenableEagerMainQueueModulesOnIOSopt-in flag has been removed. (36bec56b0b by @javache) - Drain React-revision merges from a
BeforeWaitingmain run loop observer instead of dispatching each merge as a separate main-queue block (d80377cd60 by @j-piasecki)
Deprecated
- Deprecate
react-native/assets-registry. UseAssetRegistryfromreact-nativeandreact-native/asset-utilsinstead. (715eeaad69 by @huntie) - Deprecate
ImageBackground, use aViewwith an absolutely positionedImageinstead (2361189716 by @zoontek) - Fix CQS signal modernize-deprecated-headers in xplat/yoga/yoga [B] [A] (61db78db0b by generatedunixname1587093422349604)
- Mark undocumented
UTFSequencemodule as deprecated (549e4e2d8d by @retyui) - Mark undocumented
UTFSequencemodule as deprecated (fd49bf2e2c by @retyui) - The
NativeMethodsinterface is deprecated. UseHostInstanceinstead. (19f5691e39 by @huntie) Appearance.setColorScheme('unspecified')is deprecated, use'auto'instead. (91702e50fe by @huntie)
Android specific
- Deprecate
DrawerLayoutAndroid, usereact-native-drawer-layoutinstead (5c5e6cd8ce by @zoontek) - DefaultReactActivityDelegate's constructor taking new arch flags are deprecated (935f8e5b7d by @javache)
- Deprecate
UIBlockinterface andUIManagerModule.addUIBlock/prependUIBlockmethods. UseUIManagerListeneror View Commands instead. (29a76918a9 by @cortinico)
iOS specific
Removed
- Remove deprecated
Modalanimatedprop (fd10410d51 by @zoontek) - Strict TypeScript API: Remove deprecated
PublicScrollViewInstanceandPublicModalInstancetypes. UseScrollViewInstanceandModalInstanceinstead. (74fdfd1eab by @huntie) - Removed RCTDefaultCxxLogFunction (2b6f605b3c by @javache)
- Remove deprecated
InteractionManager(userequestIdleCallbackinstead) (ed893f7d98 by @rubennorte) - Remove unused
enableVirtualViewDebugFeaturesfeature flag and the associatedFlingItemOverlay/FlingDebugItemOverlaydebug surfaces. (083fd99ba4 by @javache) - Remove the
useTurboModulesfeature flag. TurboModules are now always enabled. (b4a715ca1f by @mdvacca) - Remove the experimental native View prop transformation feature flag. (2c2cd9ef54 by @sammy-SC)
- Removed the unused
disableMaintainVisibleContentPositionfeature flag from ReactNativeFeatureFlags (661ce06e02 by generatedunixname1608173377072046) - Remove unused
useLISAlgorithmInDifferentiatorfeature flag and LIS algorithm code from the Differentiator (9f4513c751 by @javache)
Android specific
- Deprecate
logMarkerBridgelessandlogTaggedMarkerBridgelessin favor oflogMarkerandlogTaggedMarker(319610d328 by @javache) - Remove legacy architecture stub
UIImplementation. This class was already non-functional (all methods were empty stubs). (cf28e6b73c by @cortinico) - Remove
DisplayMetricsHolder.getWindowDisplayMetrics,setWindowDisplayMetrics, andgetDisplayMetricsWritableMap(82536f230f by @zoontek) - Remove legacy architecture stub
UIImplementation. This class was already non-functional (all methods were empty stubs). (0825f21171 by @cortinico) - Remove hermesV1Enabled and simplify the code (0a5c8c6b4b by @cipolleschi)
- Remove unused
DevServerHelper.websocketProxyURLproperty (legacy remote JS debugger) (9cb2e63c87 by @huntie)
iOS specific
- Deprecate
TimingModule; will be removed in a future React Native release (b0a6386995 by @christophpurrer) - Legacy arch removal: RCTCxxMethod and DispatchMessageQueueThread (3b764745c4 by @javache)
- Remove the RCT_HERMES_V1_ENABLED from Cocoapods (940ee8ae0d by @cipolleschi)
Fixed
-
- [General][Breaking] -
react-native/Libraries/Image/AssetRegistryis removed. Please use theAssetRegistryAPI (apps/library code) and/or thereact-native/asset-registryentrypoint (Metro/build configs). (6cfde8f296 by @huntie)
- [General][Breaking] -
- Strict TypeScript API: Add missing
textAlignVerticalprop on<TextInput>(e04ff69ab3 by @huntie) - Fixed potential revision drop during merge (c65845cde2 by @j-piasecki)
- Preserve doc comments on root API symbols in the generated TypeScript types (642273788b by @huntie)
- Avoid
memcpy(_, nullptr, 0)UB inMapBufferBuilder::buildfor empty / scalar-only MapBuffers (34ccf4f331 by @javache) - Fix a surface-stop race in the C++ Animated shared backend that could permanently leak per-surface animated state (d9d2502b61 by Bartlomiej Bloniarz)
- Make
AbortSignal.any()process its input signals in multiple passes to match the DOM specification (1136e41bd8 by @rubennorte) - Fix
Blob.slice()for negative start offsets and inverted ranges (b29dc966a4 by @durvesh1992) - Set
FileReaderreadyStatetoLOADINGduring a read soabort()correctly emitsabort/loadend(c00813c6ee by @durvesh1992) - Fix a race in the C++ Animated render-callback lifecycle that could leave stale callbacks running on every frame (e442c496b7 by Bartlomiej Bloniarz)
- Several view, text, scrollview, and accessibility props that the iterator-setter path silently dropped now propagate correctly through
setProp:automaticallyAdjustKeyboardInsets,dynamicTypeRamp,writingDirection,experimental_accessibilityOrder,transformOrigin, and the fullborderCurvescascaded set. (15b1f5529a by @javache) - Add eventCount to TextInputKeyPressEventData type (886faee2d1 by @pchalupa)
- Include a node's padding and border in its automatic minimum size when it has a measure function (91886f7c88 by @adityasharat)
- Removed wrong changelog entry in 0.83.2 (ef38ba4050 by @chrfalch)
- Crash: YogaLayoutableShadowNode.cpp: function layout: assertion failed (YGNodeGetOwner(childYogaNode) == &yogaNode_) https://github.com/react/react-native/issues/52349 (6fa330693f by @5ZYSZ3K)
- Base64-encode binary (arraybuffer/blob) response bodies in the C++ NetworkingModule so they are not corrupted when delivered to JS (1127e54d53 by @sathoshik)
- Fix asyncArrayBufferBorrowNativeBackedTest unconditional skip on Hermes (9d54391814 by @christophpurrer)
- Add missing pointer event handler types (
onPointerOver,onPointerOut,onGotPointerCapture,onLostPointerCapture, and their*Capturevariants) to the TypeScript types (20931fe975 by @ahmdshrif) - Fix text measurements being incorrectly reused across pixel density changes (d53c7b52a6 by @jehartzog)
- Update ImageSource.d.ts see reference URL to reflect current repository structure (6eb07a813d by @ergenekonyigit)
- Strict TypeScript API: Add missing
pointerEventsprop toTextcomponent (a2e042f76a by @huntie) - Sync JS-side
Animated.Valuewith the post-animation value before invokingAnimated.timing(...).start({finished})callbacks so reads from inside the callback (or from React re-renders it triggers) observe the post-animation value rather than the pre-animation value. Gated behind a new JS-only feature flag,animatedShouldSyncValueBeforeStartCallback, defaulting totrue(set tofalseto opt out). (ee6958a9f4 by @fabriziocucci) - Expose Modal native ref prop in TypeScript declarations (7cc8c76e83 by @ya-nsh)
- Fixed a regression that causes crashes on reload for
ReactCxxPlatform'sReactHost(ac81869f05 by @etodanik) - Suppress
React.Fragmentstyle warning when used as a child ofTouchableHighlight(d7b5314bd8 by @qflen) - React Native DevTools will no longer briefly flash in the system dock/taskbar when starting Metro (6aa7e35ec3 by @huntie)
- Parse Image srcSet density descriptors consistently (e4cf0a1cc3 by @ya-nsh)
- Align TypeScript accessibility role definitions with supported React Native accessibility roles (75e1f06b66 by @ya-nsh)
- Fix hover out timeout stored in wrong variable in Pressability (74b1a4d026 by @w3di)
- Fix missing format specifier in renderApplication invariant (bc1a31fb16 by @w3di)
- Strict TypeScript API: Update
getNativeScrollRefreturn type across ScrollView, FlatList, and SectionList (535b844680 by @huntie) -
Changelog:[GENERAL] [FIXED] - Change FlatList.getNativeScrollRef return type definition to allow accessing the underlying HostInstance. (5162816e03 by @janpe)
- Re-enabled VirtualizedList "retains batch render region when an item is appended" tes (c0bf1549c2 by @chicio)
- Fix missing and incorrect types in
AccessibilityInfoTypeScript definitions (4255f9bd89 by @huntie) - Add null check on JNI return value in
JCxxInspectorPackagerConnectionDelegateImpl::connectWebSocketto prevent null dereference (fa05b8c88b by @shubhamksavita)
Android specific
- Prevent descenders from being clipped when Android text lineHeight matches fontSize (bb3c121073 by @TorinAsakura)
- Fix ClassCastException crash on Android 9 and below when an IME submit action races the unmount of a TextInput (97aa7ad272 by @shahidrogers)
- Fix Dev Menu Settings crash in debugOptimized builds (2fb4f13fbf by @Phecda)
- Use explicit
ReactInstanceManager.mHasStartedDestroyingLockinstead of usingReactInstanceManager.mHasStartedDestroying(f500f4239c by @Yqwed) - Account for Android Bold text font weight adjustment when measuring Text. (d833014948 by @TorinAsakura)
- Fix incorrect color stop positions in gradients when a positioned stop is immediately followed by an unpositioned stop (cb63782554 by @nduaarte)
- Avoid crash in SurfaceMountingManager when sendAccessibilityEvent or setJSResponder is called for a missing or deleted view state. (8eb4240d36 by @ManasGuptaSprinklr)
- Prevent
IllegalArgumentExceptioncrash instatusBarShow/statusBarHidewhen the window decorView is detached (a54b04e94b by @alanleedev) - Fix crash in Scheduler::animationTick when uiManager_ is null. (e73592ba51 by @shubhamksavita)
- Prevent "Mapped property node does not exist" crash in
PropsAnimatedNode.updateViewwhen a mapped node is removed during an in-flight native animation (53369ed321 by @shashank-bhatotia) - Correct logical border radius mapping for
borderEndStartRadiusandborderStartEndRadius. (ad2cf4d1d7 by @nikhilpakhloo) - Fix
TextInputplaceholder staying on multiple lines aftermultilineis toggled fromtrueback tofalse(df6de4f758 by @Abbondanzo) - Register pointer capture event handlers in the Android base view config (74382cacd8 by @yaminyassin)
- Prevent React Native containers from delaying native touches (d8f71837f8 by @j-piasecki)
- Fix crash in SkewMatrixHelper (9e3a0df61e by @javache)
- Fix text decoration line thickness regression on Android (9f20cde724 by @cortinico)
- Fix text decoration color not matching foreground color when
textDecorationColoris not set (2da0244c16 by @cortinico) - SkewX / skewY transforms now render correctly on Android Q+. (62903bc3e2 by @qflen)
- Fix deadlock between the UI and JS threads when native animations start while a synchronous VirtualView mode-change event is dispatched (b96b626297 by @coado)
- Prevent
IllegalArgumentExceptioncrash inStatusBarModulewhen activity is destroyed before the UI thread runnable executes (732b848a8e by @alanleedev) - Fix
Image.getSize()failing for local drawable resource URIs including VectorDrawables (aea8785d66 by @Abbondanzo) - Fix NullPointerException in
ReactProgressBarViewManager.measure()when invoked with nulllocalDataorstate(for example, from the upcoming CSS Flexbox §4.5 auto-min-size probe in Yoga). (ef683f7010 by @adityasharat) - Reduced memory usage during JS bundle downloads by eliminating intermediate buffer copies (57eb56fbf5 by @DorianMazur)
- Preserve secure TextInput password character reveal timing when JS state echoes the same text. (08731165f5 by @sorinc03)
- Issue when clearing accessibilityLabelledBy (63dec777d9 by @rozele)
- Fix pure C++ turbo modules not working without
includesGeneratedCode: true(c789880517 by @satya164) - Fix commit branching dropping updates when
enableAccumulatedUpdatesInRawPropsAndroidis not enabled. (bcadedaba4 by @j-piasecki) - Show request body preview for FormData and file uploads in DevTools Network tab (48fe6df3d2 by @HarshitMadhav)
- Catch IllegalArgumentException in ScrollView.onTouchEvent to prevent crashes from a known Android framework multi-touch bug (d672c96445 by @tomekzaw)
- Source props in image headers in Android (eeb17badf6 by @humaidk2)
- Guard missing autolinked JNI directories in generated CMake during native clean/model configuration. (948835d944 by @Phecda)
- JSModule method without args are correctly dispatched (949b8049df by @javache)
- Screen reader behavior for accessibilityState expanded (fafcfcd5f6 by @rozele)
iOS specific
- Prevent Alert and Modal from rendering in the top-left corner (859bdb89e5 by @zoontek)
- Fix a data race in
RCTImageLoaderloader and decoder lazy initialization that could crash withEXC_BAD_ACCESS(7ed17c9d09 by Miklós Fazekas) - Fix React-RCTAnimatedModuleProvider build by adding the missing Yoga dependency and a missing space between compiler flags (08ef7b18d2 by @zoontek)
- Add an explicit wake up call to the main loop hen scheduling a React revision merge (0cdb59f1b4 by @j-piasecki)
- Add missing
RCT_REMOVE_LEGACY_COMPONENT_INTEROPguard toLegacyViewManagerInteropComponentDescriptor(510cc0c5ec by @christophpurrer) - Always return true in RCTTurboModuleEnabled (aee4a2586e by @christophpurrer)
- Deprecate RCTTurboModuleEnabled() and RCTEnableTurboModule() (feede1422b by @christophpurrer)
- Allow iOS apps with the dev menu enabled (
RCT_DEV_MENU) to connect to Metro via "Change Bundle Location" (94380cb4ad by @fmacinator) - Expose the bridgeless performance logger via
RCTBridgeProxyand postRCTJavaScriptDidLoadNotification, so native startup-perf consumers work in bridgeless (9568de5a2d by @fkgozali) - Fix codegen script phase error logging in
script_phases.sh(f14207f9bd by @fallintoplace) - Fixed percentage-based border radius (b4966128af by @j-piasecki)
- Remove unsafe window manipulation in RCTLogBoxView dealloc to prevent crash with SceneDelegate (4f825d3469 by @aswinandro)
- Fix TypeError crash in ResponderTouchHistoryStore when changedTouches is undefined (2c6cb27f88 by generatedunixname1608173377072046)
Security
- Fix security vulnerabilities in
xmldom/xmldom,fast-xml-parser,yaml,fast-uri, andaddressabletransitive dependencies (284035b21d by @cortinico)
Android specific
iOS specific
Unknown
- Release 0.87.0-rc.0 (2d913c7292 by @react-native-bot)
- Release 0.87.0-rc.0 (d67f27978c by @react-native-bot)
- Release 0.87.0-rc.0 (f21a3bef02 by @react-native-bot)
- Xplat/js/react-native-github/packages/react-native/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp (ce057d6554 by generatedunixname1563563004708334)
- Daily
arc lint --take KTFMT(f9ba09d60e by generatedunixname1430061942044674) - Turn on
experimental.instance_t_objkit_fixacross fbsource roots (71fee907fb by @SamChou19815) - Xplat/js/react-native-github/packages/react-native/ReactCommon/react/renderer/animated/drivers/DecayAnimationDriver.cpp (69b58f308e by generatedunixname1563563004708334)
- Transform readonly in xplatjs (5fce2de800 by @marcoww6)
- Fix a few readonly 10/n (09fc0432d1 by @marcoww6)
- Codemod
in/out(9f558a4d6a by @marcoww6) - Add license header to ProGuard files (b3c0f3ce30 by @helfper)
- Fix use-after-free data race in EventEmitter.cpp (T259167206) (5dea3b5e6c by generatedunixname1383054420177565)
Android Unknown
- Translation auto-update for batch 3/64 on master (9299204523 by Intl Scheduler)
- Translation auto-update for batch 3/64 on master (10ec4ad01a by Intl Scheduler)
- Translation auto-update for batch 2/64 on master (a902d7402c by Intl Scheduler)
- Make CustomEventNamesResolver a fun interface for SAM conversion (df4cadc126 by @cortinico)
- Migrate YogaWrap enum to Kotlin (6e262624fc by @cortinico)
- Migrate YogaUnit enum to Kotlin (97cf21dd41 by @cortinico)
- Migrate YogaPositionType enum to Kotlin (d181829b9c by @cortinico)
- Migrate YogaOverflow enum to Kotlin (14c1d164d5 by @cortinico)
- Migrate YogaNodeType enum to Kotlin (bb137aa028 by @cortinico)
- Migrate YogaMeasureMode enum to Kotlin (b7801f29c5 by @cortinico)
- Migrate YogaLogLevel enum to Kotlin (5d5350b1e4 by @cortinico)
- Migrate YogaJustify enum to Kotlin (084a77631f by @cortinico)
- Migrate YogaGutter enum to Kotlin (26862a0251 by @cortinico)
- Migrate YogaGridTrackType enum to Kotlin (f1b488f5da by @cortinico)
- Migrate YogaFlexDirection enum to Kotlin (984621b212 by @cortinico)
- Migrate YogaExperimentalFeature enum to Kotlin (70ebd43a1a by @cortinico)
- Migrate YogaErrata enum to Kotlin (d695a5cff4 by @cortinico)
- Migrate YogaEdge enum to Kotlin (2be96e8d92 by @cortinico)
- Migrate YogaDisplay enum to Kotlin (9580a54273 by @cortinico)
- Migrate YogaDimension enum to Kotlin (2d2b9924e3 by @cortinico)
- Migrate YogaBoxSizing enum to Kotlin (fe154568e5 by @cortinico)
iOS Unknown
Failed to parse
- Remove deprecated
- 0.87.0-nightly-20260708-b67b7ba628 Jul 2026pre-release
Nothing published for this version
- 0.87.0-nightly-20260707-b67b7ba627 Jul 2026pre-release
Nothing published for this version
- 0.87.0-nightly-20260706-e04ff69ab6 Jul 2026pre-release
Nothing published for this version
- 0.87.0-nightly-20260705-e04ff69ab5 Jul 2026pre-release
Nothing published for this version
- 0.87.0-nightly-20260704-e04ff69ab4 Jul 2026pre-release
Nothing published for this version
- 0.87.0-nightly-20260703-dfab628f83 Jul 2026pre-release
Nothing published for this version