React Native v0.76 released
React Native 0.76.0 brings significant changes, including breaking updates to animation, devtools, and infrastructure. Key additions include official support for filter and boxShadow styles, improved DevTools capabilities, and enhanced Android and iOS-specific features. The release also addresses numerous bugs across various components and systems, improving stability and performance. Several security vulnerabilities were patched in dependencies.
This version introduces important changes for developers, particularly in Android and iOS-specific areas. It continues to refine the framework's capabilities while addressing existing issues and enhancing developer tools and experience.
v0.76 on GitHub (npm)
Release blog post
Changelog
v0.76.9
Changed
- Deps: Bump folly to 2024.10.18. This allow to use Xcode 16.3 with React Native (73b41b5808 by @cipolleschi)
- Deps: Bump fmt to 11.0.2. This allow to use Xcode 16.3 with React Native (73b41b5808 by @cipolleschi)
- Deps: Add dependency to fast_float v6.1.4, as it is required by folly. This allow to use Xcode 16.3 with React Native (73b41b5808 by @cipolleschi)
Fixed
Android specific
- Deps: Move CMakeLists for fast_float to third-party folder (71abbab169 by @cipolleschi)
- Deps: Fix Folly CMakeLists (21919be5ee by @cipolleschi)
iOS specific
- Runtime: Fixed crash caused by the request operation canceling (2bddb0012e by @zhouzh1)
v0.76.8
Fixed
- FormData: Remove non compliant
filename*
attribute in a FormDatacontent-disposition
header (9e846b4d11 by @foyarash) - DevX: Disconnections of DevTools when the network is under significant strain. (08c04147ba by @vzaidman)
- JS: Fix
react-native-community/cli
not being found in pnpm setups (9ba96ad79d6 by @tido64) - JS: Fix
react-native-community/cli-platform-*
packages not being found in monorepos (ffe7bd1471 by @tido64)
Android specific
- popup-menu-android: Fix react-native/popup-menu-android not building for 3rd party developers (ac637ff44 by @cortinico)
- DevTools: Pass the bundle URL protocol when setting up HMR client on Android (68055f2d8a by @byCedric)
- CLI: Fix registering of
start
andbundle
commands with community CLI and isolated node_modules. (b9c4095e40 by @robhogan)
iOS specific
- layout: Layout direction changes are now honored on bundle reload. (23b888ff2d by @chrsmys)
- TextInput: Fixes TextInput crashes when any text is entered while running as iOS app on apple silicon mac (e2b081e66f by @zhongwuzw)
- Runtime: Convert to JSException only NSException from sync methods (8eec35f134 by @cipolleschi)
v0.76.7
Changed
iOS specific
- Deps: Pin 'concurrent-ruby' to a working version (198adb47af by @cipolleschi)
Fixed
- Text Fix
maxFontSizeMultiplier
prop onText
andTextInput
components in Fabric / New Architecture (ea49d4d1b01107a5ecbbbd4904f1d935e51d6b32 by @RickardZrinski) - Appearance: Fix
Appearance.setColorScheme(null)
not resetting color scheme value (7d63235086 by @sangonz193)
Android specific
- Deps: Add missing
invariant
dependency (ee8088b615 by @tido64) - Turbomodule Fix execution of early InteropEvents (4ed2b35bf6 by @mdvacca)
- Deps: Bump Kotlin to 1.9.25 to mitigate #49115 (f8857ba3b5 by @cortinico)
iOS specific
- runtime:
RCTSurfaceHostingProxyRootView
no longer has different behavior (whether it callsstart
on the provided surface) depending on which initializer is used. Callstart
yourself on the surface instead. (13b93cfdda by Nolan O'Brien) - Be less strict with method parsing of TurboModule Interop Layer
- Turbomodule: Avoid crashing the app when the InteropLayer can't find some methods in the native implementation. (3bd3f101b9 by @cipolleschi)
- Runtime: Fix applicationDidEnterBackground not being called (adaceba546 by @alextoudic)
v0.76.6
Fixed
- layout: Fix TextMeasureCacheKey Throwing Out Some LayoutConstraints (f7a5db3c06 by @NickGerleman)
Android specific
- layout: Restore layout/invalidate during ReactViewClippingManager.removeViewAt() (0683206927 by Thomas Nardone)
- Native Modules: Prioritise local OnLoad.cpp, falling back to default-app-setup (8b1f049879 by @timbocole)
- runtime: Remove feature flag for allowRecursiveCommitsWithSynchronousMountOnAndroid (fb7f87ecb2 by @cipolleschi)
iOS specific
- TextInput: Fixing TextInput
maxLength
not working in old arch (9ecf290d27 by @mateoguzmana)
v0.76.5
Fixed
- Better support filtering out non linked platforms (fcbcf80d1c by @cipolleschi)
Android specific
- Fix crash on HeadlessJsTaskService on old architecture (4560fc0497 by @cortinico)
v0.76.4
Added
- Sync debugger-frontend to latest 0.76-stable (fix Expo node_modules entry points in Sources panel) (43fe69c315 by @huntie)
- Exclude unlinked libs from codegen (3cedb09a65 by @cipolleschi)
Android specific
- Avoid NPE when touch event is triggered before SurfaceManager is initiated (b8095f4692 by @CHOIMINSEOK)
v0.76.3
Fixed
Android specific
- Look for sdkmanager.bat (6460d2b3e7 by @blakef)
- CMake Windows path normalization (9946838bedd by @blakef)
- Fix build failure on windows in android (08b83005481 by @FouadMagdy01)
v0.76.2
Added
- TypeScript Add CodegenTypes for TS (20b141508b by @cipolleschi)
Changed
- infra Bump CLI to 15.0.1 (51b98c24bd by @szymonrybczak)
iOS specific
- TextInput Include existing attributes in newly typed text (557e3447f5 by @NickGerleman)
Fixed
- Hermes Update Hermes to support Intl (94d4bfd7c8 by @blakef)
- infra Skip hermes-parser under Babel for non-Flow JS code (ff1261e7dc by @huntie)
- infra fix
semver
not being found in pnpm setups (0def73d1a6 by @tido64) - Error Handling Fix
setUpErrorHandling
to show early JS errors (dac6d508af by @cipolleschi)
Android specific
- infra Use absolute path when compiling appmodules.so sources (3956955eaa by @cortinico)
- infra Properly handle paths with spaces in autolinking (1f62529dc4 by @cortinico)
- Modal Fix Regression - Modal content rendering below system bar on < API 30 when activity is edge-to-edge (2cd48ef351 by @alanleedev)
- runtime Fix timers in headless tasks on bridgeless mode (ee7b4e2763 by @j-piasecki)
iOS specific
- Codegen Properly stop generating component registration for components defined in app. (97a4234b6e by @cipolleschi)
- infra Give apps access to Yoga headers (e851e73c18 by @cipolleschi)
- TextInput Fix missing emitter attributes on iOS TextInput when controlled component value specified using
value
instead ofchildren
(52cdedb40e by @NickGerleman) - TextInput Fix cursor moving in iOS controlled single line TextInput on Autocorrection (New Arch) (36fd5533f6 by @NickGerleman)
v0.76.1
Fixed
Android specific
- runtime Made AppRegistry callable from Native code in Bridgeless (fixes headless tasks) (f3fee67c54 by @robik)
- runtime Add jsBundleFile to DefaultReactNativeHost.kt (e56bd89ef)
iOS specific
- codegen Do not generate the ComponentCls function in the RCTThirdPartyFabricComponentsProvider for components deined in the app. (dc7e9e2d83 by @cipolleschi)
- infra Generated NODE_BINARY in .xcode.env.local now supports paths with a space (eeaa3ff458 by @blakef)
- infra Pin Xcodeproj to < 1.26.0 (e8776240b41)
- runtime Fixed bug where background colors would sometimes animate when changing on Views (1d6ac09530 by @joevilches)
- runtime Fixes regression of RCTWindowFrameDidChangeNotification not fired (e271b23fad by @zhongwuzw)
v0.76.0
Breaking
- Animation Stop sending state updates to React in looping animation (8af5e893c8 by @dmytrorykun)
- devtools: Remove Inspector Panel perf + network tabs under New Arch (see https://github.com/react-native-community/discussions-and-proposals/pull/777) (f220bde4d7 by @huntie)
- flow: Eliminate a few React.Element type that will be synced to react-native (39c338ff8d by @SamChou19815)
- infra Projects that intend to use the community CLI will now have to declare that dependency instead of transitively having the react-native package include it. (bd3a3e3de0 by @blakef)
- infra Remove react-native-community dependencies from react-native (9269429bb9 by @blakef)
- infra: TurboModules will be looked up as TurboModules first, and fallback to legacy modules after. (5a62606ab3 by @javache)
- text engine Always use AttributedStringBox instead of AttributedString in TextLayoutManager (ee597bfe2bf) by @NickGerleman)
Android specific
- bridging: Deleted LongArray (471445eb17 by Thomas Nardone)
- Flipper: Update ReactNativeFlipper deprecation to ERROR (531657b394 by @cortinico)
- infra Remove several libs from default App CMake setup (52de8c70f2 by @cortinico)
- infra: Merge all the remaining .so libraries into libreactnative.so (db80d78d7a by @cortinico)
- infra: Remove several unnecessary android prefab targets. Use ReactAndroid::reactnative instead (6e5227bd83 by @cortinico)
- infra: Do not depend on OSS SoLoader anymore and do not expose Fresco
api
dependency. (6dc01dad09 by @cortinico) - infra: Updating
minSdkVersion
to API 24 (Android 7) (270951a212 by @alanleedev) - initialization:
ReactNativeHost
invalidates the instance manager onclear()
, rather than merely destroying the instance. (986cf18dd2 by @motiz88) - layout engine: Do not implicitly convert parsed LengthPercentage to pixels (9e48976bc2 by @NickGerleman)
- rendering: Set "enableBackgroundStyleApplicator" by default (5f14963da0 by @NickGerleman)
iOS specific
- initialization: Add ability to control bundle loading on the new architecture similar to
loadSourceForBridge
. Removed some properties from theRCTRootViewFactory
. (7487a2c277 by @alanjhughes) - turbomodule [iOS] Remove Macro for autolinking pure Cxx module(184646e491 by @philIip)
Added
- style Add official
filter
CSSProperty. (6b369a40d9 by @jorge-cab) - style Add official
boxShadow
CSSProperty. (2241c3146f by @jorge-cab) - codegen: Add EventEmitter Code-gen support for Java and ObjC Turbo Modules (ad3df84668 by @christophpurrer)
- devtools: support for rendering Error object previews in Chrome DevTools console (cae9ae5b48 by @EdmondChuiHW)
- devtools: support for rendering Error objects in Chrome DevTools console (1740a56a46 by @EdmondChuiHW)
- devtools Add upper case keys to the debug key handler (6390cf67d0 by @wh201906)
- devtools: Debugger: Support text responses to CDP
IO.read
requests (c085180264 by @robhogan) - devtools: Debugging: implement common C++ layer of CDP
Network.loadNetworkResource
(193cdc36f7 by @robhogan) - devtools:: Inspector: Support
/open-debugger
specifyingtarget
param (88ba9a6042 by @robhogan) - infra: Use PackagerAsset resolver instead of Platform.OS when its provided. (baa366654e by @andrewdacenko)
- infra: Add optional
PackagerAsset.resolver
prop so AssetSourceResolver can use it instead ofPlatform.OS
to identify where asset is stored on device. (3f3a85b3c5 by @andrewdacenko) - initialization Add experimental api to JSRuntimeFactory to initialize runtime on js thread (c9fbc05bbc by Benoit Girard)
- metro: Expose
MetroConfig
type directly fromreact-native/metro-config
. (cc6d1eb844 by @tjzel) - rsc Added support for importing
react-native
in areact-server
environment for React Server Components support. (8989c9b71d by @EvanBacon) - style: Add support for
texAlignment: 'start'
(a2cb34371e by @javache) - style: Unhide new arch layout props (2d6c59e1d4 by @NickGerleman)
Android specific
- devtools: Enable React Native DevTools in OSS debug builds (143f1ad298 by @robhogan)
- codegen Add support for handling
com.facebook.react.bridge.Dynamic
as parameter type in TurboModules (d01f1b3214 by @cortinico) - error handling: Provide default implementation for ReactHostDelegate.handleInstanceException() (34e3a6cc88 by @alanleedev)
- Image Added support for rendering XML assets provided to
Image
(aad9240fd4 by Peter Abbondanzo) - Runtime Allow DefaultReactHost to load the js bundle via regular file urls (7522336412 by @RSNara)
- runtime Make ReactInstanceEventListener available on ReactHost (80e1dd70b0 by @RSNara)
- runtime Add
invalidate()
method to ReactHost and ReactInstanceManager that destroys theReactHost
, including theReactInstance
. (a3db352e25 by @motiz88) - runtime: Added
onUserLeaveHint
support intoReactActivityDelegate
(27ba369f23 by @behenate) - runtime: Added a conditional check in the
resolveThemeAttribute
function to reattempt resource resolution with the "android" package name if the resource ID is 0. (6365df54db by @shubhamguptadream11) - style Add BackgroundStyleApplicator for managing view backgrounds (1a78477ce5 by @NickGerleman)
- style: Linear gradient (bd0aedc8c3 by @intergalacticspacehighway)
- style: Support simple opacity in nested text (a2d53d5ea0 by @NickGerleman)
iOS specific
- accessibility: Support LargeContentViewer on iOS for better accessibility (6cc44d765a by @bacarybruno)
- Animated: Declare the
onUserDrivenAnimationEnded
in the old Architecture (f8c13f601d by @cipolleschi) - Animated: Retrieve the tags of the nodes connected by the animation and send them to JS (fd748ae84c by @cipolleschi)
- brownfield: Improve RCTAppDelegate usage for brownfield, add
automaticallyLoadReactNativeWindow
flag (391680fe84 by @okwasniewski) - codegen Code-generate an optional base class to use for every NativeModule (ed5f558a6c by @christophpurrer)
- devtools Debugger: Implement CDP methods for loading network resources through the debug target. (c720583f6c by @robhogan)
- infra Enable third-party podspec sources to be fetched from mirrored git repositories (53969cb8d0 by @RailByteOEBB)
- runtime Added RCTUIInterfaceOrientation helper method (cf015f93ef by @Biki-das)
- ScrollView Send onScrollEnded event to NativeTurboAnimatedModule (7af743236f by @cipolleschi)
- ScrollView: Fire onMomentumScrollEnd when UIScrollView is removed from window (b98b9f1fa7 by @shubhamguptadream11)
- style Linear gradient (b99675d78a by @intergalacticspacehighway)
- TextInput Add line break mode for TextInput components. (fe941a8f4c by @shubhamguptadream11)
- TextInput Line break mode for TextInput components. (6cab6c2a13 by @shubhamguptadream11)
- TextInput Add support for missing text content types (d7a3e48032 by @krozniata)
- TextInput Added handling of
showSoftInputOnFocus
props for new arch. (ead50d6b11 by @shubhamguptadream11)
Changed
- Animated: Improved runtime performance of
Animated
(d1ebe02c19 by @yungsters) - Animated: Changed
Animated
props validation to soft errors instead of thrown errors (0a1ba02273 by @yungsters) - Appearance: Improved
Appearance.getColorScheme
performance (8f0f50f7a1 by @yungsters) - c++: Removed using namespace std::placeholders (194b642633 by @r-barnes)
- devtools: Remove
--experimental-debugger
option from start command (94e7a87f23 by @huntie) - devtools: Inspector: Enforce device and appId filters if both are given to /open-debugger (c7970379a1 by @robhogan)
- devtools: Debugger:
j
opens most recent (not first) target. (2a6a895b17 by @robhogan) - devtools: Debugger: Make
/json/list
return connection-addition-ordered targets. (53951d7fec by @robhogan) - devtools Add Fusebox support for saving traces to disk (1bd4a11736 by Benoit Girard)
- devtools: Simplify key handling in start command (5a0df6d0bf by @huntie)
- error handling: Improved error message for invalid filter values (4094ce0718 by @yungsters)
- error handling: Improve LogBox safe area insets styling (18302831c4 by @yungsters)
- infra: Update all babel packages and fix tests accordingly (b37101486b by @vzaidman)
- infra: Upgrade pretty-format to 29.7.0 (7bc9244d0c by @dprevost-LMI)
- infra: Move init deprecation notice 30 Sept → 31 Dec, to give users more time to update their infrastructure (014370d825 by @blakef)
- infra: Drop
node-fetch
in favor of Node's built-in fetch fromundici
inreact-native/dev-middleware
(30a3e6e8df by @byCedric) - infra: Allow use without @react-native-community/cli-server-api (24997dc5ae by @blakef)
- infra: Add CLI selection of multiple debug targets (6a24df7eaa by @huntie)
- infra Update Metro to "^0.81.0" (3f8d1fa286 by @robhogan)
- initialization: Improve
Appearance
performance overhead by lazily initializing the NativeModule (b86e8ef95f by @yungsters) - metro: Changed Metro default config to use Hermes parser, enabling the use of advanced Flow syntax in React Native. (320963c7cb by @yungsters)
- metro: Use Metro terminal reporter for dev-middleware logs (2f04dfe795 by @huntie)
- metro: Fix server.end() usage following Metro bump (02b879b1e2 by @huntie)
- runtime: Timer functions
timeout
argument is now coerced to a number (af04eb773c by @robik) - turbomodules: Replace TurboReactPackage with BaseReactPackage (e881a1184c by @philIip)
- yoga Replace YogaConstants.UNDEFINED with Float.NaN (8bd9952eaf by Jingbo Yang)
Android specific
- DevTools Make PackagerConnectionSettings class open again (4dd47eeb9e by @gabrieldonadel)
- infra: Update compileSdk to 35 (1333e0ee6a by @alanleedev)
- infra: Expose jsc tooling via prefab (e91690d929 by @tomekzaw)
- **infra:**Expose hermes tooling via prefab (f41af55958 by @cortinico)
- infra: Bump AGP to 8.6.0 (aca31eb610 by @cortinico)
- infra: Gradle to 8.10.2 (60a2706e97 by @cortinico)
- LogBox: Modify LogBox to be usable on Android 15 (5fe7660439 by @alanleedev)
- Modal Fix crash for Modal not attached to window manager (73ce1984e8 by @alanleedev)
- style: Move
experimental_boxShadow
andexperimental_backgroundImage
to BaseViewConfig (03801f275e by @NickGerleman) - style: Revamp InsetBoxShadowDrawable (d9f684b1cf by @NickGerleman)
- style: Support OutsetBoxShadowDrawable on Android 9+ (f905f90468 by @NickGerleman)
- infra: Merge libuimanagerjni.so inside libreactnative.so (7916f7e120 by @cortinico)
- infra: Move libyoga.so and libturbomodulejsijni.so inside libreactnative.so (80c3aea48d by @cortinico)
- infra: Move more libraries to so-merging: rninstance, react_featureflagsjni, hermesinstancejni, fabricjni (e864910a4d by @cortinico)
- infra: Move libmapbufferjni.so inside libreactnative.so (5b761ff15c by @cortinico)
- infra: Move libreact_newarchdefaults.so inside libreactnative.so (0caf3e824d by @cortinico)
- runtime: Make
setPointerEvents
public (010e0010a3 by @jakex7) - runtime: Avoid image off-screen render (620b1221fa by @NickGerleman)
- kotlin: Migrated ReactSwitch to Kotlin (03c0e5e2af by @blakef)
- kotlin Migrated AdditionalAnimatedNode.java to Kotlin (8689aa48bb by @blakef)
- turbomodule: Modules marked with needsEagerInit = true will now be created on the mqt_native thread. (c4a6bbc8fd by @javache)
- error handling Log a SoftException on SurfaceMountingManager.addRootView (3429dc1ccf by @psionic12)
- layout: Extracted common parts related to calculating text layout to a helper (2eaf0b0848 by @j-piasecki)
- kotlin: Migrate StyleAnimatedNode.java to Kotlin (ef9149b4fc by @rshest)
iOS specific
- infra Don't include C++ bridging header in RCTTurboModule.h (3fc7ebb311 by @christophpurrer)
- infra Bump iOS min version for CI (b93c2b2412 by @realsoelynn)
- infra Update RNTester and HelloWorld template app to
min iOS 15.1
(e1a1cdacf2 by @realsoelynn) - infra Enforce we use the correct C++ version for all, even if dependency tries to set it (d7a8aae9ac by @Titozzz)
- renderer Changed border display (94407f56d1 by @coado)
- runtime Refactor supportedInterfaceOrientations method to use RCTKeyWindow() (815c415fb9 by @okwasniewski)
Deprecated
Android specific
- bridging: Deprecate MapBuilder (a696d2ed6b by Thomas Nardone)
iOS specific
- initialization: Deprecate turboModuleEnabled, fabricEnabled and bridgelessEnabled for the new newArchEnabled property. (3621606c44 by @okwasniewski)
- runtime Deprecated StatusBar.setNetworkActivityIndicatorVisible (8a390ba9b8 by Ingrid Wang)
Removed
- devtools Remove sampling profiler from dev menu (f57740c0fb by @blakef)
Android specific
- components CoreComponentsRegistry is now fully replaced by DefaultComponentRegistry. (de7976c69d by @javache)
- error handling Removed HasJavascriptExceptionMetadata as a marker interface. Use JavascriptExecption directly (cb00ca954d by @javache)
- initialization Unused jsEngineResolutionAlgorithm from ReactHost (f1b6218608 by @javache)
- infra React_newarchdefaults is no longer a prefab, instead use fabricjni (c68f35d444 by @javache)
iOS specific
- runtime: Remove
[RCTConvert UIBarStyle:]
(a557a81f96 by @Saadnajmi)
Fixed
- Animated: Fixed undefined behavior in certain scenarios when
ReactElement
objects are supplied to Animated components (56937d646c by @yungsters) - Animated: Realign the shadow tree and the native tree when the user finishes interacting with the app. (a8786fc1df by @cipolleschi)
- codegen: Fix codegen failing in a pnpm monorepo because of missing
yargs
(3e084bc159 by @tido64) - c++: Upstream fixes for build errors in React Native Windows (c722ec7c37 by @chiaramooney)
- c++: Undefined behavior fix in MethodInvoker (09e88448ce by Riley Berton)
- c++: Fix "C4715 not all control paths return a value" warning in MSVC when building ReactCommon (c30e35fb44 by @jonthysell)
- c++: Updated comments for
~ShadowNodeWrapper()
and~ShadowNodeListWrapper()
(778fcecf35 by @tomekzaw) - c++: Change RawPropsParser logs from ERROR level to WARNING (68c0720e34 by Bowen Xie)
- devtools: Reconnecting to an unknown inspector page no longer results in a zombie connection (a7adfef0bb by @motiz88)
- devtools: Avoid a zombie state when opening a second debugger frontend concurrently. (e55ea2daf1 by @motiz88)
- devtools: Inspector-proxy no longer accidentally detaches connected devices. (4c6bff01b3 by @motiz88)
- devtools: Throttle reload command (42bad68220 by @coado)
- devtools Respond with status code
200
when successfully launching RNDT (eeb6122f39 by @byCedric) - error reporting: Fix logbox reporting React errors as Warnings (cbb313253f by @rickhanlonii)
- error reporting Restore Metro log forwarding, change notice to signal future removal (6047f9cc09 by @huntie)
- flow: Fix parsing of modern Flow syntax when
transformer.hermesParser = false
is configured in Metro config (1387f521fd by @huntie) - infra: Removed noisy ENOENT error message upon launching the debugger (5bbf5a4878 by @EdmondChuiHW)
- infra: Ensure
--build-output
destination exists (396bdd87d8 by @szymonrybczak) - infra: Fix Platform.constants.reactNativeVersion type (95d9cdf228 by @NickGerleman)
- js: Fixes findNodeAtPoint when views were inverted (1d1646afd1 by @zhongwuzw)
- layout: Fix handling 'auto' checks in absolute layout (3596019489 by @coado)
- runtime Add missing methods to the WithRuntimeDecorator class. (993f9fd8db by @neildhar)
- runtime: Undo breaking change on ViewManagerDelegate.kt String params (ce1620616c by @cortinico)
- runtime: Undo breaking change on UIManager eventDispatcher accessor (55671c00e5 by @cortinico)
- Scrollview: Properly make ScrollView compatible with React 19 (b395208303 by @cipolleschi)
- Scrollview: Make ScrollView compatible with React 19 (8041e410e3 by @cipolleschi)
- SectionList: Loosen SectionList
renderItem
required return type (12b64b7824 by @NickGerleman) - style: Fixed
alignItems: 'baseline'
not working correctly on the new architecture (2932c0f71f by @j-piasecki) - style: Linear gradient color stop spec. (1a49892d57 by @intergalacticspacehighway)
- TextInput: Fixed fontWeight number value error for text optimized (2a230694c4 by @meetdhanani17)
- typescript: Allow read only array type for transform property (c16defaff2 by @tjzel)
- typescript: Add missing
submitBehavior
prop and markblurOnSubmit
prop as deprecated in Typescript declaration file ofTextInput
(1dcbf41725 by @thisisgit)
Android specific
- Animated: Fix scheduled animated operations not being executed in some cases (dc8c8ebc5b by @j-piasecki)
- Animated Sync the Shadow Tree and the Native Tree with Native animation when scroll is driving the animation (394aae1c1c by @cipolleschi)
- Appearance: Ensure Appearance change listener does not skip events (7041ed28f0 by @vonovak)
- DevMenu: Add missing Android implementation for DevMenu Module (1bdae07d89 by @cortinico)
- devtools Fix issue with
NativeDevSettings.setIsDebuggingRemotely
where the app would keep on restarting if remote debugging was invoked from an action / component that was called on app start. (beebf4a0a3 by @Sushant-Sardeshpande) - Image Make Imagesource
open
for inheritance (0e805a953d by @cortinico) - Image Fix ReactImageView.hasOverlappingRendering() (2bed2ab1a6 by @NickGerleman)
- infra: Expose
react_timing
headers inreactnative
prefab (b1d42c8ef2 by @tomekzaw) - infra: RNGP - Sanitize the output of the config command (d7884a6bb8 by @cortinico)
- infra Fix NPE in FileReaderModule (fd4531fe23 by @cortinico)
- infra Properly set
REACTNATIVE_MERGED_SO
for autolinked libraries (c005609b01 by @cortinico) - logging Fix LogModule to create view when show is called (0847384a45 by @fannnzhang)
- Modal: Deprecating ModalHostShadowNode and ModalHostHelper classes (77b3a8bdd6 by @alanleedev)
- Modal PointerEvents from Modal would not be dispatched correctly in new architecture. (75114e3672 by @javache)
- networking Fix uploading GIF URI (48669af562 by @s77rt)
- RedBox: RedBox content overlapping with system bars on Android 15 forced edge-to-edge (97b661c3f0 by @alanleedev)
- renderer Fixed black strip coming when hiding status bar (f6b6d001a0 by @shubhamguptadream11)
- renderer Fix Android removeClippedSubviews in RTL (ea6928fcb9 by @NickGerleman)
- runtime: Fix Headless Crash
Tried to finish non-existent task with id
(b4532adad4 by @RodolfoGS) - runtime Optimize BaseViewManager#setTransform to ignore duplicate values (3df0f3b9ff by @javache)
- runtime Make getUri and isResource open (8c81ffa60a by @shubhamguptadream11)
- runtime Do not destroy views when there is a touch going on for New Architecture (6b7f68240e by @cortinico)
- runtime Annotate ReactRootView.createRootView with nullable (6a1ecbb2bb by @shwanton)
- runtime Made several methods in ReactNativeHost.java thread-safe to avoid race conditions (f9ac5b737a by Jack Su)
- runtime Fixed Headless JS tasks in New Architecture (9a1ae97c22 by @robik)
- runtime Fix default for
showsHorizontalScrollIndicator
andshowsVerticalScrollIndicator
(3af01a8a44 by @NickGerleman) - runtime: Adds a null check in react context getter (aeb020dfa3 by Peter Abbondanzo)
- runtime Fix ReactFragment on New Architecture (52322fbd0e by @cortinico)
- style Don't use mGapBetweenPaths if not drawing a border (8501b6396b by @knappam)
- style Linear gradient border styles (20e3f4518f by @intergalacticspacehighway)
- style Gracefully handle unexpected overflow values (82094dd9e3 by @NickGerleman)
- style Fix "setTranslucentBackgroundDrawable()" deprecation version (35d9a18b81 by @NickGerleman)
- style: Add missing invalidate() to setOverflow() (087193c98e by @NickGerleman)
- style: Add borderStartWidth and borderEndWidth support (92dca53702 by @NickGerleman)
- style Fixed text shadow rendering with artifacts when
backgroundColor
was set on theTextInput
(83716298f8 by @j-piasecki) - Text Fix measuring text with incorrect hyphenationFrequency (fc8224036b by @NickGerleman)
- TextInput: fixed select text on auto focus for TextInput (18d6028ff9 by @kunalchavhan)
- TextInput TextInput's
contextMenuHidden
prop bug fix (8a3ffb6d23 by @alanleedev)
iOS specific
- devtools Fix position of RCTPerfMonitor in landscape mode & expanded mode (258f41a30f by @krozniata)
- Appearance Fixes Appearance user interface style when app run from background (efa9711e35 by @zhongwuzw)
- c++ Fixes NSDataBigString length calculation (bb3c51dc84 by Tzvetan Mikov)
- codegen Codegen will start looking for codegen-enabled dependencies from the project root. (46d17efa62 by @dmytrorykun)
- Hermes: Exclude dSYM from the archive (7e14ec5177f by @cipolleschi)
- Image Fixes race condition when setup image loader (6b104bbe01 by @zhongwuzw)
- Image Fixed crash in RCTImageUtils (3572ef3f1b by @pavelgurkovskiy)
- Image Data race in
RCTImageLoader
related to assignment of cancellation block. (0f051f6034 by @hakonk) - Image Fixes Image load event in new arch (7698cd0953 by @zhongwuzw)
- infra Add back the BUNDLE_COMMAND (cf42288181 by @Vin-Xi)
- infra Resolve Hermes prebuilt version based on react-native package (b10ed0e19d by @okwasniewski)
- infra Support bundle install from outside the ios folder using --project-directory (b22970e3cf by @blakef)
- infra Use CONFIG_CMD if set (774fe0cf6f by @krystofwoldrich)
- infra Fixes FORCE_BUNDLING error when bundle js (089e8289ba by @zhongwuzw)
- Modal App crash happening when navigate to a new app screen with a displaying modal (52888c0c1e by Zhi Zhou)
- Networking: Fix: on iOS not getting 304 from
If-None-Match
request (b8ab0fe703 by @huzhanbo1996) - Networking Fix data race related to access on
RCTNetworkTask.status
. (b1ec698dc4 by @hakonk) - RedBox Mac Catalyst crash in RCTRedBox (84fe531952 by @sbuggay)
- RedBox Fix rendering
RCTRedBoxExtraData
(c9d589dab5 by @krozniata) - rendering: Properly retain/release backgroundColor in RCTBorderDrawing (47748c7935 by @Saadnajmi)
- RefreshControl: Fixed an issue where the refresh control would not behave correctly if it was offscreen. (a8be335a37 by @deepanshushuklad11)
- RefreshControl: Fix applying of tintColor and progressViewOffset props for RefreshControl component with New Architecture enabled (19d468fed9 by @TuTejsy)
- RefreshControl: Passed correct title and titleColor prop to updateTitle function (5c7a166dca by @shubhamguptadream11)
- runtime Fixed a crash when navigating away from a screen that contains a scrollView (c6f32828b9 by @cipolleschi)
- runtime Data race related to read/write on
ReactMarker::logTaggedMarkerImpl
(7e41ea4c9d by @hakonk) - runtime Fixes typo of function callFunctionOnBufferedRumtimeExecutor (4e12c2e37c by @zhongwuzw)
- runtime Fixes main thread stuck when reload in bridgeless mode (a778979ed6 by @zhongwuzw)
- runtime Fixing maxLength check which was firing onChange multiple times (d88dd14507 by @deepanshushuklad11)
- runtime Use std::atomic for eliminating races in RCTCxxBridge. (8204134024 by @hakonk)
- runtime Fix legacy view interop apis not available in view method (19cffab383 by @janicduplessis)
- ScrollView Implement automicallyAdjustsKeyboardInsets for new arch (e4e461c9cf by @okwasniewski)
- ScrollView Implement automicallyAdjustsKeyboardInsets for new arch (21bdce7286 by @okwasniewski)
- StatusBarManager Retrieve status bar size using RCTUIStatusBarManager (34cd195d9f by @okwasniewski)
- style fix: background color fix when border is dotted and dashed (b243d343fa by @shubhamguptadream11)
- style Fixes ellipsis carries background from trimmed text (9e2f8859c4 by @zhongwuzw)
- Text Fixed baseline attachment position in multiline text (9bfbf948df by @j-piasecki)
- Text Clean up RCTParagraphComponentView & RCTParagraphTextView (9239ad1c6b by @zhongwuzw)
- Text Fixes Italic text not work (9cfd9dd1c7 by @zhongwuzw)
- Text Fixes ellipsis carries background from trimmed text (fcb6cdc710 by @zhongwuzw)
- Text Fixed text baseline being moved upwards in certain cases (01f7ab814f by @j-piasecki)
- TextInput Fixes TextInput crash when undo if text longer than maxLength (9b9c780cc8 by @zhongwuzw)
Security
- infra: Upgrade grpc/grpc-js from 1.7.0 to 1.10.9 (CVE-2024-37168) (295626bc35 by @GijsWeterings)
- infra: Upgrade braces from 3.0.2 to 3.0.3 (CVE-2024-4068) (d538879e08 by @GijsWeterings)
- infra: Update ws from 7.5.1 to 7.5.10 (CVE-2024-37890) (13f1b9e10f by @GijsWeterings)
- infra: Update ws from 6.2.2 to 6.2.3 (CVE-2024-37890) (80cfacef78 by @GijsWeterings)